From f70b73f2442434f863e6825896a856f903d2c3df Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 8 Feb 2012 14:06:51 +0100 Subject: [PATCH] [FIX] get_any with inheritance bzr revid: xmo@openerp.com-20120208130651-7mdv7p1qcfgxczon --- addons/web/static/src/js/core.js | 17 ++++++++++++++++- addons/web/static/test/registry.js | 18 ++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/addons/web/static/src/js/core.js b/addons/web/static/src/js/core.js index 45e682d8bdf..887d57bd747 100644 --- a/addons/web/static/src/js/core.js +++ b/addons/web/static/src/js/core.js @@ -290,6 +290,21 @@ openerp.web.Registry = openerp.web.Class.extend( /** @lends openerp.web.Registry } return object_match; }, + /** + * Checks if the registry contains an object mapping for this key. + * + * @param {String} key key to look for + */ + contains: function (key) { + if (key === undefined) { return false; } + if (key in this.map) { + return true + } + if (this.parent) { + return this.parent.contains(key); + } + return false; + }, /** * Tries a number of keys, and returns the first object matching one of * the keys. @@ -303,7 +318,7 @@ openerp.web.Registry = openerp.web.Class.extend( /** @lends openerp.web.Registry get_any: function (keys) { for (var i=0; i