56 lines
1.2 KiB
JavaScript
56 lines
1.2 KiB
JavaScript
/*global _, Backbone, jQuery, WpmlTmEditorModel, ajaxurl */
|
|
|
|
var WPML_TM = WPML_TM || {};
|
|
|
|
(function () {
|
|
"use strict";
|
|
|
|
WPML_TM.editorJob = Backbone.Model.extend({
|
|
fetch: function (successCallback) {
|
|
var self = this;
|
|
|
|
_.each(WpmlTmEditorModel.fields, function (field) {
|
|
field.field_finished = parseInt(field.field_finished, 10);
|
|
self.set(field.field_type, field.field_data);
|
|
self.set(field.field_type + '_raw', field);
|
|
});
|
|
self.set('layout', WpmlTmEditorModel.layout);
|
|
successCallback();
|
|
},
|
|
save: function (data) {
|
|
var self = this;
|
|
jQuery.ajax(
|
|
{
|
|
type: "POST",
|
|
url: self.url(),
|
|
dataType: 'json',
|
|
data: {
|
|
data: data,
|
|
action: 'wpml_save_job_ajax',
|
|
_icl_nonce: self.get('nonce')
|
|
},
|
|
success: function (response) {
|
|
if (response.success) {
|
|
self.trigger('saveJobSuccess');
|
|
} else {
|
|
self.trigger('saveJobFailed');
|
|
}
|
|
}
|
|
});
|
|
},
|
|
progressPercentage: function () {
|
|
|
|
return jQuery('.icl_tm_finished:checked:visible').length / jQuery('.icl_tm_finished:visible').length * 100;
|
|
},
|
|
/**
|
|
* Overrides the BackBone url method to use the WordPress ajax endpoint
|
|
*
|
|
* @returns {String}
|
|
*/
|
|
url: function () {
|
|
|
|
return ajaxurl;
|
|
}
|
|
});
|
|
}());
|
|
|