Hack copying of job_template.related.survey_spec into ui job copy flow,

resolves #3737
This commit is contained in:
Leigh Johnson
2016-10-19 12:45:22 -05:00
parent b43945b0f2
commit ec140fb7da

View File

@@ -5,39 +5,56 @@
*************************************************/ *************************************************/
export default export default
['$rootScope', 'Rest', 'ProcessErrors', 'GetBasePath', 'moment', ['$rootScope', 'Rest', 'ProcessErrors', 'GetBasePath', 'moment',
function($rootScope, Rest, ProcessErrors, GetBasePath, moment){ function($rootScope, Rest, ProcessErrors, GetBasePath, moment){
return { return {
get: function(id){ get: function(id){
var defaultUrl = GetBasePath('job_templates') + '?id=' + id; var defaultUrl = GetBasePath('job_templates') + '?id=' + id;
Rest.setUrl(defaultUrl); Rest.setUrl(defaultUrl);
return Rest.get() return Rest.get()
.success(function(res){ .success(function(res){
return res; return res;
}) })
.error(function(res, status){ .error(function(res, status){
ProcessErrors($rootScope, res, status, null, {hdr: 'Error!', ProcessErrors($rootScope, res, status, null, {hdr: 'Error!',
msg: 'Call to '+ defaultUrl + ' failed. Return status: '+ status}); msg: 'Call to '+ defaultUrl + ' failed. Return status: '+ status});
}); });
}, },
set: function(data){ getSurvey: function(endpoint){
var defaultUrl = GetBasePath('job_templates'); Rest.setUrl(endpoint);
Rest.setUrl(defaultUrl); return Rest.get();
var name = this.buildName(data.results[0].name); },
data.results[0].name = name + ' @ ' + moment().format('h:mm:ss a'); // 2:49:11 pm copySurvey: function(source, target){
return Rest.post(data.results[0]) return this.getSurvey(source.related.survey_spec).success( (data) => {
.success(function(res){ Rest.setUrl(target.related.survey_spec);
return res; return Rest.post(data);
}) });
.error(function(res, status){ },
ProcessErrors($rootScope, res, status, null, {hdr: 'Error!', set: function(data){
msg: 'Call to '+ defaultUrl + ' failed. Return status: '+ status}); var defaultUrl = GetBasePath('job_templates');
}); var self = this;
}, Rest.setUrl(defaultUrl);
buildName: function(name){ var name = this.buildName(data.results[0].name);
var result = name.split('@')[0]; data.results[0].name = name + ' @ ' + moment().format('h:mm:ss a'); // 2:49:11 pm
return result; return Rest.post(data.results[0])
} .success(function(job_template_res){
}; // also copy any associated survey_spec
} if (data.results[0].related.survey_spec){
]; return self.copySurvey(data.results[0], job_template_res).success( () => job_template_res);
}
else{
return job_template_res;
}
})
.error(function(res, status){
ProcessErrors($rootScope, res, status, null, {hdr: 'Error!',
msg: 'Call to '+ defaultUrl + ' failed. Return status: '+ status});
});
},
buildName: function(name){
var result = name.split('@')[0];
return result;
}
};
}
];