[MOV] utm: split views in different files

Purpose
=======

This commit cleans the UTM module and uses a different file for each model
views in order to clarify organization and ease reading. Each model owns its
own view file.

Task-2245823

Part-of: odoo/odoo#83070
This commit is contained in:
Thibault Delavallée
2022-01-20 10:06:47 +00:00
parent b15fc956ad
commit 7db596fdb2
10 changed files with 199 additions and 192 deletions
+5 -1
View File
@@ -12,7 +12,11 @@ Enable management of UTM trackers: campaign, medium, source.
'data': [
'data/utm_data.xml',
'views/utm_campaign_views.xml',
'views/utm_views.xml',
'views/utm_medium_views.xml',
'views/utm_source_views.xml',
'views/utm_stage_views.xml',
'views/utm_tag_views.xml',
'views/utm_menus.xml',
'security/ir.model.access.csv',
],
'demo': [
+2
View File
@@ -1,4 +1,6 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo.http import request
from odoo import models
-1
View File
@@ -1,7 +1,6 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import fields, models, api, SUPERUSER_ID
+7 -52
View File
@@ -121,61 +121,16 @@
</field>
</record>
<!-- CAMPAIGN TAGS !-->
<record id="utm_tag_view_tree" model="ir.ui.view">
<field name="name">utm.tag.view.tree</field>
<field name="model">utm.tag</field>
<field name="arch" type="xml">
<tree string="Campaign Tags" editable="top">
<field name="name"/>
</tree>
</field>
</record>
<record id="action_view_utm_tag" model="ir.actions.act_window">
<field name="name">Campaign Tags</field>
<field name="res_model">utm.tag</field>
<record id="utm_campaign_action" model="ir.actions.act_window">
<field name="name">Campaigns</field>
<field name="res_model">utm.campaign</field>
<field name="view_mode">tree,kanban,form</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a Tag
</p><p>
Assign tags to your campaigns to organize, filter and track them.
Create a campaign
</p>
</field>
</record>
<!-- CAMPAIGN STAGE !-->
<record model="ir.ui.view" id="utm_stage_view_search">
<field name="name">utm.stage.view.search</field>
<field name="model">utm.stage</field>
<field name="arch" type="xml">
<search string="Stages">
<field name="name"/>
</search>
</field>
</record>
<record model="ir.ui.view" id="utm_stage_view_tree">
<field name="name">utm.stage.view.tree</field>
<field name="model">utm.stage</field>
<field name="priority">10</field>
<field name="arch" type="xml">
<tree string="Stages" editable="top">
<field name="sequence" widget="handle"/>
<field name="name"/>
</tree>
</field>
</record>
<record id="action_view_utm_stage" model="ir.actions.act_window">
<field name="name">UTM Stages</field>
<field name="res_model">utm.stage</field>
<field name="view_mode">tree,form</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a stage for your campaigns
</p><p>
Stages allow you to organize your workflow (e.g. : plan, design, in progress, done, …).
<p>
Campaigns are used to centralize your marketing efforts and track their results.
</p>
</field>
</record>
+54
View File
@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="utm_medium_view_tree" model="ir.ui.view">
<field name="name">utm.medium.view.tree</field>
<field name="model">utm.medium</field>
<field name="arch" type="xml">
<tree string="Mediums" editable="bottom" sample="1">
<field name="name"/>
<field name="active" invisible="1"/>
</tree>
</field>
</record>
<record id="utm_medium_view_form" model="ir.ui.view">
<field name="name">utm.medium.view.form</field>
<field name="model">utm.medium</field>
<field name="arch" type="xml">
<form string="Medium">
<sheet>
<group>
<field name="name"/>
<field name="active" widget="boolean_toggle"/>
</group>
</sheet>
</form>
</field>
</record>
<record id="utm_medium_view_search" model="ir.ui.view">
<field name="name">utm.medium.view.search</field>
<field name="model">utm.medium</field>
<field name="arch" type="xml">
<search string="Search UTM Medium">
<field name="name"/>
<separator/>
<filter string="Archived" name="inactive" domain="[('active', '=', False)]"/>
</search>
</field>
</record>
<record id="utm_medium_action" model="ir.actions.act_window">
<field name="name">Mediums</field>
<field name="res_model">utm.medium</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="utm_medium_view_search"/>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a Medium
</p><p>
UTM Mediums track the mean that was used to attract traffic (e.g. "Website", "Twitter", ...).
</p>
</field>
</record>
</odoo>
+31
View File
@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<menuitem id="menu_link_tracker_root"
name="Link Tracker"
sequence="270"
web_icon="utm,static/description/icon.png"
groups="base.group_no_one"/>
<menuitem id="marketing_utm"
name="UTMs"
parent="menu_link_tracker_root"
sequence="99"
groups="base.group_no_one"/>
<menuitem id="menu_utm_campaign_act"
action="utm_campaign_action"
parent="marketing_utm"
sequence="1"
groups="base.group_no_one"/>
<menuitem id="menu_utm_medium"
action="utm_medium_action"
parent="marketing_utm"
sequence="5"
groups="base.group_no_one"/>
<menuitem id="menu_utm_source"
action="utm_source_action"
parent="marketing_utm"
sequence="10"
groups="base.group_no_one"/>
</odoo>
+39
View File
@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="utm_source_view_tree" model="ir.ui.view">
<field name="name">utm.source.view.tree</field>
<field name="model">utm.source</field>
<field name="arch" type="xml">
<tree string="Source" editable="bottom" sample="1">
<field name="name"/>
</tree>
</field>
</record>
<record id="utm_source_view_form" model="ir.ui.view">
<field name="name">utm.source.view.form</field>
<field name="model">utm.source</field>
<field name="arch" type="xml">
<form string="Source">
<sheet>
<group>
<field name="name"/>
</group>
</sheet>
</form>
</field>
</record>
<record id="utm_source_action" model="ir.actions.act_window">
<field name="name">Sources</field>
<field name="res_model">utm.source</field>
<field name="view_mode">tree,form</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
No Sources yet!
</p><p>
UTM Sources track where traffic comes from (e.g. "May Newsletter", "", ...).
</p>
</field>
</record>
</odoo>
+37
View File
@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record model="ir.ui.view" id="utm_stage_view_search">
<field name="name">utm.stage.view.search</field>
<field name="model">utm.stage</field>
<field name="arch" type="xml">
<search string="Stages">
<field name="name"/>
</search>
</field>
</record>
<record model="ir.ui.view" id="utm_stage_view_tree">
<field name="name">utm.stage.view.tree</field>
<field name="model">utm.stage</field>
<field name="priority">10</field>
<field name="arch" type="xml">
<tree string="Stages" editable="top">
<field name="sequence" widget="handle"/>
<field name="name"/>
</tree>
</field>
</record>
<record id="action_view_utm_stage" model="ir.actions.act_window">
<field name="name">UTM Stages</field>
<field name="res_model">utm.stage</field>
<field name="view_mode">tree,form</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a stage for your campaigns
</p><p>
Stages allow you to organize your workflow (e.g. : plan, design, in progress, done, …).
</p>
</field>
</record>
</odoo>
+24
View File
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="utm_tag_view_tree" model="ir.ui.view">
<field name="name">utm.tag.view.tree</field>
<field name="model">utm.tag</field>
<field name="arch" type="xml">
<tree string="Campaign Tags" editable="top">
<field name="name"/>
</tree>
</field>
</record>
<record id="action_view_utm_tag" model="ir.actions.act_window">
<field name="name">Campaign Tags</field>
<field name="res_model">utm.tag</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a Tag
</p><p>
Assign tags to your campaigns to organize, filter and track them.
</p>
</field>
</record>
</odoo>
-138
View File
@@ -1,138 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<menuitem id="menu_link_tracker_root"
name="Link Tracker"
sequence="270"
web_icon="utm,static/description/icon.png"
groups="base.group_no_one"/>
<menuitem id="marketing_utm"
name="UTMs"
parent="menu_link_tracker_root"
sequence="99"
groups="base.group_no_one"/>
<record id="utm_campaign_action" model="ir.actions.act_window">
<field name="name">Campaigns</field>
<field name="res_model">utm.campaign</field>
<field name="view_mode">tree,kanban,form</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a campaign
</p>
<p>
Campaigns are used to centralize your marketing efforts and track their results.
</p>
</field>
</record>
<menuitem id="menu_utm_campaign_act"
action="utm_campaign_action"
parent="marketing_utm"
sequence="1"
groups="base.group_no_one"/>
<!-- utm.medium -->
<record id="utm_medium_view_tree" model="ir.ui.view">
<field name="name">utm.medium.view.tree</field>
<field name="model">utm.medium</field>
<field name="arch" type="xml">
<tree string="Mediums" editable="bottom" sample="1">
<field name="name"/>
<field name="active" invisible="1"/>
</tree>
</field>
</record>
<record id="utm_medium_view_form" model="ir.ui.view">
<field name="name">utm.medium.view.form</field>
<field name="model">utm.medium</field>
<field name="arch" type="xml">
<form string="Medium">
<sheet>
<group>
<field name="name"/>
<field name="active" widget="boolean_toggle"/>
</group>
</sheet>
</form>
</field>
</record>
<record id="utm_medium_view_search" model="ir.ui.view">
<field name="name">utm.medium.view.search</field>
<field name="model">utm.medium</field>
<field name="arch" type="xml">
<search string="Search UTM Medium">
<field name="name"/>
<separator/>
<filter string="Archived" name="inactive" domain="[('active', '=', False)]"/>
</search>
</field>
</record>
<record id="utm_medium_action" model="ir.actions.act_window">
<field name="name">Mediums</field>
<field name="res_model">utm.medium</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="utm_medium_view_search"/>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a Medium
</p><p>
UTM Mediums track the mean that was used to attract traffic (e.g. "Website", "Twitter", ...).
</p>
</field>
</record>
<menuitem id="menu_utm_medium"
action="utm_medium_action"
parent="marketing_utm"
sequence="5"
groups="base.group_no_one"/>
<!-- utm.source -->
<record id="utm_source_view_tree" model="ir.ui.view">
<field name="name">utm.source.view.tree</field>
<field name="model">utm.source</field>
<field name="arch" type="xml">
<tree string="Source" editable="bottom" sample="1">
<field name="name"/>
</tree>
</field>
</record>
<record id="utm_source_view_form" model="ir.ui.view">
<field name="name">utm.source.view.form</field>
<field name="model">utm.source</field>
<field name="arch" type="xml">
<form string="Source">
<sheet>
<group>
<field name="name"/>
</group>
</sheet>
</form>
</field>
</record>
<record id="utm_source_action" model="ir.actions.act_window">
<field name="name">Sources</field>
<field name="res_model">utm.source</field>
<field name="view_mode">tree,form</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
No Sources yet!
</p><p>
UTM Sources track where traffic comes from (e.g. "May Newsletter", "", ...).
</p>
</field>
</record>
<menuitem id="menu_utm_source"
action="utm_source_action"
parent="marketing_utm"
sequence="10"
groups="base.group_no_one"/>
</odoo>