summaryrefslogtreecommitdiff
path: root/addons/website_slides/models/slide_slide.py
diff options
context:
space:
mode:
authorThibault Delavallée <tde@odoo.com>2019-08-26 15:49:06 +0000
committerThibault Delavallée <tde@odoo.com>2019-08-28 13:27:58 +0000
commitf93064606f4b6dd0fde0750991ff517ae2925fac (patch)
treeb6cac3f36b2fd50bea4804be27fa9187da6b05ae /addons/website_slides/models/slide_slide.py
parent58cf9b6754c44f9847787938b4019d8740faffda (diff)
[FIX] website_slides{_*}: fix completion computation, notably with certifications
PURPOSE Test frontend and UI tools of eLearning. SPECIFICATIONS Since 9920f20e4c7753bc17bea71dea3a90f7de687196 course completion when finishing a certification survey is broken. Indeed channel completion is not correctly recomputed. A certification course can therefore never be completed and awarded. This commit fixes that and correctly update channel completion based on survey. In this commit we also rename some methods * _compute_completion: renamed to _recompute_completion to avoid naming issue with computed field convention; * _post_completion_hook is not unnecessary as code in hr_skill can be done after calling super of _recompute_completion; * _completed_callback is renamed to _set_completed_callback to be coherent with slides naming; LINKS Task ID 1937768
Diffstat (limited to 'addons/website_slides/models/slide_slide.py')
-rw-r--r--addons/website_slides/models/slide_slide.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/addons/website_slides/models/slide_slide.py b/addons/website_slides/models/slide_slide.py
index 50883f75788..f890c7d1451 100644
--- a/addons/website_slides/models/slide_slide.py
+++ b/addons/website_slides/models/slide_slide.py
@@ -37,20 +37,21 @@ class SlidePartnerRelation(models.Model):
res = super(SlidePartnerRelation, self).create(values)
completed = res.filtered('completed')
if completed:
- completed._completed_callback()
+ completed._set_completed_callback()
return res
def write(self, values):
res = super(SlidePartnerRelation, self).write(values)
if values.get('completed'):
- self._completed_callback()
+ self._set_completed_callback()
return res
- def _completed_callback(self):
+ def _set_completed_callback(self):
self.env['slide.channel.partner'].search([
('channel_id', 'in', self.channel_id.ids),
('partner_id', 'in', self.partner_id.ids),
- ])._compute_completion()
+ ])._recompute_completion()
+
class SlideLink(models.Model):
_name = 'slide.slide.link'
@@ -410,7 +411,7 @@ class Slide(models.Model):
if 'is_published' in values or 'active' in values:
# if the slide is published/unpublished, recompute the completion for the partners
- self.slide_partner_ids._completed_callback()
+ self.slide_partner_ids._set_completed_callback()
return res