Initial commit: OCA Technical packages (595 packages)

This commit is contained in:
Ernad Husremovic 2025-08-29 15:43:03 +02:00
commit 2cc02aac6e
24950 changed files with 2318079 additions and 0 deletions

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<menuitem
name="GeoEngine Backend"
id="geoengine_base_menu"
web_icon="base_geoengine,images/map.png"
groups="group_geoengine_admin"
/>
</odoo>

View file

@ -0,0 +1,119 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record model="ir.ui.view" id="geo_raster_view_form">
<field name="name">geoengine.raster.layer.form</field>
<field name="model">geoengine.raster.layer</field>
<field name="arch" type="xml">
<form string="Raster Layer View">
<sheet>
<group string="General" col="4">
<field name="name" />
<field name="view_id" />
<field name="raster_type" />
<field name="sequence" />
<field name="overlay" />
<field name="use_to_edit" />
<field
name="url"
colspan="4"
widget="url"
attrs="{'required': ['|',('is_wmts', '=', True),('is_wms', '=', True)]}"
/>
</group>
<field name="is_wmts" invisible="1" />
<group
string="WMTS options"
attrs="{'invisible': [('is_wmts', '=', False)]}"
colspan="4"
>
<field
name="matrix_set"
attrs="{'required': [('is_wmts', '=', True)]}"
/>
<field
name="format_suffix"
attrs="{'required': [('is_wmts', '=', True)]}"
/>
<field name="request_encoding" />
<field
name="projection"
attrs="{'required': [('is_wmts', '=', True)]}"
/>
<field name="units" /> <!-- Not used -->
<field
name="resolutions"
attrs="{'required': [('is_wmts', '=', True)]}"
/>
<field name="max_extent" />
<field name="dimensions" />
<field name="params" />
</group>
<field name="is_wms" invisible="1" />
<group
string="WMS options"
attrs="{'invisible': [('is_wms', '=', False)]}"
colspan="4"
>
<field
name="params_wms"
attrs="{'required': [('is_wms', '=', True)]}"
/>
<field
name="server_type"
attrs="{'required': [('is_wms', '=', True)]}"
/>
</group>
<field name="has_type" invisible="1" />
<group
string="Layer data"
attrs="{'invisible': [('has_type', '=', False)]}"
colspan="4"
>
<field
name="type_id"
widget="selection"
attrs="{'required': [('has_type', '=', True)]}"
/>
</group>
<group
string="Odoo layer data (Not implemented)"
attrs="{'invisible': [('raster_type', '!=', 'odoo')]}"
colspan="4"
>
<field name="field_id" />
</group>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="geo_raster_view_tree">
<field name="name">geoengine.raster.layer.tree</field>
<field name="model">geoengine.raster.layer</field>
<field name="arch" type="xml">
<tree>
<field name="name" select="1" />
<field name="raster_type" select="1" />
<field name="sequence" />
<field name="overlay" select="1" />
</tree>
</field>
</record>
<record id="geo_engine_view_rater_action" model="ir.actions.act_window">
<field name="name">Raster Layer</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">geoengine.raster.layer</field>
<field name="view_id" ref="geo_raster_view_tree" />
</record>
<menuitem
name="Raster Layer Management"
id="geoengine_raster_layer_menu"
parent="geoengine_base_view_menu"
action="geo_engine_view_rater_action"
groups="group_geoengine_admin"
/>
</odoo>

View file

