41 lines
866 B
Vue
41 lines
866 B
Vue
|
<template>
|
||
|
<div class="content has-text-centered">
|
||
|
<TaskOverview
|
||
|
:start-date="startDate"
|
||
|
:end-date="endDate"
|
||
|
/>
|
||
|
</div>
|
||
|
</template>
|
||
|
|
||
|
<script>
|
||
|
export default {
|
||
|
name: "ShowTasksInRange",
|
||
|
data() {
|
||
|
return {
|
||
|
startDate: new Date(this.$route.params.startDateUnix),
|
||
|
endDate: new Date(this.$route.params.endDateUnix),
|
||
|
}
|
||
|
},
|
||
|
watch: {
|
||
|
// call again the method if the route changes
|
||
|
'$route': 'setDates'
|
||
|
},
|
||
|
created() {
|
||
|
this.setDates();
|
||
|
},
|
||
|
methods: {
|
||
|
setDates() {
|
||
|
switch (this.$route.params.type) {
|
||
|
case 'week':
|
||
|
this.startDate = new Date();
|
||
|
this.endDate = new Date((new Date()).getTime() + 7 * 24 * 60 * 60 * 1000);
|
||
|
break;
|
||
|
case 'month':
|
||
|
this.startDate = new Date();
|
||
|
this.endDate = new Date((new Date()).setMonth((new Date()).getMonth() + 1));
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
</script>
|