"use strict";(self["webpackChunkjandl"]=self["webpackChunkjandl"]||[]).push([[5360],{84459:function(e,t,a){a.d(t,{Z:function(){return V}});var s=a(73396),i=a(87139),n=a(49242),l=a(67312),d=a(53289);const o=e=>((0,s.dD)("data-v-146cefd4"),e=e(),(0,s.Cn)(),e),r={class:"calendar-wrapper"},c={class:"w-100 h-100 d-flex flex-column"},m={key:0,class:"d-flex align-center"},u=["src"],h={class:"weekday-label"},g={key:1,class:"d-flex align-center"},p={class:"weekday-label"},D={key:2},v={class:"day-name"},k={class:"unscheduled-time-initials d-flex align-center justify-center me-4"},w={class:"mb-0 mt-0 unscheduled-time-name"},f={class:"mb-0 mt-0"},_={class:"d-flex align-center justify-center"},y=o((()=>(0,s._)("div",{class:"time-column-line"},null,-1))),T={class:"event-content"},b={key:0,class:"project-code"},C={class:"d-flex align-center event-details event-initials-wrapper"},S={class:"event-initials d-flex justify-center align-center"},x={class:"event-initials-date"},E={class:"event-footer d-flex"},Z=["src"],L=["src"],N=["src"],W={key:1,class:"non-working-event w-100 h-100 d-flex flex-column justify-center"},I={class:"d-flex justify-center align-center"},$={class:"mb-0 ms-2"};function M(e,t,o,M,j,K){const z=(0,s.up)("Vue-cal");return(0,s.wg)(),(0,s.iD)("div",r,[(0,s.Wm)(z,{"hide-view-selector":!0,"hide-title-bar":!0,"disable-views":["years","year","month","week"],"active-view":"day","selected-date":o.calConfig.date,onEventClick:K.taskClicked,"editable-events":j.vueCalConfig.editing,events:o.calData.tasks,unscheduledTime:o.calData.unscheduled_times,"overlaps-per-time-step":!1,showTimeInCells:!1,"time-cell-height":j.timeCellHeight,"snap-to-time":15,"scroll-to-hour":o.calConfig.scrollHour,"split-days":o.splits,"sticky-split-labels":!0,"min-split-width":270,onReady:t[0]||(t[0]=e=>K.onReady()),onViewChange:K.weekChanged,onEventDrop:K.eventMoved,onEventFocus:K.eventFocused},{"split-label":(0,s.w5)((({split:e})=>[(0,s._)("div",c,[e.date?((0,s.wg)(),(0,s.iD)("span",m,["Dnes"==K.getHeadingDate(e.date)?((0,s.wg)(),(0,s.iD)("img",{key:0,src:a(42917),class:"mr-2"},null,8,u)):(0,s.kq)("",!0),(0,s._)("p",h,(0,i.zw)(K.getHeadingDate(e.date)),1)])):((0,s.wg)(),(0,s.iD)("span",g,[(0,s._)("p",p,(0,i.zw)(e.firstName),1)])),e.date?((0,s.wg)(),(0,s.iD)("span",D,[(0,s._)("p",v,(0,i.zw)(e.date.toLocaleDateString("en-EN",{weekday:"long"})),1)])):(0,s.kq)("",!0),e.unscheduledTime&&e.initials?((0,s.wg)(),(0,s.iD)("div",{key:3,class:(0,i.C_)(["unscheduled-time d-flex align-center text-left",{"vuecal__cell-split--weekend":e.isWeekend}])},[(0,s._)("div",k,[(0,s._)("p",null,(0,i.zw)(e.initials),1)]),(0,s._)("div",null,[(0,s._)("p",w,(0,i.zw)(e.name),1),(0,s._)("h1",f,(0,i.zw)(e.unscheduledTime)+" h",1)])],2)):(0,s.kq)("",!0)])])),"time-cell":(0,s.w5)((({hours:e,minutes:t})=>[(0,s._)("span",_,[(0,s._)("p",null,(0,i.zw)(e)+":"+(0,i.zw)(String(t).padStart(2,"0")),1),y])])),event:(0,s.w5)((({event:e})=>[e.nonWorking?((0,s.wg)(),(0,s.iD)("div",W,[(0,s._)("div",I,[(0,s.Wm)(d.t,{icon:"mdi-cancel",color:"black"}),(0,s._)("h3",$,(0,i.zw)(e.title),1)])])):((0,s.wg)(),(0,s.iD)("div",{key:0,class:(0,i.C_)(["w-100 h-100 d-flex flex-column justify-space-between",{"short-event":K.getEventLenght(e)<=9e6,"mini-event":K.getEventLenght(e)<=54e5,"micro-event":K.getEventLenght(e)<=36e5}])},[(0,s._)("div",T,[e.project_code&&!e.is_blocker?((0,s.wg)(),(0,s.iD)("small",b,(0,i.zw)(e.project_code),1)):(0,s.kq)("",!0),(0,s._)("h3",null,(0,i.zw)(e.title),1),(0,s._)("div",C,[(0,s._)("div",S,[(0,s._)("small",null,(0,i.zw)(K.getUserInitials(e)),1)]),(0,s._)("small",x,(0,i.zw)(new Date(e.starts_at).toLocaleDateString("sk-SK")),1)])]),(0,s._)("div",E,[(0,s.Wm)(l.T,{rounded:"",class:(0,i.C_)(["event-footer-button me-2",{completed:e.completed}]),onClick:(0,n.iM)((t=>K.completeTask(e)),["stop"])},{default:(0,s.w5)((()=>[(0,s._)("img",{src:a(47146),alt:""},null,8,Z)])),_:2},1032,["class","onClick"]),(0,s.Wm)(l.T,{rounded:"",class:"event-footer-button me-2",onClick:(0,n.iM)((t=>K.editTask(e,!0)),["stop"])},{default:(0,s.w5)((()=>[(0,s._)("img",{src:a(36142),alt:""},null,8,L)])),_:2},1032,["onClick"]),(0,s.Wm)(l.T,{rounded:"",class:"event-footer-button me-2",onClick:(0,n.iM)((t=>K.deleteTask(e)),["stop"])},{default:(0,s.w5)((()=>[(0,s._)("img",{src:a(26525),alt:""},null,8,N)])),_:2},1032,["onClick"])])],2))])),_:1},8,["selected-date","onEventClick","editable-events","events","unscheduledTime","time-cell-height","scroll-to-hour","split-days","onViewChange","onEventDrop","onEventFocus"])])}var j={props:{calData:{type:Object,required:!0,default(){return{}}},calConfig:{type:Object,required:!0,default(){return{date:new Date,scrollHour:7}}},splits:{type:Array,required:!1,default(){return[]}}},data(){return{vueCalConfig:{editing:{title:!1,drag:!0,resize:!1,delete:!1,create:!1}},focusedEventId:null,timeCellHeight:100}},methods:{weekChanged(){const e=this.$el.getElementsByClassName("vuecal__scrollable-body")[0];e.scrollLeft=0},async eventMoved(e){this.focusedEventId=e.event.id,this.addTimeModal(e.event.id),this.$emit("eventMoved",e)},onReady(){this.correctMargins()},correctMargins(){if(!this.$el.getElementsByClassName("vuecal__split-days-headers").length)return;const e=this.$el.getElementsByClassName("vuecal__split-days-headers")[0].clientHeight;this.$el.getElementsByClassName("vuecal__time-column")[0].style.marginTop=`${e}px`,this.$el.getElementsByClassName("vuecal__cells-body")[0].style.marginTop=`${e}px`},getHeadingDate(e){const t=new Date(e),a=new Date,s=new Date((new Date).setDate(a.getDate()-1)),i=new Date((new Date).setDate(a.getDate()+1));return a.toLocaleDateString("sk-SK")===t.toLocaleDateString("sk-SK")?"Dnes":s.toLocaleDateString("sk-SK")===t.toLocaleDateString("sk-SK")?"Včera":i.toLocaleDateString("sk-SK")===t.toLocaleDateString("sk-SK")?"Zajtra":t.toLocaleDateString("sk-SK")},getUserInitials(e){return e.name.charAt(0).toUpperCase()+e.surname.charAt(0).toUpperCase()},getEventLenght(e){return e.end.getTime()-e.start.getTime()},taskClicked(e){e.nonWorking||(e.end.getTime(),e.start.getTime())},eventFocused(e){this.focusedEventId=e.task_id},clickCompleteTask(e){e.completed&&this.completeTask(e)},completeTask(e){this.$events.emit("show-complete-task-modal",{task:e})},editTask(e,t){this.$events.emit("show-task-modal",{task:e,editMode:t})},addTimeModal(e){this.$events.emit("show-task-add-time-modal",{task:e})},deleteTask(e){this.$events.emit("show-delete-task-modal",{task:e})}}},K=a(40089);const z=(0,K.Z)(j,[["render",M],["__scopeId","data-v-146cefd4"]]);var V=z},55360:function(e,t,a){a.r(t),a.d(t,{default:function(){return S}});var s=a(73396);function i(e,t,a,i,n,l){const d=(0,s.up)("A-team-filter"),o=(0,s.up)("Z-timeline"),r=(0,s.up)("W-loadable");return(0,s.wg)(),(0,s.iD)("div",null,[(0,s.Wm)(d,{unscheduledTime:n.unscheduledTime,onDataChanged:l.getTimelineData},null,8,["unscheduledTime","onDataChanged"]),(0,s.Wm)(r,{content:n.timelineData,class:"w-loadable","empty-message":"Nepodarilo sa nacitat data!"},{default:(0,s.w5)((()=>[(0,s.Wm)(o,{calData:n.timelineData,calConfig:n.config,splits:n.splitDays,onEventMoved:l.onEventMoved,onCompleteTask:l.completeTask,onDeleteTask:l.deleteTask},null,8,["calData","calConfig","splits","onEventMoved","onCompleteTask","onDeleteTask"])])),_:1},8,["content"])])}a(57658);var n=a(67312),l=a(16824),d=a(41583),o=a(45869);const r={class:"d-flex date-wrapper"},c=["src"],m=["src"];function u(e,t,i,u,h,g){return(0,s.wg)(),(0,s.j4)(l.o,{class:"px-10 py-8 subheader"},{default:(0,s.w5)((()=>[(0,s.Wm)(d.r,{modelValue:h.selectedTeam,"onUpdate:modelValue":t[0]||(t[0]=e=>h.selectedTeam=e),class:"subheader-input",items:h.teams,"item-title":"name","item-value":"id",label:"Tím",variant:"outlined"},null,8,["modelValue","items"]),(0,s._)("div",r,[(0,s.Wm)(n.T,{class:"subheader-icon-button prev",variant:"outlined",onClick:t[1]||(t[1]=e=>g.prevDay())},{default:(0,s.w5)((()=>[(0,s._)("img",{src:a(42424),alt:""},null,8,c)])),_:1}),(0,s.Wm)(o.hw,{class:"subheader-input disabled",label:"Dátum",modelValue:h.selectedDate,"onUpdate:modelValue":t[2]||(t[2]=e=>h.selectedDate=e),variant:"outlined","append-inner-icon":"mdi-calendar-blank-outline"},null,8,["modelValue"]),(0,s.Wm)(n.T,{class:"subheader-icon-button next",variant:"outlined",onClick:t[3]||(t[3]=e=>g.nextDay())},{default:(0,s.w5)((()=>[(0,s._)("img",{src:a(6517),alt:""},null,8,m)])),_:1})]),(0,s.Wm)(o.hw,{class:"subheader-input disabled",label:"Nenaplánované hodiny",modelValue:g.time,"onUpdate:modelValue":t[4]||(t[4]=e=>g.time=e),variant:"outlined"},null,8,["modelValue"])])),_:1})}var h=a(11271),g=a(85174),p={props:{unscheduledTime:{type:String,default(){return"0"}}},data(){return{teams:[],selectedTeam:null,selectedDate:new Date,day:new Date,date:new Date}},computed:{time(){return this.unscheduledTime}},created(){this._getData()},methods:{async _getData(){await this._getTeams(),this._getDay(!1),this.$nextTick((()=>{this.$emit("dataChanged",{date:this.day,teamId:this.selectedTeam})}))},async _getTeams(){this.teams=await this.$axios.get_auth_data("v1/teams"),this.selectedTeam=this.teams[0]},_getDay(e=!0){const t=new Date,a=new Date((new Date).setDate(t.getDate()-1)),s=new Date((new Date).setDate(t.getDate()+1));t.toLocaleDateString("sk-SK")===this.day.toLocaleDateString("sk-SK")?this.selectedDate="Dnes":a.toLocaleDateString("sk-SK")===this.day.toLocaleDateString("sk-SK")?this.selectedDate="Včera":s.toLocaleDateString("sk-SK")===this.day.toLocaleDateString("sk-SK")?this.selectedDate="Zajtra":this.selectedDate=String(this.day.toLocaleDateString("sk-SK")),e&&this.$emit("dataChanged",{date:this.day,teamId:this.selectedTeam})},prevDay(){this.day=(0,h.Z)(this.day,1),this._getDay()},nextDay(){this.day=(0,g.Z)(this.day,1),this._getDay()}},watch:{selectedTeam(){this.$emit("dataChanged",{date:this.day,teamId:this.selectedTeam})}}},D=a(40089);const v=(0,D.Z)(p,[["render",u],["__scopeId","data-v-7442cad4"]]);var k=v,w=a(84459),f=a(93838),_=a(97299),y=a(65628),T=a(15941),b={components:{ATeamFilter:k,ZTimeline:w.Z},data(){return{timelineData:null,formatedTasks:{tasks:[]},errorToast:!1,errorToastMessage:"Nepodarilo sa nacitat data!",dataLoaded:!1,splitDays:[],unscheduledTime:0,config:{date:new Date,scrollHour:7}}},methods:{async getTimelineData(e){this.config.date=e.date;try{this.timelineData=await this.$axios.get_auth_data("v1/overview/teams",{date:e.date,team:e.teamId}),this.generateEmployees(),this.formatTimelineDataToTimelineFormat(),this.generateNonWorkingHours(e.date)}catch(t){this.timelineData={error:t||"Nepodarilo sa nacitat data!"},T.error(t)}},generateEmployees(){this.splitDays=[];for(let e=0;e{e.tasks.forEach((t=>{t.name=e.name,t.surname=e.surname,t.start=new Date(t.starts_at),t.end=new Date(t.ends_at),t.split=e.splitId})),this.timelineData.tasks.push(...e.tasks),this.unscheduledTime+=e.unscheduled_time})),this.unscheduledTime=Math.floor(this.unscheduledTime/60)+","+String(this.unscheduledTime%60)[0]+" h"},generateNonWorkingHours(e){let t=[],a=23;this.timelineData.forEach((s=>{const i={hour:0,minutes:0,seconds:0},n={hour:Number(s.work_hours_from.split(":")[0]),minutes:Number(s.work_hours_from.split(":")[1])-1,seconds:0},l={hour:Number(s.work_hours_to.split(":")[0]),minutes:Number(s.work_hours_to.split(":")[1])+1,seconds:0},d={hour:23,minutes:59,seconds:59};a>Number(s.work_hours_from.split(":")[0])&&(a=Number(s.work_hours_from.split(":")[0])),t.push({title:"Non working hours",start:(0,f.Z)((0,_.Z)((0,y.Z)(e,i.hour),i.minutes),i.seconds),end:(0,f.Z)((0,_.Z)((0,y.Z)(e,n.hour),n.minutes),n.seconds),nonWorking:!0,split:s.splitId,draggable:!1}),t.push({title:"Non working hours",start:(0,f.Z)((0,_.Z)((0,y.Z)(e,l.hour),l.minutes),l.seconds),end:(0,f.Z)((0,_.Z)((0,y.Z)(e,d.hour),d.minutes),d.seconds),nonWorking:!0,split:s.splitId,draggable:!1})})),this.config.scrollHour=a-1,this.timelineData.tasks.push(...t)},async onEventMoved(e){const t=this.timelineData.tasks.find((t=>t.id==e.event.id));this.splitDays.find((t=>t.id==e.newSplit)).employeeId;try{t.split=e.newSplit,t.start=e.event.start,t.end=e.event.end}catch(a){t.split=e.oldSplit,t.start=new Date(e.originalEvent.start),t.end=new Date(e.originalEvent.end),this.$toast.error(a)}},completeTask(e){const t=this.timelineData.tasks.find((t=>t.id==e));t.completed=!t.completed},deleteTask(e){this.timelineData.tasks.splice(this.timelineData.tasks.findIndex((t=>t.id===e)),1)}}};const C=(0,D.Z)(b,[["render",i],["__scopeId","data-v-6432e421"]]);var S=C},26525:function(e,t,a){e.exports=a.p+"img/bin.8778f5be.svg"},42917:function(e,t,a){e.exports=a.p+"img/home-icon.a9495a95.svg"},6517:function(e,t,a){e.exports=a.p+"img/icon-next.25e7a4f4.svg"},42424:function(e,t,a){e.exports=a.p+"img/icon-prev.22ba0fa6.svg"},36142:function(e,t,a){e.exports=a.p+"img/pencil.b9009162.svg"}}]); //# sourceMappingURL=5360.73845b24.js.map