Check rule only if _check_access is set and enforce companies rule
issue4080 review343891009
This commit is contained in:
1 parent
8c869e662f
commit
b8577eaec0
2 files changed
+56
-8
No files matched your search
+54
-6
@@ -65,6 +65,18 @@ this repository contains the full copyright notices and license terms. -->
|
||||
sequence="10"
|
||||
id="menu_attendance"/>
|
||||
|
||||
<record model="ir.rule.group" id="rule_group_attendance_companies">
|
||||
<field name="name">User in companies</field>
|
||||
<field name="model" search="[('model', '=', 'attendance.line')]"/>
|
||||
<field name="global_p" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.rule" id="rule_attendance_companies">
|
||||
<field name="domain"
|
||||
eval="[('company', 'in', Eval('companies', []))]"
|
||||
pyson="1"/>
|
||||
<field name="rule_group" ref="rule_group_attendance_companies"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.model.access" id="access_attendance">
|
||||
<field name="model" search="[('model', '=', 'attendance.line')]"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
@@ -80,10 +92,10 @@ this repository contains the full copyright notices and license terms. -->
|
||||
<field name="default_p" eval="True"/>
|
||||
<field name="perm_read" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.rule" id="rule_attendance1">
|
||||
<record model="ir.rule" id="rule_attendance">
|
||||
<field
|
||||
name="domain"
|
||||
eval="[('employee', '=', Eval('user.employee', {}))]"
|
||||
eval="[('employee', 'in', Eval('employees', []))]"
|
||||
pyson="1"/>
|
||||
<field name="rule_group" ref="rule_group_attendance"/>
|
||||
</record>
|
||||
@@ -130,6 +142,18 @@ this repository contains the full copyright notices and license terms. -->
|
||||
sequence="10"
|
||||
id="menu_period_list"/>
|
||||
|
||||
<record model="ir.rule.group" id="rule_group_period_companies">
|
||||
<field name="name">User in companies</field>
|
||||
<field name="model" search="[('model', '=', 'attendance.period')]"/>
|
||||
<field name="global_p" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.rule" id="rule_period_companies">
|
||||
<field name="domain"
|
||||
eval="[('company', 'in', Eval('companies', []))]"
|
||||
pyson="1"/>
|
||||
<field name="rule_group" ref="rule_group_period_companies"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.model.access" id="access_period">
|
||||
<field name="model" search="[('model', '=', 'attendance.period')]"/>
|
||||
<field name="perm_read" eval="False"/>
|
||||
@@ -179,6 +203,18 @@ this repository contains the full copyright notices and license terms. -->
|
||||
<field name="name">sheet_line_list</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.rule.group" id="rule_group_sheet_line_companies">
|
||||
<field name="name">User in companies</field>
|
||||
<field name="model" search="[('model', '=', 'attendance.sheet.line')]"/>
|
||||
<field name="global_p" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.rule" id="rule_sheet_line_companies">
|
||||
<field name="domain"
|
||||
eval="[('company', 'in', Eval('companies', []))]"
|
||||
pyson="1"/>
|
||||
<field name="rule_group" ref="rule_group_sheet_line_companies"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.rule.group" id="rule_group_sheet_line">
|
||||
<field name="name">Own attendance sheet line</field>
|
||||
<field name="model" search="[('model', '=', 'attendance.sheet.line')]"/>
|
||||
@@ -186,10 +222,10 @@ this repository contains the full copyright notices and license terms. -->
|
||||
<field name="default_p" eval="True"/>
|
||||
<field name="perm_read" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.rule" id="rule_sheet_line1">
|
||||
<record model="ir.rule" id="rule_sheet_line">
|
||||
<field
|
||||
name="domain"
|
||||
eval="[('employee', '=', Eval('user.employee', {}))]"
|
||||
eval="[('employee', 'in', Eval('employees', []))]"
|
||||
pyson="1"/>
|
||||
<field name="rule_group" ref="rule_group_sheet_line"/>
|
||||
</record>
|
||||
@@ -231,6 +267,18 @@ this repository contains the full copyright notices and license terms. -->
|
||||
<field name="act_window" ref="act_sheet"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.rule.group" id="rule_group_sheet_companies">
|
||||
<field name="name">User in companies</field>
|
||||
<field name="model" search="[('model', '=', 'attendance.sheet')]"/>
|
||||
<field name="global_p" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.rule" id="rule_sheet_companies">
|
||||
<field name="domain"
|
||||
eval="[('company', 'in', Eval('companies', []))]"
|
||||
pyson="1"/>
|
||||
<field name="rule_group" ref="rule_group_sheet_companies"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.rule.group" id="rule_group_sheet">
|
||||
<field name="name">Own attendance sheet</field>
|
||||
<field name="model" search="[('model', '=', 'attendance.sheet')]"/>
|
||||
@@ -238,10 +286,10 @@ this repository contains the full copyright notices and license terms. -->
|
||||
<field name="default_p" eval="True"/>
|
||||
<field name="perm_read" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.rule" id="rule_sheet1">
|
||||
<record model="ir.rule" id="rule_sheet">
|
||||
<field
|
||||
name="domain"
|
||||
eval="[('employee', '=', Eval('user.employee', {}))]"
|
||||
eval="[('employee', 'in', Eval('employees', []))]"
|
||||
pyson="1"/>
|
||||
<field name="rule_group" ref="rule_group_sheet"/>
|
||||
</record>
|
||||
|
||||
@@ -8,10 +8,10 @@ from trytond.tests.test_tryton import suite as test_suite
|
||||
from trytond.tests.test_tryton import doctest_teardown
|
||||
from trytond.tests.test_tryton import doctest_checker
|
||||
|
||||
from trytond.modules.company.tests import CompanyMultiValueTestMixin
|
||||
from trytond.modules.company.tests import CompanyTestMixin
|
||||
|
||||
|
||||
class CompanyAttendanceTestCase(CompanyMultiValueTestMixin, ModuleTestCase):
|
||||
class CompanyAttendanceTestCase(CompanyTestMixin, ModuleTestCase):
|
||||
'Test Company Attendance module'
|
||||
module = 'attendance'
|
||||
extras = ['timesheet']
|
||||
|
||||
Reference in new issue
Block a user