summaryrefslogtreecommitdiff
path: root/addons/mail/static/src/xml
diff options
context:
space:
mode:
Diffstat (limited to 'addons/mail/static/src/xml')
-rw-r--r--addons/mail/static/src/xml/activity.xml26
-rw-r--r--addons/mail/static/src/xml/chatter.xml19
-rw-r--r--addons/mail/static/src/xml/composer.xml30
-rw-r--r--addons/mail/static/src/xml/discuss.xml28
-rw-r--r--addons/mail/static/src/xml/followers.xml47
-rw-r--r--addons/mail/static/src/xml/systray.xml50
-rw-r--r--addons/mail/static/src/xml/thread.xml12
-rw-r--r--addons/mail/static/src/xml/web_kanban_activity.xml31
8 files changed, 121 insertions, 122 deletions
diff --git a/addons/mail/static/src/xml/activity.xml b/addons/mail/static/src/xml/activity.xml
index ca07f810101..b467f19576f 100644
--- a/addons/mail/static/src/xml/activity.xml
+++ b/addons/mail/static/src/xml/activity.xml
@@ -6,9 +6,9 @@
<i class="fa fa-fw fa-caret-down"/>
Planned activities
<small class="o_chatter_planned_activities_summary ml8">
- <span class="label img-circle label-danger"><t t-esc="nbOverdueActivities"/></span>
- <span class="label img-circle label-warning"><t t-esc="nbTodayActivities"/></span>
- <span class="label img-circle label-success"><t t-esc="nbPlannedActivities"/></span>
+ <span class="badge rounded-circle badge-danger"><t t-esc="nbOverdueActivities"/></span>
+ <span class="badge rounded-circle badge-warning"><t t-esc="nbTodayActivities"/></span>
+ <span class="badge rounded-circle badge-success"><t t-esc="nbPlannedActivities"/></span>
</small>
</a>
</div>
@@ -17,7 +17,7 @@
<div class="o_thread_message" style="margin-bottom: 10px">
<div class="o_thread_message_sidebar">
<div class="o_avatar_stack">
- <img t-attf-src="/web/image#{activity.user_id[0] >= 0 ? ('/res.users/' + activity.user_id[0] + '/image_small') : ''}" class="o_thread_message_avatar img-circle mb8" t-att-title="activity.user_id[1]" t-att-alt="activity.user_id[1]"/>
+ <img t-attf-src="/web/image#{activity.user_id[0] >= 0 ? ('/res.users/' + activity.user_id[0] + '/image_small') : ''}" class="o_thread_message_avatar rounded-circle mb8" t-att-title="activity.user_id[1]" t-att-alt="activity.user_id[1]"/>
<i t-att-class="'o_avatar_icon fa ' + activity.icon + ' bg-' + (activity.state == 'planned'? 'success' : (activity.state == 'today'? 'warning' : 'danger')) + '-full'"
t-att-title="activity.activity_type_id[1]"/>
</div>
@@ -33,7 +33,7 @@
<i class="fa fa-info-circle" role="img" aria-label="Info" title="Info"></i>
</a>
<div class="o_thread_message_collapse collapse" t-attf-id="o_chatter_activity_info_#{activity.id}">
- <dl class="dl-horizontal well">
+ <dl class="dl-horizontal">
<dt>Activity type</dt>
<dd class="mb8">
<t t-esc="activity.activity_type_id[1]"/>
@@ -44,14 +44,14 @@
by
<img t-attf-src="/web/image#{activity.create_user_id[0] >= 0 ? ('/res.users/' + activity.create_user_id[0] + '/image_small') : ''}"
height="18" width="18"
- class="img-circle mr4"
+ class="rounded-circle mr4"
t-att-title="activity.create_user_id[1]"
t-att-alt="activity.create_user_id[1]"/>
<b><t t-esc="activity.create_user_id[1]"/></b>
</dd>
<dt>Assigned to</dt>
<dd class="mb8">
- <img t-attf-src="/web/image#{activity.user_id[0] >= 0 ? ('/res.users/' + activity.user_id[0] + '/image_small') : ''}" height="18" width="18" class="img-circle mr4" t-att-title="activity.user_id[1]" t-att-alt="activity.user_id[1]"/>
+ <img t-attf-src="/web/image#{activity.user_id[0] >= 0 ? ('/res.users/' + activity.user_id[0] + '/image_small') : ''}" height="18" width="18" class="rounded-circle mr4" t-att-title="activity.user_id[1]" t-att-alt="activity.user_id[1]"/>
<b><t t-esc="activity.user_id[1]"/></b>
<em>, due on </em><span t-attf-class="o_activity_color_#{activity.state}"><t t-esc="activity.date_deadline.format(dateFormat)"/></span>
</dd>
@@ -62,13 +62,13 @@
<t t-raw="activity.note"/>
</div>
<div class="o_thread_message_tools btn-group">
- <a role="button" href="#" class="btn btn-link btn-success text-muted btn-sm o_activity_done o_activity_link mr8" t-att-data-activity-id="activity.id" t-att-data-previous-activity-type-id="activity.activity_type_id[0]" data-toggle="popover">
+ <a role="button" href="#" class="btn btn-link btn-success text-muted o_activity_done o_activity_link mr8" t-att-data-activity-id="activity.id" t-att-data-previous-activity-type-id="activity.activity_type_id[0]" data-toggle="popover">
<i class="fa fa-check"/> Mark Done
</a>
- <a role="button" href="#" class="btn btn-link btn-default text-muted btn-sm o_activity_edit o_activity_link" t-att-data-activity-id="activity.id">
+ <a role="button" href="#" class="btn btn-link btn-secondary text-muted o_activity_edit o_activity_link" t-att-data-activity-id="activity.id">
<i class="fa fa-pencil"/> Edit
</a>
- <a role="button" href="#" class="btn btn-link btn-sm btn-danger text-muted o_activity_unlink o_activity_link" t-att-data-activity-id="activity.id">
+ <a role="button" href="#" class="btn btn-link btn-danger text-muted o_activity_unlink o_activity_link" t-att-data-activity-id="activity.id">
<i class="fa fa-times"/> Cancel
</a>
</div>
@@ -81,11 +81,11 @@
<div>
<textarea class="form-control" rows="3" id="activity_feedback" placeholder="Write Feedback"/>
<div class="mt8">
- <button type="button" class="btn btn-xs btn-primary o_activity_popover_done_next" t-att-data-previous-activity-type-id="previous_activity_type_id">
+ <button type="button" class="btn btn-sm btn-primary o_activity_popover_done_next" t-att-data-previous-activity-type-id="previous_activity_type_id">
Done &amp; Schedule Next</button>
- <button type="button" class="btn btn-xs btn-primary o_activity_popover_done">
+ <button type="button" class="btn btn-sm btn-primary o_activity_popover_done">
Done</button>
- <button type="button" class="btn btn-xs btn-link o_activity_popover_discard">
+ <button type="button" class="btn btn-sm btn-link o_activity_popover_discard">
Discard</button>
</div>
</div>
diff --git a/addons/mail/static/src/xml/chatter.xml b/addons/mail/static/src/xml/chatter.xml
index 9b6d0586bdc..f78f60791e0 100644
--- a/addons/mail/static/src/xml/chatter.xml
+++ b/addons/mail/static/src/xml/chatter.xml
@@ -28,14 +28,17 @@
<div class="o_composer_suggestedPartners">
<t t-foreach='widget.suggestedPartners' t-as='recipient'>
<div t-attf-title="Add as recipient and follower (reason: #{recipient.reason})">
- <div class="o_checkbox">
+ <div class="custom-control custom-checkbox">
<input type="checkbox"
+ class="custom-control-input"
+ t-attf-id="o_composer_suggested_partners_p#{recipient_index}"
t-att-checked="recipient.checked ? 'checked' : undefined"
t-att-data-fullname="recipient.full_name"/>
- <span/>
+ <label t-attf-for="o_composer_suggested_partners_p#{recipient_index}" class="custom-control-label">
+ <t t-esc="recipient.name"/>
+ <t t-if="recipient.email_address">(<t t-esc="recipient.email_address"/>)</t>
+ </label>
</div>
- <t t-esc="recipient.name"/>
- <t t-if="recipient.email_address">(<t t-esc="recipient.email_address"/>)</t>
</div>
</t>
</div>
@@ -44,7 +47,7 @@
<!-- Add a button to open the full composer dialog -->
<t t-jquery=".o_composer_button_add_attachment" t-operation="after">
- <button tabindex="6" class="btn btn-sm btn-icon fa fa-expand o_composer_button_full_composer" type="button" title="Full composer" aria-label="Full composer"/>
+ <button tabindex="6" class="btn btn-secondary fa fa-expand o_composer_button_full_composer" type="button" title="Full composer" aria-label="Full composer"/>
</t>
</t>
@@ -57,13 +60,13 @@
@param {boolean} [scheduleActivityButton]
-->
<t t-name="mail.chatter.Buttons">
- <button t-if="newMessageButton" type="button" class="btn btn-sm btn-link o_chatter_button_new_message" title="Send a message" disabled="disabled">
+ <button t-if="newMessageButton" type="button" class="btn btn-link o_chatter_button_new_message" title="Send a message" disabled="disabled">
Send message
</button>
- <button t-if="logNoteButton" class="btn btn-sm btn-link o_chatter_button_log_note" title="Log a note. Followers will not be notified." disabled="disabled">
+ <button t-if="logNoteButton" class="btn btn-link o_chatter_button_log_note" title="Log a note. Followers will not be notified." disabled="disabled">
Log note
</button>
- <button t-if="scheduleActivityButton" class="btn btn-sm btn-link o_chatter_button_schedule_activity" title="Log or schedule an activity" disabled="disabled">
+ <button t-if="scheduleActivityButton" class="btn btn-link o_chatter_button_schedule_activity" title="Log or schedule an activity" disabled="disabled">
<i class="fa fa-clock-o" role="img" aria-label="Dates" title="Dates"/> <t t-if="isMobile">Activity</t><t t-else="">Schedule activity</t>
</button>
</t>
diff --git a/addons/mail/static/src/xml/composer.xml b/addons/mail/static/src/xml/composer.xml
index f7baafeb777..f0bdd70fcef 100644
--- a/addons/mail/static/src/xml/composer.xml
+++ b/addons/mail/static/src/xml/composer.xml
@@ -3,7 +3,7 @@
<div t-name="mail.Composer" t-attf-class="o_thread_composer #{widget.extended ? 'o_thread_composer_extended' : (widget.notInline ? '' : 'o_chat_inline_composer')} #{widget.isMini ? 'o_chat_mini_composer' : ''}">
<div class="o_composer_container">
- <img t-if="widget.avatarURL" height="36" width="36" class="o_thread_message_sidebar o_chatter_avatar img-circle" t-att-src="widget.avatarURL" alt="Avatar"/>
+ <img t-if="widget.avatarURL" height="36" width="36" class="o_thread_message_sidebar o_chatter_avatar rounded-circle" t-att-src="widget.avatarURL" alt="Avatar"/>
<div t-if="widget.extended" class="o_composer_subject">
<input tabindex="1" type="text" placeholder="Subject" class="o_input"/>
</div>
@@ -11,18 +11,18 @@
<div class="o_composer_input">
<textarea class="o_input o_composer_text_field" tabindex="2" placeholder="Write something..."/>
<div class="o_chatter_composer_tools">
- <button tabindex="4" class="btn btn-sm btn-icon fa fa-smile-o o_composer_button_emoji" type="button" data-toggle="popover" title="Emojis" aria-label="Emojis"/>
- <button tabindex="5" class="btn btn-sm btn-icon fa fa-paperclip o_composer_button_add_attachment" type="button" aria-label="Add attachment" title="Add attachment"/>
- <button t-if="widget.options.isMobile" tabindex="3" class="btn btn-sm btn-icon fa fa-paper-plane-o o_composer_button_send" type="button" title="Send" aria-label="Send"/>
+ <button tabindex="4" class="btn btn-secondary fa fa-smile-o o_composer_button_emoji" type="button" data-toggle="popover" title="Emojis" aria-label="Emojis"/>
+ <button tabindex="5" class="btn btn-secondary fa fa-paperclip o_composer_button_add_attachment" type="button" aria-label="Add attachment" title="Add attachment"/>
+ <button t-if="widget.options.isMobile" tabindex="3" class="btn btn-secondary fa fa-paper-plane-o o_composer_button_send" type="button" title="Send" aria-label="Send"/>
</div>
</div>
</div>
<div class="o_composer_attachments_list"/>
</div>
<div class="o_composer_send">
- <button tabindex="3" class="btn btn-sm btn-primary o_composer_button_send hidden-xs" type="button"><t t-esc="widget.options.sendText"/></button>
+ <button tabindex="3" class="btn btn-primary o_composer_button_send d-none d-md-inline-block" type="button"><t t-esc="widget.options.sendText"/></button>
</div>
- <span class="hide">
+ <span class="d-none">
<t t-call="HiddenInputFile">
<t t-set="fileupload_id" t-value="widget.fileuploadID"/>
<t t-set="fileupload_action" t-translation="off">/web/binary/upload_attachment</t>
@@ -47,17 +47,15 @@
@param {boolean} [suggestions.divider=false]
-->
<t t-name="mail.MentionSuggestions">
- <ul class="dropdown-menu" role="menu">
+ <div class="dropdown-menu" role="menu">
<t t-foreach="suggestions" t-as="suggestion">
- <li role="separator" t-if="suggestion.divider" class="divider"/>
- <li t-if="!suggestion.divider" class="o_mention_proposition" t-att-data-id="suggestion.id">
- <a role="menuitem" href="#"/>
- </li>
+ <div role="separator" t-if="suggestion.divider" class="dropdown-divider"/>
+ <a t-else="" href="#" class="dropdown-item o_mention_proposition" t-att-data-id="suggestion.id" role="menuitem"/>
</t>
- </ul>
+ </div>
</t>
<t t-name="mail.MentionSuggestions.Partner" t-extend="mail.MentionSuggestions">
- <t t-jquery=".o_mention_proposition a" t-operation="append">
+ <t t-jquery=".o_mention_proposition" t-operation="append">
<span class="o_mention_name"><t t-esc="suggestion.name"/></span>
<t t-if="suggestion.email">
<span class="o_mention_info">(<t t-esc="suggestion.email"/>)</span>
@@ -65,18 +63,18 @@
</t>
</t>
<t t-name="mail.MentionSuggestions.Channel" t-extend="mail.MentionSuggestions">
- <t t-jquery=".o_mention_proposition a" t-operation="append">
+ <t t-jquery=".o_mention_proposition" t-operation="append">
<span class="o_mention_name"><t t-esc="suggestion.name"/></span>
</t>
</t>
<t t-name="mail.MentionSuggestions.CannedResponse" t-extend="mail.MentionSuggestions">
- <t t-jquery=".o_mention_proposition a" t-operation="append">
+ <t t-jquery=".o_mention_proposition" t-operation="append">
<span class="o_mention_name"><t t-esc="suggestion.source"/></span>
<span class="o_mention_info"><t t-esc="suggestion.substitution"/></span>
</t>
</t>
<t t-name="mail.MentionSuggestions.Command" t-extend="mail.MentionSuggestions">
- <t t-jquery=".o_mention_proposition a" t-operation="append">
+ <t t-jquery=".o_mention_proposition" t-operation="append">
<span class="o_mention_name">/<t t-esc="suggestion.name"/></span>
<span class="o_mention_info"><t t-esc="suggestion.help"/></span>
</t>
diff --git a/addons/mail/static/src/xml/discuss.xml b/addons/mail/static/src/xml/discuss.xml
index f66efe67afe..ad9a809ba03 100644
--- a/addons/mail/static/src/xml/discuss.xml
+++ b/addons/mail/static/src/xml/discuss.xml
@@ -84,7 +84,7 @@
@param {integer} counter
-->
<t t-name="mail.discuss.SidebarCounter">
- <span t-attf-class="o_mail_sidebar_needaction badge #{(!counter ? 'hide' : '')}">
+ <span t-attf-class="o_mail_sidebar_needaction badge badge-pill #{(!counter ? 'd-none' : '')}">
<t t-esc="counter"/>
</span>
</t>
@@ -149,7 +149,7 @@
<span t-attf-class="fa fa-cog o_mail_channel_settings"
title="Channel settings" role="img" aria-label="Channel settings" t-att-data-thread-id="thread.getID()"/>
<t t-call="mail.discuss.SidebarCounter"/>
- <span t-if="!thread.isGroupBasedSubscription()" t-attf-class="fa fa-times o_mail_partner_unpin #{counter ? 'hide' : ''}"
+ <span t-if="!thread.isGroupBasedSubscription()" t-attf-class="fa fa-times o_mail_partner_unpin #{counter ? 'd-none' : ''}"
title="Leave this channel" role="img" aria-label="Leave this channel" t-att-data-thread-id="thread.getID()"/>
</div>
</t>
@@ -181,16 +181,16 @@
-->
<t t-name="mail.discuss.ControlButtons">
<div>
- <button type="button" class="btn btn-primary btn-sm o_mail_discuss_button_invite hidden-xs" title="Invite people">Invite</button>
- <button type="button" class="btn btn-default btn-sm o_mail_discuss_button_mark_all_read hidden-xs" title="Mark all as read">Mark all read</button>
- <button type="button" class="btn btn-default btn-sm o_mail_discuss_button_unstar_all" title="Unstar all messages">Unstar all</button>
- <button type="button" class="btn btn-default btn-sm o_mail_discuss_button_dm visible-xs" title="New Message">New Message</button>
- <button t-if="!disableAddThread" type="button" class="btn btn-default btn-sm o_mail_discuss_button_public o_mail_discuss_button_private visible-xs" title="New Channel">New Channel</button>
- <button type="button" class="btn btn-default btn-sm o_hidden o_mail_discuss_button_select_all" title="Select all messages to moderate">Select All</button>
- <button type="button" class="btn btn-default btn-sm o_hidden o_mail_discuss_button_unselect_all" title="Unselect all messages to moderate">Unselect All</button>
- <button type="button" data-decision="accept" class="btn btn-default btn-sm o_mail_discuss_button_moderate_all" title="Accept selected messages">Accept</button>
- <button type="button" data-decision="reject" class="btn btn-default btn-sm o_mail_discuss_button_moderate_all" title="Reject selected messages">Reject</button>
- <button type="button" data-decision="discard" class="btn btn-default btn-sm o_mail_discuss_button_moderate_all" title="Discard selected messages">Discard</button>
+ <button type="button" class="btn btn-primary o_mail_discuss_button_invite d-none d-md-inline-block" title="Invite people">Invite</button>
+ <button type="button" class="btn btn-secondary o_mail_discuss_button_mark_all_read d-none d-md-inline-block" title="Mark all as read">Mark all read</button>
+ <button type="button" class="btn btn-secondary o_mail_discuss_button_unstar_all" title="Unstar all messages">Unstar all</button>
+ <button type="button" class="btn btn-secondary o_mail_discuss_button_dm d-block d-md-none" title="New Message">New Message</button>
+ <button t-if="!disableAddThread" type="button" class="btn btn-secondary o_mail_discuss_button_public o_mail_discuss_button_private d-block d-md-none" title="New Channel">New Channel</button>
+ <button type="button" class="btn btn-secondary o_hidden o_mail_discuss_button_select_all" title="Select all messages to moderate">Select All</button>
+ <button type="button" class="btn btn-secondary o_hidden o_mail_discuss_button_unselect_all" title="Unselect all messages to moderate">Unselect All</button>
+ <button type="button" data-decision="accept" class="btn btn-secondary o_mail_discuss_button_moderate_all" title="Accept selected messages">Accept</button>
+ <button type="button" data-decision="reject" class="btn btn-secondary o_mail_discuss_button_moderate_all" title="Reject selected messages">Reject</button>
+ <button type="button" data-decision="discard" class="btn btn-secondary o_mail_discuss_button_moderate_all" title="Discard selected messages">Discard</button>
</div>
</t>
@@ -208,10 +208,10 @@
<t t-name="mail.discuss_mobile">
<div class="o_mail_discuss">
<div class="o_mail_discuss_mobile_mailboxes_buttons">
- <button type="button" class="btn btn-primary btn-sm visible-xs-inline o_mailbox_inbox_item" title="Inbox" data-type="mailbox_inbox">
+ <button type="button" class="btn btn-primary d-inline d-md-none o_mailbox_inbox_item" title="Inbox" data-type="mailbox_inbox">
Inbox
</button>
- <button type="button" class="btn btn-default btn-sm visible-xs-inline o_mailbox_inbox_item" title="Starred" data-type="mailbox_starred">
+ <button type="button" class="btn btn-secondary d-inline d-md-none o_mailbox_inbox_item" title="Starred" data-type="mailbox_starred">
Starred
</button>
</div>
diff --git a/addons/mail/static/src/xml/followers.xml b/addons/mail/static/src/xml/followers.xml
index ae002a3c8ee..6ae0c6cacb9 100644
--- a/addons/mail/static/src/xml/followers.xml
+++ b/addons/mail/static/src/xml/followers.xml
@@ -7,25 +7,25 @@
<t t-name="mail.Followers">
<div class="o_followers">
<div class="o_followers_title_box">
- <button class="btn btn-sm btn-link dropdown-toggle" title="Dropdown menu - Followers"
+ <button class="btn btn-link dropdown-toggle" title="Dropdown menu - Followers"
data-toggle="dropdown" aria-expanded="false">
<i class="fa fa-user" role="img" aria-label="Dropdown menu - Followers"></i>
<span class="o_followers_count"/>
</button>
- <ul class="dropdown-menu o_followers_list" role="menu"></ul>
+ <div class="dropdown-menu o_followers_list" role="menu"/>
</div>
<div class="o_followers_actions">
- <div class="btn-group btn-group-sm o_subtypes_list">
- <button class="btn btn-sm btn-link o_followers_follow_button o_followers_notfollow">
+ <div class="btn-group o_subtypes_list">
+ <button class="btn btn-link o_followers_follow_button o_followers_notfollow">
<span class="o_follow">Follow</span>
<span class="fa fa-times o_followers_unfollow"/>
<span class="o_followers_unfollow"> Unfollow</span>
<span class="fa fa-check o_followers_following"/>
<span class="o_followers_following"> Following</span>
- </button><button class="btn btn-sm btn-link dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
+ </button><button class="btn btn-link dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
<span class="fa fa-bell" role="img" aria-label="Alarm menu" title="Alarm menu"/>
</button>
- <ul class="dropdown-menu" role="menu"/>
+ <div class="dropdown-menu" role="menu"/>
</div>
</div>
</div>
@@ -42,7 +42,7 @@
t-att-title="record.name"
t-att-data-oe-model="record.res_model"
t-att-data-oe-id="record.res_id"><t t-esc="record.name"/></a>
- <i t-if="record.is_editable" class="fa fa-pencil o_edit_subtype hide"
+ <i t-if="record.is_editable" class="fa fa-pencil o_edit_subtype d-none"
title="Edit subscription"
aria-label="Edit subscription" role="img"
t-att-data-follower-id="record.id"
@@ -59,13 +59,9 @@
-->
<t t-name="mail.Followers.add_more">
<t t-if="widget.isEditable">
- <li role="menuitem" class="o_add_follower">
- <a href="#"> Add Followers </a>
- </li>
- <li role="menuitem" class="o_add_follower_channel">
- <a href="#"> Add Channels </a>
- </li>
- <li role="separator" t-if="widget.followers.length > 0" class="divider"/>
+ <a href="#" role="menuitem" class="dropdown-item o_add_follower">Add Followers</a>
+ <a href="#" role="menuitem" class="dropdown-item o_add_follower_channel">Add Channels</a>
+ <div role="separator" t-if="widget.followers.length > 0" class="dropdown-divider"/>
</t>
</t>
@@ -73,18 +69,21 @@
Message subtypes of a follower subscription
-->
<t t-name="mail.Followers.subtype">
- <li role="menuitem" class="o_subtype">
- <div class="o_checkbox">
- <input type="checkbox" t-att-checked="record.followed"
- t-att-id="'input_mail_followers_subtype_'+record.id+(dialog ? '_in_dialog': '')"
- t-att-data-id="record.id" t-att-name="record.name" class="o_subtype_checkbox"/>
- <span/>
+ <div role="menuitem" class="o_subtype dropdown-item">
+ <div class="custom-control custom-checkbox">
+ <input type="checkbox"
+ t-attf-id="input_mail_followers_subtype_#{record.id + (dialog ? '_in_dialog': '')}"
+ t-att-name="record.name"
+ class="custom-control-input o_subtype_checkbox"
+ t-att-checked="record.followed"
+ t-att-data-id="record.id"/>
+ <label t-attf-for="input_mail_followers_subtype_#{record.id + (dialog ? '_in_dialog': '')}"
+ class="custom-control-label">
+ <t t-esc="record.name"/>
+ </label>
</div>
- <span t-att-for="'input_mail_followers_subtype_'+record.id+(dialog ? '_in_dialog': '')">
- <t t-esc="record.name"/>
- </span>
<i t-if="display_warning" class="fa fa-warning text-warning" role="img" aria-label="Warning" title="Warning"/>
- </li>
+ </div>
</t>
<t t-name="mail.Followers.subtypes.warning">
<span class="text-warning">
diff --git a/addons/mail/static/src/xml/systray.xml b/addons/mail/static/src/xml/systray.xml
index 7f3d56d955d..85bc33d58d4 100644
--- a/addons/mail/static/src/xml/systray.xml
+++ b/addons/mail/static/src/xml/systray.xml
@@ -6,25 +6,25 @@
-->
<t t-name="mail.systray.MessagingMenu">
<li class="o_mail_systray_item">
- <a class="dropdown-toggle" data-toggle="dropdown" aria-expanded="false" title="Conversations" href="#">
- <i class="fa fa-comments" role="img" aria-label="Messages"/> <span class="o_notification_counter badge"/>
+ <a class="dropdown-toggle o-no-caret" data-toggle="dropdown" aria-expanded="false" title="Conversations" href="#">
+ <i class="fa fa-comments" role="img" aria-label="Messages"/> <span class="o_notification_counter badge badge-pill"/>
</a>
- <ul class="o_mail_systray_dropdown dropdown-menu" role="menu">
- <li role="menuitem" t-if="widget.isMobile()">
+ <div class="o_mail_systray_dropdown dropdown-menu dropdown-menu-right" role="menu">
+ <t t-if="widget.isMobile()">
<div class="o_mail_systray_mobile_header">
- <button type="button" class="btn btn-default btn-sm o_new_message"> New message </button>
+ <button type="button" class="btn btn-secondary o_new_message"> New message </button>
</div>
- </li>
- <li role="menuitem" t-if="!widget.isMobile()" class="o_mail_systray_dropdown_top">
+ </t>
+ <div t-if="!widget.isMobile()" class="o_mail_systray_dropdown_top">
<div>
- <button type="button" class="btn btn-sm btn-link o_filter_button active"> All </button>
- <button type="button" class="btn btn-sm btn-link o_filter_button" data-filter='chat'> Chat </button>
- <button type="button" class="btn btn-sm btn-link o_filter_button" data-filter='channels'> Channels </button>
+ <button type="button" class="btn btn-link o_filter_button active"> All </button>
+ <button type="button" class="btn btn-link o_filter_button" data-filter='chat'> Chat </button>
+ <button type="button" class="btn btn-link o_filter_button" data-filter='channels'> Channels </button>
</div>
- <button type="button" class="btn btn-sm btn-link o_new_message"> New message </button>
- </li>
- <li role="menuitem" class="o_mail_systray_dropdown_items"/>
- <li role="menuitem" t-if="widget.isMobile()">
+ <button type="button" class="btn btn-link o_new_message"> New message </button>
+ </div>
+ <div class="o_mail_systray_dropdown_items"/>
+ <t t-if="widget.isMobile()">
<div class="o_mail_mobile_tabs">
<div class="o_mail_mobile_tab o_filter_button active">
<span class="fa fa-envelope"/>
@@ -39,8 +39,8 @@
<span class="o_tab_title">Channels</span>
</div>
</div>
- </li>
- </ul>
+ </t>
+ </div>
</li>
</t>
@@ -64,9 +64,9 @@
-->
<t t-name="mail.systray.ActivityMenu.Previews">
<t t-if="_.isEmpty(activities)">
- <li class="text-center o_no_activity">
+ <div class="dropdown-item-text text-center o_no_activity">
<span>No activities planned.</span>
- </li>
+ </div>
</t>
<t t-foreach="activities" t-as="activity">
<div class="o_mail_preview" t-att-data-res_model="activity.model" t-att-data-model_name="activity.name" data-filter='my'>
@@ -84,8 +84,8 @@
<span t-if="!activity.overdue_count" class="o_no_activity mr16">0 Late </span>
<button t-if="activity.today_count" type="button" class="btn btn-link o_activity_filter_button mr16" t-att-data-res_model="activity.model" t-att-data-model_name="activity.name" data-filter='today'> <t t-esc="activity.today_count"/> Today </button>
<span t-if="!activity.today_count" class="o_no_activity mr16">0 Today </span>
- <button t-if="activity.planned_count" type="button" class="btn btn-link o_activity_filter_button pull-right" t-att-data-res_model="activity.model" t-att-data-model_name="activity.name" data-filter='upcoming_all'> <t t-esc="activity.planned_count"/> Future </button>
- <span t-if="!activity.planned_count" class="o_no_activity pull-right">0 Future</span>
+ <button t-if="activity.planned_count" type="button" class="btn btn-link o_activity_filter_button float-right" t-att-data-res_model="activity.model" t-att-data-model_name="activity.name" data-filter='upcoming_all'> <t t-esc="activity.planned_count"/> Future </button>
+ <span t-if="!activity.planned_count" class="o_no_activity float-right">0 Future</span>
</div>
</div>
</div>
@@ -94,12 +94,12 @@
<t t-name="mail.systray.ActivityMenu">
<li class="o_mail_systray_item">
- <a class="dropdown-toggle" data-toggle="dropdown" aria-expanded="false" title="Activities" href="#">
- <i class="fa fa-clock-o" role="img" aria-label="Activities"/> <span class="o_notification_counter badge"/>
+ <a class="dropdown-toggle o-no-caret" data-toggle="dropdown" aria-expanded="false" title="Activities" href="#">
+ <i class="fa fa-clock-o" role="img" aria-label="Activities"/> <span class="o_notification_counter badge badge-pill"/>
</a>
- <ul class="o_mail_systray_dropdown dropdown-menu" role="menu">
- <li role="menuitem" class="o_mail_systray_dropdown_items"/>
- </ul>
+ <div class="o_mail_systray_dropdown dropdown-menu dropdown-menu-right" role="menu">
+ <div class="o_mail_systray_dropdown_items"/>
+ </div>
</li>
</t>
</templates>
diff --git a/addons/mail/static/src/xml/thread.xml b/addons/mail/static/src/xml/thread.xml
index 2d877068694..b3443418c2b 100644
--- a/addons/mail/static/src/xml/thread.xml
+++ b/addons/mail/static/src/xml/thread.xml
@@ -42,7 +42,7 @@
<t t-esc="widget.activeAttachment.name"/>
<a role="button" href="#" class="o_download_btn ml8 small" data-toggle="tooltip" data-placement="right" title="Download"><i class="fa fa-fw fa-download" role="img" aria-label="Download"/></a>
</span>
- <a role="button" class="o_close_btn pull-right" href="#" aria-label="Close" title="Close">×</a>
+ <a role="button" class="o_close_btn float-right" href="#" aria-label="Close" title="Close">×</a>
</div>
<div class="o_viewer_img_wrapper">
<div class="o_viewer_zoomer">
@@ -183,13 +183,13 @@
t-att-src="message.getAvatarSource()"
data-oe-model="res.partner"
t-att-data-oe-id="message.shouldRedirectToAuthor() ? message.getAuthorID() : ''"
- t-attf-class="o_thread_message_avatar img-circle #{message.shouldRedirectToAuthor() ? 'o_mail_redirect' : ''}"/>
+ t-attf-class="o_thread_message_avatar rounded-circle #{message.shouldRedirectToAuthor() ? 'o_mail_redirect' : ''}"/>
</t>
<t t-else="">
<img t-if="displayAuthorMessages[message.getID()]"
alt=""
t-att-src="message.getAvatarSource()"
- class="o_thread_message_avatar img-circle"/>
+ class="o_thread_message_avatar rounded-circle"/>
</t>
<span t-if="!displayAuthorMessages[message.getID()]" t-att-title="message.getDate().format(dateFormat)" class="o_thread_message_side_date">
<t t-esc="message.getDate().format('hh:mm')"/>
@@ -395,7 +395,7 @@
<t t-set="has_preview" t-value="type == 'image' or type == 'video' or attachment.mimetype == 'application/pdf'"/>
<t t-set="ext" t-value="attachment.filename.split('.').pop()"/>
- <div t-attf-class="o_image_box pull-left #{has_preview ? 'o_attachment_view' : ''}" t-att-data-id="attachment.id">
+ <div t-attf-class="o_image_box float-left #{has_preview ? 'o_attachment_view' : ''}" t-att-data-id="attachment.id">
<div t-if="has_preview"
class="o_image o_hover"
t-att-style="type == 'image' ? 'background-image:url(/web/image/' + attachment.id + '/38x38/?crop=true' : '' "
@@ -420,7 +420,7 @@
<div t-if="!editable" class="caption small">
<b t-if="has_preview" class="ml4 small text-uppercase o_attachment_view" t-att-data-id="attachment.id"><t t-esc="ext"/></b>
<a t-else="" class="ml4 small text-uppercase" t-att-href="attachment.url" t-att-title="'Download ' + attachment.name"><b><t t-esc='ext'/></b></a>
- <a class="ml4 o_attachment_download pull-right" t-att-title="'Download ' + attachment.name" t-att-href='attachment.url'><i t-attf-class="fa fa-download" role="img" aria-label="Download"/></a>
+ <a class="ml4 o_attachment_download float-right" t-att-title="'Download ' + attachment.name" t-att-href='attachment.url'><i t-attf-class="fa fa-download" role="img" aria-label="Download"/></a>
</div>
<div t-if="editable" class="o_attachment_uploaded"><i class="text-success fa fa-check" role="img" aria-label="Uploaded" title="Uploaded"/></div>
<div t-if="editable" class="o_attachment_delete" t-att-data-id="attachment.id"><span class="text-white" role="img" aria-label="Delete" title="Delete">×</span></div>
@@ -438,7 +438,7 @@
<span><i class="fa fa-spinner fa-spin" role="img" aria-label="Please wait" title="Please wait"/> Loading older messages... </span>
</t>
<t t-else="">
- <button class="btn btn-sm btn-link">-------- Show older messages --------</button>
+ <button class="btn btn-link">-------- Show older messages --------</button>
</t>
</div>
</t>
diff --git a/addons/mail/static/src/xml/web_kanban_activity.xml b/addons/mail/static/src/xml/web_kanban_activity.xml
index c3148f13e95..9edac1a91fa 100644
--- a/addons/mail/static/src/xml/web_kanban_activity.xml
+++ b/addons/mail/static/src/xml/web_kanban_activity.xml
@@ -3,35 +3,34 @@
<t t-name="mail.KanbanActivity">
<div class="o_kanban_inline_block dropdown o_kanban_selection o_mail_activity">
- <a class="dropdown-toggle o_activity_btn" data-toggle="dropdown">
+ <a class="dropdown-toggle o-no-caret o_activity_btn" data-toggle="dropdown">
<span class="fa fa-clock-o fa-lg fa-fw" t-att-title="widget.selection[widget.activityState]" role="img" t-att-aria-label="widget.selection[widget.activity_state]"/>
</a>
- <ul class="dropdown-menu o_activity" role="menu">
- </ul>
+ <div class="dropdown-menu o_activity" role="menu"/>
</div>
</t>
<t t-name="mail.KanbanActivityLoading">
- <li class="text-center o_no_activity">
+ <div class="dropdown-item text-center o_no_activity">
<span class="fa fa-spinner fa-spin fa-2x" role="img" aria-label="Loading..." title="Loading..."/>
- </li>
+ </div>
</t>
<t t-name="mail.KanbanActivityDropdown">
- <li role="menuitem" t-if="_.isEmpty(records)" class="text-center o_no_activity">
- <span>No activities planned.</span>
- </li>
- <li t-if="!_.isEmpty(records)" aria-haspopup="true" role="menu">
+ <span role="menuitem" t-if="_.isEmpty(records)" class="dropdown-item-text text-center o_no_activity">
+ No activities planned.
+ </span>
+ <div t-else="" class="dropdown-item" aria-haspopup="true" role="menu">
<ul class="nav o_activity_log" role="menu">
<t t-foreach="_.keys(records)" t-as="key">
<t t-set="logs" t-value="records[key]" />
- <li role="menuitem" class="o_activity_label">
+ <li role="menuitem" class="nav-item o_activity_label">
<strong t-attf-class="o_activity_color_#{key}">
<t t-esc="selection[key]" /> (<t t-esc="logs.length"/>)
</strong>
</li>
- <li role="menuitem" t-foreach="logs" t-as="log" t-att-data-activity-id="log.id" class="o_schedule_activity">
- <div class="o_activity_title pull-left">
+ <li t-foreach="logs" t-as="log" t-att-data-activity-id="log.id" class="nav-item o_schedule_activity" role="menuitem">
+ <div class="o_activity_title float-left">
<span t-attf-class="fa #{log.icon} fa-fw" role="img" aria-label="Log" title="Log"/>
<strong>
<t t-esc="log.title_action or log.activity_type_id[1]" />
@@ -45,18 +44,18 @@
</t>
</div>
</div>
- <div class="pull-right">
+ <div class="float-right">
<span class="o_mark_as_done o_activity_link o_activity_link_kanban fa fa-check-circle fa-2x mt4" t-att-data-activity-id="log.id" title="Mark as done" role="img" aria-label="Mark as done"/>
</div>
</li>
</t>
</ul>
- </li>
- <li role="menuitem" class="o_schedule_activity text-center">
+ </div>
+ <div role="menuitem" class="o_schedule_activity text-center">
<a role="button" class="btn btn-link btn-block">
<i class="fa fa-plus fa-fw"></i><strong>Schedule an activity</strong>
</a>
- </li>
+ </div>
</t>
</templates>