diff options
| author | Thibault Delavallée <tde@odoo.com> | 2019-10-24 14:05:48 +0000 |
|---|---|---|
| committer | Thibault Delavallée <tde@odoo.com> | 2019-12-02 15:18:45 +0000 |
| commit | 9e0677882d64ac2be92cd1ea147ce823e2d9f69b (patch) | |
| tree | 389e992bf7ee18cf77ea08ca2e32a945d02c400d /addons/website_rating/static/src/xml | |
| parent | 82f56ffddfc6aed21030214dc95c0a3e9f5d9a93 (diff) | |
[MOV] website_rating: move to portal_rating
PURPOSE
Clean posting process and improve mail.message definition and comprehension.
Move as much possible content from website_* modules to portal_* modules
to ease their use in customer portal
SPECIFICATIONS
Now that publish feature is replaced by internal directly in mail and portal
rating portal inclusion can be done safely in a portal_ratign module instead
of website_rating. It allows to remove the dependency and give the rating
feature of customer chatter directly in portal applications.
LINKS
Task ID 2071556
PR #38692
Diffstat (limited to 'addons/website_rating/static/src/xml')
3 files changed, 0 insertions, 256 deletions
diff --git a/addons/website_rating/static/src/xml/portal_chatter.xml b/addons/website_rating/static/src/xml/portal_chatter.xml deleted file mode 100644 index ba8fa74cc7c..00000000000 --- a/addons/website_rating/static/src/xml/portal_chatter.xml +++ /dev/null @@ -1,116 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<templates id="template" xml:space="preserve"> - <!-- - Inherited templates from portal to custom chatter with rating - --> - <t t-extend="portal.Composer"> - <t t-jquery="textarea" t-operation="inner"><t t-esc="widget.options['default_message'] ? _.str.trim(widget.options['default_message']) : ''"/></t><!-- need to be one line to avoid \t in textarea --> - <t t-jquery="form" t-operation="attributes"> - <attribute name="t-attf-action">#{widget.options['force_submit_url'] ? widget.options['force_submit_url'] : '/mail/chatter_post'}</attribute> - </t> - <t t-jquery=".o_portal_chatter_composer_form input[name='csrf_token']" t-operation="after"> - <t t-call="website_rating.rating_star_input"> - <t t-set="default_rating" t-value="widget.options['default_rating_value']"/> - </t> - <input type="hidden" name="message_id" t-att-value="widget.options['default_message_id']" t-if="widget.options['default_message_id']"/> - </t> - </t> - - <t t-extend="portal.chatter_messages"> - <t t-jquery="t[t-raw='message.body']" t-operation="before"> - <t t-if="message['rating_value']"> - <t t-call="website_rating.rating_stars_static"> - <t t-set="val" t-value="message.rating_value"/> - </t> - </t> - </t> - <t t-jquery=".o_portal_chatter_attachments" t-operation="after"> - <!--Only possible if a rating is link to the message, for now we can't comment if no rating - is link to the message (because publisher comment data - is on the rating.rating model - one comment max) --> - <t t-if="message.rating and message.rating.id" t-call="website_rating.chatter_rating_publisher"> - <t t-set="is_publisher" t-value="widget.options['is_user_publisher']"/> - <t t-set="rating" t-value="message.rating"/> - </t> - </t> - </t> - - <t t-extend="portal.Chatter"> - <t t-jquery="t[t-call='portal.chatter_message_count']" t-operation="replace"> - <t t-if="widget.options['display_rating']"> - <t t-call="website_rating.rating_card"/> - </t> - <t t-if="!widget.options['display_rating']"> - <t t-call="portal.chatter_message_count"/> - </t> - </t> - </t> - - <!-- - New templates specific of rating in Chatter - --> - <t t-name="website_rating.chatter_rating_publisher"> - <div class="o_wrating_publisher_container"> - <button t-if="is_publisher" - t-attf-class="btn px-2 btn-sm border o_wrating_js_publisher_comment_btn {{ rating.publisher_comment !== '' ? 'd-none' : '' }}" - t-att-data-mes_index="rating.mes_index"> - <i class="fa fa-comment text-muted mr-1"/>Comment - </button> - <div class="o_wrating_publisher_comment mt-2 mb-2"> - <t t-if="rating.publisher_comment" t-call="website_rating.chatter_rating_publisher_comment"/> - </div> - </div> - </t> - - <t t-name="website_rating.chatter_rating_publisher_comment"> - <div class="media o_portal_chatter_message"> - <img class="o_portal_chatter_avatar" t-att-src="rating.publisher_avatar" alt="avatar"/> - <div class="media-body"> - <div class="o_portal_chatter_message_title"> - <div class="d-inline-block"> - <h5><t t-esc="rating.publisher_name"/></h5> - </div> - <div t-if="is_publisher" class="dropdown d-inline-block"> - <button class="btn py-0" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> - <i class="fa fa-ellipsis-v"/> - </button> - <div class="dropdown-menu" aria-labelledby="dropdownMenuButton"> - <button class="dropdown-item o_wrating_js_publisher_comment_edit" t-att-data-mes_index="rating.mes_index"> - <i class="fa fa-fw fa-pencil mr-1"/>Edit - </button> - <button class="dropdown-item o_wrating_js_publisher_comment_delete" t-att-data-mes_index="rating.mes_index"> - <i class="far fa-fw fa-trash-alt mr-1"/>Delete - </button> - </div> - </div> - <p>Published on <t t-esc="rating.publisher_datetime"/></p> - </div> - <t t-raw="rating.publisher_comment"/> - </div> - </div> - </t> - <t t-name="website_rating.chatter_rating_publisher_form"> - <div t-if="is_publisher" class="media o_portal_chatter_message shadow bg-white rounded px-3 py-3 my-1"> - <img class="o_portal_chatter_avatar" t-att-src="rating.publisher_avatar" alt="avatar"/> - <div class="media-body"> - <div class="o_portal_chatter_message_title"> - <h5><t t-esc="rating.publisher_name"/></h5> - <p>Published on <t t-esc="rating.publisher_datetime"/></p> - </div> - <textarea rows="3" class="form-control o_portal_rating_comment_input"><t t-esc="rating.publisher_comment"/></textarea> - <div> - <button class="btn btn-primary mt-2 o_wrating_js_publisher_comment_submit" t-att-data-mes_index="rating.mes_index"> - <t t-if="rating.publisher_comment === ''"> - Post comment - </t><t t-else=""> - Update comment - </t> - </button> - <button class="border btn btn-light mt-2 bg-white o_wrating_js_publisher_comment_cancel" t-att-data-mes_index="rating.mes_index"> - Cancel - </button> - </div> - </div> - </div> - </t> -</templates> diff --git a/addons/website_rating/static/src/xml/portal_rating_composer.xml b/addons/website_rating/static/src/xml/portal_rating_composer.xml deleted file mode 100644 index 38d041a060e..00000000000 --- a/addons/website_rating/static/src/xml/portal_rating_composer.xml +++ /dev/null @@ -1,53 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<templates id="template" xml:space="preserve"> - <!-- - Popup Rating Composer Widget - It can alse be used to modify a message - --> - <t t-name="website_rating.PopupComposer"> - <div class="d-flex flex-wrap align-items-center"> - <div class="text-nowrap"> - <t t-call="website_rating.rating_stars_static"> - <t t-set="val" t-value="widget.rating_avg || 0"/> - <t t-set="inline_mode" t-value="true"/> - </t> - <t t-if="widget.rating_total"> - <small>(<t t-esc="widget.rating_total"/> ratings)</small> - </t> - </div> - <button t-if="widget.options['display_composer']" type="button" class="btn btn-sm btn-primary mx-3" data-toggle="modal" data-target="#ratingpopupcomposer"> - <t t-if="widget.options['display_composer']"> - <t t-if="widget.options['default_message_id']"> - Modify your review - </t> - <t t-else=""> - Add a review - </t> - </t> - </button> - </div> - - <div t-if="widget.options['display_composer']" class="modal fade" id="ratingpopupcomposer" tabindex="-1" role="dialog" aria-labelledby="ratingpopupcomposerlabel" aria-hidden="true"> - <div class="modal-dialog" role="document"> - <div class="modal-content"> - <div class="modal-header"> - <h5 class="modal-title o_rating_popup_composer_label" id="ratingpopupcomposerlabel"> - <t t-if="widget.options['default_message_id']"> - Modify your review - </t> - <t t-else=""> - Add a review - </t> - </h5> - <button type="button" class="close" data-dismiss="modal" aria-label="Close"> - <span>&times;</span> - </button> - </div> - <div class="modal-body"> - <div class="o_portal_chatter_composer"/> - </div> - </div> - </div> - </div> - </t> -</templates> diff --git a/addons/website_rating/static/src/xml/portal_tools.xml b/addons/website_rating/static/src/xml/portal_tools.xml deleted file mode 100644 index 0d790041d0b..00000000000 --- a/addons/website_rating/static/src/xml/portal_tools.xml +++ /dev/null @@ -1,87 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<templates id="template" xml:space="preserve"> - <t t-name="website_rating.rating_stars_static"> - <t t-set="val_integer" t-value="Math.floor(val)"/> - <t t-set="val_decimal" t-value="val - val_integer"/> - <t t-set="empty_star" t-value="5 - (val_integer+Math.ceil(val_decimal))"/> - <div class="o_website_rating_static" t-att-style="inline_mode ? 'display:inline' : ''"> - <t t-foreach="_.range(0, val_integer)" t-as="num"> - <i class="fas fa-star" role="img" aria-label="One star" title="One star"></i> - </t> - <t t-if="val_decimal"> - <i class="fas fa-star-half-alt" role="img" aria-label="Half a star" title="Half a star"></i> - </t> - <t t-foreach="_.range(0, empty_star)" t-as="num" role="img" t-attf-aria-label="#{empty_star} on 5" t-attf-title="#{empty_star} on 5"> - <i class="fas fa-star text-black-25"></i> - </t> - </div> - </t> - - <t t-name="website_rating.rating_card"> - <div class="row o_website_rating_card_container"> - <div class="col-lg-3 offset-lg-2" t-if="!_.isEmpty(widget.get('rating_card_values'))"> - <p><strong>Average</strong></p> - <div class="o_website_rating_avg text-center"> - <h1><t t-esc="widget.get('rating_card_values')['avg']"/></h1> - <t t-call="website_rating.rating_stars_static"> - <t t-set="val" t-value="widget.get('rating_card_values')['avg'] || 0"/> - </t> - <t t-call="portal.chatter_message_count"/> - </div> - </div> - <div class="col-lg-6" t-if="!_.isEmpty(widget.get('rating_card_values'))"> - <p><strong>Details</strong></p> - <div class="o_website_rating_progress_bars"> - <table class="o_website_rating_progress_table"> - <t t-foreach="widget.get('rating_card_values')['percent']" t-as="percent"> - <tr class="o_website_rating_select" t-att-data-star="percent['num']" style="opacity: 1"> - <td class="o_website_rating_table_star_num" t-att-data-star="percent['num']"> - <t t-esc="percent['num']"/> stars - </td> - <td class="o_website_rating_table_progress"> - <div class="progress"> - <div class="progress-bar o_rating_progressbar" role="progressbar" t-att-aria-valuenow="percent['percent']" aria-valuemin="0" aria-valuemax="100" t-att-style="'width:' + percent['percent'] + '%;'"> - </div> - </div> - </td> - <td class="o_website_rating_table_percent"> - <strong><t t-esc="Math.round(percent['percent'] * 100) / 100"/>%</strong> - </td> - <td class="o_website_rating_table_reset"> - <button class="btn btn-link o_website_rating_select_text" t-att-data-star="percent['num']"> - <i class="fa fa-times d-block d-sm-none" role="img" aria-label="Remove Selection"/> - <span class="d-none d-sm-block">Remove Selection</span> - </button> - </td> - </tr> - </t> - </table> - </div> - </div> - </div> - </t> - - <t t-name="website_rating.rating_star_input"> - <div class="o_rating_star_card" t-if="widget.options['display_rating']"> - <t t-set="val_integer" t-value="Math.floor(default_rating)"/> - <t t-set="val_decimal" t-value="default_rating - val_integer"/> - <t t-set="empty_star" t-value="5 - (val_integer+Math.ceil(val_decimal))"/> - - <div class="stars enabled"> - <t t-foreach="_.range(0, val_integer)" t-as="num"> - <i class="fas fa-star" role="img" aria-label="One star" title="One star"></i> - </t> - <t t-if="val_decimal"> - <i class="fas fa-star-half-alt" role="img" aria-label="Half a star" title="Half a star"></i> - </t> - <t t-foreach="_.range(0, empty_star)" t-as="num" role="img" t-attf-aria-label="#{empty_star} on 5" t-attf-title="#{empty_star} on 5"> - <i class="far fa-star text-black-25"></i> - </t> - </div> - <div class="rate_text"> - <span class="badge badge-info"></span> - </div> - <input type="hidden" readonly="readonly" name="rating_value" t-att-value="default_rating || ''"/> - </div> - </t> -</templates> |
