From 136292f6890ff730b5a9fd70eb503d4f6a0f9c4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9ry=20Debongnie?= Date: Thu, 23 Feb 2017 10:36:13 +0100 Subject: [REF] web, *: move CompoundContext out of data.js We want to remove data.js, but we still need the CompoundContext class, so we take it out, and rename it 'Context' --- addons/web/static/src/js/_deprecated/data.js | 36 +++------------------- addons/web/static/src/js/_deprecated/data_model.js | 5 +-- 2 files changed, 8 insertions(+), 33 deletions(-) (limited to 'addons/web/static/src/js/_deprecated') diff --git a/addons/web/static/src/js/_deprecated/data.js b/addons/web/static/src/js/_deprecated/data.js index 090325b0057..66469ff1374 100644 --- a/addons/web/static/src/js/_deprecated/data.js +++ b/addons/web/static/src/js/_deprecated/data.js @@ -2,6 +2,7 @@ odoo.define('web.data', function (require) { "use strict"; var Class = require('web.Class'); +var Context = require('web.Context'); var concurrency = require('web.concurrency'); var mixins = require('web.mixins'); var Model = require('web.Model'); @@ -68,7 +69,7 @@ var Query = Class.extend({ q._filter, to_set.filter); break; case 'context': - q._context = new CompoundContext( + q._context = new Context( q._context, to_set.context); break; case 'lazy': @@ -379,7 +380,7 @@ var DataSet = Class.extend(mixins.PropertiesMixin, { if (options.check_access_rule === true){ method = 'search_read'; ids_arg = [['id', 'in', ids]]; - context = new CompoundContext(context, {active_test: false}); + context = new Context(context, {active_test: false}); } return this._model.call(method, [ids_arg, fields || false], @@ -729,32 +730,6 @@ var DataSetSearch = DataSet.extend({ } }); -var CompoundContext = Class.extend({ - init: function () { - this.__ref = "compound_context"; - this.__contexts = []; - this.__eval_context = null; - var self = this; - _.each(arguments, function(x) { - self.add(x); - }); - }, - add: function (context) { - this.__contexts.push(context); - return this; - }, - set_eval_context: function (eval_context) { - this.__eval_context = eval_context; - return this; - }, - get_eval_context: function () { - return this.__eval_context; - }, - eval: function() { - return pyeval.eval('context', this); - }, -}); - var CompoundDomain = Class.extend({ init: function () { this.__ref = "compound_domain"; @@ -799,13 +774,13 @@ function build_eval_context (record) { field_values.active_ids = [record.data.id]; } // FIXME: parent? - return new CompoundContext(field_values); + return new Context(field_values); } function build_context(record, context) { context = context || {}; var eval_context = build_eval_context(record); - return new CompoundContext(context).set_eval_context(eval_context); + return new Context(context).set_eval_context(eval_context); } function build_domain(record, domain) { @@ -819,7 +794,6 @@ return { DataSet: DataSet, DataSetStatic: DataSetStatic, DataSetSearch: DataSetSearch, - CompoundContext: CompoundContext, CompoundDomain: CompoundDomain, noDisplayContent: "" + _t("Unnamed") + "", build_context: build_context, diff --git a/addons/web/static/src/js/_deprecated/data_model.js b/addons/web/static/src/js/_deprecated/data_model.js index f722339167f..3bae06a3f4c 100644 --- a/addons/web/static/src/js/_deprecated/data_model.js +++ b/addons/web/static/src/js/_deprecated/data_model.js @@ -1,6 +1,7 @@ odoo.define('web.DataModel', function (require) { "use strict"; +var Context = require('web.Context'); var data = require('web.data'); var Model = require('web.Model'); var pyeval = require('web.pyeval'); @@ -31,10 +32,10 @@ Model.include({ * combined with the provided context if any * * @param {Object} [context] to combine with the model's internal context - * @returns {instance.web.CompoundContext} The union of the user's context and the model's internal context, as well as the provided context if any. In that order. + * @returns {web.Context} The union of the user's context and the model's internal context, as well as the provided context if any. In that order. */ context: function (context) { - return new data.CompoundContext(session.user_context, this._context, context || {}); + return new Context(session.user_context, this._context, context || {}); }, /** * Call a method (over RPC) on the bound OpenERP model. -- cgit v1.2.3