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
+