odex25_standard/odex25_base/tour_genius/views/analytics_views.xml

109 lines
4.8 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!-- ============================================================ -->
<!-- Leaderboard Views -->
<!-- ============================================================ -->
<record id="view_genius_leaderboard_tree" model="ir.ui.view">
<field name="name">genius.leaderboard.tree</field>
<field name="model">genius.leaderboard</field>
<field name="arch" type="xml">
<tree string="Leaderboard" decoration-bf="rank &lt;= 3" decoration-success="rank == 1">
<field name="rank"/>
<field name="user_id"/>
<field name="points"/>
<field name="topics_completed"/>
<field name="quizzes_passed"/>
<field name="time_spent_hours"/>
<field name="period_type"/>
</tree>
</field>
</record>
<!-- Leaderboard Action -->
<record id="action_genius_leaderboard" model="ir.actions.act_window">
<field name="name">Leaderboard</field>
<field name="res_model">genius.leaderboard</field>
<field name="view_mode">tree</field>
<field name="domain">[('period_type', '=', 'alltime')]</field>
</record>
<!-- ============================================================ -->
<!-- Reminder Views -->
<!-- ============================================================ -->
<record id="view_genius_reminder_tree" model="ir.ui.view">
<field name="name">genius.reminder.tree</field>
<field name="model">genius.reminder</field>
<field name="arch" type="xml">
<tree string="Reminders">
<field name="name"/>
<field name="user_id"/>
<field name="reminder_type"/>
<field name="scheduled_date"/>
<field name="state" widget="badge" decoration-success="state == 'sent'"
decoration-warning="state == 'pending'" decoration-danger="state == 'failed'"/>
</tree>
</field>
</record>
<record id="view_genius_reminder_form" model="ir.ui.view">
<field name="name">genius.reminder.form</field>
<field name="model">genius.reminder</field>
<field name="arch" type="xml">
<form string="Reminder">
<header>
<button name="action_send" type="object"
string="Send Now" class="btn-primary"
attrs="{'invisible': [('state', '!=', 'pending')]}"/>
<button name="action_cancel" type="object"
string="Cancel"
attrs="{'invisible': [('state', '!=', 'pending')]}"/>
<field name="state" widget="statusbar"/>
</header>
<sheet>
<group>
<group>
<field name="name"/>
<field name="user_id"/>
<field name="reminder_type"/>
</group>
<group>
<field name="scheduled_date"/>
<field name="sent_date"/>
<field name="is_recurring"/>
<field name="recurrence_interval" attrs="{'invisible': [('is_recurring', '=', False)]}"/>
</group>
</group>
<group>
<field name="topic_id" attrs="{'invisible': [('reminder_type', 'not in', ['incomplete_topic', 'new_topic'])]}"/>
<field name="plan_id" attrs="{'invisible': [('reminder_type', '!=', 'incomplete_plan')]}"/>
</group>
<field name="custom_message" attrs="{'invisible': [('reminder_type', '!=', 'custom')]}"/>
<field name="message_body" readonly="1"/>
</sheet>
</form>
</field>
</record>
<!-- Reminder Action -->
<record id="action_genius_reminder" model="ir.actions.act_window">
<field name="name">Reminders</field>
<field name="res_model">genius.reminder</field>
<field name="view_mode">tree,form</field>
</record>
<!-- Menu Items -->
<menuitem id="menu_analytics_leaderboard"
name="Leaderboard"
parent="menu_analytics"
action="action_genius_leaderboard"
sequence="10"/>
<menuitem id="menu_analytics_reminders"
name="Reminders"
parent="menu_analytics"
action="action_genius_reminder"
sequence="20"/>
</odoo>