From f449ab66d9224a7f6aa9e11ded9959191e0bd218 Mon Sep 17 00:00:00 2001 From: "Rajesh Prajapati (OpenERP)" Date: Fri, 22 Mar 2013 17:58:59 +0530 Subject: [PATCH] [IMP] google_docs : Made changes as per the review of RPA on 21th march bzr revid: rpr@tinyerp.com-20130322122859-2s1wd5tba9u58g5f --- addons/google_docs/google_docs.py | 24 +++++++++++++++------ addons/google_docs/google_docs_demo.xml | 3 ++- addons/google_docs/res_config_user_view.xml | 11 +++++----- 3 files changed, 26 insertions(+), 12 deletions(-) diff --git a/addons/google_docs/google_docs.py b/addons/google_docs/google_docs.py index d487d31c0d6..f88d408b253 100644 --- a/addons/google_docs/google_docs.py +++ b/addons/google_docs/google_docs.py @@ -235,7 +235,7 @@ class config(osv.osv): return result _columns = { - 'name' : fields.char('Name', required=True, size=1024), + 'name' : fields.char('Template Name', required=True, size=1024), 'model_id': fields.many2one('ir.model', 'Model', required=True), 'filter_id' : fields.many2one('ir.filters', 'Filter'), 'gdocs_template_url': fields.char('Template URL', required=True, size=1024), @@ -243,14 +243,10 @@ class config(osv.osv): 'name_template': fields.char('Google Drive Name Pattern', size=64, help='Choose how the new google drive will be named, on google side. Eg. gdoc_%(field_name)s', required=True), } - def onchange_model_id(self, cr, uid, ids, model_id, filter_id, context=None): + def onchange_model_id(self, cr, uid, ids, model_id, context=None): res = {'domain':{'filter_id':[]}} if model_id: model_name = self.pool.get('ir.model').read(cr, uid, model_id, ['model']) - if filter_id: - filter = self.pool.get('ir.filters').read(cr, uid, filter_id, ['model_id']) - if not model_name['model'] == filter['model_id']: - raise osv.except_osv(_('Warning!'), _('Filter does not match with selected Model!')) if model_name: mod_name = model_name['model'] res['domain'] = {'filter_id': [('model_id', '=', mod_name)]} @@ -262,4 +258,20 @@ class config(osv.osv): 'name_template': '%(name)s_model_filter_gdoc', } + def _check_model_id(self, cr, uid, ids, context=None): + pool_id = self.browse(cr, uid, ids[0], context=context) + model_id = pool_id.model_id.id + filter_id = pool_id.filter_id.id + if model_id: + model_name = self.pool.get('ir.model').read(cr, uid, model_id, ['model']) + if filter_id: + filter = self.pool.get('ir.filters').read(cr, uid, filter_id, ['model_id']) + if model_name['model'] != filter['model_id']: + return False + return True + + _constraints = [ + (_check_model_id, 'The model or filter chosen have not matched.', ['model_id','filter_id']), + ] + config() diff --git a/addons/google_docs/google_docs_demo.xml b/addons/google_docs/google_docs_demo.xml index 4f63aa0955c..36e5f4fb227 100644 --- a/addons/google_docs/google_docs_demo.xml +++ b/addons/google_docs/google_docs_demo.xml @@ -7,7 +7,8 @@ Sales Department crm.lead [['section_id', '=', 1]] - {'lang': 'en_US', 'tz': 'Europe/Brussels', 'uid': 1} + {'lang': 'en_US', 'tz': 'Europe/Brussels'} + diff --git a/addons/google_docs/res_config_user_view.xml b/addons/google_docs/res_config_user_view.xml index d314052d29a..8b801767d52 100644 --- a/addons/google_docs/res_config_user_view.xml +++ b/addons/google_docs/res_config_user_view.xml @@ -11,7 +11,6 @@ - @@ -23,7 +22,7 @@
- +