PURPOSE Allow publishers to add a comment on frontend reviews with ratings. Purpose is to allow to give some feedback or context on published reviews. SPECIFICATIONS In order to answer to a rating message (review) of a course (eLearning) or a product (eCommerce) we add a way to the publisher to directly comment a review inside the website rating chatter. Any publisher can add/edit/remove comment of a rating message from the website. The goal is not to enter into a discussion but just to give a feedback. This comment is not sent or propagated to anyone, just displayed for information purpose. In portal chatter * add 1 button below a review "Comment" (for publishers of the website only) * only one comment possible by review/rating * when the comment is added, display * author name, date, comment * 2 buttons, only visible by the website publisher: edit and delete LINKS Task ID : 2026911 closes odoo/odoo#35956 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
18 lines
748 B
Python
18 lines
748 B
Python
# -*- coding: utf-8 -*-
|
|
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from odoo import http, _
|
|
from odoo.http import request
|
|
|
|
|
|
class PortalRating(http.Controller):
|
|
|
|
@http.route(['/website/rating/comment'], type='json', auth="user", method=['POST'], website=True)
|
|
def publish_rating_comment(self, rating_id, publisher_comment):
|
|
rating = request.env['rating.rating'].search([('id', '=', int(rating_id))])
|
|
if not rating:
|
|
return {'error': _('Invalid rating')}
|
|
rating.write({'publisher_comment': publisher_comment})
|
|
# return to the front-end the created/updated publisher comment
|
|
return rating.read(['publisher_comment', 'publisher_id', 'publisher_datetime'])[0]
|