| Current Path : /var/www/clients/client3/web2/web/vendor/magento/module-ui/view/base/web/js/modal/ |
| Current File : /var/www/clients/client3/web2/web/vendor/magento/module-ui/view/base/web/js/modal/confirm.js |
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
/**
* @api
*/
define([
'jquery',
'underscore',
'mage/translate',
'jquery-ui-modules/widget',
'Magento_Ui/js/modal/modal'
], function ($, _, $t) {
'use strict';
$.widget('mage.confirm', $.mage.modal, {
options: {
modalClass: 'confirm',
title: '',
focus: '.action-accept',
actions: {
/**
* Callback always - called on all actions.
*/
always: function () {},
/**
* Callback confirm.
*/
confirm: function () {},
/**
* Callback cancel.
*/
cancel: function () {}
},
buttons: [{
text: $t('Cancel'),
class: 'action-secondary action-dismiss',
/**
* Click handler.
*/
click: function (event) {
this.closeModal(event);
}
}, {
text: $t('OK'),
class: 'action-primary action-accept',
/**
* Click handler.
*/
click: function (event) {
this.closeModal(event, true);
}
}]
},
/**
* Create widget.
*/
_create: function () {
this._super();
this.modal.find(this.options.modalCloseBtn).off().on('click', _.bind(this.closeModal, this));
this.openModal();
},
/**
* Remove modal window.
*/
_remove: function () {
this.modal.remove();
},
/**
* Open modal window.
*/
openModal: function () {
return this._super();
},
/**
* Close modal window.
*/
closeModal: function (event, result) {
result = result || false;
if (result) {
this.options.actions.confirm(event);
} else {
this.options.actions.cancel(event);
}
this.options.actions.always(event);
this.element.on('confirmclosed', _.bind(this._remove, this));
return this._super();
}
});
return function (config) {
return $('<div></div>').html(config.content).confirm(config);
};
});