diff --git a/amd/src/block_mytreestudyplan.js b/amd/src/block_mytreestudyplan.js index 2b779e4..ec14ed1 100644 --- a/amd/src/block_mytreestudyplan.js +++ b/amd/src/block_mytreestudyplan.js @@ -43,64 +43,65 @@ let strings = load_strings({ * @param {Object} arg Arguments passed */ export function init(type="myreport",arg) { - // Make sure on window resize, the line wrappers are repositioned, to fix scrolling issues - window.addEventListener('resize',fixLineWrappers); - let app = new Vue({ - el: '#block_mytreestudyplan', - data: { - "studyplans": [], - }, - mounted() { - let call_method; - let call_args; - if(type == "teacher"){ - call_method = 'local_treestudyplan_get_teacher_studyplan'; - call_args = {}; - } - else if(type == "teaching"){ - call_method = 'local_treestudyplan_get_teaching_studyplans'; - call_args = {}; - } - else{ - call_method = 'local_treestudyplan_get_own_studyplan'; - call_args = {}; - } - call([{ - methodname: call_method, - args: call_args - }])[0].done(function(response){ - debug.info("Studyplans:",response); - const timingval = { future: 0, present: 1, past: 2, }; - response.sort((a,b) => { - const timinga = TSComponents.studyplanTiming(a); - const timingb = TSComponents.studyplanTiming(b); + // Save time by only starting up the Vue app if the required block element is present + const blockelement = document.getElementById('block_mytreestudyplan'); + if(blockelement){ + const app = new Vue({ + el: '#block_mytreestudyplan', + data: { + "studyplans": [], + }, + mounted() { + let call_method; + let call_args; + if(type == "teacher"){ + call_method = 'local_treestudyplan_get_teacher_studyplan'; + call_args = {}; + } + else if(type == "teaching"){ + call_method = 'local_treestudyplan_get_teaching_studyplans'; + call_args = {}; + } + else{ + call_method = 'local_treestudyplan_get_own_studyplan'; + call_args = {}; + } + call([{ + methodname: call_method, + args: call_args + }])[0].done(function(response){ + debug.info("Studyplans:",response); + const timingval = { future: 0, present: 1, past: 2, }; + response.sort((a,b) => { + const timinga = TSComponents.studyplanTiming(a); + const timingb = TSComponents.studyplanTiming(b); - let t = timingval[timinga] - timingval[timingb]; - if(t == 0){ - // sort by start date if timing is equal - t = new Date(b.startdate).getTime() - new Date(a.startdate).getTime(); - - if (t == 0) { - // sort by name if timing is equal - t = a.name.localeCompare(b.name); + let t = timingval[timinga] - timingval[timingb]; + if(t == 0){ + // sort by start date if timing is equal + t = new Date(b.startdate).getTime() - new Date(a.startdate).getTime(); + + if (t == 0) { + // sort by name if timing is equal + t = a.name.localeCompare(b.name); + } } - } - return t; - }); - app.studyplans = ProcessStudyplans(response); - }).fail(notification.exception); - - }, - created() { + return t; + }); + app.studyplans = ProcessStudyplans(response); + }).fail(notification.exception); - }, - updated() { - }, - methods: { - - }, - }); - + }, + created() { + + }, + updated() { + }, + methods: { + + }, + }); + } } diff --git a/version.php b/version.php index 59ae9b9..88c4a66 100644 --- a/version.php +++ b/version.php @@ -1,6 +1,6 @@ component = 'block_mytreestudyplan'; // Recommended since 2.0.2 (MDL-26035). Required since 3.0 (MDL-48494) -$plugin->version = 2023081600; // YYYYMMDDHH (year, month, day, iteration) +$plugin->version = 2023081800; // YYYYMMDDHH (year, month, day, iteration) $plugin->requires = 2021051700; // YYYYMMDDHH (This is the release version for Moodle 3.11) $plugin->dependencies = [