helpdesk_security.xml 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <odoo>
  3. <data noupdate="1">
  4. <!-- Helpdesk Team Collaborator: Portal users can only see their own collaboration -->
  5. <record id="helpdesk_team_collaborator_rule_portal" model="ir.rule">
  6. <field name="name">Helpdesk Team Collaborator: portal users can only see their own collaboration</field>
  7. <field name="model_id" ref="helpdesk_extras.model_helpdesk_team_collaborator"/>
  8. <field name="domain_force">[
  9. '|',
  10. ('partner_id', '=', user.partner_id.id),
  11. ('team_id.collaborator_ids', 'any', [
  12. ('partner_id', '=', user.partner_id.id),
  13. ('access_mode', '=', 'admin'),
  14. ]),
  15. ]</field>
  16. <field name="groups" eval="[(4, ref('base.group_portal'))]"/>
  17. </record>
  18. <!-- Helpdesk Team: Portal users can see teams where they are followers, or teams without followers -->
  19. <record id="helpdesk_team_rule_portal_collaborator" model="ir.rule">
  20. <field name="name">Helpdesk Team: portal users can see teams where they are followers, or teams without followers</field>
  21. <field name="model_id" ref="helpdesk.model_helpdesk_team"/>
  22. <field name="domain_force">[
  23. '|',
  24. ('message_partner_ids', '=', False),
  25. ('message_partner_ids', 'in', [user.partner_id.id]),
  26. ]</field>
  27. <field name="groups" eval="[(4, ref('base.group_portal'))]"/>
  28. </record>
  29. <!-- Helpdesk Ticket: Portal users with admin access can see all tickets in the team -->
  30. <record id="helpdesk_ticket_rule_portal_admin" model="ir.rule">
  31. <field name="name">Helpdesk Ticket: portal users with admin access can see all tickets</field>
  32. <field name="model_id" ref="helpdesk.model_helpdesk_ticket"/>
  33. <field name="domain_force">[
  34. '|',
  35. ('team_id.message_partner_ids', '=', False),
  36. '&amp;',
  37. ('team_id.message_partner_ids', 'in', [user.partner_id.id]),
  38. ('team_id.collaborator_ids', 'any', [
  39. ('partner_id', '=', user.partner_id.id),
  40. ('access_mode', '=', 'admin'),
  41. ]),
  42. ]</field>
  43. <field name="perm_read" eval="True"/>
  44. <field name="perm_write" eval="True"/>
  45. <field name="perm_create" eval="True"/>
  46. <field name="perm_unlink" eval="False"/>
  47. <field name="groups" eval="[(4, ref('base.group_portal'))]"/>
  48. </record>
  49. <!-- Helpdesk Ticket: Portal users with user_all access can see all tickets and create own -->
  50. <record id="helpdesk_ticket_rule_portal_user_all" model="ir.rule">
  51. <field name="name">Helpdesk Ticket: portal users with user_all access can see all tickets</field>
  52. <field name="model_id" ref="helpdesk.model_helpdesk_ticket"/>
  53. <field name="domain_force">[
  54. '|',
  55. ('team_id.message_partner_ids', '=', False),
  56. '&amp;',
  57. ('team_id.message_partner_ids', 'in', [user.partner_id.id]),
  58. ('team_id.collaborator_ids', 'any', [
  59. ('partner_id', '=', user.partner_id.id),
  60. ('access_mode', '=', 'user_all'),
  61. ]),
  62. ]</field>
  63. <field name="perm_read" eval="True"/>
  64. <field name="perm_write" eval="False"/>
  65. <field name="perm_create" eval="True"/>
  66. <field name="perm_unlink" eval="False"/>
  67. <field name="groups" eval="[(4, ref('base.group_portal'))]"/>
  68. </record>
  69. <!-- Helpdesk Ticket: Portal users with user_own access can only see and create own tickets -->
  70. <record id="helpdesk_ticket_rule_portal_user_own" model="ir.rule">
  71. <field name="name">Helpdesk Ticket: portal users with user_own access can only see own tickets</field>
  72. <field name="model_id" ref="helpdesk.model_helpdesk_ticket"/>
  73. <field name="domain_force">[
  74. '|',
  75. ('team_id.message_partner_ids', '=', False),
  76. '&amp;',
  77. ('team_id.message_partner_ids', 'in', [user.partner_id.id]),
  78. '&amp;',
  79. ('team_id.collaborator_ids', 'any', [
  80. ('partner_id', '=', user.partner_id.id),
  81. ('access_mode', '=', 'user_own'),
  82. ]),
  83. '|',
  84. ('partner_id', '=', user.partner_id.id),
  85. ('user_id', '=', user.id),
  86. ]</field>
  87. <field name="perm_read" eval="True"/>
  88. <field name="perm_write" eval="False"/>
  89. <field name="perm_create" eval="True"/>
  90. <field name="perm_unlink" eval="False"/>
  91. <field name="groups" eval="[(4, ref('base.group_portal'))]"/>
  92. </record>
  93. </data>
  94. </odoo>