Odoo18-Base/odoo/addons/base/views/res_device_views.xml
2025-01-06 10:57:38 +07:00

91 lines
4.2 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<record model="ir.ui.view" id="res_device_view_form">
<field name="name">res.device.form</field>
<field name="model">res.device</field>
<field name="arch" type="xml">
<form>
<group>
<group>
<field name="user_id"/>
<field name="display_name" string="Name"/>
<field name="ip_address" string="Last IP Address"/>
</group>
<group>
<field name="first_activity"/>
<field name="last_activity"/>
</group>
<group>
<field name="linked_ip_addresses"/>
</group>
</group>
</form>
</field>
</record>
<record model="ir.ui.view" id="res_device_view_tree">
<field name="name">res.device.list</field>
<field name="model">res.device</field>
<field name="arch" type="xml">
<list default_order="last_activity desc">
<field name="user_id"/>
<field name="display_name" string="Name"/>
<field name="ip_address"/>
<field name="first_activity"/>
<field name="last_activity"/>
<field name="country" optional="hidden"/>
<field name="city" optional="hidden"/>
<button type="object" name="revoke" string="Revoke" class="btn btn-secondary"/>
</list>
</field>
</record>
<record model="ir.ui.view" id="res_device_view_kanban">
<field name="name">res.device.kanban</field>
<field name="model">res.device</field>
<field name="arch" type="xml">
<kanban create="false" default_order="is_current desc, last_activity desc">
<field name="id"/>
<field name="device_type"/>
<field name="last_activity"/>
<field name="is_current"/>
<templates>
<t t-name="card" class="flex-row">
<t t-if="record.device_type.raw_value === 'computer'">
<span class="fa fa-laptop fs-1" title="Computer" role="img" aria-label="Computer"/>
</t>
<t t-else="">
<span class="fa fa-mobile fs-1" title="Mobile" role="img" aria-label="Mobile"/>
</t>
<div class="d-flex flex-column ms-3">
<div class="d-flex align-items-center">
<field name="display_name" string="Name" class="fw-bolder"/>
<t t-if="record.is_current.raw_value">
<span class="ms-2 text-success o_status o_status_green"></span>
</t>
</div>
<field name="ip_address"/>
<field name="country"/>
<field name="city"/>
<t t-out="luxon.DateTime.fromISO(record.last_activity.raw_value).toRelative()"/>
</div>
<button name="revoke" type="object" string="Revoke" class="btn btn-secondary ms-auto mt-auto"/>
</t>
</templates>
</kanban>
</field>
</record>
<record id="action_user_device" model="ir.actions.act_window">
<field name="name">User Devices</field>
<field name="res_model">res.device</field>
<field name="path">user-device</field>
<field name="view_mode">list,kanban,form</field>
</record>
<menuitem action="action_user_device" id="menu_action_user_device" parent="base.menu_security" sequence="10"/>
</data>
</odoo>