EnCoach Odoo 19 custom modules
Full backend implementation with custom Odoo modules: - encoach_api: Core API, user management, JWT auth - encoach_exam: Exam generation (reading, writing, listening, speaking) - encoach_evaluate: AI-powered evaluation (writing, speaking) - encoach_training: Training tips and walkthrough - encoach_storage: File storage management - encoach_payment: Stripe, PayPal, Paymob integration - encoach_mail: Email notifications Made-with: Cursor
This commit is contained in:
9
encoach_exam/security/ir.model.access.csv
Normal file
9
encoach_exam/security/ir.model.access.csv
Normal file
@@ -0,0 +1,9 @@
|
||||
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
|
||||
access_encoach_exam_student,encoach.exam.student,model_encoach_exam,encoach_core.group_encoach_student,1,0,0,0
|
||||
access_encoach_exam_teacher,encoach.exam.teacher,model_encoach_exam,encoach_core.group_encoach_teacher,1,1,1,0
|
||||
access_encoach_exam_admin,encoach.exam.admin,model_encoach_exam,encoach_core.group_encoach_admin,1,1,1,1
|
||||
access_encoach_approval_workflow_student,encoach.approval.workflow.student,model_encoach_approval_workflow,encoach_core.group_encoach_student,1,0,0,0
|
||||
access_encoach_approval_workflow_teacher,encoach.approval.workflow.teacher,model_encoach_approval_workflow,encoach_core.group_encoach_teacher,1,1,1,0
|
||||
access_encoach_approval_workflow_admin,encoach.approval.workflow.admin,model_encoach_approval_workflow,encoach_core.group_encoach_admin,1,1,1,1
|
||||
access_encoach_exam_sysadmin,encoach.exam.sysadmin,model_encoach_exam,base.group_system,1,1,1,1
|
||||
access_encoach_approval_workflow_sysadmin,encoach.approval.workflow.sysadmin,model_encoach_approval_workflow,base.group_system,1,1,1,1
|
||||
|
17
encoach_exam/security/rules.xml
Normal file
17
encoach_exam/security/rules.xml
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<odoo>
|
||||
<data noupdate="1">
|
||||
<record id="rule_exam_public" model="ir.rule">
|
||||
<field name="name">Students see public exams</field>
|
||||
<field name="model_id" ref="model_encoach_exam"/>
|
||||
<field name="groups" eval="[(4, ref('encoach_core.group_encoach_student'))]"/>
|
||||
<field name="domain_force">['|', ('access', '=', 'public'), ('owner_ids', 'in', user.id)]</field>
|
||||
</record>
|
||||
<record id="rule_exam_teacher" model="ir.rule">
|
||||
<field name="name">Teachers see all exams</field>
|
||||
<field name="model_id" ref="model_encoach_exam"/>
|
||||
<field name="groups" eval="[(4, ref('encoach_core.group_encoach_teacher'))]"/>
|
||||
<field name="domain_force">[(1, '=', 1)]</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user