diff --git a/openerp/addons/base/__openerp__.py b/openerp/addons/base/__openerp__.py index 275b8317c0a..c757702d52f 100644 --- a/openerp/addons/base/__openerp__.py +++ b/openerp/addons/base/__openerp__.py @@ -25,6 +25,7 @@ 'name': 'Base', 'version': '1.3', 'category': 'Generic Modules/Base', + 'complexity': "easy", 'description': """The kernel of OpenERP, needed for all installation.""", 'author': 'OpenERP SA', 'maintainer': 'OpenERP SA', diff --git a/openerp/addons/base/base_data.xml b/openerp/addons/base/base_data.xml index 3f8208b8ec4..6c073a769a7 100644 --- a/openerp/addons/base/base_data.xml +++ b/openerp/addons/base/base_data.xml @@ -1003,7 +1003,8 @@ OpenERP S.A. - + + diff --git a/openerp/addons/base/module/module.py b/openerp/addons/base/module/module.py index 0ff3070d44e..034829b82b5 100644 --- a/openerp/addons/base/module/module.py +++ b/openerp/addons/base/module/module.py @@ -197,6 +197,9 @@ class module(osv.osv): 'views_by_module': fields.function(_get_views, method=True, string='Views', type='text', multi="meta", store=True), 'certificate' : fields.char('Quality Certificate', size=64, readonly=True), 'web': fields.boolean('Has a web component', readonly=True), + 'complexity': fields.selection([('easy','Easy'), ('normal','Normal'), ('expert','Expert')], + string='Complexity', readonly=True, + help='Level of difficulty of module. Easy: intuitive and easy to use for everyone. Normal: easy to use for business experts. Expert: requires technical skills.'), } _defaults = { @@ -376,6 +379,7 @@ class module(osv.osv): 'license': terp.get('license', 'AGPL-3'), 'certificate': terp.get('certificate') or False, 'web': terp.get('web') or False, + 'complexity': terp.get('complexity', ''), } # update the list of available packages diff --git a/openerp/addons/base/module/module_view.xml b/openerp/addons/base/module/module_view.xml index 2cfd4892180..fe5212a561f 100644 --- a/openerp/addons/base/module/module_view.xml +++ b/openerp/addons/base/module/module_view.xml @@ -46,6 +46,7 @@ + @@ -90,6 +91,7 @@ + @@ -149,6 +151,7 @@ + diff --git a/openerp/addons/base/res/partner/partner.py b/openerp/addons/base/res/partner/partner.py index 091927f126d..ee81d1d10b6 100644 --- a/openerp/addons/base/res/partner/partner.py +++ b/openerp/addons/base/res/partner/partner.py @@ -147,9 +147,11 @@ class res_partner(osv.osv): _defaults = { 'active': lambda *a: 1, 'customer': lambda *a: 1, + 'address': [{'type': 'default'}], 'category_id': _default_category, 'company_id': lambda s,cr,uid,c: s.pool.get('res.company')._company_default_get(cr, uid, 'res.partner', context=c), } + def copy(self, cr, uid, id, default={}, context={}): name = self.read(cr, uid, [id], ['name'])[0]['name'] default.update({'name': name+ _(' (copy)'), 'events':[]}) @@ -312,14 +314,13 @@ class res_partner_address(osv.osv): if context.get('contact_display', 'contact')=='partner' and r['partner_id']: res.append((r['id'], r['partner_id'][1])) else: - addr = r['name'] or '' - if r['name'] and (r['city'] or r['country_id']): - addr += ', ' - addr += (r['country_id'] and r['country_id'][1] or '') + ' ' + (r['city'] or '') + ' ' + (r['street'] or '') + # make a comma-separated list with the following non-empty elements + elems = [r['name'], r['country_id'] and r['country_id'][1], r['city'], r['street']] + addr = ', '.join(filter(bool, elems)) if (context.get('contact_display', 'contact')=='partner_address') and r['partner_id']: - res.append((r['id'], "%s: %s" % (r['partner_id'][1], addr.strip() or '/'))) + res.append((r['id'], "%s: %s" % (r['partner_id'][1], addr or '/'))) else: - res.append((r['id'], addr.strip() or '/')) + res.append((r['id'], addr or '/')) return res def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100): diff --git a/openerp/addons/base/res/partner/partner_demo.xml b/openerp/addons/base/res/partner/partner_demo.xml index 6f433675767..c98ae837088 100644 --- a/openerp/addons/base/res/partner/partner_demo.xml +++ b/openerp/addons/base/res/partner/partner_demo.xml @@ -93,10 +93,12 @@ 1 + Agrolait + Camptocamp @@ -107,6 +109,7 @@ http://www.syleam.fr Syleam + Thymbra @@ -116,6 +119,7 @@ Axelor 1 + Tiny AT Work @@ -123,25 +127,30 @@ Bank Wealthy and sons + China Export + Distrib PC 1 + Ecole de Commerce de Liege + Elec Import 1 + Maxtor @@ -149,6 +158,7 @@ 1 + Seagate @@ -162,6 +172,7 @@ Mediapole SPRL + http://balmerinc.com @@ -170,17 +181,20 @@ or + Tecsas 3020170000003 + Leclerc + Centrale d'achats BML @@ -188,6 +202,7 @@ + Magazin BML 1 @@ -196,10 +211,12 @@ + Université de Liège +