diff options
| author | Christophe Simonis <chs@odoo.com> | 2019-03-25 10:05:27 +0000 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2019-03-25 11:13:41 +0000 |
| commit | 5df4746c9aa144e6e3fce44fea43dac1089a5c51 (patch) | |
| tree | f4ce932a76563e26b8d131805d49b405fcf9ad8f /addons/website_slides_survey/static | |
| parent | 39e71353c5d58f7af6b3270911a24d98b73cad4e (diff) | |
| parent | 230ad8c381e927025efabff0f5f8c2debc432249 (diff) | |
[MERGE] forward port branch saas-12.2 up to 230ad8c381e
closes odoo/odoo#32088
Signed-off-by: Christophe Simonis <chs@odoo.com>
Diffstat (limited to 'addons/website_slides_survey/static')
4 files changed, 52 insertions, 55 deletions
diff --git a/addons/website_slides_survey/static/src/js/slides_certification_download.js b/addons/website_slides_survey/static/src/js/slides_certification_download.js deleted file mode 100644 index d1469ab63a8..00000000000 --- a/addons/website_slides_survey/static/src/js/slides_certification_download.js +++ /dev/null @@ -1,23 +0,0 @@ -odoo.define('website_slides_survey.certification_download', function (require) { -'use strict'; - -var WebsiteSlides = require('website_slides.slides'); -var session = require('web.session'); - -WebsiteSlides.include({ - events: _.extend({}, WebsiteSlides.prototype.events, { - 'click .o_wslides_survey_download_certification': '_onDownloadCertificationClick' - }), - - /** - * @private - */ - _onDownloadCertificationClick: function () { - var surveyId = this.$('.o_wslides_survey_download_certification').data('survey_id'); - session.get_file({ - url: '/survey/' + surveyId + '/get_certification' - }); - } -}); - -}); diff --git a/addons/website_slides_survey/static/src/js/slides_course_fullscreen_player.js b/addons/website_slides_survey/static/src/js/slides_course_fullscreen_player.js index 9fc8ffe3407..8ef0af53544 100644 --- a/addons/website_slides_survey/static/src/js/slides_course_fullscreen_player.js +++ b/addons/website_slides_survey/static/src/js/slides_course_fullscreen_player.js @@ -1,15 +1,39 @@ odoo.define('website_slides_survey.fullscreen', function (require) { - "use strict"; - - var core = require('web.core'); - var _t = core._t; - var Fullscreen = require('website_slides.fullscreen'); - - Fullscreen.include({ - xmlDependencies: (Fullscreen.prototype.xmlDependencies || []).concat( - ["/website_slides_survey/static/src/xml/website_slides_fullscreen.xml"] - ), - }); - - }); -
\ No newline at end of file +"use strict"; + +var core = require('web.core'); +var QWeb = core.qweb; +var Fullscreen = require('website_slides.fullscreen'); + +Fullscreen.include({ + xmlDependencies: (Fullscreen.prototype.xmlDependencies || []).concat( + ["/website_slides_survey/static/src/xml/website_slides_fullscreen.xml"] + ), + _preprocessSlideData: function (slidesDataList){ + slidesDataList = this._super.apply(this, arguments); + slidesDataList.forEach(function (slideData, index){ + if (slideData.type === "certification"){ + slideData.certificationUrl = '/slides_survey/slide/get_certification_url?slide_id=' + slideData.id; + } + }); + return slidesDataList; + }, + /** + * Extend the _renderSlide method so that slides of type "certification" + * are also taken into account and rendered correctly + * + * @private + * @override + */ + _renderSlide: function (){ + var def = this._super.apply(this, arguments); + var $content = this.$('.o_wslides_fs_content'); + if (this.get('slide').type === "certification"){ + $content.html(QWeb.render('website.slides.fullscreen.certification',{widget: this})); + } + return Promise.all([def]); + }, +}); +}); + + diff --git a/addons/website_slides_survey/static/src/scss/website_slides.scss b/addons/website_slides_survey/static/src/scss/website_slides.scss deleted file mode 100644 index 84a24ede56f..00000000000 --- a/addons/website_slides_survey/static/src/scss/website_slides.scss +++ /dev/null @@ -1,9 +0,0 @@ -.o_wslides_fs_certification { - display: flex; - justify-content: center; - align-items: center; - position: absolute; - top: 50%; - left: 50%; - transform: translateX(-50%) translateY(-50%); -}
\ No newline at end of file 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 c5d22bfc46f..7ca796f6c35 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 @@ -1,21 +1,26 @@ <?xml version="1.0" encoding="UTF-8"?> <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' && !slide.certificationDone"> - <a class="btn btn-primary" t-att-href="'/slides/slide/' + slide.slug" target="new"><i class="fa fa-trophy"/> Pass Certification</a> + + <t t-name="website.slides.fullscreen.certification"> + <div class="justify-content-center align-self-center"> + <div t-if="widget.get('slide').type === 'certification' && !widget.get('slide').completed" class=""> + <a class="btn btn-primary" t-att-href="'/slides_survey/slide/get_certification_url?slide_id=' + widget.get('slide').id" target="_blank"> + <i class="fa fa-trophy"/> + <span t-if="widget.get('slide').isMember"> Pass Certification</span> + <span t-else="">Test Certification</span> + </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="#"> + <div class="" t-if="widget.get('slide').type === 'certification' && widget.get('slide').completed"> + <a role="button" class="btn btn-primary" t-att-href="'/survey/' + widget.get('slide').certificationId + '/get_certification'"> <i class="fa fa-fw fa-trophy" role="img" aria-label="Download certification" title="Download certification"/> Download certification </a> </div> - </t> + </div> </t> - <t t-extend="website.course.fullscreen.title"> + <t t-extend="website.slides.fullscreen.title"> <t t-jquery=".o_wslides_fs_slide_title_span" t-operation="before"> - <i t-if="slide.slide_type == 'certification'" class="fa fa-trophy mr-2 text"></i> + <i t-if="widget.get('slide').type === 'certification'" class="fa fa-trophy mr-2 text"></i> </t> </t> </templates> |
