mirror of
https://github.com/ansible/awx.git
synced 2026-01-22 06:58:06 -03:30
refactored saveSurvey method
This commit is contained in:
parent
259e48df3e
commit
193accaa84
@ -19,6 +19,7 @@ angular.module('SurveyMakerFormDefinition', [])
|
||||
name: 'survey_maker', //entity or model name in singular form
|
||||
// // well: true,
|
||||
breadCrumbs: false,
|
||||
// twoColumns: true,
|
||||
// // collapse: true,
|
||||
// collapseTitle: "Properties",
|
||||
// collapseMode: 'edit',
|
||||
@ -38,26 +39,51 @@ angular.module('SurveyMakerFormDefinition', [])
|
||||
|
||||
fields: {
|
||||
survey_name: {
|
||||
label: 'Survey Name',
|
||||
type: 'text',
|
||||
addRequired: true,
|
||||
editRequired: true,
|
||||
capitalize: false
|
||||
},
|
||||
survey_description: {
|
||||
label: 'Survey Description',
|
||||
type: 'text',
|
||||
addRequired: false,
|
||||
editRequired: false
|
||||
},
|
||||
questions: {
|
||||
type: 'custom',
|
||||
control: '<label for="survey"><span class="label-text prepend-asterisk">Questions</span></label>'+
|
||||
control: '<div class="row"><div class="col-sm-6"><div class="form-group">'+
|
||||
'<label for="survey_name"><span class="label-text prepend-asterisk">Survey Name</span></label><div>'+
|
||||
'<input type="text" ng-model="survey_name" name="survey_name" id="survey_maker_survey_name" class="form-control ng-pristine ng-invalid ng-invalid-required" required="">'+
|
||||
'<div class="error ng-hide" id="survey_maker-survey_name-required-error" ng-show="survey_maker_form.survey_name.$dirty && survey_maker_form.survey_name.$error.required">A value is required!</div>'+
|
||||
'<div class="error api-error ng-binding" id="survey_maker-survey_name-api-error" ng-bind="survey_name_api_error"></div>'+
|
||||
'</div></div></div>'+
|
||||
'<div class="col-sm-6"><div class="form-group">'+
|
||||
'<label for="survey_description"><span class="label-text">Survey Description</span></label><div>'+
|
||||
'<input type="text" ng-model="survey_description" name="survey_description" id="survey_maker_survey_description" class="form-control ng-pristine ng-valid">'+
|
||||
'<div class="error api-error ng-binding" id="survey_maker-survey_description-api-error" ng-bind="survey_description_api_error"></div>'+
|
||||
'</div></div></div>'+
|
||||
'<div class="col-sm-12"><label for="survey"><span class="label-text prepend-asterisk">Questions</span></label>'+
|
||||
'<div id="survey_maker_question_area"></div><div id="finalized_questions"></div>'+
|
||||
'<button style="display:none" type="button" class="btn btn-sm btn-primary" id="add_question_btn" ng-click="addNewQuestion()" aw-tool-tip="Create a new question" data-placement="top" data-original-title="" title="" disabled><i class="fa fa-plus fa-lg"></i> Add Question</button>'+
|
||||
'<div id="new_question"></div>'
|
||||
'<div id="new_question"></div></div></div>'
|
||||
// label: 'Survey Name',
|
||||
// type: 'text',
|
||||
// addRequired: true,
|
||||
// editRequired: true,
|
||||
// capitalize: false,
|
||||
// // column: 1
|
||||
},
|
||||
// survey_description: {
|
||||
// type: 'custom',
|
||||
// control: '<div class="col-sm-6"><div class="form-group">'+
|
||||
// '<label for="survey_description"><span class="label-text">Survey Description</span></label><div>'+
|
||||
// '<input type="text" ng-model="survey_description" name="survey_description" id="survey_maker_survey_description" class="form-control ng-pristine ng-valid">'+
|
||||
// '<div class="error api-error ng-binding" id="survey_maker-survey_description-api-error" ng-bind="survey_description_api_error"></div>'+
|
||||
// '</div></div></div></div>'
|
||||
|
||||
}
|
||||
// // label: 'Survey Description',
|
||||
// // type: 'text',
|
||||
// // addRequired: false,
|
||||
// // editRequired: false,
|
||||
// // column: 2
|
||||
// },
|
||||
// questions: {
|
||||
// type: 'custom',
|
||||
// control: '<label for="survey"><span class="label-text prepend-asterisk">Questions</span></label>'+
|
||||
// '<div id="survey_maker_question_area"></div><div id="finalized_questions"></div>'+
|
||||
// '<button style="display:none" type="button" class="btn btn-sm btn-primary" id="add_question_btn" ng-click="addNewQuestion()" aw-tool-tip="Create a new question" data-placement="top" data-original-title="" title="" disabled><i class="fa fa-plus fa-lg"></i> Add Question</button>'+
|
||||
// '<div id="new_question"></div>'
|
||||
|
||||
// }
|
||||
},
|
||||
|
||||
buttons: { //for now always generates <button> tags
|
||||
|
||||
@ -110,27 +110,27 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper',
|
||||
});
|
||||
|
||||
|
||||
scope.saveSurvey = function() {
|
||||
Wait('start');
|
||||
if(scope.mode==="add"){
|
||||
$('#survey-modal-dialog').dialog('close');
|
||||
scope.$emit('SurveySaved');
|
||||
}
|
||||
else{
|
||||
// var url = data.url+ 'survey_spec/';
|
||||
Rest.setUrl(url);
|
||||
Rest.post({ name: scope.survey_name, description: scope.survey_description, spec: scope.survey_questions })
|
||||
.success(function () {
|
||||
// Wait('stop');
|
||||
$('#survey-modal-dialog').dialog('close');
|
||||
scope.$emit('SurveySaved');
|
||||
})
|
||||
.error(function (data, status) {
|
||||
ProcessErrors(scope, data, status, form, { hdr: 'Error!',
|
||||
msg: 'Failed to add new survey. Post returned status: ' + status });
|
||||
});
|
||||
}
|
||||
};
|
||||
// scope.saveSurvey = function() {
|
||||
// Wait('start');
|
||||
// if(scope.mode==="add"){
|
||||
// $('#survey-modal-dialog').dialog('close');
|
||||
// scope.$emit('SurveySaved');
|
||||
// }
|
||||
// else{
|
||||
// // var url = data.url+ 'survey_spec/';
|
||||
// Rest.setUrl(url);
|
||||
// Rest.post({ name: scope.survey_name, description: scope.survey_description, spec: scope.survey_questions })
|
||||
// .success(function () {
|
||||
// // Wait('stop');
|
||||
// $('#survey-modal-dialog').dialog('close');
|
||||
// scope.$emit('SurveySaved');
|
||||
// })
|
||||
// .error(function (data, status) {
|
||||
// ProcessErrors(scope, data, status, form, { hdr: 'Error!',
|
||||
// msg: 'Failed to add new survey. Post returned status: ' + status });
|
||||
// });
|
||||
// }
|
||||
// };
|
||||
|
||||
Wait('start');
|
||||
if(scope.mode === 'add'){
|
||||
@ -222,11 +222,11 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper',
|
||||
scope.$emit('surveySaved');
|
||||
});
|
||||
|
||||
scope.saveSurvey = function() {
|
||||
Wait('start');
|
||||
$('#survey-modal-dialog').dialog('close');
|
||||
scope.$emit('SurveySaved');
|
||||
};
|
||||
// scope.saveSurvey = function() {
|
||||
// Wait('start');
|
||||
// $('#survey-modal-dialog').dialog('close');
|
||||
// scope.$emit('SurveySaved');
|
||||
// };
|
||||
};
|
||||
}])
|
||||
|
||||
@ -367,11 +367,11 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper',
|
||||
}])
|
||||
|
||||
/**
|
||||
* Delete a schedule. Prompts user to confirm delete
|
||||
* Delete a survey. Prompts user to confirm delete
|
||||
*
|
||||
* DeleteSchedule({
|
||||
* scope: $scope containing list of schedules
|
||||
* id: id of schedule to delete
|
||||
* DeleteSurvey({
|
||||
* scope: $scope containing list of survey form fields
|
||||
* id: id of job template that survey is attached to
|
||||
* callback: $scope.$emit label to call when delete is completed
|
||||
* })
|
||||
*
|
||||
@ -390,6 +390,9 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper',
|
||||
scope.removeSurveyDeleted();
|
||||
}
|
||||
scope.$on('SurveyDeleted', function(){
|
||||
scope.survey_name = "";
|
||||
scope.survey_description = "";
|
||||
scope.survey_questions = [];
|
||||
Wait('stop');
|
||||
$('#job_templates_delete_survey_btn').hide();
|
||||
$('#job_templates_edit_survey_btn').hide();
|
||||
@ -398,12 +401,8 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper',
|
||||
|
||||
|
||||
Wait('start');
|
||||
// scope.deleteSurvey = function() {
|
||||
// $location.path($location.path() + '/survey/add');
|
||||
|
||||
if(scope.mode==="add"){
|
||||
scope.survey_name = "";
|
||||
scope.survey_description = "";
|
||||
scope.survey_questions = [];
|
||||
scope.$emit("SurveyDeleted");
|
||||
|
||||
} else {
|
||||
@ -439,13 +438,15 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper',
|
||||
|
||||
|
||||
.factory('SurveyControllerInit', ['$location', 'DeleteSurvey', 'EditSurvey', 'AddSurvey', 'GenerateForm', 'SurveyQuestionForm', 'Wait', 'Alert',
|
||||
function($location, DeleteSurvey, EditSurvey, AddSurvey, GenerateForm, SurveyQuestionForm, Wait, Alert) {
|
||||
'GetBasePath', 'Rest', 'ProcessErrors' ,
|
||||
function($location, DeleteSurvey, EditSurvey, AddSurvey, GenerateForm, SurveyQuestionForm, Wait, Alert, GetBasePath, Rest, ProcessErrors) {
|
||||
return function(params) {
|
||||
var scope = params.scope,
|
||||
parent_scope = params.parent_scope,
|
||||
// parent_scope = params.parent_scope,
|
||||
id = params.id,
|
||||
iterator = (params.iterator) ? params.iterator : scope.iterator,
|
||||
base = $location.path().replace(/^\//, '').split('/')[0];
|
||||
url;
|
||||
// iterator = (params.iterator) ? params.iterator : scope.iterator,
|
||||
// base = $location.path().replace(/^\//, '').split('/')[0];
|
||||
|
||||
scope.survey_questions = [];
|
||||
scope.answer_types=[
|
||||
@ -548,22 +549,27 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper',
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
scope.refreshSchedules = function() {
|
||||
if (base === 'jobs') {
|
||||
parent_scope.refreshJobs();
|
||||
scope.saveSurvey = function() {
|
||||
Wait('start');
|
||||
if(scope.mode==="add"){
|
||||
$('#survey-modal-dialog').dialog('close');
|
||||
scope.$emit('SurveySaved');
|
||||
}
|
||||
else {
|
||||
scope.search(iterator);
|
||||
else{
|
||||
url = GetBasePath('job_templates') + id + '/survey_spec/';
|
||||
Rest.setUrl(url);
|
||||
Rest.post({ name: scope.survey_name, description: scope.survey_description, spec: scope.survey_questions })
|
||||
.success(function () {
|
||||
// Wait('stop');
|
||||
$('#survey-modal-dialog').dialog('close');
|
||||
scope.$emit('SurveySaved');
|
||||
})
|
||||
.error(function (data, status) {
|
||||
ProcessErrors(scope, data, status, { hdr: 'Error!',
|
||||
msg: 'Failed to add new survey. Post returned status: ' + status });
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
if (scope.removeSchedulesRefresh) {
|
||||
scope.removeSchedulesRefresh();
|
||||
}
|
||||
scope.$on('SchedulesRefresh', function() {
|
||||
scope.search(iterator);
|
||||
});
|
||||
};
|
||||
}])
|
||||
|
||||
|
||||
@ -2,6 +2,6 @@
|
||||
<div ng-cloak id="htmlTemplate"></div>
|
||||
<div ng-include="'/static/partials/schedule_dialog.html'"></div>
|
||||
<div ng-include="'/static/partials/logviewer.html'"></div>
|
||||
<div id="survey-modal-dialog">
|
||||
<div id="survey-modal-dialog"></div>
|
||||
<!-- <div id="edit-survey-modal-dialog" title="Edit Survey"> -->
|
||||
</div>
|
||||
Loading…
x
Reference in New Issue
Block a user