From cbfa5c9ea0e9bcb6c4f67e117a718e960d19dbbd Mon Sep 17 00:00:00 2001 From: PMKuipers Date: Wed, 16 Aug 2023 23:38:46 +0200 Subject: [PATCH] Bugfixes 2 --- amd/build/treestudyplan-components.min.js | 2 +- amd/build/treestudyplan-components.min.js.map | 2 +- amd/src/treestudyplan-components.js | 2 +- version.php | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/amd/build/treestudyplan-components.min.js b/amd/build/treestudyplan-components.min.js index 9fce4b9..fad523c 100644 --- a/amd/build/treestudyplan-components.min.js +++ b/amd/build/treestudyplan-components.min.js @@ -1,3 +1,3 @@ -define("local_treestudyplan/treestudyplan-components",["exports","./string-helper"],(function(_exports,_stringHelper){Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0;var _default={studyplanTiming:function(a){var now=(new Date).getTime(),timing="future";return new Date(a.startdate).getTime()new Date(a.enddate).getTime()?"past":"present"),timing},install:function(Vue){var strings=(0,_stringHelper.load_strings)({studyplancard:{open:"open",noenddate:"noenddate",idnumber:"studyplan_idnumber"}}),ItemEventBus=new Vue;Vue.component("s-studyplan-card",{props:{value:{type:Object},open:{type:Boolean}},data:function(){return{text:strings.studyplancard}},computed:{timing:function(){var now=(new Date).getTime(),startdate=new Date(this.value.pages[0].startdate).getTime(),enddate=new Date(this.value.pages[0].enddate).getTime(),timing="future";return startdateenddate?"past":"present"),timing},startdate:function(){return(0,_stringHelper.format_date)(this.value.pages[0].startdate)},enddate:function(){return this.value.enddate?(0,_stringHelper.format_date)(this.value.pages[0].enddate):this.text.noenddate}},methods:{onOpenClick:function(e){this.$emit("open",e)}},template:"\n \n \n \n {{value.name}}\n \n \n \n
{{ text.idnumber}}: {{ value.idnumber }}
\n
{{ value.description }}
\n \n \n
\n "}),Vue.component("s-studyline-header-heading",{props:{},data:function(){return{layerHeights:{}}},created:function(){ItemEventBus.$on("headerHeightChange",this.onHeaderHeightChange)},computed:{},methods:{onHeaderHeightChange:function(newheight){this.$refs.main&&(this.$refs.main.style.height="".concat(newheight,"px"))}},template:'\n
\n '}),Vue.component("s-studyline-header-period",{props:{value:{type:Object}},mounted:function(){var self=this;1==self.value.period&&(self.resizeListener=new ResizeObserver((function(){if(self.$refs.main){var size=self.$refs.main.getBoundingClientRect();ItemEventBus.$emit("headerHeightChange",size.height)}})).observe(self.$refs.main))},unmounted:function(){this.resizeListener&&this.resizeListener.disconnect()},computed:{startdate:function(){return(0,_stringHelper.format_date)(this.value.startdate)},enddate:function(){return(0,_stringHelper.format_date)(this.value.enddate)},current:function(){if(this.value&&this.value.startdate&&this.value.enddate){var now=new Date,pstart=new Date(this.value.startdate),pend=new Date(this.value.enddate);return now>=pstart&&now

{{ value.shortname }}\n {{ value.fullname }}
\n \n {{ startdate }} - {{ enddate }}\n \n \n

\n {{ startdate }} - {{ enddate }}\n

\n \n '})}};return _exports.default=_default,_exports.default})); +define("local_treestudyplan/treestudyplan-components",["exports","./string-helper"],(function(_exports,_stringHelper){Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0;var _default={studyplanTiming:function(a){var now=(new Date).getTime(),timing="future";return new Date(a.startdate).getTime()new Date(a.enddate).getTime()?"past":"present"),timing},install:function(Vue){var strings=(0,_stringHelper.load_strings)({studyplancard:{open:"open",noenddate:"noenddate",idnumber:"studyplan_idnumber"}}),ItemEventBus=new Vue;Vue.component("s-studyplan-card",{props:{value:{type:Object},open:{type:Boolean}},data:function(){return{text:strings.studyplancard}},computed:{timing:function(){var now=(new Date).getTime(),startdate=new Date(this.value.pages[0].startdate).getTime(),enddate=new Date(this.value.pages[0].enddate).getTime(),timing="future";return startdateenddate?"past":"present"),timing},startdate:function(){return(0,_stringHelper.format_date)(this.value.pages[0].startdate)},enddate:function(){return this.value.pages[0].enddate?(0,_stringHelper.format_date)(this.value.pages[0].enddate):this.text.noenddate}},methods:{onOpenClick:function(e){this.$emit("open",e)}},template:"\n \n \n \n {{value.name}}\n \n \n \n
{{ text.idnumber}}: {{ value.idnumber }}
\n
{{ value.description }}
\n \n \n
\n "}),Vue.component("s-studyline-header-heading",{props:{},data:function(){return{layerHeights:{}}},created:function(){ItemEventBus.$on("headerHeightChange",this.onHeaderHeightChange)},computed:{},methods:{onHeaderHeightChange:function(newheight){this.$refs.main&&(this.$refs.main.style.height="".concat(newheight,"px"))}},template:'\n
\n '}),Vue.component("s-studyline-header-period",{props:{value:{type:Object}},mounted:function(){var self=this;1==self.value.period&&(self.resizeListener=new ResizeObserver((function(){if(self.$refs.main){var size=self.$refs.main.getBoundingClientRect();ItemEventBus.$emit("headerHeightChange",size.height)}})).observe(self.$refs.main))},unmounted:function(){this.resizeListener&&this.resizeListener.disconnect()},computed:{startdate:function(){return(0,_stringHelper.format_date)(this.value.startdate)},enddate:function(){return(0,_stringHelper.format_date)(this.value.enddate)},current:function(){if(this.value&&this.value.startdate&&this.value.enddate){var now=new Date,pstart=new Date(this.value.startdate),pend=new Date(this.value.enddate);return now>=pstart&&now

{{ value.shortname }}\n {{ value.fullname }}
\n \n {{ startdate }} - {{ enddate }}\n \n \n

\n {{ startdate }} - {{ enddate }}\n

\n \n '})}};return _exports.default=_default,_exports.default})); //# sourceMappingURL=treestudyplan-components.min.js.map \ No newline at end of file diff --git a/amd/build/treestudyplan-components.min.js.map b/amd/build/treestudyplan-components.min.js.map index bcc76fe..cfb5918 100644 --- a/amd/build/treestudyplan-components.min.js.map +++ b/amd/build/treestudyplan-components.min.js.map @@ -1 +1 @@ -{"version":3,"file":"treestudyplan-components.min.js","sources":["../src/treestudyplan-components.js"],"sourcesContent":["/*eslint no-var: \"error\"*/\n/*eslint no-console: \"off\"*/\n/*eslint-disable no-trailing-spaces */\n/*eslint-env es6*/\n// Put this file in path/to/plugin/amd/src\n\nimport {load_strings, format_date} from './string-helper';\n\nexport default {\n studyplanTiming(a) {\n const now = new Date().getTime();\n let timing = 'future';\n if(new Date(a.startdate).getTime() < now){\n if(a.enddate && now > new Date(a.enddate).getTime()) {\n timing = 'past';\n } else {\n timing = 'present';\n }\n }\n return timing;\n },\n\n install(Vue/*,options*/){\n let strings = load_strings({\n studyplancard: {\n open: \"open\",\n noenddate: \"noenddate\",\n idnumber: \"studyplan_idnumber\"\n }\n });\n // Create new eventbus for interaction between item components\n const ItemEventBus = new Vue();\n\n Vue.component('s-studyplan-card', {\n props: {\n value: {\n type: Object,\n },\n open: {\n type: Boolean\n }\n },\n data() {\n return {\n text: strings.studyplancard\n };\n },\n computed: {\n timing(){\n const now = new Date().getTime();\n const startdate = new Date(this.value.pages[0].startdate).getTime();\n const enddate = new Date(this.value.pages[0].enddate).getTime();\n let timing = 'future';\n if(startdate < now){\n if(this.value.pages[0].enddate && now > enddate) {\n timing = 'past';\n } else {\n timing = 'present';\n }\n }\n return timing;\n },\n startdate(){\n return format_date(this.value.pages[0].startdate);\n },\n enddate(){\n if(this.value.enddate){\n return format_date(this.value.pages[0].enddate);\n } \n else {\n return this.text.noenddate;\n }\n }\n },\n methods: {\n onOpenClick(e) {\n this.$emit('open',e);\n }\n },\n template: `\n \n \n \n {{value.name}}\n \n \n \n
{{ text.idnumber}}: {{ value.idnumber }}
\n
{{ value.description }}
\n \n \n
\n `,\n });\n\n /*\n * S-STUDYLINE-HEADER-HEADING\n * The only reasing this is not a simple empty div, is the fact that the header height\n * needs to match that of the period headers\n */\n Vue.component('s-studyline-header-heading', {\n props: {\n\n },\n data() {\n return {\n layerHeights: {}\n };\n },\n created() {\n // Listener for the signal that a new connection was made and needs to be drawn\n // Sent by the incoming item - By convention, outgoing items are responsible for drawing the lines\n ItemEventBus.$on('headerHeightChange', this.onHeaderHeightChange);\n },\n computed: {\n \n },\n methods: {\n onHeaderHeightChange(newheight){\n if(this.$refs.main){\n this.$refs.main.style.height = `${newheight}px`;\n }\n }\n },\n template: `\n
\n `,\n });\n\n Vue.component('s-studyline-header-period', {\n props: {\n value: {\n type: Object, // dict with layer as index\n },\n },\n mounted() {\n const self=this;\n if(self.value.period == 1){\n self.resizeListener = new ResizeObserver(() => {\n if(self.$refs.main){\n const size = self.$refs.main.getBoundingClientRect();\n ItemEventBus.$emit('headerHeightChange', size.height);\n }\n }).observe(self.$refs.main);\n }\n },\n unmounted() {\n if(this.resizeListener) {\n this.resizeListener.disconnect();\n }\n },\n computed: {\n startdate(){\n return format_date(this.value.startdate);\n },\n enddate(){\n return format_date(this.value.enddate);\n },\n current(){\n if( this.value && this.value.startdate && this.value.enddate){\n const now = new Date();\n const pstart = new Date(this.value.startdate);\n const pend = new Date(this.value.enddate);\n return (now >= pstart && now < pend);\n }\n else {\n return false;\n }\n }\n\n },\n data() {\n return {\n };\n },\n template: `\n

{{ value.shortname }}\n {{ value.fullname }}
\n \n {{ startdate }} - {{ enddate }}\n \n \n

\n {{ startdate }} - {{ enddate }}\n

\n
\n `,\n });\n\n\n }\n};"],"names":["studyplanTiming","a","now","Date","getTime","timing","startdate","enddate","install","Vue","strings","studyplancard","open","noenddate","idnumber","ItemEventBus","component","props","value","type","Object","Boolean","data","text","computed","this","pages","methods","onOpenClick","e","$emit","template","layerHeights","created","$on","onHeaderHeightChange","newheight","$refs","main","style","height","mounted","self","period","resizeListener","ResizeObserver","size","getBoundingClientRect","observe","unmounted","disconnect","current","pstart","pend"],"mappings":"mNAQe,CACXA,yBAAgBC,OACNC,KAAM,IAAIC,MAAOC,UACnBC,OAAS,gBACV,IAAIF,KAAKF,EAAEK,WAAWF,UAAYF,MAE7BG,OADDJ,EAAEM,SAAWL,IAAM,IAAIC,KAAKF,EAAEM,SAASH,UAC7B,OAEA,WAGVC,QAGXG,iBAAQC,SACAC,SAAU,8BAAa,CACvBC,cAAe,CACXC,KAAM,OACNC,UAAW,YACXC,SAAU,wBAIZC,aAAe,IAAIN,IAEzBA,IAAIO,UAAU,mBAAoB,CAC9BC,MAAO,CACHC,MAAO,CACHC,KAAMC,QAEVR,KAAM,CACFO,KAAME,UAGdC,sBACW,CACHC,KAAMb,QAAQC,gBAGtBa,SAAU,CACNnB,sBACUH,KAAM,IAAIC,MAAOC,UACjBE,UAAY,IAAIH,KAAKsB,KAAKP,MAAMQ,MAAM,GAAGpB,WAAWF,UACpDG,QAAU,IAAIJ,KAAKsB,KAAKP,MAAMQ,MAAM,GAAGnB,SAASH,UAClDC,OAAS,gBACVC,UAAYJ,MAEPG,OADDoB,KAAKP,MAAMQ,MAAM,GAAGnB,SAAWL,IAAMK,QAC3B,OAEA,WAGVF,QAEXC,4BACW,6BAAYmB,KAAKP,MAAMQ,MAAM,GAAGpB,YAE3CC,0BACOkB,KAAKP,MAAMX,SACH,6BAAYkB,KAAKP,MAAMQ,MAAM,GAAGnB,SAGhCkB,KAAKF,KAAKV,YAI7Bc,QAAS,CACLC,qBAAYC,QACHC,MAAM,OAAOD,KAG1BE,qtCA8BJtB,IAAIO,UAAU,6BAA8B,CACxCC,MAAO,GAGPK,sBACW,CACHU,aAAc,KAGtBC,mBAGIlB,aAAamB,IAAI,qBAAsBT,KAAKU,uBAEhDX,SAAU,GAGVG,QAAS,CACLQ,8BAAqBC,WACdX,KAAKY,MAAMC,YACLD,MAAMC,KAAKC,MAAMC,iBAAYJ,mBAI9CL,mGAKJtB,IAAIO,UAAU,4BAA6B,CACvCC,MAAO,CACHC,MAAO,CACHC,KAAMC,SAGdqB,uBACUC,KAAKjB,KACa,GAArBiB,KAAKxB,MAAMyB,SACVD,KAAKE,eAAiB,IAAIC,gBAAe,cAClCH,KAAKL,MAAMC,KAAK,KACTQ,KAAOJ,KAAKL,MAAMC,KAAKS,wBAC7BhC,aAAae,MAAM,qBAAsBgB,KAAKN,YAEnDQ,QAAQN,KAAKL,MAAMC,QAG9BW,qBACOxB,KAAKmB,qBACCA,eAAeM,cAG5B1B,SAAU,CACNlB,4BACW,6BAAYmB,KAAKP,MAAMZ,YAElCC,0BACW,6BAAYkB,KAAKP,MAAMX,UAElC4C,sBACQ1B,KAAKP,OAASO,KAAKP,MAAMZ,WAAamB,KAAKP,MAAMX,QAAQ,KACnDL,IAAM,IAAIC,KACViD,OAAS,IAAIjD,KAAKsB,KAAKP,MAAMZ,WAC7B+C,KAAO,IAAIlD,KAAKsB,KAAKP,MAAMX,gBACzBL,KAAOkD,QAAUlD,IAAMmD,YAGxB,IAKnB/B,sBACW,IAGXS"} \ No newline at end of file +{"version":3,"file":"treestudyplan-components.min.js","sources":["../src/treestudyplan-components.js"],"sourcesContent":["/*eslint no-var: \"error\"*/\n/*eslint no-console: \"off\"*/\n/*eslint-disable no-trailing-spaces */\n/*eslint-env es6*/\n// Put this file in path/to/plugin/amd/src\n\nimport {load_strings, format_date} from './string-helper';\n\nexport default {\n studyplanTiming(a) {\n const now = new Date().getTime();\n let timing = 'future';\n if(new Date(a.startdate).getTime() < now){\n if(a.enddate && now > new Date(a.enddate).getTime()) {\n timing = 'past';\n } else {\n timing = 'present';\n }\n }\n return timing;\n },\n\n install(Vue/*,options*/){\n let strings = load_strings({\n studyplancard: {\n open: \"open\",\n noenddate: \"noenddate\",\n idnumber: \"studyplan_idnumber\"\n }\n });\n // Create new eventbus for interaction between item components\n const ItemEventBus = new Vue();\n\n Vue.component('s-studyplan-card', {\n props: {\n value: {\n type: Object,\n },\n open: {\n type: Boolean\n }\n },\n data() {\n return {\n text: strings.studyplancard\n };\n },\n computed: {\n timing(){\n const now = new Date().getTime();\n const startdate = new Date(this.value.pages[0].startdate).getTime();\n const enddate = new Date(this.value.pages[0].enddate).getTime();\n let timing = 'future';\n if(startdate < now){\n if(this.value.pages[0].enddate && now > enddate) {\n timing = 'past';\n } else {\n timing = 'present';\n }\n }\n return timing;\n },\n startdate(){\n return format_date(this.value.pages[0].startdate);\n },\n enddate(){\n if(this.value.pages[0].enddate){\n return format_date(this.value.pages[0].enddate);\n } \n else {\n return this.text.noenddate;\n }\n }\n },\n methods: {\n onOpenClick(e) {\n this.$emit('open',e);\n }\n },\n template: `\n \n \n \n {{value.name}}\n \n \n \n
{{ text.idnumber}}: {{ value.idnumber }}
\n
{{ value.description }}
\n \n \n
\n `,\n });\n\n /*\n * S-STUDYLINE-HEADER-HEADING\n * The only reasing this is not a simple empty div, is the fact that the header height\n * needs to match that of the period headers\n */\n Vue.component('s-studyline-header-heading', {\n props: {\n\n },\n data() {\n return {\n layerHeights: {}\n };\n },\n created() {\n // Listener for the signal that a new connection was made and needs to be drawn\n // Sent by the incoming item - By convention, outgoing items are responsible for drawing the lines\n ItemEventBus.$on('headerHeightChange', this.onHeaderHeightChange);\n },\n computed: {\n \n },\n methods: {\n onHeaderHeightChange(newheight){\n if(this.$refs.main){\n this.$refs.main.style.height = `${newheight}px`;\n }\n }\n },\n template: `\n
\n `,\n });\n\n Vue.component('s-studyline-header-period', {\n props: {\n value: {\n type: Object, // dict with layer as index\n },\n },\n mounted() {\n const self=this;\n if(self.value.period == 1){\n self.resizeListener = new ResizeObserver(() => {\n if(self.$refs.main){\n const size = self.$refs.main.getBoundingClientRect();\n ItemEventBus.$emit('headerHeightChange', size.height);\n }\n }).observe(self.$refs.main);\n }\n },\n unmounted() {\n if(this.resizeListener) {\n this.resizeListener.disconnect();\n }\n },\n computed: {\n startdate(){\n return format_date(this.value.startdate);\n },\n enddate(){\n return format_date(this.value.enddate);\n },\n current(){\n if( this.value && this.value.startdate && this.value.enddate){\n const now = new Date();\n const pstart = new Date(this.value.startdate);\n const pend = new Date(this.value.enddate);\n return (now >= pstart && now < pend);\n }\n else {\n return false;\n }\n }\n\n },\n data() {\n return {\n };\n },\n template: `\n

{{ value.shortname }}\n {{ value.fullname }}
\n \n {{ startdate }} - {{ enddate }}\n \n \n

\n {{ startdate }} - {{ enddate }}\n

\n
\n `,\n });\n\n\n }\n};"],"names":["studyplanTiming","a","now","Date","getTime","timing","startdate","enddate","install","Vue","strings","studyplancard","open","noenddate","idnumber","ItemEventBus","component","props","value","type","Object","Boolean","data","text","computed","this","pages","methods","onOpenClick","e","$emit","template","layerHeights","created","$on","onHeaderHeightChange","newheight","$refs","main","style","height","mounted","self","period","resizeListener","ResizeObserver","size","getBoundingClientRect","observe","unmounted","disconnect","current","pstart","pend"],"mappings":"mNAQe,CACXA,yBAAgBC,OACNC,KAAM,IAAIC,MAAOC,UACnBC,OAAS,gBACV,IAAIF,KAAKF,EAAEK,WAAWF,UAAYF,MAE7BG,OADDJ,EAAEM,SAAWL,IAAM,IAAIC,KAAKF,EAAEM,SAASH,UAC7B,OAEA,WAGVC,QAGXG,iBAAQC,SACAC,SAAU,8BAAa,CACvBC,cAAe,CACXC,KAAM,OACNC,UAAW,YACXC,SAAU,wBAIZC,aAAe,IAAIN,IAEzBA,IAAIO,UAAU,mBAAoB,CAC9BC,MAAO,CACHC,MAAO,CACHC,KAAMC,QAEVR,KAAM,CACFO,KAAME,UAGdC,sBACW,CACHC,KAAMb,QAAQC,gBAGtBa,SAAU,CACNnB,sBACUH,KAAM,IAAIC,MAAOC,UACjBE,UAAY,IAAIH,KAAKsB,KAAKP,MAAMQ,MAAM,GAAGpB,WAAWF,UACpDG,QAAU,IAAIJ,KAAKsB,KAAKP,MAAMQ,MAAM,GAAGnB,SAASH,UAClDC,OAAS,gBACVC,UAAYJ,MAEPG,OADDoB,KAAKP,MAAMQ,MAAM,GAAGnB,SAAWL,IAAMK,QAC3B,OAEA,WAGVF,QAEXC,4BACW,6BAAYmB,KAAKP,MAAMQ,MAAM,GAAGpB,YAE3CC,0BACOkB,KAAKP,MAAMQ,MAAM,GAAGnB,SACZ,6BAAYkB,KAAKP,MAAMQ,MAAM,GAAGnB,SAGhCkB,KAAKF,KAAKV,YAI7Bc,QAAS,CACLC,qBAAYC,QACHC,MAAM,OAAOD,KAG1BE,qtCA8BJtB,IAAIO,UAAU,6BAA8B,CACxCC,MAAO,GAGPK,sBACW,CACHU,aAAc,KAGtBC,mBAGIlB,aAAamB,IAAI,qBAAsBT,KAAKU,uBAEhDX,SAAU,GAGVG,QAAS,CACLQ,8BAAqBC,WACdX,KAAKY,MAAMC,YACLD,MAAMC,KAAKC,MAAMC,iBAAYJ,mBAI9CL,mGAKJtB,IAAIO,UAAU,4BAA6B,CACvCC,MAAO,CACHC,MAAO,CACHC,KAAMC,SAGdqB,uBACUC,KAAKjB,KACa,GAArBiB,KAAKxB,MAAMyB,SACVD,KAAKE,eAAiB,IAAIC,gBAAe,cAClCH,KAAKL,MAAMC,KAAK,KACTQ,KAAOJ,KAAKL,MAAMC,KAAKS,wBAC7BhC,aAAae,MAAM,qBAAsBgB,KAAKN,YAEnDQ,QAAQN,KAAKL,MAAMC,QAG9BW,qBACOxB,KAAKmB,qBACCA,eAAeM,cAG5B1B,SAAU,CACNlB,4BACW,6BAAYmB,KAAKP,MAAMZ,YAElCC,0BACW,6BAAYkB,KAAKP,MAAMX,UAElC4C,sBACQ1B,KAAKP,OAASO,KAAKP,MAAMZ,WAAamB,KAAKP,MAAMX,QAAQ,KACnDL,IAAM,IAAIC,KACViD,OAAS,IAAIjD,KAAKsB,KAAKP,MAAMZ,WAC7B+C,KAAO,IAAIlD,KAAKsB,KAAKP,MAAMX,gBACzBL,KAAOkD,QAAUlD,IAAMmD,YAGxB,IAKnB/B,sBACW,IAGXS"} \ No newline at end of file diff --git a/amd/src/treestudyplan-components.js b/amd/src/treestudyplan-components.js index fc59c52..26e1edc 100644 --- a/amd/src/treestudyplan-components.js +++ b/amd/src/treestudyplan-components.js @@ -64,7 +64,7 @@ export default { return format_date(this.value.pages[0].startdate); }, enddate(){ - if(this.value.enddate){ + if(this.value.pages[0].enddate){ return format_date(this.value.pages[0].enddate); } else { diff --git a/version.php b/version.php index ab1f860..260ac47 100644 --- a/version.php +++ b/version.php @@ -1,6 +1,6 @@ component = 'local_treestudyplan'; // Recommended since 2.0.2 (MDL-26035). Required since 3.0 (MDL-48494) -$plugin->version = 2023081602; // YYYYMMDDHH (year, month, day, iteration) +$plugin->version = 2023081603; // YYYYMMDDHH (year, month, day, iteration) $plugin->requires = 2021051700; // YYYYMMDDHH (This is the release version for Moodle 3.11) $plugin->dependencies = [