← Back to team overview

openerp-community-reviewer team mailing list archive

[Merge] lp:~therp-nl/web-addons/7.0-web_tree_many2one_clickable into lp:web-addons

 

Holger Brunn (Therp) has proposed merging lp:~therp-nl/web-addons/7.0-web_tree_many2one_clickable into lp:web-addons.

Requested reviews:
  Web-Addons Core Editors (webaddons-core-editors)

For more details, see:
https://code.launchpad.net/~therp-nl/web-addons/7.0-web_tree_many2one_clickable/+merge/197238

A widget restoring the old behavior of many2one fields in tree views
-- 
https://code.launchpad.net/~therp-nl/web-addons/7.0-web_tree_many2one_clickable/+merge/197238
Your team Web-Addons Core Editors is requested to review the proposed merge of lp:~therp-nl/web-addons/7.0-web_tree_many2one_clickable into lp:web-addons.
=== added directory 'web_tree_many2one_clickable'
=== added file 'web_tree_many2one_clickable/__init__.py'
--- web_tree_many2one_clickable/__init__.py	1970-01-01 00:00:00 +0000
+++ web_tree_many2one_clickable/__init__.py	2013-11-29 16:21:47 +0000
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    This module copyright (C) 2013 Therp BV (<http://therp.nl>).
+#
+#    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_tree_many2one_clickable/__openerp__.py'
--- web_tree_many2one_clickable/__openerp__.py	1970-01-01 00:00:00 +0000
+++ web_tree_many2one_clickable/__openerp__.py	2013-11-29 16:21:47 +0000
@@ -0,0 +1,52 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    This module copyright (C) 2013 Therp BV (<http://therp.nl>).
+#
+#    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" : "Clickable many2one widget for tree views",
+    "version" : "1.0",
+    "author" : "Therp BV",
+    "complexity": "normal",
+    "description": """
+This addon provides a widget to have many2one fields in a tree view open the
+linked resource::
+
+<field name="partner_id" widget="many2one_clickable" />
+
+will open the linked partner in a form view.
+    """,
+    "category" : "Dependency",
+    "depends" : [
+        'web',
+    ],
+    "data" : [
+    ],
+    "js": [
+        'static/src/js/web_tree_many2one_clickable.js',
+    ],
+    "css": [
+    ],
+    "qweb": [
+    ],
+    "auto_install": False,
+    "installable": True,
+    "external_dependencies" : {
+        'python' : [],
+    },
+}

=== added directory 'web_tree_many2one_clickable/static'
=== added directory 'web_tree_many2one_clickable/static/src'
=== added directory 'web_tree_many2one_clickable/static/src/css'
=== added directory 'web_tree_many2one_clickable/static/src/img'
=== added file 'web_tree_many2one_clickable/static/src/img/icon.png'
Binary files web_tree_many2one_clickable/static/src/img/icon.png	1970-01-01 00:00:00 +0000 and web_tree_many2one_clickable/static/src/img/icon.png	2013-11-29 16:21:47 +0000 differ
=== added directory 'web_tree_many2one_clickable/static/src/js'
=== added file 'web_tree_many2one_clickable/static/src/js/web_tree_many2one_clickable.js'
--- web_tree_many2one_clickable/static/src/js/web_tree_many2one_clickable.js	1970-01-01 00:00:00 +0000
+++ web_tree_many2one_clickable/static/src/js/web_tree_many2one_clickable.js	2013-11-29 16:21:47 +0000
@@ -0,0 +1,45 @@
+//-*- coding: utf-8 -*-
+//############################################################################
+//
+//   OpenERP, Open Source Management Solution
+//   This module copyright (C) 2013 Therp BV (<http://therp.nl>).
+//
+//   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_tree_many2one_clickable = function(openerp)
+{
+    openerp.web.list.columns.add(
+            'field.many2one_clickable',
+            'instance.web_tree_many2one_clickable.Many2OneClickable');
+    openerp.web_tree_many2one_clickable.Many2OneClickable = openerp.web.list.Column.extend({
+        _format: function (row_data, options)
+        {
+            var link = _.escape(row_data[this.id].value[1] || options.value_if_empty);
+            var code = "_.each(openerp.instances, function(instance) {\n" +
+                "instance.webclient.action_manager.do_action({" +
+                    "type: 'ir.actions.act_window', \n" +
+                    _.str.sprintf("res_model: '%s',\n", this.relation) +
+                    _.str.sprintf("res_id: %s,\n", row_data[this.id].value[0]) +
+                    "views: [[false, 'form']],\n" +
+                    "target: 'current'\n" +
+                "})})";
+            link = _.str.sprintf('<a class="oe_form_uri" onclick="%s">%s</a>',
+                code,
+                link)
+            return link;
+        },
+    });
+}

=== added directory 'web_tree_many2one_clickable/static/src/xml'

Follow ups