You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
105 lines
4.1 KiB
105 lines
4.1 KiB
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<record id="gym_attendance_view_form" model="ir.ui.view">
|
|
<field name="name">gym.attendance.view.form</field>
|
|
<field name="model">gym.attendance</field>
|
|
<field name="arch" type="xml">
|
|
<form>
|
|
<header>
|
|
<button name="action_check_in" string="Check In" type="object"
|
|
class="btn-primary" invisible="check_in"/>
|
|
<button name="action_check_out" string="Check Out" type="object"
|
|
class="btn-warning" invisible="check_out or not check_in"/>
|
|
<field name="state" widget="statusbar"/>
|
|
</header>
|
|
<sheet>
|
|
<group>
|
|
<group>
|
|
<field name="member_id"/>
|
|
<field name="check_in"/>
|
|
</group>
|
|
<group>
|
|
<field name="check_out"/>
|
|
<field name="duration" widget="float_time"/>
|
|
</group>
|
|
</group>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="gym_attendance_view_tree" model="ir.ui.view">
|
|
<field name="name">gym.attendance.view.tree</field>
|
|
<field name="model">gym.attendance</field>
|
|
<field name="arch" type="xml">
|
|
<list>
|
|
<field name="member_id"/>
|
|
<field name="check_in"/>
|
|
<field name="check_out"/>
|
|
<field name="duration" widget="float_time"/>
|
|
<field name="state" decoration-success="state == 'checked_out'"
|
|
decoration-info="state == 'checked_in'"/>
|
|
<button name="action_check_out" type="object" string="Check Out"
|
|
class="btn-sm btn-warning" icon="fa-sign-out"
|
|
invisible="check_out or not check_in"/>
|
|
</list>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="gym_attendance_quick_checkin_form" model="ir.ui.view">
|
|
<field name="name">gym.attendance.quick.checkin.form</field>
|
|
<field name="model">gym.attendance</field>
|
|
<field name="arch" type="xml">
|
|
<form>
|
|
<sheet>
|
|
<div class="oe_title">
|
|
<h1>Quick Check-In</h1>
|
|
</div>
|
|
<group>
|
|
<field name="member_id" placeholder="Select Member..."/>
|
|
</group>
|
|
<footer>
|
|
<button name="action_check_in" string="Check In" type="object" class="btn-primary"/>
|
|
<button string="Cancel" special="cancel" class="btn-secondary"/>
|
|
</footer>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="gym_attendance_action" model="ir.actions.act_window">
|
|
<field name="name">Gym Attendance</field>
|
|
<field name="type">ir.actions.act_window</field>
|
|
<field name="res_model">gym.attendance</field>
|
|
<field name="view_mode">list,form</field>
|
|
</record>
|
|
|
|
<record id="gym_attendance_quick_checkin_action" model="ir.actions.act_window">
|
|
<field name="name">Quick Check-In</field>
|
|
<field name="type">ir.actions.act_window</field>
|
|
<field name="res_model">gym.attendance</field>
|
|
<field name="view_mode">form</field>
|
|
<field name="view_id" ref="gym_attendance_quick_checkin_form"/>
|
|
<field name="target">new</field>
|
|
</record>
|
|
|
|
<menuitem
|
|
id="gym_attendance_menu"
|
|
name="Attendance"
|
|
parent="gym_member_root"
|
|
sequence="45"/>
|
|
|
|
<menuitem
|
|
id="gym_attendance_records_menu"
|
|
name="Attendance Records"
|
|
parent="gym_attendance_menu"
|
|
action="gym_attendance_action"
|
|
sequence="10"/>
|
|
|
|
<menuitem
|
|
id="gym_attendance_quick_checkin_menu"
|
|
name="Quick Check-In"
|
|
parent="gym_attendance_menu"
|
|
action="gym_attendance_quick_checkin_action"
|
|
sequence="5"/>
|
|
</odoo>
|