diff options
| author | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
|---|---|---|
| committer | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
| commit | 3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch) | |
| tree | a44932296ef4a9b71d5f010906253d8c53727726 /addons/website_livechat/static/src/js/website_livechat.editor.js | |
| parent | 0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff) | |
initial commit 2
Diffstat (limited to 'addons/website_livechat/static/src/js/website_livechat.editor.js')
| -rw-r--r-- | addons/website_livechat/static/src/js/website_livechat.editor.js | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/addons/website_livechat/static/src/js/website_livechat.editor.js b/addons/website_livechat/static/src/js/website_livechat.editor.js new file mode 100644 index 00000000..288f2af0 --- /dev/null +++ b/addons/website_livechat/static/src/js/website_livechat.editor.js @@ -0,0 +1,51 @@ +odoo.define('website_livechat.editor', function (require) { +'use strict'; + +var core = require('web.core'); +var wUtils = require('website.utils'); +var WebsiteNewMenu = require('website.newMenu'); + +var _t = core._t; + +WebsiteNewMenu.include({ + actions: _.extend({}, WebsiteNewMenu.prototype.actions || {}, { + new_channel: '_createNewChannel', + }), + + //-------------------------------------------------------------------------- + // Actions + //-------------------------------------------------------------------------- + + /** + * Asks the user information about a new channel to create, then creates it + * and redirects the user to this new channel. + * + * @private + * @returns {Promise} Unresolved if there is a redirection + */ + _createNewChannel: function () { + var self = this; + return wUtils.prompt({ + window_title: _t("New Channel"), + input: _t("Name"), + }).then(function (result) { + var name = result.val; + if (!name) { + return; + } + return self._rpc({ + model: 'im_livechat.channel', + method: 'create_and_get_website_url', + args: [[]], + kwargs: { + name: name, + }, + }).then(function (url) { + window.location.href = url; + return new Promise(function () {}); + }); + }); + }, +}); + +}); |
