From f2d03121ab3cc6b7df09f582505820d4cb511652 Mon Sep 17 00:00:00 2001 From: "Atik Agewan (OpenERP)" Date: Wed, 27 Jul 2011 15:33:12 +0530 Subject: [PATCH 1/3] [IMP] Assosiation: When Assosiation install -project_gtd and hr_expense fields are shown only one time bzr revid: aag@tinyerp.com-20110727100312-ls17y3s9oyxm5lgl --- addons/association/profile_association.py | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/addons/association/profile_association.py b/addons/association/profile_association.py index 8a528177a30..605601da739 100644 --- a/addons/association/profile_association.py +++ b/addons/association/profile_association.py @@ -18,7 +18,7 @@ # along with this program. If not, see . # ############################################################################## - +from lxml import etree from osv import fields, osv class profile_association_config_install_modules_wizard(osv.osv_memory): @@ -35,5 +35,24 @@ class profile_association_config_install_modules_wizard(osv.osv_memory): "to keep track of business knowledge and share it with " "and between your employees."), } + + def fields_view_get(self, cr, user, view_id=None, view_type='form', context=None, toolbar=False, submenu=False): + res = super(profile_association_config_install_modules_wizard, self).fields_view_get(cr, user, view_id, view_type, context, toolbar=toolbar, submenu=submenu) + doc = etree.XML(res['arch']) + nodes_gtd = doc.xpath("//field[@name='project_gtd']") + nodes_exp = doc.xpath("//field[@name='hr_expense']") + count_gtd = 0.0 + count_exp = 0.0 + for node in nodes_gtd: + count_gtd = count_gtd + 1 + if count_gtd > 1 : + node.set('invisible', '1') + for node in nodes_exp: + count_exp = count_exp + 1 + if count_exp > 1 : + node.set('invisible', '1') + res['arch'] = etree.tostring(doc) + return res + profile_association_config_install_modules_wizard() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: From e96061b31a287854f985cc9b9bfccae9f0a75199 Mon Sep 17 00:00:00 2001 From: "Atik Agewan (OpenERP)" Date: Wed, 27 Jul 2011 18:55:17 +0530 Subject: [PATCH 2/3] [IMP] Assosiation: Optimize code of field_view_get bzr revid: aag@tinyerp.com-20110727132517-j32ctm6550zn7f4w --- addons/association/profile_association.py | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/addons/association/profile_association.py b/addons/association/profile_association.py index 605601da739..9f2f03f2db6 100644 --- a/addons/association/profile_association.py +++ b/addons/association/profile_association.py @@ -21,6 +21,7 @@ from lxml import etree from osv import fields, osv + class profile_association_config_install_modules_wizard(osv.osv_memory): _inherit = 'base.setup.installer' @@ -39,18 +40,12 @@ class profile_association_config_install_modules_wizard(osv.osv_memory): def fields_view_get(self, cr, user, view_id=None, view_type='form', context=None, toolbar=False, submenu=False): res = super(profile_association_config_install_modules_wizard, self).fields_view_get(cr, user, view_id, view_type, context, toolbar=toolbar, submenu=submenu) doc = etree.XML(res['arch']) - nodes_gtd = doc.xpath("//field[@name='project_gtd']") - nodes_exp = doc.xpath("//field[@name='hr_expense']") - count_gtd = 0.0 - count_exp = 0.0 - for node in nodes_gtd: - count_gtd = count_gtd + 1 - if count_gtd > 1 : - node.set('invisible', '1') - for node in nodes_exp: - count_exp = count_exp + 1 - if count_exp > 1 : - node.set('invisible', '1') + for module in ['project_gtd','hr_expense']: + count = 0 + for node in doc.xpath("//field[@name='%s']" % (module)): + count = count + 1 + if count > 1: + node.set('invisible', '1') res['arch'] = etree.tostring(doc) return res From 0703b995ad81c23182af26085dfa870114075072 Mon Sep 17 00:00:00 2001 From: "Atik Agewan (OpenERP)" Date: Wed, 27 Jul 2011 19:00:25 +0530 Subject: [PATCH 3/3] [IMP] Assosiation: Optimize code of field_view_get bzr revid: aag@tinyerp.com-20110727133025-st0dbcof70x3eip0 --- addons/association/profile_association.py | 1 - 1 file changed, 1 deletion(-) diff --git a/addons/association/profile_association.py b/addons/association/profile_association.py index 9f2f03f2db6..a25b82f8de1 100644 --- a/addons/association/profile_association.py +++ b/addons/association/profile_association.py @@ -21,7 +21,6 @@ from lxml import etree from osv import fields, osv - class profile_association_config_install_modules_wizard(osv.osv_memory): _inherit = 'base.setup.installer'