summaryrefslogtreecommitdiff
path: root/addons/website_sale_slides/static/src/js
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/website_sale_slides/static/src/js
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/website_sale_slides/static/src/js')
-rw-r--r--addons/website_sale_slides/static/src/js/slides_course_join.js46
-rw-r--r--addons/website_sale_slides/static/src/js/slides_course_quiz.js25
-rw-r--r--addons/website_sale_slides/static/src/js/slides_course_unsubscribe.js12
3 files changed, 83 insertions, 0 deletions
diff --git a/addons/website_sale_slides/static/src/js/slides_course_join.js b/addons/website_sale_slides/static/src/js/slides_course_join.js
new file mode 100644
index 00000000..4fe1c28a
--- /dev/null
+++ b/addons/website_sale_slides/static/src/js/slides_course_join.js
@@ -0,0 +1,46 @@
+odoo.define('website_sale_slides.course.join.widget', function (require) {
+"use strict";
+
+var CourseJoinWidget = require('website_slides.course.join.widget').courseJoinWidget;
+const wUtils = require('website.utils');
+
+CourseJoinWidget.include({
+ xmlDependencies: (CourseJoinWidget.prototype.xmlDependencies || []).concat(
+ ["/website_sale_slides/static/src/xml/slide_course_join.xml"]
+ ),
+ init: function (parent, options) {
+ this._super.apply(this, arguments);
+ this.productId = options.channel.productId || false;
+ },
+
+ //--------------------------------------------------------------------------
+ // Handlers
+ //--------------------------------------------------------------------------
+
+ /**
+ * When the user joins the course, if it's set as "on payment" and the user is logged in,
+ * we redirect to the shop page for this course.
+ *
+ * @param {MouseEvent} ev
+ * @override
+ * @private
+ */
+ _onClickJoin: function (ev) {
+ ev.preventDefault();
+
+ if (this.channel.channelEnroll === 'payment' && !this.publicUser) {
+ this.beforeJoin().then(function () {
+ wUtils.sendRequest('/shop/cart/update', {
+ product_id: this.productId,
+ express: 1,
+ });
+ });
+ } else {
+ this._super.apply(this, arguments);
+ }
+ },
+});
+
+return CourseJoinWidget;
+
+});
diff --git a/addons/website_sale_slides/static/src/js/slides_course_quiz.js b/addons/website_sale_slides/static/src/js/slides_course_quiz.js
new file mode 100644
index 00000000..3922a631
--- /dev/null
+++ b/addons/website_sale_slides/static/src/js/slides_course_quiz.js
@@ -0,0 +1,25 @@
+odoo.define('website_sale_slides.quiz', function (require) {
+"use strict";
+
+var sAnimations = require('website.content.snippets.animation');
+var Quiz = require('website_slides.quiz').Quiz;
+
+sAnimations.registry.websiteSlidesQuizNoFullscreen.include({
+ _extractChannelData: function (slideData) {
+ return _.extend({}, this._super.apply(this, arguments), {
+ productId: slideData.productId,
+ enroll: slideData.enroll,
+ currencyName: slideData.currencyName,
+ currencySymbol: slideData.currencySymbol,
+ price: slideData.price,
+ hasDiscountedPrice: slideData.hasDiscountedPrice
+ });
+ }
+});
+
+Quiz.include({
+ xmlDependencies: (Quiz.prototype.xmlDependencies || []).concat(
+ ["/website_sale_slides/static/src/xml/website_sale_slides_quiz.xml"]
+ )
+});
+});
diff --git a/addons/website_sale_slides/static/src/js/slides_course_unsubscribe.js b/addons/website_sale_slides/static/src/js/slides_course_unsubscribe.js
new file mode 100644
index 00000000..34449ce7
--- /dev/null
+++ b/addons/website_sale_slides/static/src/js/slides_course_unsubscribe.js
@@ -0,0 +1,12 @@
+odoo.define('website_sale_slides.unsubscribe_modal', function (require) {
+"use strict";
+
+var SlidesUnsubscribe = require('website_slides.unsubscribe_modal');
+
+SlidesUnsubscribe.websiteSlidesUnsubscribe.include({
+ xmlDependencies: (SlidesUnsubscribe.websiteSlidesUnsubscribe.prototype.xmlDependencies || []).concat(
+ ["/website_sale_slides/static/src/xml/website_slides_unsubscribe.xml"]
+ ),
+});
+
+});