openerp-community-reviewer team mailing list archive
-
openerp-community-reviewer team
-
Mailing list archive
-
Message #04731
[Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
Augustin Cisterne-Kaas - www.elico-corp.com has proposed merging lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons.
Requested reviews:
Web-Addons Core Editors (webaddons-core-editors)
For more details, see:
https://code.launchpad.net/~ajite/web-addons/7.0-web-addons-add-0001/+merge/210620
Added a polymorphic widget based on many2one widget (different from reference field).
Use case available at https://www.openerp.com/apps/7.0/mail_organizer/
--
https://code.launchpad.net/~ajite/web-addons/7.0-web-addons-add-0001/+merge/210620
Your team Web-Addons Core Editors is requested to review the proposed merge of lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons.
=== added directory 'web_polymorphic'
=== added file 'web_polymorphic/__init__.py'
--- web_polymorphic/__init__.py 1970-01-01 00:00:00 +0000
+++ web_polymorphic/__init__.py 2014-03-12 14:33:28 +0000
@@ -0,0 +1,21 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (c) 2010-2014 Elico Corp. All Rights Reserved.
+# Augustin Cisterne-Kaas <augustin.cisterne-kaas@xxxxxxxxxxxxxx>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
=== added file 'web_polymorphic/__openerp__.py'
--- web_polymorphic/__openerp__.py 1970-01-01 00:00:00 +0000
+++ web_polymorphic/__openerp__.py 2014-03-12 14:33:28 +0000
@@ -0,0 +1,43 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (c) 2010-2014 Elico Corp. All Rights Reserved.
+# Augustin Cisterne-Kaas <augustin.cisterne-kaas@xxxxxxxxxxxxxx>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+{'name': 'Web Polymorphic',
+ 'version': '0.1',
+ 'category': 'Web',
+ 'depends': ['web'],
+ 'author': 'Elico Corp',
+ 'license': 'AGPL-3',
+ 'website': 'https://www.elico-corp.com',
+ 'description': """
+Add a new widget named "polymorphic"
+The polymorphic field allow to dynamically store an id linked to any model in
+OpenERP instead of the usual fixed one in the view definition
+
+E.g:
+
+<field name="model" invisible="1" />
+<field name="object_id" widget="polymorphic" polymorphic="model" />
+""",
+ 'js': [
+ 'static/src/js/view_form.js'
+ ],
+ 'installable': True,
+ 'application': False}
=== added directory 'web_polymorphic/static'
=== added directory 'web_polymorphic/static/src'
=== added directory 'web_polymorphic/static/src/js'
=== added file 'web_polymorphic/static/src/js/view_form.js'
--- web_polymorphic/static/src/js/view_form.js 1970-01-01 00:00:00 +0000
+++ web_polymorphic/static/src/js/view_form.js 2014-03-12 14:33:28 +0000
@@ -0,0 +1,47 @@
+/******************************************************************************
+*
+* OpenERP, Open Source Management Solution
+* Copyright (c) 2010-2014 Elico Corp. All Rights Reserved.
+* Augustin Cisterne-Kaas <augustin.cisterne-kaas@xxxxxxxxxxxxxx>
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Affero General Public License as
+* published by the Free Software Foundation, either version 3 of the
+* License, or (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Affero General Public License for more details.
+*
+* You should have received a copy of the GNU Affero General Public License
+* along with this program. If not, see <http://www.gnu.org/licenses/>.
+*
+******************************************************************************/
+openerp.web_polymorphic = function (instance) {
+ instance.web.form.FieldPolymorphic = instance.web.form.FieldMany2One.extend( {
+ template: "FieldMany2One",
+ events: {
+ 'focus input': function(e) {
+ this.field.relation = this.field_manager.get_field_value(this.polymorphic);
+ },
+ 'click input': function(e) {
+ this.field.relation = this.field_manager.get_field_value(this.polymorphic);
+ }
+ },
+ init: function(field_manager, node) {
+ this._super(field_manager, node);
+ this.polymorphic = this.node.attrs.polymorphic;
+ },
+ render_editable: function() {
+ var self = this;
+ this.$drop_down = this.$el.find(".oe_m2o_drop_down_button");
+ this.$drop_down.click(function() {
+ self.polymorphic = self.node.attrs.polymorphic;
+ self.field.relation = self.field_manager.get_field_value(self.polymorphic);
+ });
+ this._super();
+ }
+ });
+ instance.web.form.widgets.add('polymorphic', 'instance.web.form.FieldPolymorphic')
+};
Follow ups
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Augustin Cisterne-Kaas - www.elico-corp.com, 2014-06-22
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Sylvain LE GAL (GRAP), 2014-06-20
-
[Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: noreply, 2014-06-20
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Guewen Baconnier @ Camptocamp, 2014-06-20
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Augustin Cisterne-Kaas - www.elico-corp.com, 2014-05-15
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Stefan Rijnhart (Therp), 2014-05-07
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Augustin Cisterne-Kaas - www.elico-corp.com, 2014-05-07
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Holger Brunn (Therp), 2014-04-28
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Stefan Rijnhart (Therp), 2014-04-24
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Augustin Cisterne-Kaas - www.elico-corp.com, 2014-04-22
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Stefan Rijnhart (Therp), 2014-04-21
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Augustin Cisterne-Kaas - www.elico-corp.com, 2014-04-11
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Augustin Cisterne-Kaas - www.elico-corp.com, 2014-04-02
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Augustin Cisterne-Kaas - www.elico-corp.com, 2014-03-14
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Augustin Cisterne-Kaas - www.elico-corp.com, 2014-03-13
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Sylvain LE GAL (GRAP), 2014-03-13
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Augustin Cisterne-Kaas - www.elico-corp.com, 2014-03-13
-
Re: [Merge] lp:~ajite/web-addons/7.0-web-addons-add-0001 into lp:web-addons
From: Sylvain LE GAL (GRAP), 2014-03-13