mirror of
https://github.com/OCA/web.git
synced 2025-02-22 13:21:25 +02:00
[ADD] web_confirm_duplicate
This commit is contained in:
38
web_confirm_duplicate/static/src/js/form_controller.js
Normal file
38
web_confirm_duplicate/static/src/js/form_controller.js
Normal file
@@ -0,0 +1,38 @@
|
||||
/* Copyright 2022 ForgeFlow S.L.
|
||||
* License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */
|
||||
odoo.define("web_confirm_duplicate", function(require) {
|
||||
"use strict";
|
||||
|
||||
var FormController = require("web.FormController");
|
||||
var Dialog = require("web.Dialog");
|
||||
var _t = require("web.core")._t;
|
||||
|
||||
FormController.include({
|
||||
init: function(parent, model, renderer, params) {
|
||||
this._super.apply(this, arguments);
|
||||
this.confirmOnDuplicate = params.confirmOnDuplicate;
|
||||
},
|
||||
|
||||
_onDuplicateRecord: function() {
|
||||
var self = this;
|
||||
function doIt() {
|
||||
self.model.duplicateRecord(self.handle).then(function(handle) {
|
||||
self.handle = handle;
|
||||
self._updateEnv();
|
||||
self._setMode("edit");
|
||||
});
|
||||
}
|
||||
if (this.confirmOnDuplicate) {
|
||||
Dialog.confirm(
|
||||
this,
|
||||
_t("Are you sure you want to duplicate this record ?"),
|
||||
{
|
||||
confirm_callback: doIt,
|
||||
}
|
||||
);
|
||||
} else {
|
||||
return self._super.apply(this, arguments);
|
||||
}
|
||||
},
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user