diff options
4 files changed, 31 insertions, 1 deletions
diff --git a/addons/website_slides_survey/__manifest__.py b/addons/website_slides_survey/__manifest__.py index e54847bb6b5..3ccd9168ece 100644 --- a/addons/website_slides_survey/__manifest__.py +++ b/addons/website_slides_survey/__manifest__.py @@ -15,6 +15,7 @@ 'views/slide_slide_views.xml', 'views/website_slides_templates_course.xml', 'views/website_slides_templates_lesson.xml', + 'views/website_slides_templates_lesson_fullscreen.xml', 'views/website_slides_templates_homepage.xml', 'views/survey_templates.xml', 'views/website_profile.xml', diff --git a/addons/website_slides_survey/models/slide_slide.py b/addons/website_slides_survey/models/slide_slide.py index 731e7a37f4e..ef6122a4f40 100644 --- a/addons/website_slides_survey/models/slide_slide.py +++ b/addons/website_slides_survey/models/slide_slide.py @@ -20,6 +20,19 @@ class SlidePartnerRelation(models.Model): for record in self: record.survey_quizz_passed = record in passed_slide_partners + @api.model_create_multi + def create(self, vals_list): + for vals in vals_list: + if vals.get('survey_quizz_passed'): + vals['completed'] = True + return super(SlidePartnerRelation, self).create(vals_list) + + @api.multi + def _write(self, vals): + if vals.get('survey_quizz_passed'): + vals['completed'] = True + return super(SlidePartnerRelation, self)._write(vals) + class Slide(models.Model): _inherit = 'slide.slide' diff --git a/addons/website_slides_survey/static/src/xml/website_slides_fullscreen.xml b/addons/website_slides_survey/static/src/xml/website_slides_fullscreen.xml index 97f35fc3a32..c5d22bfc46f 100644 --- a/addons/website_slides_survey/static/src/xml/website_slides_fullscreen.xml +++ b/addons/website_slides_survey/static/src/xml/website_slides_fullscreen.xml @@ -2,9 +2,14 @@ <templates> <t t-extend="website.slides.fullscreen"> <t t-jquery=".o_wslides_fs_content" t-operation="append"> - <div class="o_wslides_fs_certification" t-if="slide.slide_type == 'certification'"> + <div class="o_wslides_fs_certification" t-if="slide.slide_type == 'certification' && !slide.certificationDone"> <a class="btn btn-primary" t-att-href="'/slides/slide/' + slide.slug" target="new"><i class="fa fa-trophy"/> Pass Certification</a> </div> + <div class="o_wslides_fs_certification" t-if="slide.slide_type == 'certification' && slide.certificationDone"> + <a role="button" t-att-data-survey_id="slide.certificationId" class="btn btn-primary o_wslides_survey_download_certification" href="#"> + <i class="fa fa-fw fa-trophy" role="img" aria-label="Download certification" title="Download certification"/> Download certification + </a> + </div> </t> </t> diff --git a/addons/website_slides_survey/views/website_slides_templates_lesson_fullscreen.xml b/addons/website_slides_survey/views/website_slides_templates_lesson_fullscreen.xml new file mode 100644 index 00000000000..b604582ce34 --- /dev/null +++ b/addons/website_slides_survey/views/website_slides_templates_lesson_fullscreen.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo><data> + + <template id="slide_fullscreen_sidebar_category" inherit_id="website_slides.slide_fullscreen_sidebar_category"> + <xpath expr="//div[@t-attf-index='#{i}']" position="attributes"> + <attribute name="t-att-data-certification-done">course_slide.user_membership_id.survey_quizz_passed</attribute> + <attribute name="t-att-data-certification-id">course_slide.survey_id.id</attribute> + </xpath> + </template> + +</data></odoo> |
