418 lines
19 KiB
XML
418 lines
19 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<!-- UDM Configuration Tree View -->
|
|
<record id="view_udm_configuration_tree" model="ir.ui.view">
|
|
<field name="name">udm.configuration.tree</field>
|
|
<field name="model">udm.configuration</field>
|
|
<field name="arch" type="xml">
|
|
<tree string="UDM Pro Configurations">
|
|
<field name="name"/>
|
|
<field name="timestamp"/>
|
|
<field name="site_id"/>
|
|
<field name="active"/>
|
|
<field name="system_info_id" optional="show"/>
|
|
<field name="network_count" optional="show"/>
|
|
<field name="device_count" optional="show"/>
|
|
<field name="user_count" optional="show"/>
|
|
<field name="firewall_rule_count" optional="show"/>
|
|
</tree>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- UDM Configuration Form View -->
|
|
<record id="view_udm_configuration_form" model="ir.ui.view">
|
|
<field name="name">udm.configuration.form</field>
|
|
<field name="model">udm.configuration</field>
|
|
<field name="arch" type="xml">
|
|
<form string="UDM Pro Configuration">
|
|
<sheet>
|
|
<div class="oe_button_box" name="button_box">
|
|
<button name="action_view_networks" type="object" class="oe_stat_button" icon="fa-diagram-project">
|
|
<field name="network_count" widget="statinfo" string="Networks"/>
|
|
</button>
|
|
<button name="action_view_devices" type="object" class="oe_stat_button" icon="fa-desktop">
|
|
<field name="device_count" widget="statinfo" string="Devices"/>
|
|
</button>
|
|
<button name="action_view_users" type="object" class="oe_stat_button" icon="fa-users">
|
|
<field name="user_count" widget="statinfo" string="Users"/>
|
|
</button>
|
|
<button name="action_view_firewall_rules" type="object" class="oe_stat_button" icon="fa-shield-halved">
|
|
<field name="firewall_rule_count" widget="statinfo" string="Firewall Rules"/>
|
|
</button>
|
|
<button name="action_view_dashboard" type="object" class="oe_stat_button" icon="fa-tachometer-alt">
|
|
<span>Dashboard</span>
|
|
</button>
|
|
</div>
|
|
<div class="oe_title">
|
|
<h1>
|
|
<field name="name"/>
|
|
</h1>
|
|
</div>
|
|
<group>
|
|
<group>
|
|
<field name="timestamp"/>
|
|
<field name="site_id"/>
|
|
<field name="active"/>
|
|
<field name="system_info_id"/>
|
|
<field name="settings_id"/>
|
|
</group>
|
|
<group>
|
|
<field name="host"/>
|
|
<field name="port"/>
|
|
<field name="username"/>
|
|
<field name="password" password="True"/>
|
|
</group>
|
|
</group>
|
|
<notebook>
|
|
<page string="Networks" name="networks">
|
|
<field name="network_ids" nolabel="1">
|
|
<tree>
|
|
<field name="name"/>
|
|
<field name="purpose"/>
|
|
<field name="subnet"/>
|
|
<field name="vlan_id"/>
|
|
<field name="dhcp_enabled"/>
|
|
</tree>
|
|
</field>
|
|
</page>
|
|
<page string="VLANs" name="vlans">
|
|
<field name="vlan_ids" nolabel="1">
|
|
<tree>
|
|
<field name="vlan_id"/>
|
|
<field name="name"/>
|
|
<field name="enabled"/>
|
|
</tree>
|
|
</field>
|
|
</page>
|
|
<page string="Devices" name="devices">
|
|
<field name="device_ids" nolabel="1">
|
|
<tree>
|
|
<field name="name"/>
|
|
<field name="mac"/>
|
|
<field name="ip"/>
|
|
<field name="device_type"/>
|
|
<field name="model" optional="show"/>
|
|
<field name="last_seen"/>
|
|
<field name="status" widget="badge" decoration-success="status == 'online'" decoration-danger="status == 'offline'" decoration-info="status == 'unknown'"/>
|
|
</tree>
|
|
</field>
|
|
</page>
|
|
<page string="Users" name="users">
|
|
<field name="user_ids" nolabel="1">
|
|
<tree>
|
|
<field name="name"/>
|
|
<field name="email"/>
|
|
<field name="role"/>
|
|
<field name="enabled"/>
|
|
<field name="is_admin"/>
|
|
</tree>
|
|
</field>
|
|
</page>
|
|
<page string="Firewall Rules" name="firewall_rules">
|
|
<field name="firewall_rule_ids" nolabel="1">
|
|
<tree>
|
|
<field name="name"/>
|
|
<field name="enabled"/>
|
|
<field name="action"/>
|
|
<field name="protocol"/>
|
|
<field name="src_address"/>
|
|
<field name="dst_address"/>
|
|
<field name="rule_summary" optional="show"/>
|
|
</tree>
|
|
</field>
|
|
</page>
|
|
<page string="Raw Data" name="raw_data">
|
|
<field name="raw_data" widget="ace" options="{'mode': 'json'}" help="Données JSON brutes de la configuration"/>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- Configuration Search View -->
|
|
<record id="view_udm_configuration_search" model="ir.ui.view">
|
|
<field name="name">udm.configuration.search</field>
|
|
<field name="model">udm.configuration</field>
|
|
<field name="arch" type="xml">
|
|
<search string="Search UDM Pro Configurations">
|
|
<field name="name"/>
|
|
<field name="system_info_id"/>
|
|
<field name="timestamp"/>
|
|
<filter string="Last 7 Days" name="last_7_days" domain="[('timestamp','>=', (context_today() - relativedelta(days=7)))]"/>
|
|
<filter string="Last 30 Days" name="last_30_days" domain="[('timestamp','>=', (context_today() - relativedelta(days=30)))]"/>
|
|
<group expand="0" string="Group By">
|
|
<filter string="System Info" name="system_info" context="{'group_by': 'system_info_id'}"/>
|
|
<filter string="Month" name="month" context="{'group_by': 'timestamp:month'}"/>
|
|
</group>
|
|
</search>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- System Info Form View -->
|
|
<record id="view_udm_system_info_form" model="ir.ui.view">
|
|
<field name="name">udm.system.info.form</field>
|
|
<field name="model">udm.system.info</field>
|
|
<field name="arch" type="xml">
|
|
<form string="UDM Pro System Information">
|
|
<sheet>
|
|
<group>
|
|
<group>
|
|
<field name="hostname"/>
|
|
<field name="version"/>
|
|
<field name="model"/>
|
|
<field name="serial"/>
|
|
</group>
|
|
<group>
|
|
<field name="mac_address"/>
|
|
<field name="uptime" invisibility="always"/>
|
|
<field name="uptime_human"/>
|
|
<field name="config_id"/>
|
|
</group>
|
|
</group>
|
|
<notebook>
|
|
<page string="Raw Data" name="raw_data">
|
|
<field name="raw_data" widget="ace" options="{'mode': 'json'}" help="Données JSON brutes de la configuration"/>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- Network Form View -->
|
|
<record id="view_udm_network_form" model="ir.ui.view">
|
|
<field name="name">udm.network.form</field>
|
|
<field name="model">udm.network</field>
|
|
<field name="arch" type="xml">
|
|
<form string="UDM Pro Network">
|
|
<sheet>
|
|
<group>
|
|
<group>
|
|
<field name="name"/>
|
|
<field name="purpose"/>
|
|
<field name="subnet"/>
|
|
</group>
|
|
<group>
|
|
<field name="vlan_id_number"/>
|
|
<field name="vlan_id"/>
|
|
<field name="dhcp_enabled"/>
|
|
<field name="domain_name"/>
|
|
</group>
|
|
</group>
|
|
<group invisible="[('dhcp_enabled', '=', False)]">
|
|
<group>
|
|
<field name="dhcp_start"/>
|
|
<field name="dhcp_stop"/>
|
|
</group>
|
|
</group>
|
|
<notebook>
|
|
<page string="Raw Data" name="raw_data">
|
|
<field name="raw_data" widget="ace" options="{'mode': 'json'}" help="Données JSON brutes de la configuration"/>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- VLAN Form View -->
|
|
<record id="view_udm_vlan_form" model="ir.ui.view">
|
|
<field name="name">udm.vlan.form</field>
|
|
<field name="model">udm.vlan</field>
|
|
<field name="arch" type="xml">
|
|
<form string="UDM Pro VLAN">
|
|
<sheet>
|
|
<group>
|
|
<group>
|
|
<field name="vlan_id"/>
|
|
<field name="name"/>
|
|
</group>
|
|
<group>
|
|
<field name="enabled"/>
|
|
<field name="config_id"/>
|
|
<field name="network_count"/>
|
|
</group>
|
|
</group>
|
|
<notebook>
|
|
<page string="Networks" name="networks">
|
|
<field name="network_ids" nolabel="1">
|
|
<tree>
|
|
<field name="name"/>
|
|
<field name="purpose"/>
|
|
<field name="subnet"/>
|
|
</tree>
|
|
</field>
|
|
</page>
|
|
<page string="Raw Data" name="raw_data">
|
|
<field name="raw_data" widget="ace" options="{'mode': 'json'}" help="Données JSON brutes de la configuration"/>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- Device Form View -->
|
|
<record id="view_udm_device_form" model="ir.ui.view">
|
|
<field name="name">udm.device.form</field>
|
|
<field name="model">udm.device</field>
|
|
<field name="arch" type="xml">
|
|
<form string="UDM Pro Device">
|
|
<sheet>
|
|
<div class="oe_title">
|
|
<h1>
|
|
<field name="name"/>
|
|
</h1>
|
|
</div>
|
|
<group>
|
|
<group>
|
|
<field name="mac"/>
|
|
<field name="ip"/>
|
|
<field name="device_type"/>
|
|
</group>
|
|
<group>
|
|
<field name="model"/>
|
|
<field name="last_seen"/>
|
|
<field name="status" widget="badge" decoration-success="status == 'online'" decoration-danger="status == 'offline'" decoration-info="status == 'unknown'"/>
|
|
<field name="config_id"/>
|
|
</group>
|
|
</group>
|
|
<notebook>
|
|
<page string="Raw Data" name="raw_data">
|
|
<field name="raw_data" widget="ace" options="{'mode': 'json'}" help="Données JSON brutes de la configuration"/>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- User Form View -->
|
|
<record id="view_udm_user_form" model="ir.ui.view">
|
|
<field name="name">udm.user.form</field>
|
|
<field name="model">udm.user</field>
|
|
<field name="arch" type="xml">
|
|
<form string="UDM Pro User">
|
|
<sheet>
|
|
<div class="oe_title">
|
|
<h1>
|
|
<field name="name"/>
|
|
</h1>
|
|
</div>
|
|
<group>
|
|
<group>
|
|
<field name="email"/>
|
|
<field name="role"/>
|
|
</group>
|
|
<group>
|
|
<field name="enabled"/>
|
|
<field name="is_admin"/>
|
|
<field name="config_id"/>
|
|
</group>
|
|
</group>
|
|
<notebook>
|
|
<page string="Raw Data" name="raw_data">
|
|
<field name="raw_data" widget="ace" options="{'mode': 'json'}" help="Données JSON brutes de la configuration"/>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- Settings Form View -->
|
|
<record id="view_udm_settings_form" model="ir.ui.view">
|
|
<field name="name">udm.settings.form</field>
|
|
<field name="model">udm.settings</field>
|
|
<field name="arch" type="xml">
|
|
<form string="UDM Pro Settings">
|
|
<sheet>
|
|
<group>
|
|
<group>
|
|
<field name="timezone"/>
|
|
<field name="ntp_servers"/>
|
|
</group>
|
|
<group>
|
|
<field name="dns_servers"/>
|
|
<field name="config_id"/>
|
|
</group>
|
|
</group>
|
|
<notebook>
|
|
<page string="Raw Data" name="raw_data">
|
|
<field name="raw_data" widget="ace" options="{'mode': 'json'}" help="Données JSON brutes de la configuration"/>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- Firewall Rule Form View -->
|
|
<record id="view_udm_firewall_rule_form" model="ir.ui.view">
|
|
<field name="name">udm.firewall.rule.form</field>
|
|
<field name="model">udm.firewall.rule</field>
|
|
<field name="arch" type="xml">
|
|
<form string="UDM Pro Firewall Rule">
|
|
<sheet>
|
|
<div class="oe_title">
|
|
<h1>
|
|
<field name="name"/>
|
|
</h1>
|
|
</div>
|
|
<group>
|
|
<group>
|
|
<field name="enabled"/>
|
|
<field name="action"/>
|
|
<field name="protocol"/>
|
|
</group>
|
|
<group>
|
|
<field name="src_address"/>
|
|
<field name="dst_address"/>
|
|
<field name="src_port"/>
|
|
<field name="dst_port"/>
|
|
</group>
|
|
</group>
|
|
<group>
|
|
<field name="rule_summary" readonly="1" force_save="1" help="Résumé de la règle en langage naturel"/>
|
|
<field name="config_id"/>
|
|
</group>
|
|
<notebook>
|
|
<page string="Raw Data" name="raw_data">
|
|
<field name="raw_data" widget="ace" options="{'mode': 'json'}" help="Données JSON brutes de la configuration"/>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
<!-- Les vues relatives au modèle udm.site ont été déplacées vers udm_site_views.xml -->
|
|
|
|
<!-- La vue tableau de bord du site a été déplacée vers udm_site_views.xml -->
|
|
|
|
<!-- Les vues de métriques du tableau de bord ont été déplacées vers udm_dashboard_metric_views.xml -->
|
|
|
|
<!-- Cette vue d'extension n'est plus nécessaire car les champs ont été intégrés directement à la vue principale -->
|
|
|
|
<!-- Action pour les configurations UDM Pro -->
|
|
<record id="action_udm_configuration" model="ir.actions.act_window">
|
|
<field name="name">Configurations</field>
|
|
<field name="res_model">udm.configuration</field>
|
|
<field name="view_mode">tree,form</field>
|
|
<field name="help" type="html">
|
|
<p class="o_view_nocontent_smiling_face">
|
|
Import your first UDM Pro configuration
|
|
</p>
|
|
<p>
|
|
Import and manage UDM Pro device configurations.
|
|
</p>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- Menu principal -->
|
|
<menuitem id="menu_udm_pro_docs_root" name="UDM Pro" sequence="90" web_icon="udm_pro_docs,static/description/icon.png"/>
|
|
|
|
<!-- Sous-menus -->
|
|
<menuitem id="menu_udm_configuration" name="Configurations" parent="menu_udm_pro_docs_root" sequence="20" action="action_udm_configuration"/>
|
|
|
|
</odoo>
|