<?xml version="1.0" encoding="utf-8"?>
<odoo>
    <data>
        <record id="view_xeno_attendance_location_list" model="ir.ui.view">
            <field name="name">xeno.attendance.location.list</field>
            <field name="model">xeno.attendance.location</field>
            <field name="arch" type="xml">
                <list editable="bottom">
                    <field name="name"/>
                    <field name="latitude"/>
                    <field name="longitude"/>
                    <field name="radius"/>
                    <field name="remark"/>
                    <field name="active" widget="boolean_toggle"/>
                    <button name="action_xeno_preview" type="object" string="Preview"
                            icon="fa-map-marker" title="Preview on map"/>
                </list>
            </field>
        </record>

        <record id="view_xeno_attendance_location_form" model="ir.ui.view">
            <field name="name">xeno.attendance.location.form</field>
            <field name="model">xeno.attendance.location</field>
            <field name="arch" type="xml">
                <form>
                    <header>
                        <button name="action_xeno_preview" type="object" string="Preview" class="btn-secondary"/>
                    </header>
                    <sheet>
                        <widget name="web_ribbon" title="Archived" bg_color="text-bg-danger" invisible="active"/>
                        <group>
                            <field name="name"/>
                            <field name="latitude"/>
                            <field name="longitude"/>
                            <field name="radius"/>
                            <field name="remark"/>
                            <field name="active" widget="boolean_toggle"/>
                        </group>
                    </sheet>
                </form>
            </field>
        </record>

        <record id="view_xeno_attendance_location_search" model="ir.ui.view">
            <field name="name">xeno.attendance.location.search</field>
            <field name="model">xeno.attendance.location</field>
            <field name="arch" type="xml">
                <search>
                    <field name="name"/>
                    <filter name="inactive" string="Archived" domain="[('active', '=', False)]"/>
                </search>
            </field>
        </record>

        <record id="action_xeno_attendance_location" model="ir.actions.act_window">
            <field name="name">Check-in Locations</field>
            <field name="res_model">xeno.attendance.location</field>
            <field name="view_mode">list,form</field>
            <field name="search_view_id" ref="view_xeno_attendance_location_search"/>
            <field name="help" type="html">
                <p class="o_view_nocontent_smiling_face">No check-in locations configured yet.</p>
                <p>Add a location to require GPS check-ins to happen within a
                given radius of it. With no active location configured here,
                GPS check-in is unrestricted, same as today. Requires "Device
                Tracking" to be enabled in Attendances settings so the browser
                is actually asked for a location.</p>
            </field>
        </record>

        <!-- Show which geofence a check-in matched, alongside the existing
             GPS fields core hr_attendance already has -->
        <record id="view_hr_attendance_form_xeno_geofence" model="ir.ui.view">
            <field name="name">hr.attendance.form.xeno.geofence</field>
            <field name="model">hr.attendance</field>
            <field name="inherit_id" ref="hr_attendance.hr_attendance_view_form"/>
            <field name="arch" type="xml">
                <field name="in_location" position="after">
                    <field name="xeno_location_id"/>
                </field>
            </field>
        </record>
    </data>
    <data noupdate="1">
        <menuitem id="menu_xeno_attendance_location"
                  name="Check-in Locations"
                  parent="hr_attendance.menu_hr_attendance_configuration"
                  action="action_xeno_attendance_location"
                  groups="hr_attendance.group_hr_attendance_officer"
                  sequence="96"/>
    </data>
</odoo>
