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:
87
encoach_exam/views/exam_views.xml
Normal file
87
encoach_exam/views/exam_views.xml
Normal file
@@ -0,0 +1,87 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<odoo>
|
||||
<record id="view_encoach_exam_tree" model="ir.ui.view">
|
||||
<field name="name">encoach.exam.tree</field>
|
||||
<field name="model">encoach.exam</field>
|
||||
<field name="arch" type="xml">
|
||||
<list string="Exams">
|
||||
<field name="module" widget="badge"/>
|
||||
<field name="label"/>
|
||||
<field name="access"/>
|
||||
<field name="variant"/>
|
||||
<field name="min_timer"/>
|
||||
<field name="is_diagnostic"/>
|
||||
<field name="requires_approval"/>
|
||||
<field name="approved"/>
|
||||
<field name="shuffle"/>
|
||||
<field name="create_date"/>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_encoach_exam_form" model="ir.ui.view">
|
||||
<field name="name">encoach.exam.form</field>
|
||||
<field name="model">encoach.exam</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Exam">
|
||||
<header>
|
||||
<button name="action_approve" string="Approve" type="object"
|
||||
class="btn-primary"
|
||||
invisible="not requires_approval or approved"/>
|
||||
</header>
|
||||
<sheet>
|
||||
<group>
|
||||
<group>
|
||||
<field name="label"/>
|
||||
<field name="module"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="access"/>
|
||||
<field name="variant"/>
|
||||
<field name="min_timer"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="is_diagnostic"/>
|
||||
<field name="shuffle"/>
|
||||
<field name="requires_approval"/>
|
||||
<field name="approved"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="owner_ids" widget="many2many_tags"/>
|
||||
<field name="entity_ids" widget="many2many_tags"/>
|
||||
</group>
|
||||
</group>
|
||||
<notebook>
|
||||
<page string="Parts (JSON)" name="parts">
|
||||
<field name="parts" widget="json" nolabel="1" placeholder="{}"/>
|
||||
</page>
|
||||
<page string="Difficulty" name="difficulty">
|
||||
<field name="difficulty" widget="json" nolabel="1" placeholder="[]"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="action_encoach_exam" model="ir.actions.act_window">
|
||||
<field name="name">Exams</field>
|
||||
<field name="res_model">encoach.exam</field>
|
||||
<field name="view_mode">list,form</field>
|
||||
<field name="help" type="html">
|
||||
<p class="o_view_nocontent_smiling_face">
|
||||
Create your first exam.
|
||||
</p>
|
||||
<p>
|
||||
Exams represent IELTS exam configurations for Reading, Listening,
|
||||
Writing, Speaking, or Level modules.
|
||||
</p>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<menuitem id="menu_encoach_exam_all"
|
||||
name="All Exams"
|
||||
parent="encoach_core.menu_encoach_exams"
|
||||
action="action_encoach_exam"
|
||||
sequence="10"/>
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user