summaryrefslogtreecommitdiff
path: root/addons/resource/security
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/resource/security
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/resource/security')
-rw-r--r--addons/resource/security/ir.model.access.csv10
-rw-r--r--addons/resource/security/resource_security.xml30
2 files changed, 40 insertions, 0 deletions
diff --git a/addons/resource/security/ir.model.access.csv b/addons/resource/security/ir.model.access.csv
new file mode 100644
index 00000000..02fcaa44
--- /dev/null
+++ b/addons/resource/security/ir.model.access.csv
@@ -0,0 +1,10 @@
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_resource_calendar_user,resource.calendar.user,model_resource_calendar,base.group_user,1,0,0,0
+access_resource_calendar_system,resource.calendar.system,model_resource_calendar,base.group_system,1,1,1,1
+access_resource_calendar_attendance_user,resource.calendar.attendance.user,model_resource_calendar_attendance,base.group_user,1,0,0,0
+access_resource_calendar_attendance_system,resource.calendar.attendance.system,model_resource_calendar_attendance,base.group_system,1,1,1,1
+access_resource_resource,resource.resource,model_resource_resource,base.group_system,1,0,0,0
+access_resource_resource_all,resource.resource all,model_resource_resource,base.group_user,1,0,0,0
+access_resource_calendar_leaves_user,resource.calendar.leaves,model_resource_calendar_leaves,base.group_user,1,1,1,1
+access_resource_calendar_leaves,resource.calendar.leaves,model_resource_calendar_leaves,base.group_system,1,1,1,1
+access_resource_test_all,resource.test.all,model_resource_test,base.group_user,1,1,1,1 \ No newline at end of file
diff --git a/addons/resource/security/resource_security.xml b/addons/resource/security/resource_security.xml
new file mode 100644
index 00000000..c0ccaac3
--- /dev/null
+++ b/addons/resource/security/resource_security.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo noupdate="1">
+
+ <record model="ir.rule" id="resource_calendar_leaves_rule_group_user_create">
+ <field name="name">resource.calendar.leaves: employee reads own or global</field>
+ <field name="model_id" ref="model_resource_calendar_leaves"/>
+ <field name="groups" eval="[(4, ref('base.group_user'))]"/>
+ <field name="domain_force">['|', ('resource_id', '=', False), ('resource_id.user_id', 'in', [False, user.id])]</field>
+ <field name="perm_write" eval="False"/>
+ <field name="perm_create" eval="False"/>
+ <field name="perm_unlink" eval="False"/>
+ </record>
+
+ <record model="ir.rule" id="resource_calendar_leaves_rule_group_user_modify">
+ <field name="name">resource.calendar.leaves: employee modifies own</field>
+ <field name="model_id" ref="model_resource_calendar_leaves"/>
+ <field name="groups" eval="[(4, ref('base.group_user'))]"/>
+ <field name="domain_force">[('resource_id', '!=', False), ('resource_id.user_id', 'in', [False, user.id])]</field>
+ <field name="perm_read" eval="False"/>
+ </record>
+
+ <record model="ir.rule" id="resource_calendar_leaves_rule_group_admin_modify">
+ <field name="name">resource.calendar.leaves: admin modifies global</field>
+ <field name="model_id" ref="model_resource_calendar_leaves"/>
+ <field name="groups" eval="[(4, ref('base.group_erp_manager'))]"/>
+ <field name="domain_force">[('resource_id', '=', False)]</field>
+ <field name="perm_read" eval="False"/>
+ </record>
+
+</odoo>