bzr revid: nch@tinyerp.com-20100511123733-b3apvl3smadicbq3
This commit is contained in:
nch@tinyerp.com
2010-05-11 18:07:33 +05:30
10 changed files with 50 additions and 37 deletions
+8 -1
View File
@@ -1046,9 +1046,16 @@
<test expr="currency_id.code == 'eur'.upper()"/>
<test expr="name">OpenERP S.A.</test>
</assert>
<record id="user_admin" model="res.users">
<record model="res.users" id="base.user_root">
<field name="signature">Administrator</field>
<field name="address_id" ref="main_address"/>
<field name="company_id" ref="main_company"/>
<field name="company_ids" eval="[(4, ref('main_company'))]"/>
<field name="action_id" ref="action_menu_admin"/>
<field name="menu_id" ref="action_menu_admin"/>
</record>
<record id="main_partner" model="res.partner">
<field name="company_id" ref="main_company"/>
</record>
+2 -2
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-12-18 08:39+0000\n"
"PO-Revision-Date: 2010-05-03 14:18+0000\n"
"PO-Revision-Date: 2010-05-10 05:20+0000\n"
"Last-Translator: goranc <goranc@gmail.com>\n"
"Language-Team: openerp-translators\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-05-05 03:47+0000\n"
"X-Launchpad-Export-Date: 2010-05-11 04:18+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"Language: hr\n"
+2 -2
View File
@@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: openobject-server\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-12-18 08:39+0000\n"
"PO-Revision-Date: 2010-05-03 14:46+0000\n"
"PO-Revision-Date: 2010-05-10 05:18+0000\n"
"Last-Translator: Harry (Open ERP) <hmo@tinyerp.com>\n"
"Language-Team: Japanese <ja@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-05-05 03:47+0000\n"
"X-Launchpad-Export-Date: 2010-05-11 04:18+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: base
+2 -2
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-12-18 08:39+0000\n"
"PO-Revision-Date: 2010-05-03 14:48+0000\n"
"PO-Revision-Date: 2010-05-10 05:19+0000\n"
"Last-Translator: Anders Wallenquist <anders.wallenquist@vertel.se>\n"
"Language-Team: <>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-05-05 03:47+0000\n"
"X-Launchpad-Export-Date: 2010-05-11 04:18+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: base
+2 -2
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-12-18 08:39+0000\n"
"PO-Revision-Date: 2010-05-03 14:29+0000\n"
"PO-Revision-Date: 2010-05-10 05:19+0000\n"
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-05-05 03:47+0000\n"
"X-Launchpad-Export-Date: 2010-05-11 04:18+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: base
+2 -2
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-12-18 08:39+0000\n"
"PO-Revision-Date: 2010-05-03 14:47+0000\n"
"PO-Revision-Date: 2010-05-10 05:19+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-05-05 03:47+0000\n"
"X-Launchpad-Export-Date: 2010-05-11 04:18+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: base
+16 -1
View File
@@ -210,6 +210,14 @@ class users(osv.osv):
result = map(override_password, result)
return result
def _check_company(self, cr, uid, ids, context=None):
return all(((this.company_id in this.company_ids) or not this.company_ids) for this in self.browse(cr, uid, ids, context))
_constraints = [
(_check_company, 'The chosen company is not in the allowed companies', ['company_id', 'company_ids']),
]
_sql_constraints = [
('login_key', 'UNIQUE (login)', _('You can not have two users with the same login !'))
]
@@ -225,13 +233,19 @@ class users(osv.osv):
ids = self.pool.get('ir.ui.menu').search(cr, uid, [('usage','=','menu')])
return ids and ids[0] or False
def _get_company(self,cr, uid, context={}, uid2=False):
def _get_company(self,cr, uid, context=None, uid2=False):
if not uid2:
uid2 = uid
user = self.pool.get('res.users').read(cr, uid, uid2, ['company_id'], context)
company_id = user.get('company_id', False)
return company_id and company_id[0] or False
def _get_companies(self, cr, uid, context=None):
c = self._get_company(cr, uid, context)
if c:
return [c]
return False
def _get_menu(self,cr, uid, context={}):
ids = self.pool.get('ir.actions.act_window').search(cr, uid, [('usage','=','menu')])
return ids and ids[0] or False
@@ -247,6 +261,7 @@ class users(osv.osv):
'menu_id': _get_menu,
'action_id': _get_menu,
'company_id': _get_company,
'company_ids': _get_companies,
'groups_id': _get_group,
'address_id': False,
}
@@ -29,18 +29,6 @@
<field name="name">Useability / No One</field>
</record>
<!--
Users
-->
<record model="res.users" id="base.user_root">
<field name="signature">Administrator</field>
<field name="address_id" ref="main_address"/>
<field name="company_id" ref="main_company"/>
<field name="action_id" ref="action_menu_admin"/>
<field name="menu_id" ref="action_menu_admin"/>
</record>
<!-- Set accesses to menu -->
<record model="ir.ui.menu" id="base.menu_administration">
<field name="groups_id" eval="[(6,0, [ref('group_system'), ref('group_erp_manager')])]"/>
+12 -9
View File
@@ -1153,12 +1153,8 @@ class orm_template(object):
def check_group(node):
if node.get('groups'):
groups = node.get('groups').split(',')
can_see = False
access_pool = self.pool.get('ir.model.access')
for group in groups:
can_see = can_see or access_pool.check_groups(cr, user, group)
if can_see:
break
can_see = any(access_pool.check_groups(cr, user, group) for group in groups)
if not can_see:
node.set('invisible', '1')
if 'attrs' in node.attrib:
@@ -1199,7 +1195,8 @@ class orm_template(object):
column = False
if column:
relation = column._obj
relation = self.pool.get(column._obj)
childs = False
views = {}
for f in node:
@@ -1207,7 +1204,7 @@ class orm_template(object):
node.remove(f)
ctx = context.copy()
ctx['base_model_name'] = self._name
xarch, xfields = self.pool.get(relation).__view_look_dom_arch(cr, user, f, view_id, ctx)
xarch, xfields = relation.__view_look_dom_arch(cr, user, f, view_id, ctx)
views[str(f.tag)] = {
'arch': xarch,
'fields': xfields
@@ -1215,7 +1212,13 @@ class orm_template(object):
attrs = {'views': views}
if node.get('widget') and node.get('widget') == 'selection':
if not check_group(node):
attrs['selection'] = []
# the field is just invisible. default value must be in the selection
name = node.get('name')
default = self.default_get(cr, user, [name], context=context).get(name)
if default:
attrs['selection'] = relation.name_get(cr, 1, default, context=context)
else:
attrs['selection'] = []
# We can not use the 'string' domain has it is defined according to the record !
else:
dom = []
@@ -1223,7 +1226,7 @@ class orm_template(object):
dom = column._domain
dom += eval(node.get('domain','[]'), {'uid':user, 'time':time})
context.update(eval(node.get('context','{}')))
attrs['selection'] = self.pool.get(relation)._name_search(cr, user, '', dom, context=context, limit=None, name_get_uid=1)
attrs['selection'] = relation._name_search(cr, user, '', dom, context=context, limit=None, name_get_uid=1)
if (node.get('required') and not int(node.get('required'))) or not column.required:
attrs['selection'].append((False,''))
fields[node.get('name')] = attrs
+4 -4
View File
@@ -7,20 +7,20 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: openerp-server@packages.debian.org\n"
"POT-Creation-Date: 2009-08-24 22:41+0300\n"
"PO-Revision-Date: 2009-11-26 07:45+0000\n"
"Last-Translator: Vitezslav Kotrla <vitezslav.kotrla@gmail.com>\n"
"PO-Revision-Date: 2010-05-06 04:36+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-04-17 03:53+0000\n"
"X-Launchpad-Export-Date: 2010-05-07 04:02+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. Type: string
#. Description
#: ../openerp-server.templates:1001
msgid "Dedicated system account for the Open ERP server:"
msgstr "Vyhrazený systémový účet, pod kterým bude běžet Open ERP server:"
msgstr "Vyhrazený systémový účet, pod kterým poběží Open ERP server:"
#. Type: string
#. Description