[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:
@@ -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': [
|
||||
|
||||
@@ -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,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
|
||||
|
||||
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
Reference in New Issue
Block a user