@ -0,0 +1,180 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record model="ir.ui.view" id="geo_vector_view_form">
<field name="name">geoengine.vector.layer.form</field>
<field name="model">geoengine.vector.layer</field>
<field name="arch" type="xml">
<form string="Vector">
<sheet>
<group string="General" col="4">
<field name="name" />
<field name="view_id" />
<field name="geo_field_id" />
<field
name="attribute_field_id"
attrs="{'required': [('geo_repr', 'in', ['choropleth', 'proportion', 'colored'])]}"
/>
<field name="active_on_startup" />
<field name="display_polygon_labels" />
<field name="sequence" />
<field name="readonly" />
<field name="layer_opacity" />
</group>
<group string="Related Model" col="4">
<field name="model_id" />
<field
name="model_view_id"
domain="[('mode', '=', 'geoengine')]"
/>
<field name="model_name" invisible="1" />
<field
name="model_domain"
colspan="4"
widget="domain"
options="{'model': 'model_name'}"
/>
</group>
<group string="Representation" col="4" colspan="4">
<field name="geo_repr" />
</group>
<group
string="Classification"
colspan="4"
attrs="{'invisible': [('geo_repr', '=', 'basic')]}"
>
<field
name="classification"
attrs="{'invisible': [('geo_repr', '=', 'basic')], 'required': [('geo_repr', 'in', ['choropleth', 'proportion', 'colored'])]}"
/>
</group>
<group string="Colors" col="4" colspan="4">
<field name="begin_color" widget="color" />
<group
colspan="4"
attrs="{'invisible': [('geo_repr', 'in', ['basic', 'proportion'])]}"
>
<field
name="end_color"
attrs="{'invisible': [('classification', 'in', ['unique', False])], 'required': [('classification', 'in', ['interval', 'quantil'])]}"
widget="color"
/>
<field
name="nb_class"
attrs="{'invisible': [('classification', 'in', ['unique', False])], 'required': [('classification', 'in', ['interval', 'quantil'])]}"
/>
</group>
</group>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="geo_vector_geoengine_view_form">
<field name="name">geoengine.vector.layer.geoengine.form</field>
<field name="model">geoengine.vector.layer</field>
<field name="arch" type="xml">
<form>
<sheet>
<group string="General" col="4">
<field name="name" />
<field name="geo_field_id" />
<field
name="attribute_field_id"
attrs="{'required': [('geo_repr', 'in', ['choropleth', 'proportion', 'colored'])]}"
/>
<field name="display_polygon_labels" />
<field name="sequence" readonly="1" />
<field name="readonly" />
<field name="layer_opacity" />
</group>
<!-- <group string="Related Model" col="4">
<field name="model_id" />
<field
name="model_view_id"
domain="[('mode', '=', 'geoengine')]"
/>
<field name="model_name" invisible="1" />
<field
name="model_domain"
colspan="4"
widget="domain"
options="{'model': 'model_name'}"
/>
</group> -->
<group string="Representation" col="4" colspan="4">
<field name="geo_repr" />
</group>
<group
string="Classification"
colspan="4"
attrs="{'invisible': [('geo_repr', '=', 'basic')]}"
>
<field
name="classification"
attrs="{'invisible': [('geo_repr', '=', 'basic')], 'required': [('geo_repr', 'in', ['choropleth', 'proportion', 'colored'])]}"
/>
</group>
<group string="Colors" col="4" colspan="4">
<field name="begin_color" widget="color" />
<group
colspan="4"
attrs="{'invisible': [('geo_repr', 'in', ['basic', 'proportion'])]}"
>
<field
name="end_color"
attrs="{'invisible': [('classification', 'in', ['unique', False])], 'required': [('classification', 'in', ['interval', 'quantil'])]}"
widget="color"
/>
<field
name="nb_class"
attrs="{'invisible': [('classification', 'in', ['unique', False])], 'required': [('classification', 'in', ['interval', 'quantil'])]}"
/>
</group>
</group>
</sheet>
</form>
</field>
</record>
<record id="geo_vector_geoengine_view_action" model="ir.actions.act_window">
<field name="name">Vector Layer</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">geoengine.vector.layer</field>
<field name="target">new</field>
<field name="view_id" ref="geo_vector_geoengine_view_form" />
</record>
<record model="ir.ui.view" id="geo_vector_view_tree">
<field name="name">geoengine.vector.layer.tree</field>
<field name="model">geoengine.vector.layer</field>
<field name="arch" type="xml">
<tree>
<field name="name" select="1" />
<field name="geo_repr" select="1" />
<field name="classification" select="1" />
<field name="geo_field_id" select="1" />
<field name="attribute_field_id" select="1" />
<field name="active_on_startup" />
<field name="sequence" />
</tree>
</field>
</record>
<record id="geo_engine_view_raster_action" model="ir.actions.act_window">
<field name="name">Vector Layer</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">geoengine.vector.layer</field>
<field name="view_id" ref="geo_vector_view_tree" />
</record>
<menuitem
name="Vector Layer Management"
id="geoengine_vector_layer_menu"
parent="geoengine_base_view_menu"
action="geo_engine_view_raster_action"
groups="group_geoengine_admin"
/>
</odoo>

View file

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record model="ir.ui.view" id="view_model_fields_form_geo">
<!-- must be unique in this module. -->
<field name="name">ir.model.fields.form.geo</field>
<field name="model">ir.model.fields</field>
<field name="inherit_id" ref="base.view_model_fields_form" />
<field name="arch" type="xml">
<sheet position="inside">
<group>
<!-- nasty attrs but ilike operator does not work as expected -->
<field
name="srid"
attrs="{'readonly': [('ttype', 'not in', ['geo_polygon', 'geo_multi_polygon', 'geo_point', 'geo_multi_point', 'geo_line', 'geo_multi_line'])]}"
/>
<field
name="geo_type"
attrs="{'readonly': [('ttype', 'not in', ['geo_polygon', 'geo_multi_polygon', 'geo_point', 'geo_multi_point', 'geo_line', 'geo_multi_line'])]}"
/>
<field
name="dim"
attrs="{'readonly': [('ttype', 'not in', ['geo_polygon', 'geo_multi_polygon', 'geo_point', 'geo_multi_point', 'geo_line', 'geo_multi_line'])]}"
/>
<field
name="gist_index"
attrs="{'readonly': [('ttype', 'not in', ['geo_polygon', 'geo_multi_polygon', 'geo_point', 'geo_multi_point', 'geo_line', 'geo_multi_line'])]}"
/>
</group>
</sheet>
</field>
</record>
</odoo>

View file

@ -0,0 +1,53 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record model="ir.ui.view" id="geoengine_view_form">
<field name="name">geoengine.view.form</field>
<field name="model">ir.ui.view</field>
<field name="inherit_id" ref="base.view_view_form" />
<field name="arch" type="xml">
<notebook position="inside">
<page
string="GeoEngine Data"
col="4"
attrs="{'invisible': [('type', '!=', 'geoengine')]}"
>
<group>
<field name="projection" />
<field name="restricted_extent" />
<field name="default_extent" />
<field name="default_zoom" />
</group>
<separator string="Vector (Active layers)" colspan="4" />
<field name="vector_layer_ids" colspan="4" nolabel="1" />
<separator string="Raster (Background layers)" colspan="4" />
<field name="raster_layer_ids" colspan="4" nolabel="1" />
</page>
</notebook>
</field>
</record>
<menuitem
name="Configuration"
id="geoengine_base_view_menu"
parent="geoengine_base_menu"
groups="group_geoengine_admin"
/>
<record id="geo_engine_view_action" model="ir.actions.act_window">
<field name="name">Views</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">ir.ui.view</field>
<field name="view_id" ref="base.view_view_tree" />
<field name="search_view_id" ref="base.action_view_search" />
<field name="domain">[('type', '=', 'geoengine')]</field>
</record>
<menuitem
name="View Management"
id="geoengine_view_menu"
parent="geoengine_base_view_menu"
action="geo_engine_view_action"
groups="group_geoengine_admin"
/>
</odoo>