summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGaurav Panchal <gan@openerp.com>2014-06-26 15:18:01 +0530
committerRichard Mathot <rim@odoo.com>2015-03-31 17:31:11 +0200
commit6e14dd0ef9ccb32c6308710e9d5253fcaf8039c0 (patch)
treecbff0efdb1969d82c70fd424bb1c8751ff32f66a
parent3a3b1979d1bfc2ec35a2ceae7618c4caa26fdcd0 (diff)
[IMP] config: various improvements
- sales_team: demo data enable sales team features to users - hr_attendance: admin can enable attendance features from hr settings - multi_company: if admin enable these features, she gets the multi-company usability settings - account: enabling multi-currency functionalities enable pricelist functionalities
-rw-r--r--addons/account/res_config.py9
-rw-r--r--addons/hr/res_config.py10
-rw-r--r--addons/hr/res_config_view.xml4
-rw-r--r--addons/hr/security/hr_security.xml5
-rw-r--r--addons/hr_attendance/__init__.py1
-rw-r--r--addons/hr_attendance/__openerp__.py1
-rw-r--r--addons/hr_attendance/res_config.py31
-rw-r--r--addons/hr_attendance/res_config_view.xml20
-rw-r--r--addons/hr_attendance/security/ir_rule.xml11
-rw-r--r--addons/multi_company/__openerp__.py5
-rw-r--r--addons/multi_company/multi_company_data.xml9
-rw-r--r--addons/sales_team/sales_team_demo.xml10
12 files changed, 51 insertions, 65 deletions
diff --git a/addons/account/res_config.py b/addons/account/res_config.py
index 0cf32abab40..49e6053e393 100644
--- a/addons/account/res_config.py
+++ b/addons/account/res_config.py
@@ -304,6 +304,15 @@ class account_config_settings(osv.osv_memory):
if not group_multi_currency:
res['value'] = {'income_currency_exchange_account_id': False, 'expense_currency_exchange_account_id': False}
return res
+
+ def set_group_multi_currency(self, cr, uid, ids, context=None):
+ ir_model = self.pool['ir.model.data']
+ group_user = ir_model.get_object(cr, uid, 'base', 'group_user', context)
+ group_product = ir_model.get_object(cr, uid, 'product', 'group_sale_pricelist', context)
+ for config_obj in self.browse(cr, uid, ids, context=context):
+ if config_obj.group_multi_currency:
+ group_user.write({'implied_ids': [(4, group_product.id)]})
+ return True
def onchange_start_date(self, cr, uid, id, start_date):
if start_date:
diff --git a/addons/hr/res_config.py b/addons/hr/res_config.py
index 83508dbe8e1..1cdd6afd98d 100644
--- a/addons/hr/res_config.py
+++ b/addons/hr/res_config.py
@@ -54,6 +54,9 @@ class hr_config_settings(osv.osv_memory):
"Manage employees by department",
implied_group='hr.group_multi_departments', group="base.group_hr_user",
help="""Allows you to manage employees by department."""),
+ 'group_hr_attendance': fields.boolean('Track attendances for all employees',
+ implied_group='base.group_hr_attendance',
+ help="Allocates attendance group to all users."),
}
def onchange_hr_timesheet(self, cr, uid, ids, timesheet, context=None):
@@ -65,5 +68,10 @@ class hr_config_settings(osv.osv_memory):
def onchange_hr_attendance(self, cr, uid, ids, attendance, context=None):
""" module_hr_timesheet implies module_hr_attendance """
if not attendance:
- return {'value': {'module_hr_timesheet': False}}
+ return {'value': {'module_hr_timesheet': False,'group_hr_attendance': False}}
+ return {}
+
+ def onchange_group_hr_attendance(self, cr, uid, ids, hr_attendance, context=None):
+ if hr_attendance:
+ return {'value': {'module_hr_attendance': True}}
return {}
diff --git a/addons/hr/res_config_view.xml b/addons/hr/res_config_view.xml
index 4cc4dde095e..8a55504a10f 100644
--- a/addons/hr/res_config_view.xml
+++ b/addons/hr/res_config_view.xml
@@ -85,6 +85,10 @@
<field name="module_hr_attendance" on_change="onchange_hr_attendance(module_hr_attendance)" class="oe_inline"/>
<label for="module_hr_attendance"/>
</div>
+ <div>
+ <field name="group_hr_attendance" on_change="onchange_group_hr_attendance(group_hr_attendance)" class="oe_inline"/>
+ <label for="group_hr_attendance"/>
+ </div>
</div>
</group>
<group name="contract_grp">
diff --git a/addons/hr/security/hr_security.xml b/addons/hr/security/hr_security.xml
index 09776a25e76..114cea97591 100644
--- a/addons/hr/security/hr_security.xml
+++ b/addons/hr/security/hr_security.xml
@@ -19,6 +19,11 @@
<field name="implied_ids" eval="[(4, ref('base.group_hr_user'))]"/>
<field name="users" eval="[(4, ref('base.user_root'))]"/>
</record>
+
+ <record id="base.group_hr_attendance" model="res.groups">
+ <field name="name">Attendances</field>
+ <field name="category_id" ref="base.module_category_hidden"/>
+ </record>
<record id="group_multi_departments" model="res.groups">
<field name="name">Manage employees by department</field>
diff --git a/addons/hr_attendance/__init__.py b/addons/hr_attendance/__init__.py
index 39a2ee99208..7d02cd2dbdd 100644
--- a/addons/hr_attendance/__init__.py
+++ b/addons/hr_attendance/__init__.py
@@ -22,4 +22,3 @@
import hr_attendance
import wizard
import report
-import res_config
diff --git a/addons/hr_attendance/__openerp__.py b/addons/hr_attendance/__openerp__.py
index 1574129fc81..c443768c43a 100644
--- a/addons/hr_attendance/__openerp__.py
+++ b/addons/hr_attendance/__openerp__.py
@@ -40,7 +40,6 @@ actions(Sign in/Sign out) performed by them.
'hr_attendance_view.xml',
'hr_attendance_report.xml',
'wizard/hr_attendance_error_view.xml',
- 'res_config_view.xml',
'views/report_attendanceerrors.xml',
'views/hr_attendance.xml',
],
diff --git a/addons/hr_attendance/res_config.py b/addons/hr_attendance/res_config.py
deleted file mode 100644
index 4c2eb789484..00000000000
--- a/addons/hr_attendance/res_config.py
+++ /dev/null
@@ -1,31 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Business Applications
-# Copyright (C) 2004-2012 OpenERP S.A. (<http://openerp.com>).
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-##############################################################################
-
-from openerp.osv import fields, osv
-
-class hr_attendance_config_settings(osv.osv_memory):
- _inherit = 'hr.config.settings'
-
- _columns = {
- 'group_hr_attendance': fields.boolean('Track attendances for all employees',
- implied_group='base.group_hr_attendance',
- help="Allocates attendance group to all users."),
- }
diff --git a/addons/hr_attendance/res_config_view.xml b/addons/hr_attendance/res_config_view.xml
deleted file mode 100644
index 252672ad86d..00000000000
--- a/addons/hr_attendance/res_config_view.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<openerp>
- <data noupdate="1">
- <record id="hr_attendace_group" model="ir.ui.view">
- <field name="name">hr.config.settings.inherit</field>
- <field name="model">hr.config.settings</field>
- <field name="inherit_id" ref="hr.view_human_resources_configuration"/>
- <field name="arch" type="xml">
- <data>
- <xpath expr="//div[@name='hr_attendance']" position="after">
- <div>
- <field name="group_hr_attendance" class="oe_inline"/>
- <label for="group_hr_attendance"/>
- </div>
- </xpath>
- </data>
- </field>
- </record>
- </data>
-</openerp>
diff --git a/addons/hr_attendance/security/ir_rule.xml b/addons/hr_attendance/security/ir_rule.xml
index 0bf3b73d76e..103dc14ba10 100644
--- a/addons/hr_attendance/security/ir_rule.xml
+++ b/addons/hr_attendance/security/ir_rule.xml
@@ -1,12 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
-<openerp>
+<odoo>
<data noupdate="1">
- <record id="base.group_hr_attendance" model="res.groups">
- <field name="name">Attendances</field>
- <field name="category_id" ref="base.module_category_hidden"/>
+ <record id="base.group_hr_manager" model="res.groups">
+ <field name="implied_ids" eval="[(4, ref('base.group_hr_attendance'))]"/>
</record>
-
<record id="property_rule_attendace_manager" model="ir.rule">
<field name="name">Manager Attendance</field>
<field name="model_id" ref="model_hr_attendance"/>
@@ -21,5 +19,4 @@
</record>
</data>
-</openerp>
-
+</odoo>
diff --git a/addons/multi_company/__openerp__.py b/addons/multi_company/__openerp__.py
index 803b311dad9..a5ae88f106c 100644
--- a/addons/multi_company/__openerp__.py
+++ b/addons/multi_company/__openerp__.py
@@ -37,7 +37,10 @@ This module is the base module for other multi-company modules.
'sale_stock',
'project',
],
- 'data': ['res_company_view.xml'],
+ 'data': [
+ 'res_company_view.xml',
+ 'multi_company_data.xml',
+ ],
'demo': ['multi_company_demo.xml'],
'installable': True,
'auto_install': False,
diff --git a/addons/multi_company/multi_company_data.xml b/addons/multi_company/multi_company_data.xml
new file mode 100644
index 00000000000..1f306cc0e9f
--- /dev/null
+++ b/addons/multi_company/multi_company_data.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <data noupdate="1">
+ <!-- Admin user access Multi Company -->
+ <record model="res.users" id="base.user_root">
+ <field name="groups_id" eval="[(4,ref('base.group_multi_company'))]"/>
+ </record>
+ </data>
+</odoo>
diff --git a/addons/sales_team/sales_team_demo.xml b/addons/sales_team/sales_team_demo.xml
index d230b7076c1..9c2d28b61ff 100644
--- a/addons/sales_team/sales_team_demo.xml
+++ b/addons/sales_team/sales_team_demo.xml
@@ -1,10 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
-<openerp>
+<odoo>
<data noupdate="1">
+ <record id="base.group_user" model="res.groups">
+ <field name="implied_ids" eval="[(4, ref('base.group_multi_salesteams'))]"/>
+ </record>
+
<record id="base.user_demo" model="res.users">
<field name="groups_id" eval="[(4,ref('base.group_sale_salesman'))]"/>
</record>
-
+
<record id="team_sales_department" model="crm.team">
<field name="member_ids" eval="[(4, ref('base.user_demo'))]"/>
</record>
@@ -20,4 +24,4 @@
<field name="member_ids" eval="[(4, ref('base.user_root')),(4, ref('base.user_demo'))]"/>
</record>
</data>
-</openerp> \ No newline at end of file
+</odoo>