summaryrefslogtreecommitdiff
path: root/addons/website_slides_survey/static
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2019-03-25 10:05:27 +0000
committerChristophe Simonis <chs@odoo.com>2019-03-25 11:13:41 +0000
commit5df4746c9aa144e6e3fce44fea43dac1089a5c51 (patch)
treef4ce932a76563e26b8d131805d49b405fcf9ad8f /addons/website_slides_survey/static
parent39e71353c5d58f7af6b3270911a24d98b73cad4e (diff)
parent230ad8c381e927025efabff0f5f8c2debc432249 (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')
-rw-r--r--addons/website_slides_survey/static/src/js/slides_certification_download.js23
-rw-r--r--addons/website_slides_survey/static/src/js/slides_course_fullscreen_player.js52
-rw-r--r--addons/website_slides_survey/static/src/scss/website_slides.scss9
-rw-r--r--addons/website_slides_survey/static/src/xml/website_slides_fullscreen.xml23
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' &amp;&amp; !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' &amp;&amp; !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' &amp;&amp; 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' &amp;&amp; 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>