summaryrefslogtreecommitdiff
path: root/addons/base_setup/static/src/js/res_config_dev_tool.js
blob: 7638d4f05752b7e3ebe071c9009af2dbbda1f09a (plain)
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
odoo.define('base_setup.ResConfigDevTool', function (require) {
    "use strict";

    var config = require('web.config');
    var Widget = require('web.Widget');
    var widget_registry = require('web.widget_registry');

    var ResConfigDevTool = Widget.extend({
        template: 'res_config_dev_tool',
        events: {
            'click .o_web_settings_force_demo': '_onClickForceDemo',
        },

        init: function () {
            this._super.apply(this, arguments);
            this.isDebug = config.isDebug();
            this.isAssets = config.isDebug("assets");
            this.isTests = config.isDebug("tests");
        },

        willStart: function () {
            var self = this;
            return this._super.apply(this, arguments).then(function () {
                return self._rpc({
                    route: '/base_setup/demo_active',
                }).then(function (demo_active) {
                    self.demo_active = demo_active;
                });
            });
        },

        //--------------------------------------------------------------------------
        // Handlers
        //--------------------------------------------------------------------------

        /**
         * Forces demo data to be installed in a database without demo data installed.
         *
         * @private
         * @param {MouseEvent} ev
         */
        _onClickForceDemo: function (ev) {
            ev.preventDefault();
            this.do_action('base.demo_force_install_action');
        },
    });

    widget_registry.add('res_config_dev_tool', ResConfigDevTool);
});