From 2c309d24da8e3c1e1190af869c7b8346986e2745 Mon Sep 17 00:00:00 2001
From: Dennis Ahrens <dennis.ahrens@hs-hannover.de>
Date: Thu, 8 Jul 2021 17:27:23 +0200
Subject: [PATCH] Adds a js file.

Our version has this JS file.
I did not investigated whether this is necessary or not.
We need to get rid of this anyways...
---
 amd/build/hidenews.min.js |  1 +
 amd/src/hidenews.js       | 58 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 59 insertions(+)
 create mode 100644 amd/build/hidenews.min.js
 create mode 100644 amd/src/hidenews.js

diff --git a/amd/build/hidenews.min.js b/amd/build/hidenews.min.js
new file mode 100644
index 0000000..8ed3b41
--- /dev/null
+++ b/amd/build/hidenews.min.js
@@ -0,0 +1 @@
+define(["jquery"],function(a){"use strict";function b(b){void 0!==b&&b.preventDefault(),a("#coc-coursenews-"+b.data.course).addClass("coc-hidden"),a("#coc-hidenewsicon-"+b.data.course).addClass("coc-hidden"),a("#coc-shownewsicon-"+b.data.course).removeClass("coc-hidden"),M.util.set_user_preference("block_course_overview_campus-hidenews-"+b.data.course,1)}function c(b){void 0!==b&&b.preventDefault(),a("#coc-coursenews-"+b.data.course).removeClass("coc-hidden"),a("#coc-hidenewsicon-"+b.data.course).removeClass("coc-hidden"),a("#coc-shownewsicon-"+b.data.course).addClass("coc-hidden"),M.util.set_user_preference("block_course_overview_campus-hidenews-"+b.data.course,0)}return{initHideNews:function(d){var e,f=d.courses.split(" ");for(e=0;e<f.length;e++)a("#coc-hidenewsicon-"+f[e]).on("click",{course:f[e]},b),a("#coc-shownewsicon-"+f[e]).on("click",{course:f[e]},c)}}});
\ No newline at end of file
diff --git a/amd/src/hidenews.js b/amd/src/hidenews.js
new file mode 100644
index 0000000..4118a89
--- /dev/null
+++ b/amd/src/hidenews.js
@@ -0,0 +1,58 @@
+/**
+ * Block "course overview (campus)" - JS code for hiding course news
+ *
+ * @package    block_course_overview_campus
+ * @copyright  2013 Alexander Bias, Ulm University <alexander.bias@uni-ulm.de>
+ * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+
+define(['jquery'], function($) {
+    "use strict";
+
+    /**
+     * Function to hide news from a course.
+     */
+    function hideNews(e) {
+        // Prevent the event from refreshing the page.
+        if (e !== undefined) {
+            e.preventDefault();
+        }
+
+        $('#coc-coursenews-' + e.data.course).addClass('coc-hidden');
+        $('#coc-hidenewsicon-' + e.data.course).addClass('coc-hidden');
+        $('#coc-shownewsicon-' + e.data.course).removeClass('coc-hidden');
+
+        // Store the course news status (Uses AJAX to save to the database).
+        M.util.set_user_preference('block_course_overview_campus-hidenews-' + e.data.course, 1);
+    }
+
+    /**
+     * Function to show news for a course.
+     */
+    function showNews(e) {
+        // Prevent the event from refreshing the page.
+        if (e !== undefined) {
+            e.preventDefault();
+        }
+
+        $('#coc-coursenews-' + e.data.course).removeClass('coc-hidden');
+        $('#coc-hidenewsicon-' + e.data.course).removeClass('coc-hidden');
+        $('#coc-shownewsicon-' + e.data.course).addClass('coc-hidden');
+
+        // Store the course news status (Uses AJAX to save to the database).
+        M.util.set_user_preference('block_course_overview_campus-hidenews-' + e.data.course, 0);
+    }
+
+    return {
+        initHideNews: function(params) {
+            var i;
+            var courses = params.courses.split(" ");
+            for (i = 0; i < courses.length; i++) {
+                // Add change listener to hide course news widgets.
+                $('#coc-hidenewsicon-' + courses[i]).on('click', {course: courses[i]}, hideNews);
+                // Add change listener to show course news widgets.
+                $('#coc-shownewsicon-' + courses[i]).on('click', {course: courses[i]}, showNews);
+            }
+        }
+    };
+});
-- 
GitLab