[tasks overview] praca s datami

This commit is contained in:
Filip Kaluža committed 2022-12-02 17:24:59 +01:00
1 parent 7a4aed7919
commit 2150f464cd
5 files changed
+119 -104

No files matched your search

@@ -4,21 +4,21 @@
:hide-view-selector="true"
:hide-title-bar="true"
:disable-views="['years', 'year', 'month', 'day']"
:time-from="8 * 60"
:time-to="24 * 60"
:selected-date="new Date()"
:time-from="calConfig.startHour * 60"
:time-to="calConfig.endHour * 60"
:selected-date="calConfig.date"
:onEventClick="taskClicked"
:editable-events="vueCalConfig.editing"
:events="formatedEvents"
:events="calData.dates"
:min-event-width="90"
:overlaps-per-time-step="true"
:time-cell-height="200"
:min-cell-width="300"
sticky-split-labels
@ready="scrollToYesterday"
@view-change="weekChanged"
>
<template v-slot:weekday-heading="{ heading }">
<span class="d-flex align-center" :class="{'yesterday-cell' : (getHeadingDate(heading.date) == 'Včera')}">
<span class="d-flex align-center">
<img v-if="getHeadingDate(heading.date) == 'Dnes'" :src="require('./_img/home-icon.svg')" class="mr-2">
<p>{{ getHeadingDate(heading.date) }}</p>
</span>
@@ -49,15 +49,18 @@
<script>
export default {
props: {
events: {
calData: {
type: Object,
required: true
},
calConfig: {
type: Object,
required: true
}
},
data() {
return {
formatedEvents: [],
vueCalConfig: {
editing: {
title: false,
@@ -70,33 +73,21 @@ export default {
}
},
created() {
this.formatData()
},
methods: {
weekChanged() {
const scrollContainer = document.getElementsByClassName('vuecal__scrollable-body')[0]
scrollContainer.scrollLeft = 0
formatData() {
Object.keys(this.events.dates).forEach(date => {
console.log(this.events.dates[date])
this.formatedEvents.push(...[...this.events.dates[date]])
this.$nextTick(() => {
this.scrollToYesterday()
})
this.formatedEvents.forEach(event => {
// console.log(event.id)
event.start = new Date(event.starts_at)
event.end = new Date(event.ends_at)
delete event.starts_at
delete event.ends_at
})
// console.log(this.formatedEvents)
},
scrollToYesterday() {
if (!document.getElementsByClassName('yesterday-cell')) return
if (!document.getElementsByClassName('yesterday-cell').length) return
const scrollContainer = document.getElementsByClassName('vuecal__scrollable-body')[0]
const yesterdayCell = document.getElementsByClassName('yesterday-cell')[0].parentElement.parentElement.parentElement
const yesterdayCell = document.getElementsByClassName('yesterday-cell')[0]
scrollContainer.scrollLeft = yesterdayCell.offsetLeft - scrollContainer.offsetLeft - 20
},