diff options
| author | Thibault Delavallée <tde@odoo.com> | 2019-07-17 10:58:39 +0000 |
|---|---|---|
| committer | Thibault Delavallée <tde@odoo.com> | 2019-07-17 15:50:33 +0000 |
| commit | 772e1c0cc4e75cec971d2b4e1c820eb54872dc93 (patch) | |
| tree | 30126a9fa9acabb9f75ab1d0665428180b9cc444 /addons/mass_mailing/views/mailing_list_views.xml | |
| parent | 2896aad34e797b6ca65a8efe3c5d71f31500a9a2 (diff) | |
[REF] mass_mailing: rename mail.mass_mailing.{.contact{_rel}, list{.merge}} models
PURPOSE
Mass mailing is currently a bit messy. As SMS will be added as a way to notify
people in mass through SMS let us take this opportunity to somehow clean this
application: organization, light code cleaning, model renaming.
SPECIFICATIONS
Rename mail.mass_mailing.list and mail.mass_mailing.list to mailing.list
and mailing.list.merge. Rename mail.mass_mailing.contact to mailing.contact.
Rename mail.mailing_list.list_contact_rel to mailing.contact.subscription.
Rationale :
* those new names are easier to understand: mailing.list and mailing.contact
are less mail-related, especially taking into account that SMS will allow
to be less mail-oriented;
* those names are easier to read / find / understand;
* align wizard and sub-models naming with the main naming;
* have a mailing as first part of namespacing;
MIGRATION
mail.mass_mailing.list model -> mailing.list
mail.mass_mailing.list.merge model -> mailing.list.merge
mail.mass_mailing.contact model -> mailing.contact
mail.mass_mailing.list_contact_rel model -> mailing.contact.subscription
mail_mass_mailing_contact_list_rel table -> mailing_contact_list_rel (specific
case of a decorated m2m)
fields updated (no column change)
* mailing.list: subscription_contact_ids -> subscription_ids
LINKS
Task ID 2037906
Preparing task ID 1997464 (SMS addition in mass mailing)
PR #34938
Diffstat (limited to 'addons/mass_mailing/views/mailing_list_views.xml')
| -rw-r--r-- | addons/mass_mailing/views/mailing_list_views.xml | 167 |
1 files changed, 167 insertions, 0 deletions
diff --git a/addons/mass_mailing/views/mailing_list_views.xml b/addons/mass_mailing/views/mailing_list_views.xml new file mode 100644 index 00000000000..597c7b3a9ff --- /dev/null +++ b/addons/mass_mailing/views/mailing_list_views.xml @@ -0,0 +1,167 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <!-- MAILING LIST --> + <record model="ir.ui.view" id="mailing_list_view_search"> + <field name="name">mailing.list.view.search</field> + <field name="model">mailing.list</field> + <field name="arch" type="xml"> + <search string="Mailing Lists"> + <field name="name"/> + <field name="create_date"/> + <field name="is_public"/> + <filter name="inactive" string="Archived" domain="[('active','=',False)]"/> + <group expand="0" string="Group By"> + <filter string="Creation Period" name="group_create_date" + context="{'group_by': 'create_date'}"/> + </group> + </search> + </field> + </record> + + <record model="ir.ui.view" id="mailing_list_view_tree"> + <field name="name">mailing.list.view.tree</field> + <field name="model">mailing.list</field> + <field name="priority">10</field> + <field name="arch" type="xml"> + <tree string="Mailing Lists"> + <field name="name"/> + <field name="create_date"/> + <field name="is_public"/> + <field name="contact_nbr"/> + </tree> + </field> + </record> + + <record model="ir.ui.view" id="mailing_list_view_form"> + <field name="name">mailing.list.form</field> + <field name="model">mailing.list</field> + <field name="arch" type="xml"> + <form string="Contact List"> + <sheet> + <widget name="web_ribbon" text="Archived" bg_color="bg-danger" attrs="{'invisible': [('active', '=', True)]}"/> + <div class="oe_button_box" name="button_box"> + <button name="%(mass_mailing.action_view_mass_mailing_contacts_from_list)d" + type="action" icon="fa-user" class="oe_stat_button"> + <field name="contact_nbr" string="Recipients" widget="statinfo"/> + </button> + </div> + <div class="oe_title"> + <label for="name" class="oe_edit_only"/> + <h1> + <field name="name" placeholder="e.g. Consumer Newsletter"/> + </h1> + </div> + <group> + <field name="active" invisible="1"/> + <field name="is_public"/> + </group> + </sheet> + </form> + </field> + </record> + + <record id="mailing_list_view_form_simplified" model="ir.ui.view"> + <field name="name">mailing.list.form.simplified</field> + <field name="model">mailing.list</field> + <field name="arch" type="xml"> + <form string="Contact List"> + <group> + <group> + <div class="oe_title"> + <label for="name" class="oe_edit_only"/> + <h1> + <field name="name" placeholder="e.g. Consumer Newsletter"/> + </h1> + </div> + </group> + </group> + <group> + <field name="is_public"/> + </group> + <footer> + <button string="Create" name="close_dialog" type="object" class="btn-primary"/> + <button string="Discard" class="btn-secondary" special="cancel"/> + </footer> + </form> + </field> + </record> + + <record id="open_create_mass_mailing_list" model="ir.actions.act_window"> + <field name="name">Create a Mass Mailing List</field> + <field name="res_model">mailing.list</field> + <field name="view_mode">form</field> + <field name="view_id" ref="mailing_list_view_form_simplified"/> + <field name="target">new</field> + </record> + + <record id="mailing_list_view_kanban" model="ir.ui.view"> + <field name="name">mailing.list.view.kanban</field> + <field name="model">mailing.list</field> + <field name="arch" type="xml"> + <kanban js_class="mass_mailing_list_kanban" class="o_kanban_mobile" on_create="mass_mailing.open_create_mass_mailing_list"> + <field name="name"/> + <field name="contact_nbr"/> + <field name="active"/> + <templates> + <t t-name="kanban-box"> + <div t-attf-class="oe_kanban_global_click"> + <div class="o_mass_mailing_kanban_main"> + <div class="o_kanban_card_content"> + <div class="o_kanban_primary_left"> + <div class="o_primary"> + <span><t t-esc="record.name.value"/></span> + </div> + </div> + </div> + <div class="o_kanban_card_manage_pane"> + <div class="o_kanban_card_manage_section o_dropdown_kanban dropdown"> + <a role="button" class="dropdown-toggle o-no-caret btn" data-toggle="dropdown" href="#" aria-label="Dropdown menu" title="Dropdown menu"> + <span class="fa fa-ellipsis-v"/> + </a> + <div class="dropdown-menu" role="menu"> + <a t-if="widget.editable" role="menuitem" type="edit" class="dropdown-item">Edit</a> + <a t-if="widget.deletable" role="menuitem" type="delete" class="dropdown-item">Delete</a> + <a role="menuitem" class="dropdown-item o_kanban_mailing_active" name="toggle_active" type="object"> + <t t-if="record.active.raw_value">Archive</t> + <t t-if="!record.active.raw_value">Restore</t> + </a> + <ul class="oe_kanban_colorpicker" data-field="color"/> + </div> + </div> + </div> + </div> + <div class="o_mailing_list_kanban_boxes"> + <a class="o_project_kanban_box" name="%(action_view_mass_mailing_contacts_from_list)d" type="action"> + <div> + <span class="badge badge-pill"> + <i class="fa fa-user" role="img" aria-label="Contacts" title="Contacts"/> + <t t-esc="record.contact_nbr.value"/> + </span> + </div> + </a> + </div> + </div> + </t> + </templates> + </kanban> + </field> + </record> + + <record model="ir.actions.act_window" id="action_view_mass_mailing_lists"> + <field name="name">Mailing Lists</field> + <field name="res_model">mailing.list</field> + <field name="view_mode">kanban,tree,form</field> + <field name="help" type="html"> + <p class="o_view_nocontent_smiling_face"> + Create a new mailing list + </p><p> + You don't need to import your mailing lists, you can easily + send emails<br/> to any contact saved in other Odoo apps. + </p> + </field> + </record> + + <menuitem name="Mailing Lists" id="menu_email_mass_mailing_lists" + parent="mass_mailing_mailing_list_menu" sequence="3" + action="action_view_mass_mailing_lists"/> +</odoo> |
