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/sms/views | |
| parent | 0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff) | |
initial commit 2
Diffstat (limited to 'addons/sms/views')
| -rw-r--r-- | addons/sms/views/assets.xml | 28 | ||||
| -rw-r--r-- | addons/sms/views/ir_actions_views.xml | 20 | ||||
| -rw-r--r-- | addons/sms/views/mail_notification_views.xml | 27 | ||||
| -rw-r--r-- | addons/sms/views/res_config_settings_views.xml | 13 | ||||
| -rw-r--r-- | addons/sms/views/res_partner_views.xml | 68 | ||||
| -rw-r--r-- | addons/sms/views/sms_sms_views.xml | 68 | ||||
| -rw-r--r-- | addons/sms/views/sms_template_views.xml | 100 |
7 files changed, 324 insertions, 0 deletions
diff --git a/addons/sms/views/assets.xml b/addons/sms/views/assets.xml new file mode 100644 index 00000000..aa255324 --- /dev/null +++ b/addons/sms/views/assets.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <data> + <template id="assets_backend" name="sms_assets" inherit_id="web.assets_backend"> + <xpath expr="." position="inside"> + <script type="text/javascript" src="/sms/static/src/js/fields_phone_widget.js"></script> + <script type="text/javascript" src="/sms/static/src/js/fields_sms_widget.js"></script> + + <script type="text/javascript" src="/sms/static/src/bugfix/bugfix.js"/> + <script type="text/javascript" src="/sms/static/src/components/notification_group/notification_group.js"/> + <script type="text/javascript" src="/sms/static/src/models/message/message.js"/> + <script type="text/javascript" src="/sms/static/src/models/notification_group/notification_group.js"/> + + <link rel="stylesheet" type="text/scss" href="/sms/static/src/bugfix/bugfix.scss"/> + </xpath> + </template> + + <template id="qunit_suite" name="sms_widget_tests" inherit_id="web.qunit_suite_tests"> + <xpath expr="." position="inside"> + <script type="text/javascript" src="/sms/static/tests/sms_widget_test.js"></script> + + <script type="text/javascript" src="/sms/static/src/bugfix/bugfix_tests.js"/> + <script type="text/javascript" src="/sms/static/src/components/message/message_tests.js"/> + <script type="text/javascript" src="/sms/static/src/components/notification_list/notification_list_notification_group_tests.js"/> + </xpath> + </template> + </data> +</odoo> diff --git a/addons/sms/views/ir_actions_views.xml b/addons/sms/views/ir_actions_views.xml new file mode 100644 index 00000000..651d345b --- /dev/null +++ b/addons/sms/views/ir_actions_views.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo><data> + + <record id="ir_actions_server_view_form" model="ir.ui.view"> + <field name="name">ir.actions.server.view.form.inherit.sms</field> + <field name="model">ir.actions.server</field> + <field name="inherit_id" ref="base.view_server_action_form"/> + <field name="arch" type="xml"> + <xpath expr="//field[@name='link_field_id']" position="after"> + <field name="sms_template_id" + context="{'default_model_id': model_id}" + attrs="{'invisible': [('state', '!=', 'sms')], + 'required': [('state', '=', 'sms')]}"/> + <field name="sms_mass_keep_log" + attrs="{'invisible': [('state', '!=', 'sms')]}"/> + </xpath> + </field> + </record> + +</data></odoo> diff --git a/addons/sms/views/mail_notification_views.xml b/addons/sms/views/mail_notification_views.xml new file mode 100644 index 00000000..ed8cfed4 --- /dev/null +++ b/addons/sms/views/mail_notification_views.xml @@ -0,0 +1,27 @@ +<?xml version="1.0"?> +<odoo><data> + <record id="mail_notification_view_tree" model="ir.ui.view"> + <field name="name">mail.notification.view.tree</field> + <field name="model">mail.notification</field> + <field name="inherit_id" ref="mail.mail_notification_view_tree"/> + <field name="arch" type="xml"> + <xpath expr="//field[@name='res_partner_id']" position="after"> + <field name="sms_number"/> + </xpath> + </field> + </record> + + <record id="mail_notification_view_form" model="ir.ui.view"> + <field name="name">mail.notification.view.form</field> + <field name="model">mail.notification</field> + <field name="inherit_id" ref="mail.mail_notification_view_form"/> + <field name="arch" type="xml"> + <xpath expr="//field[@name='res_partner_id']" position="after"> + <field name="sms_number"/> + </xpath> + <xpath expr="//field[@name='mail_id']" position="after"> + <field name="sms_id"/> + </xpath> + </field> + </record> +</data></odoo> diff --git a/addons/sms/views/res_config_settings_views.xml b/addons/sms/views/res_config_settings_views.xml new file mode 100644 index 00000000..f85b590f --- /dev/null +++ b/addons/sms/views/res_config_settings_views.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <record id="res_config_settings_view_form" model="ir.ui.view"> + <field name="name">res.config.settings.view.form.inherit.sms</field> + <field name="model">res.config.settings</field> + <field name="inherit_id" ref="base_setup.res_config_settings_view_form"/> + <field name="arch" type="xml"> + <div id="sms_settings" position="inside"> + <widget name="iap_buy_more_credits" service_name="sms"/> + </div> + </field> + </record> +</odoo> diff --git a/addons/sms/views/res_partner_views.xml b/addons/sms/views/res_partner_views.xml new file mode 100644 index 00000000..09b83503 --- /dev/null +++ b/addons/sms/views/res_partner_views.xml @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + + <!-- Add action entry in the Action Menu for Partners --> + <record id="res_partner_view_form" model="ir.ui.view"> + <field name="name">res.partner.view.form.inherit.sms</field> + <field name="model">res.partner</field> + <field name="inherit_id" ref="base.view_partner_form"/> + <field name="priority">10</field> + <field name="arch" type="xml"> + <xpath expr="//field[@name='mobile']" position="after"> + <field name="phone_sanitized" groups="base.group_no_one" invisible="1"/> + </xpath> + <xpath expr="//field[@name='phone']" position="replace"> + <field name="phone_blacklisted" invisible="1"/> + <field name="mobile_blacklisted" invisible="1"/> + <label for="phone" class="oe_inline"/> + <div class="o_row o_row_readonly"> + <button name="phone_action_blacklist_remove" class="fa fa-ban text-danger" + title="This phone number is blacklisted for SMS Marketing. Click to unblacklist." + type="object" context="{'default_phone': phone}" groups="base.group_user" + attrs="{'invisible': [('phone_blacklisted', '=', False)]}"/> + <field name="phone" widget="phone"/> + </div> + </xpath> + <xpath expr="//field[@name='mobile']" position="replace"> + <field name="phone_blacklisted" invisible="1"/> + <field name="mobile_blacklisted" invisible="1"/> + <label for="mobile" class="oe_inline"/> + <div class="o_row o_row_readonly"> + <button name="phone_action_blacklist_remove" class="fa fa-ban text-danger" + title="This phone number is blacklisted for SMS Marketing. Click to unblacklist." + type="object" context="{'default_phone': mobile}" groups="base.group_user" + attrs="{'invisible': [('mobile_blacklisted', '=', False)]}"/> + <field name="mobile" widget="phone"/> + </div> + </xpath> + </field> + </record> + + <!-- Add action entry in the Action Menu for Partners --> + <record id="res_partner_act_window_sms_composer_multi" model="ir.actions.act_window"> + <field name="name">Send SMS Text Message</field> + <field name="res_model">sms.composer</field> + <field name="view_mode">form</field> + <field name="target">new</field> + <field name="context">{ + 'default_composition_mode': 'mass', + 'default_mass_keep_log': True, + 'default_res_ids': active_ids + }</field> + <field name="binding_model_id" ref="base.model_res_partner"/> + <field name="binding_view_types">list</field> + </record> + <record id="res_partner_act_window_sms_composer_single" model="ir.actions.act_window"> + <field name="name">Send SMS Text Message</field> + <field name="res_model">sms.composer</field> + <field name="view_mode">form</field> + <field name="target">new</field> + <field name="context">{ + 'default_composition_mode': 'comment', + 'default_res_id': active_id, + }</field> + <field name="binding_model_id" ref="base.model_res_partner"/> + <field name="binding_view_types">form</field> + </record> + +</odoo> diff --git a/addons/sms/views/sms_sms_views.xml b/addons/sms/views/sms_sms_views.xml new file mode 100644 index 00000000..cf60fae6 --- /dev/null +++ b/addons/sms/views/sms_sms_views.xml @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo><data> + <record id="sms_tsms_view_form" model="ir.ui.view"> + <field name="name">sms.sms.view.form</field> + <field name="model">sms.sms</field> + <field name="arch" type="xml"> + <form string="SMS"> + <header> + <button name="send" string="Send Now" type="object" states='outgoing' class="oe_highlight"/> + <button name="cancel" string="Cancel" type="object" states='outgoing'/> + <field name="state" widget="statusbar"/> + </header> + <sheet> + <group> + <group> + <field name="partner_id" string="Contact"/> + <field name="mail_message_id" readonly="1" attrs="{'invisible': [('mail_message_id', '=', False)]}"/> + </group> + <group> + <field name="number" required="1"/> + <field name="error_code" readonly="1" attrs="{'invisible': [('error_code', '=', False)]}"/> + </group> + </group> + <group> + <field name="body" widget="sms_widget" string="Message" required="1"/> + </group> + </sheet> + </form> + </field> + </record> + + <record id="sms_sms_view_tree" model="ir.ui.view"> + <field name="name">sms.sms.view.tree</field> + <field name="model">sms.sms</field> + <field name="arch" type="xml"> + <tree string="SMS Templates"> + <field name="number"/> + <field name="partner_id"/> + <field name="state"/> + <field name="error_code"/> + </tree> + </field> + </record> + + <record id="sms_sms_view_search" model="ir.ui.view"> + <field name="name">sms.sms.view.search</field> + <field name="model">sms.sms</field> + <field name="arch" type="xml"> + <search string="Search SMS Templates"> + <field name="number"/> + <field name="partner_id"/> + </search> + </field> + </record> + + <record id="sms_sms_action" model="ir.actions.act_window"> + <field name="name">SMS</field> + <field name="res_model">sms.sms</field> + <field name="view_mode">tree,form</field> + </record> + + <menuitem id="sms_sms_menu" + parent="phone_validation.phone_menu_main" + action="sms_sms_action" + sequence="1"/> + +</data> +</odoo> diff --git a/addons/sms/views/sms_template_views.xml b/addons/sms/views/sms_template_views.xml new file mode 100644 index 00000000..78ddb6ed --- /dev/null +++ b/addons/sms/views/sms_template_views.xml @@ -0,0 +1,100 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo><data> + <record id="sms_template_view_form" model="ir.ui.view"> + <field name="name">sms.template.view.form</field> + <field name="model">sms.template</field> + <field name="arch" type="xml"> + <form string="SMS Templates"> + <sheet> + <div class="oe_button_box" name="button_box"> + <field name="sidebar_action_id" invisible="1"/> + <button name="action_create_sidebar_action" type="object" + groups="base.group_system" + class="oe_stat_button" + attrs="{'invisible':[('sidebar_action_id','!=',False)]}" icon="fa-plus" + help="Add a contextual action on the related model to open a sms composer with this template"> + <div class="o_field_widget o_stat_info"> + <span class="o_stat_text">Add</span> + <span class="o_stat_text">Context Action</span> + </div> + </button> + <button name="action_unlink_sidebar_action" type="object" + groups="base.group_system" + class="oe_stat_button" icon="fa-minus" + attrs="{'invisible':[('sidebar_action_id','=',False)]}" + help="Remove the contextual action of the related model" widget="statinfo"> + <div class="o_field_widget o_stat_info"> + <span class="o_stat_text">Remove</span> + <span class="o_stat_text">Context Action</span> + </div> + </button> + <button class="oe_stat_button" name="%(sms_template_preview_action)d" icon="fa-search-plus" string="Preview" type="action" target="new"/> + </div> + <div class="oe_title"> + <label for="name" class="oe_edit_only" string="SMS Template"/> + <h1><field name="name" required="1"/></h1> + <group> + <field name="model_id" required="1" options="{'no_create': True}"/> + <field name="model" invisible="1"/> + <field name="lang" groups="base.group_no_one" placeholder="e.g. en_US or ${object.partner_id.lang}"/> + </group> + </div> + <notebook> + <page string="Content" name="content"> + <group> + <field name="body" widget="sms_widget" nolabel="1"/> + </group> + </page> + <page string="Dynamic Placeholder Generator" name="dynamic_placeholder_generator" groups="base.group_no_one"> + <group> + <field name="model_object_field" + domain="[('model_id','=',model_id),('ttype','!=','one2many'),('ttype','!=','many2many')]"/> + <field name="sub_object" readonly="1"/> + <field name="sub_model_object_field" + domain="[('model_id','=',sub_object),('ttype','!=','one2many'),('ttype','!=','many2many')]" + attrs="{'readonly':[('sub_object','=',False)],'required':[('sub_object','!=',False)]}"/> + <field name="null_value"/> + <field name="copyvalue"/> + </group> + </page> + </notebook> + </sheet> + </form> + </field> + </record> + + <record id="sms_template_view_tree" model="ir.ui.view"> + <field name="name">sms.template.view.tree</field> + <field name="model">sms.template</field> + <field name="arch" type="xml"> + <tree string="SMS Templates"> + <field name="name"/> + <field name="model_id"/> + </tree> + </field> + </record> + + <record id="sms_template_view_search" model="ir.ui.view"> + <field name="name">sms.template.view.search</field> + <field name="model">sms.template</field> + <field name="arch" type="xml"> + <search string="Search SMS Templates"> + <field name="name"/> + <field name="model_id"/> + </search> + </field> + </record> + + <record id="sms_template_action" model="ir.actions.act_window"> + <field name="name">Templates</field> + <field name="res_model">sms.template</field> + <field name="view_mode">tree,form</field> + </record> + + <menuitem id="sms_template_menu" + name="SMS Templates" + parent="phone_validation.phone_menu_main" + sequence="2" + action="sms_template_action"/> + +</data></odoo> |
