diff options
| author | Géry Debongnie <ged@odoo.com> | 2017-03-05 10:05:56 +0100 |
|---|---|---|
| committer | Aaron Bohy <aab@odoo.com> | 2017-04-11 19:44:38 +0200 |
| commit | 905e01921f3c3ef43ace6fc537d1d8c0d280002c (patch) | |
| tree | 265c43ab21c5401a5d9f0f3d64d86f1ac417451c /addons/web/static/src/js/widgets/loading.js | |
| parent | 54d4c73af4ad05c7640d28c1892247c9538b8017 (diff) | |
[REF] web, *: redesign all JS views
This commit introduce a full redesign of all JS views. We started
basically from scratch. The goal was to unify all the various views
under a common framework, to make them testable, to make then usable in
different conditions (in studio, or in the frontend), and to make our
lives easier.
Some important points are:
- we introduced new coding guidelines (camelCase, 80 chars width, ...)
- we have a brand new testing framework (still QUnit based)
- kanban view moved to the web addon
- calendar view (formerly web_calender) moved to web as well
- the tree view was removed
- all new code should be documented
We hope that this code is the start of a new era for the Odoo web
client, we want to have a high quality codebase, well documented, well
tested, well designed.
Work done by the framework team: mostly aab, ged, chm, dmo, qsm
Diffstat (limited to 'addons/web/static/src/js/widgets/loading.js')
| -rw-r--r-- | addons/web/static/src/js/widgets/loading.js | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/addons/web/static/src/js/widgets/loading.js b/addons/web/static/src/js/widgets/loading.js deleted file mode 100644 index 645287ecf80..00000000000 --- a/addons/web/static/src/js/widgets/loading.js +++ /dev/null @@ -1,67 +0,0 @@ -odoo.define('web.Loading', function (require) { -"use strict"; - -var core = require('web.core'); -var framework = require('web.framework'); -var session = require('web.session'); -var Widget = require('web.Widget'); - -var _t = core._t; - -var Loading = Widget.extend({ - template: "Loading", - - init: function(parent) { - this._super(parent); - this.count = 0; - this.blocked_ui = false; - session.on("request", this, this.request_call); - session.on("response", this, this.response_call); - session.on("response_failed", this, this.response_call); - }, - destroy: function() { - this.on_rpc_event(-this.count); - this._super(); - }, - request_call: function() { - this.on_rpc_event(1); - }, - response_call: function() { - this.on_rpc_event(-1); - }, - on_rpc_event : function(increment) { - var self = this; - if (!this.count && increment === 1) { - // Block UI after 3s - this.long_running_timer = setTimeout(function () { - self.blocked_ui = true; - framework.blockUI(); - }, 3000); - } - - this.count += increment; - if (this.count > 0) { - if (session.debug) { - this.$el.text(_.str.sprintf( _t("Loading (%d)"), this.count)); - } else { - this.$el.text(_t("Loading")); - } - this.$el.show(); - this.getParent().$el.addClass('oe_wait'); - } else { - this.count = 0; - clearTimeout(this.long_running_timer); - // Don't unblock if blocked by somebody else - if (self.blocked_ui) { - this.blocked_ui = false; - framework.unblockUI(); - } - this.$el.fadeOut(); - this.getParent().$el.removeClass('oe_wait'); - } - } -}); - -return Loading; -}); - |
