Skip to content
Snippets Groups Projects
Commit cfa5493a authored by Alexander Bias's avatar Alexander Bias
Browse files

Make the code slightly more verbose

parent 66670dfb
Branches
Tags
No related merge requests found
define(["jquery"],function(a){"use strict";function b(b){void 0!==b&&b.preventDefault();var c=a("#coc-filterterm").val();"all"===c?a(".termdiv").removeClass("coc-hidden"):(a(".termdiv").addClass("coc-hidden"),a(".coc-term-"+c).removeClass("coc-hidden")),M.util.set_user_preference("block_course_overview_campus-selectedterm",c)}function c(b){void 0!==b&&b.preventDefault();var c=a("#coc-filterteacher").val();"all"===c?a(".teacherdiv").removeClass("coc-hidden"):(a(".teacherdiv").addClass("coc-hidden"),a(".coc-teacher-"+c).removeClass("coc-hidden")),M.util.set_user_preference("block_course_overview_campus-selectedteacher",c)}function d(b){void 0!==b&&b.preventDefault();var c=a("#coc-filtercategory").val();"all"===c?a(".categorydiv").removeClass("coc-hidden"):(a(".categorydiv").addClass("coc-hidden"),a(".coc-category-"+c).removeClass("coc-hidden")),M.util.set_user_preference("block_course_overview_campus-selectedcategory",c)}function e(b){void 0!==b&&b.preventDefault();var c=a("#coc-filtertoplevelcategory").val();"all"===c?a(".toplevelcategorydiv").removeClass("coc-hidden"):(a(".toplevelcategorydiv").addClass("coc-hidden"),a(".coc-toplevelcategory-"+c).removeClass("coc-hidden")),M.util.set_user_preference("block_course_overview_campus-selectedtoplevelcategory",c)}function f(f){var g,h,i,j;for(g in f)if(f.hasOwnProperty(g)&&(h=f[g],i=a("#coc-filter"+g.toLowerCase()),i.length&&(j=i.val(),j!==h)))switch(g){case"Term":b();break;case"Teacher":c();break;case"Category":d();break;case"TopLevelCategory":e()}}return{initFilter:function(g){a("#coc-filterterm").on("change",b),a("#coc-filterteacher").on("change",c),a("#coc-filtercategory").on("change",d),a("#coc-filtertoplevelcategory").on("change",e),f(g.initialsettings)}}}); define(["jquery"],function(a){"use strict";function b(b){void 0!==b&&b.preventDefault();var c=a("#coc-filterterm").val();"all"===c?a(".termdiv").removeClass("coc-hidden"):(a(".termdiv").addClass("coc-hidden"),a(".coc-term-"+c).removeClass("coc-hidden")),M.util.set_user_preference("block_course_overview_campus-selectedterm",c)}function c(b){void 0!==b&&b.preventDefault();var c=a("#coc-filterteacher").val();"all"===c?a(".teacherdiv").removeClass("coc-hidden"):(a(".teacherdiv").addClass("coc-hidden"),a(".coc-teacher-"+c).removeClass("coc-hidden")),M.util.set_user_preference("block_course_overview_campus-selectedteacher",c)}function d(b){void 0!==b&&b.preventDefault();var c=a("#coc-filtercategory").val();"all"===c?a(".categorydiv").removeClass("coc-hidden"):(a(".categorydiv").addClass("coc-hidden"),a(".coc-category-"+c).removeClass("coc-hidden")),M.util.set_user_preference("block_course_overview_campus-selectedcategory",c)}function e(b){void 0!==b&&b.preventDefault();var c=a("#coc-filtertoplevelcategory").val();"all"===c?a(".toplevelcategorydiv").removeClass("coc-hidden"):(a(".toplevelcategorydiv").addClass("coc-hidden"),a(".coc-toplevelcategory-"+c).removeClass("coc-hidden")),M.util.set_user_preference("block_course_overview_campus-selectedtoplevelcategory",c)}function f(f){var g,h,i,j;for(g in f)if(f.hasOwnProperty(g)&&(h=f[g],i=a("#coc-filter"+g),i.length&&(j=i.val(),j!==h)))switch(g){case"term":b();break;case"teacher":c();break;case"category":d();break;case"toplevelcategory":e()}}return{initFilter:function(g){a("#coc-filterterm").on("change",b),a("#coc-filterteacher").on("change",c),a("#coc-filtercategory").on("change",d),a("#coc-filtertoplevelcategory").on("change",e),f(g.initialsettings)}}});
\ No newline at end of file \ No newline at end of file
...@@ -85,25 +85,25 @@ define(['jquery'], function ($) { ...@@ -85,25 +85,25 @@ define(['jquery'], function ($) {
} }
function applyAllFilters(initialSettings) { function applyAllFilters(initialSettings) {
var setting, value, $el, elVal; var setting, value, $element, elementValue;
for (setting in initialSettings) { for (setting in initialSettings) {
if (initialSettings.hasOwnProperty(setting)) { if (initialSettings.hasOwnProperty(setting)) {
value = initialSettings[setting]; value = initialSettings[setting];
$el = $('#coc-filter' + setting.toLowerCase()); $element = $('#coc-filter' + setting);
if ($el.length) { if ($element.length) {
elVal = $el.val(); elementValue = $element.val();
if (elVal !== value) { if (elementValue !== value) {
switch (setting) { switch (setting) {
case 'Term': case 'term':
filterTerm(); filterTerm();
break; break;
case 'Teacher': case 'teacher':
filterTeacher(); filterTeacher();
break; break;
case 'Category': case 'category':
filterCategory(); filterCategory();
break; break;
case 'TopLevelCategory': case 'toplevelcategory':
filterTopLevelCategory(); filterTopLevelCategory();
break; break;
} }
...@@ -114,7 +114,8 @@ define(['jquery'], function ($) { ...@@ -114,7 +114,8 @@ define(['jquery'], function ($) {
} }
return { return {
initFilter: function (opts) { initFilter: function (options) {
// Add change listener to filter widgets.
$('#coc-filterterm').on('change', filterTerm); $('#coc-filterterm').on('change', filterTerm);
$('#coc-filterteacher').on('change', filterTeacher); $('#coc-filterteacher').on('change', filterTeacher);
$('#coc-filtercategory').on('change', filterCategory); $('#coc-filtercategory').on('change', filterCategory);
...@@ -122,7 +123,7 @@ define(['jquery'], function ($) { ...@@ -122,7 +123,7 @@ define(['jquery'], function ($) {
// Make sure any initial filter settings are applied (may be needed if the user // Make sure any initial filter settings are applied (may be needed if the user
// has used the browser 'back' button). // has used the browser 'back' button).
applyAllFilters(opts.initialsettings); applyAllFilters(options.initialsettings);
} }
}; };
}); });
...@@ -1357,16 +1357,16 @@ class block_course_overview_campus extends block_base { ...@@ -1357,16 +1357,16 @@ class block_course_overview_campus extends block_base {
} }
// Include JS for filtering courses with AJAX // Include JS for filtering courses with AJAX
$options = [ $js_filteroptions = [
'initialsettings' => [ 'initialsettings' => [
'Term' => $selectedterm, 'term' => $selectedterm,
'Teacher' => $selectedteacher, 'teacher' => $selectedteacher,
'Category' => $selectedcategory, 'category' => $selectedcategory,
'TopLevelCategory' => $selectedtoplevelcategory, 'toplevelcategory' => $selectedtoplevelcategory,
], ],
]; ]; // Passing these options to the JS code is necessary for filtering the course list again when using browser 'back' button
if ($coc_config->teachercoursefilter == true || $coc_config->termcoursefilter == true || $coc_config->categorycoursefilter == true || $coc_config->toplevelcategorycoursefilter == true) { if ($coc_config->teachercoursefilter == true || $coc_config->termcoursefilter == true || $coc_config->categorycoursefilter == true || $coc_config->toplevelcategorycoursefilter == true) {
$PAGE->requires->js_call_amd('block_course_overview_campus/filter', 'initFilter', [$options]); $PAGE->requires->js_call_amd('block_course_overview_campus/filter', 'initFilter', [$js_filteroptions]);
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment