Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 | 265x 265x 322x 322x 322x 231x 231x 231x 231x 231x 231x 231x 231x 150x 150x 150x | 'use strict';
/**
* Save extension
*
* @author Julien Sanchez <julien@akeneo.com>
* @copyright 2015 Akeneo SAS (http://www.akeneo.com)
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
*/
define(
[
'jquery',
'underscore',
'oro/translator',
'pim/form/common/save',
'oro/messenger',
'pim/saver/product',
'pim/field-manager',
'pim/i18n',
'pim/user-context'
],
function (
$,
_,
__,
BaseSave,
messenger,
ProductSaver,
FieldManager,
i18n,
UserContext
) {
return BaseSave.extend({
updateSuccessMessage: __('pim_enrich.entity.product.flash.update.success'),
updateFailureMessage: __('pim_enrich.entity.product.flash.update.fail'),
configure: function () {
this.listenTo(this.getRoot(), 'pim_enrich:form:change-family:after', this.save);
this.listenTo(this.getRoot(), 'pim_enrich:form:update-association', this.save);
return BaseSave.prototype.configure.apply(this, arguments);
},
/**
* {@inheritdoc}
*/
save: function (options) {
var product = $.extend(true, {}, this.getFormData());
var productId = product.meta.id;
delete product.meta;
var notReadyFields = FieldManager.getNotReadyFields();
Iif (0 < notReadyFields.length) {
var fieldLabels = _.map(notReadyFields, function (field) {
return i18n.getLabel(
field.attribute.label,
UserContext.get('catalogLocale'),
field.attribute.code
);
});
messenger.notify(
'error',
__('pim_enrich.entity.product.flash.update.fields_not_ready', {
'fields': fieldLabels.join(', ')
})
);
return;
}
this.showLoadingMask();
this.getRoot().trigger('pim_enrich:form:entity:pre_save');
return ProductSaver
.save(productId, product)
.then(function (data) {
this.postSave();
this.setData(data, options);
this.getRoot().trigger('pim_enrich:form:entity:post_fetch', data);
}.bind(this))
.fail(this.fail.bind(this))
.always(this.hideLoadingMask.bind(this));
}
});
}
);
|