- Added integrated mail.activity system for task management - Implemented portal access to activities for treatment professionals - Added activity creation, completion, and reassignment functionality - Enhanced player management with Canadian address validation - Improved injury tracking with parental consent and document attachments - Implemented layered security architecture (ACL + Record Rules + Controller filtering) - Added French Canadian (fr_CA) localization support - Enhanced portal UI with activity counts and navigation - Implemented RPC security protection with buddy method pattern - Added comprehensive demo data and integration features - Updated manifest to reflect all new capabilities and improvements
46 lines
2.2 KiB
XML
46 lines
2.2 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<odoo>
|
|
<!-- <data noupdate="1"> -->
|
|
|
|
<!-- Sports Event Access Rules -->
|
|
|
|
<!-- Internal Users: Full access to all events -->
|
|
<record id="sports_event_rule_user" model="ir.rule">
|
|
<field name="name">Sports Event: Internal Users</field>
|
|
<field name="model_id" ref="model_sports_event"/>
|
|
<field name="domain_force">[(1, '=', 1)]</field>
|
|
<field name="groups" eval="[(4, ref('base.group_user'))]"/>
|
|
<field name="perm_read" eval="True"/>
|
|
<field name="perm_write" eval="True"/>
|
|
<field name="perm_create" eval="True"/>
|
|
<field name="perm_unlink" eval="True"/>
|
|
</record>
|
|
|
|
<!-- Portal Treatment Professionals: Full access to all events -->
|
|
<record id="sports_event_rule_portal_treatment_professional" model="ir.rule">
|
|
<field name="name">Sports Event: Portal Treatment Professionals</field>
|
|
<field name="model_id" ref="model_sports_event"/>
|
|
<field name="domain_force">[(1, '=', 1)]</field>
|
|
<field name="groups" eval="[(4, ref('bemade_sports_clinic.group_portal_treatment_professional'))]"/>
|
|
<field name="perm_read" eval="True"/>
|
|
<field name="perm_write" eval="True"/>
|
|
<field name="perm_create" eval="True"/>
|
|
<field name="perm_unlink" eval="False"/>
|
|
</record>
|
|
|
|
<!-- Portal Team Coaches: Team-based read-only access -->
|
|
<record id="sports_event_rule_portal_team_coach" model="ir.rule">
|
|
<field name="name">Sports Event: Portal Team Coaches (Read-Only)</field>
|
|
<field name="model_id" ref="model_sports_event"/>
|
|
<field name="domain_force">[
|
|
('team_id', 'in', user.partner_id.team_staff_rel_ids.mapped('team_id.id') or [0])
|
|
]</field>
|
|
<field name="groups" eval="[(4, ref('bemade_sports_clinic.group_portal_team_coach'))]"/>
|
|
<field name="perm_read" eval="True"/>
|
|
<field name="perm_write" eval="False"/>
|
|
<field name="perm_create" eval="False"/>
|
|
<field name="perm_unlink" eval="False"/>
|
|
</record>
|
|
|
|
<!-- </data> -->
|
|
</odoo>
|