diff options
| author | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
|---|---|---|
| committer | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
| commit | 3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch) | |
| tree | a44932296ef4a9b71d5f010906253d8c53727726 /addons/mass_mailing_sms/views/mailing_mailing_views.xml | |
| parent | 0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff) | |
initial commit 2
Diffstat (limited to 'addons/mass_mailing_sms/views/mailing_mailing_views.xml')
| -rw-r--r-- | addons/mass_mailing_sms/views/mailing_mailing_views.xml | 256 |
1 files changed, 256 insertions, 0 deletions
diff --git a/addons/mass_mailing_sms/views/mailing_mailing_views.xml b/addons/mass_mailing_sms/views/mailing_mailing_views.xml new file mode 100644 index 00000000..bbf64b00 --- /dev/null +++ b/addons/mass_mailing_sms/views/mailing_mailing_views.xml @@ -0,0 +1,256 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo><data> + + <record model="ir.ui.view" id="mailing_mailing_view_search_sms"> + <field name="name">mailing.mailing.search</field> + <field name="model">mailing.mailing</field> + <field name="inherit_id" ref="mass_mailing.view_mail_mass_mailing_search"/> + <field name="mode">primary</field> + <field name="arch" type="xml"> + <xpath expr="//filter[@name='assigned_to_me']" position="attributes"> + <attribute name="string">My SMS Marketing</attribute> + </xpath> + </field> + </record> + + <record id="mailing_mailing_view_form_sms" model="ir.ui.view"> + <field name="name">mailing.mailing.view.form.inherit.sms</field> + <field name="model">mailing.mailing</field> + <field name="inherit_id" ref="mass_mailing.view_mail_mass_mailing_form"/> + <field name="arch" type="xml"> + <!-- Buttons / Actions --> + <xpath expr="//button[@name='action_put_in_queue']" position="attributes"> + <attribute name="attrs">{'invisible': ['|', ('state', 'in', ('in_queue', 'done')), ('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//button[@name='action_put_in_queue']" position="after"> + <button name="action_put_in_queue_sms" type="object" + class="oe_highlight" string="Put in Queue" + attrs="{'invisible': ['|', ('mailing_type', '=', 'mail'), ('state', 'in', ('in_queue', 'done'))]}" + confirm="This will schedule an SMS marketing to all recipients. Do you still want to proceed ?"/> + <button name="action_send_now_sms" type="object" + string="Send Now" + attrs="{'invisible': ['|', ('mailing_type', '=', 'mail'), ('state', 'in', ('done'))]}" + confirm="This will send SMS to all recipients now. Do you still want to proceed ?"/> + </xpath> + <!-- Headers / Warnings --> + <xpath expr="//header" position="after"> + <field name="sms_has_insufficient_credit" invisible="1"/> + <div class="alert alert-warning text-center o-hidden-ios" attrs="{'invisible': [('sms_has_insufficient_credit', '=', False)]}" role="alert"> + <button class="btn-link py-0" + name="action_buy_sms_credits" + type="object"> + <strong> + It appears you don't have enough IAP credits. Click here to buy credits. + </strong> + </button> + </div> + <field name="sms_has_unregistered_account" invisible="1"/> + <div class="alert alert-warning text-center o-hidden-ios" attrs="{'invisible': [('sms_has_unregistered_account', '=', False)]}" role="alert"> + <button class="btn-link py-0" + name="action_buy_sms_credits" + type="object"> + <strong> + It appears your SMS account is not registered. Click here to set up your account. + </strong> + </button> + </div> + </xpath> + <xpath expr="//span[@name='ignored_text']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//span[@name='ignored_text']" position="after"> + <span name="ignored_text_sms" attrs="{'invisible': [('mailing_type', '!=', 'sms')]}">SMS Text Message have been ignored and will not be sent.</span> + </xpath> + <xpath expr="//span[@name='scheduled_text']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//span[@name='scheduled_text']" position="after"> + <span name="scheduled_text_sms" attrs="{'invisible': [('mailing_type', '!=', 'sms')]}">SMS Text Message are in queue and will be sent soon.</span> + </xpath> + <xpath expr="//span[@name='sent']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//span[@name='sent']" position="after"> + <span name="sent_sms" attrs="{'invisible': [('mailing_type', '!=', 'sms')]}">SMS Text Message have been sent.</span> + </xpath> + <xpath expr="//span[@name='failed_text']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//span[@name='failed_text']" position="after"> + <span name="failed_text_sms" attrs="{'invisible': [('mailing_type', '!=', 'sms')]}">SMS Text Message could not be sent.</span> + </xpath> + <xpath expr="//span[@name='next_departure_text']" position='attributes'> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//span[@name='next_departure_text']" position='after'> + <span name="next_departure_text" attrs="{'invisible': [('mailing_type', '!=', 'sms')]}">This SMS marketing is scheduled for </span> + </xpath> + <!-- Stat Buttons --> + <xpath expr="//button[@name='action_view_opened']" position="attributes"> + <attribute name="attrs">{'invisible': ['|',('mailing_type', '!=', 'mail'),('state', 'in', ('draft','test'))]}</attribute> + </xpath> + <xpath expr="//button[@name='action_view_replied']" position="attributes"> + <attribute name="attrs">{'invisible': ['|',('mailing_type', '!=', 'mail'),('state', 'in', ('draft','test'))]}</attribute> + </xpath> + <!-- Form --> + <xpath expr="//field[@name='subject']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')], 'readonly': [('state', 'in', ('sending', 'done'))], 'required': [('mailing_type', '=', 'mail')]}</attribute> + <!-- overrided in xml view to prevent remaining helper changes (on mass_mailing module) when mass_mailing_sms uninstalled--> + <attribute name="help">For an Email, Subject your Recipients will see in their inbox. + For an SMS Text Message, internal Title of the Message.</attribute> + </xpath> + <xpath expr="//field[@name='subject']" position="after"> + <field name="sms_subject" string="Title" attrs="{'invisible': [('mailing_type', '!=', 'sms')], 'readonly': [('state', 'in', ('sending', 'done'))], 'required': [('mailing_type', '=', 'sms')]}"/> + </xpath> + <xpath expr="//field[@name='preview']" position="attributes"> + <attribute name="attrs">{'readonly': [('state', 'in', ('sending', 'done'))], 'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//page[@name='mail_body']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//page[@name='mail_body']" position="after"> + <page string="SMS Content" name="sms_body" attrs="{'invisible': [('mailing_type', '!=', 'sms')]}"> + <field name="body_plaintext" widget="sms_widget" + attrs="{'required': [('mailing_type', '=', 'sms')], 'readonly': [('state', 'in', ('sending', 'done'))]}" + options='{"enable_emojis": True}'/> + <group> + <field name="sms_force_send" invisible="1"/> + </group> + </page> + </xpath> + <xpath expr="//field[@name='user_id']" position="after"> + <field name="sms_allow_unsubscribe" attrs="{'invisible': [('mailing_type', '!=', 'sms')]}"/> + </xpath> + + <xpath expr="//field[@name='contact_list_ids']" position="attributes"> + <attribute name="context"> + {'mailing_sms' : context.get('mailing_sms')} + </attribute> + </xpath> + <!-- Option page tweaks --> + <xpath expr="//field[@name='email_from']" position="attributes"> + <attribute name="attrs">{ + 'invisible': [('mailing_type', '!=', 'mail')], + 'readonly': [('state', 'in', ('sending', 'done'))]} + </attribute> + </xpath> + <xpath expr="//label[@for='reply_to']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//div[@name='reply_to_details']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//label[@for='attachment_ids']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//div[@name='attachment_ids_details']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//field[@name='mail_server_id']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + </field> + </record> + + <record id="mailing_mailing_view_form_mixed" model="ir.ui.view"> + <!-- View allowign to display the mailing type and therefore choosing + the way of mailing: not prioritized one, used in some specific cases + like "contacting people" without predefining mail or sms --> + <field name="name">mailing.mailing.view.form.mixed</field> + <field name="model">mailing.mailing</field> + <field name="mode">primary</field> + <field name="priority">30</field> + <field name="inherit_id" ref="mass_mailing_sms.mailing_mailing_view_form_sms"/> + <field name="arch" type="xml"> + <xpath expr="//field[@name='mailing_type']" position="attributes"> + <attribute name="invisible">0</attribute> + </xpath> + </field> + </record> + + <record id="mailing_mailing_view_kanban_sms" model="ir.ui.view"> + <field name="name">mailing.mailing.view.kanban.inherit.sms</field> + <field name="model">mailing.mailing</field> + <field name="inherit_id" ref="mass_mailing.view_mail_mass_mailing_kanban"/> + <field name="arch" type="xml"> + <xpath expr="//field[@name='active']" position="after"> + <field name="sms_has_insufficient_credit"/> + <field name="sms_has_unregistered_account"/> + </xpath> + <xpath expr="//div[@name='stat_opened']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//div[@name='stat_replied']" position="attributes"> + <attribute name="attrs">{'invisible': [('mailing_type', '!=', 'mail')]}</attribute> + </xpath> + <xpath expr="//div[@name='div_responsible_avatar']" position="after"> + <div class="alert alert-warning mb-0 mt-3 o-hidden-ios" role="alert" attrs="{'invisible': [('sms_has_insufficient_credit', '=', False)]}"> + <a name="action_buy_sms_credits" type="object">Insufficient credits</a> + </div> + <div class="alert alert-warning mb-0 mt-3" role="alert" attrs="{'invisible': [('sms_has_unregistered_account', '=', False)]}"> + <a name="action_buy_sms_credits" type="object">Unregistered account</a> + </div> + </xpath> + </field> + </record> + + <record id="mailing_mailing_view_tree_sms" model="ir.ui.view"> + <field name="name">mailing.mailing.view.tree.sms</field> + <field name="model">mailing.mailing</field> + <field name="priority">20</field> + <field name="arch" type="xml"> + <tree string="SMS Marketing" sample="1"> + <field name="subject"/> + <field name="mailing_type" invisible="1"/> + <field name="mailing_model_id" string="Recipients"/> + <field name="user_id" widget="many2one_avatar_user"/> + <field name="schedule_date" string="Scheduled" widget="remaining_days"/> + <field name="sent_date" widget="date"/> + <field name="state" decoration-info="state == 'draft' or state == 'in_queue'" decoration-success="state == 'sending' or state == 'done'" widget="badge"/> + <field name="campaign_id" string="Campaign" groups="mass_mailing.group_mass_mailing_campaign"/> + <field name="sent"/> + <field name="clicked"/> + <field name="bounced"/> + </tree> + </field> + </record> + + <record id="mailing_mailing_action_sms" model="ir.actions.act_window"> + <field name="name">SMS Marketing</field> + <field name="res_model">mailing.mailing</field> + <field name="view_mode">kanban,tree,form,graph</field> + <field name="search_view_id" ref="mailing_mailing_view_search_sms"/> + <field name="domain">[('mailing_type', '=', 'sms')]</field> + <field name="context">{ + 'search_default_assigned_to_me': 1, + 'default_user_id': uid, + 'default_mailing_type': 'sms', + 'mailing_sms': True + }</field> + <field name="help" type="html"> + <p class="o_view_nocontent_smiling_face"> + Create a new SMS Marketing + </p><p> + You can easily send SMS to any contact saved in other Odoo apps. + </p> + </field> + </record> + <record id="mailing_mailing_action_sms_view_kanban" model="ir.actions.act_window.view"> + <field name="sequence">1</field> + <field name="view_mode">kanban</field> + <field name="view_id" ref="mailing_mailing_view_kanban_sms"/> + <field name="act_window_id" ref="mailing_mailing_action_sms"/> + </record> + <record id="mailing_mailing_action_sms_view_tree" model="ir.actions.act_window.view"> + <field name="sequence">2</field> + <field name="view_mode">tree</field> + <field name="view_id" ref="mailing_mailing_view_tree_sms"/> + <field name="act_window_id" ref="mailing_mailing_action_sms"/> + </record> + + <!-- SMS Marketing / SMS Marketing --> + <record id="mass_mailing_sms_menu_mass_sms" model="ir.ui.menu"> + <field name="action" ref="mailing_mailing_action_sms"/> + </record> + +</data></odoo> |
