From 72bdcb2a35116b16c04cbc53476dbeb759c94a59 Mon Sep 17 00:00:00 2001 From: "Amit (OpenERP)" Date: Mon, 13 Aug 2012 14:07:29 +0530 Subject: [PATCH 1/3] [Fix] analytic : Imporved the analytic copy method lp bug: https://launchpad.net/bugs/707359 fixed bzr revid: amp@tinyerp.com-20120813083729-ncbcl2w0d846yah4 --- addons/analytic/analytic.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/analytic/analytic.py b/addons/analytic/analytic.py index 165af37888d..9ae3e6de2ad 100644 --- a/addons/analytic/analytic.py +++ b/addons/analytic/analytic.py @@ -238,8 +238,10 @@ class account_analytic_account(osv.osv): def copy(self, cr, uid, id, default=None, context=None): if not default: default = {} + analytic = self.browse(cr, uid, id, context=context) default['code'] = False default['line_ids'] = [] + default['name'] = (analytic['name'] or '') + '(copy)' return super(account_analytic_account, self).copy(cr, uid, id, default, context=context) def on_change_company(self, cr, uid, id, company_id): From c3a346fed03ef417e87e7e2233fa307c04652ebd Mon Sep 17 00:00:00 2001 From: Antonin Bourguignon Date: Fri, 21 Sep 2012 15:14:24 +0200 Subject: [PATCH 2/3] [IMP] skip a verification on a mandatory field and add l10n support for 'copy' since the analytic account's name is mandatory, it's not necessary to check whether or not it's empty bzr revid: abo@openerp.com-20120921131424-92c5vsz3s5kzog8i --- addons/analytic/analytic.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/addons/analytic/analytic.py b/addons/analytic/analytic.py index ca475fafc3d..d3a22782a68 100644 --- a/addons/analytic/analytic.py +++ b/addons/analytic/analytic.py @@ -140,7 +140,7 @@ class account_analytic_account(osv.osv): 'name': fields.char('Account/Contract Name', size=128, required=True), 'complete_name': fields.function(_complete_name_calc, type='char', string='Full Account Name'), 'code': fields.char('Reference', size=24, select=True), - 'type': fields.selection([('view','Analytic View'), ('normal','Analytic Account'),('contract','Contract or Project'),('template','Template of Project')], 'Type of Account', required=True, + 'type': fields.selection([('view','Analytic View'), ('normal','Analytic Account'),('contract','Contract or Project'),('template','Template of Project')], 'Type of Account', required=True, help="If you select the View Type, it means you won\'t allow to create journal entries using that account.\n"\ "The type 'Analytic account' stands for usual accounts that you only want to use in accounting.\n"\ "If you select Contract or Project, it offers you the possibility to manage the validity and the invoicing options for this account.\n"\ @@ -168,7 +168,7 @@ class account_analytic_account(osv.osv): 'res.company': (_get_analytic_account, ['currency_id'], 10), }, string='Currency', type='many2one', relation='res.currency'), } - + def on_change_template(self, cr, uid, ids, template_id, context=None): if not template_id: return {} @@ -179,7 +179,7 @@ class account_analytic_account(osv.osv): res['value']['quantity_max'] = template.quantity_max res['value']['description'] = template.description return res - + def on_change_partner_id(self, cr, uid, ids,partner_id, name, context={}): res={} if partner_id: @@ -225,7 +225,7 @@ class account_analytic_account(osv.osv): analytic = self.browse(cr, uid, id, context=context) default['code'] = False default['line_ids'] = [] - default['name'] = (analytic['name'] or '') + '(copy)' + default['name'] = analytic['name'] + ' (' + _('copy') + ')' return super(account_analytic_account, self).copy(cr, uid, id, default, context=context) def on_change_company(self, cr, uid, id, company_id): From 009e06e547ac84cc25ad28c6d5e1fd2f6ac0cbf1 Mon Sep 17 00:00:00 2001 From: Antonin Bourguignon Date: Fri, 21 Sep 2012 15:39:24 +0200 Subject: [PATCH 3/3] [IMP] add l10n support for 'copy' bzr revid: abo@openerp.com-20120921133924-w2i62a6tpxlfezet --- addons/product/product.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/product/product.py b/addons/product/product.py index 14f28450c9b..ab282e722c0 100644 --- a/addons/product/product.py +++ b/addons/product/product.py @@ -511,7 +511,7 @@ class product_product(osv.osv): for obj in self.browse(cr, uid, ids, context=context): result[obj.id] = tools.image_get_resized_images(obj.image, avoid_resize_medium=True) return result - + def _set_image(self, cr, uid, id, name, value, args, context=None): return self.write(cr, uid, [id], {'image': tools.image_resize_image_big(value)}, context=context) @@ -727,7 +727,7 @@ class product_product(osv.osv): context_wo_lang.pop('lang', None) product = self.read(cr, uid, id, ['name'], context=context_wo_lang) default = default.copy() - default['name'] = product['name'] + ' (copy)' + default['name'] = product['name'] + ' (' + _('copy') + ')' if context.get('variant',False): fields = ['product_tmpl_id', 'active', 'variants', 'default_code',