{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/repositories/devdata.js","webpack:///./src/components/sidebar/AgreementSidebar.vue?0e1e","webpack:///./src/repositories/gpsDataRepository.js","webpack:///./src/components/common/Notification.vue?84f0","webpack:///./src/repositories/milestones.js","webpack:///./src/components/sidebar/EntryForm.vue?2c2c","webpack:///./src/components/calendar/Home.vue?174c","webpack:///src/components/calendar/Home.vue","webpack:///./src/components/calendar/Home.vue?abc9","webpack:///./src/components/calendar/Home.vue","webpack:///./src/repositories/AppUsersRepository.js","webpack:///./src/repositories/GroupCommentRepository.js","webpack:///./src/repositories/notificationsRepository.js","webpack:///./src/repositories/reportRepository.js","webpack:///./src/repositories/holidayRepository.js","webpack:///./src/repositories/groupTemplateRepository.js","webpack:///./src/repositories/salaryManualInputRepository.js","webpack:///./src/repositories/agreementRepository.js","webpack:///./src/repositories/salaryRatesRepository.js","webpack:///./src/repositories/RepositoryFactory.js","webpack:///./src/config/apiConfig.js","webpack:///./src/clients/AppUsersClient.js","webpack:///./src/components/common/Notification.vue?e759","webpack:///./src/components/sidebar/GeneralStatisticsFilterSidebar.vue?1606","webpack:///./src/enums/APISTATE.js","webpack:///./src/components/sidebar/HolidaySidebar.vue?89ac","webpack:///./src/config/oidc.js","webpack:///./src/components/calendar/CalendarSmall.vue?f7ce","webpack:///./src/components/sidebar/EntrySidebar.vue?d85d","webpack:///./src/components/calendar/Home.vue?e483","webpack:///./src/components/sidebar/GeneralStatisticsFilterSidebar.vue?416f","webpack:///./src/repositories/employees.js","webpack:///./src/assets/viking-logo-white-cropped.svg","webpack:///./src/repositories/overallocations.js","webpack:///./src/components/sidebar/GroupCommentSidebar.vue?7766","webpack:///./src/components/sidebar/EntrySidebar.vue?02e4","webpack:///./src/components/calendar/ConfirmationModal.vue?bcdf","webpack:///./src/components/sidebar/HolidaySidebar.vue?c740","webpack:///./src/store/modules/EntrySidebar.js","webpack:///./src/store/modules/AppUsersStore.js","webpack:///./src/store/modules/notificationStore.js","webpack:///./src/store/modules/allocations.js","webpack:///./src/store/modules/circles.js","webpack:///./src/store/modules/groupStore.js","webpack:///./src/store/modules/GeneralStatisticsFilteringSidebar.js","webpack:///./src/store/modules/groupTemplateStore.js","webpack:///./src/store/modules/employees.js","webpack:///./src/store/modules/forecasts.js","webpack:///./src/store/modules/metadata.js","webpack:///./src/store/modules/milestones.js","webpack:///./src/store/modules/ReplacementAllocations.js","webpack:///./src/data.js","webpack:///./src/store/modules/scheduler.js","webpack:///./src/store/modules/GroupCommentStore.js","webpack:///./src/store/modules/reportStore.js","webpack:///./src/store/modules/salaryReportStore.js","webpack:///./src/store/modules/holidayStore.js","webpack:///./src/util/uuid.js","webpack:///./src/util/statisticsComparers.js","webpack:///./src/store/modules/statisticsStore.js","webpack:///./src/store/modules/allocationMoverStore.js","webpack:///./src/store/modules/agreementStore.js","webpack:///./src/store/modules/gpsDataStore.js","webpack:///./src/store/modules/confirmationModalStore.js","webpack:///./src/store/modules/dtReportStore.js","webpack:///./src/store/modules/salaryRateStore.js","webpack:///./src/store/modules/csvModalStore.js","webpack:///./src/store/index.js","webpack:///./src/components/calendar/ConfirmationModal.vue?2dbc","webpack:///src/components/calendar/ConfirmationModal.vue","webpack:///./src/components/calendar/ConfirmationModal.vue?569e","webpack:///./src/components/calendar/ConfirmationModal.vue","webpack:///./src/App.vue?1e62","webpack:///./src/components/scheduler/schedule/controls/EmployeeSelector.vue?187b","webpack:///src/components/scheduler/schedule/controls/EmployeeSelector.vue","webpack:///./src/components/scheduler/schedule/controls/EmployeeSelector.vue?e90a","webpack:///./src/components/scheduler/schedule/controls/EmployeeSelector.vue","webpack:///./src/App.vue?ad8e","webpack:///./src/components/calendar/Home.vue?6a08","webpack:///./src/components/sidebar/SalaryRateSidebar.vue?a4a5","webpack:///./src/components/calendar/CalendarSmall.vue?be0c","webpack:///./src/components/common/Notification.vue?00e7","webpack:///src/components/common/Notification.vue","webpack:///./src/components/common/Notification.vue?fa7e","webpack:///./src/components/common/Notification.vue","webpack:///src/components/calendar/CalendarSmall.vue","webpack:///./src/components/calendar/CalendarSmall.vue?b1cc","webpack:///./src/components/calendar/CalendarSmall.vue","webpack:///./src/App.vue?ee80","webpack:///./src/components/AppHeader.vue?7653","webpack:///./src/components/UserBadge.vue?d56e","webpack:///src/components/UserBadge.vue","webpack:///./src/components/UserBadge.vue?7958","webpack:///./src/components/UserBadge.vue","webpack:///src/components/AppHeader.vue","webpack:///./src/components/AppHeader.vue?d34b","webpack:///./src/components/AppHeader.vue","webpack:///./src/components/sidebar/EntrySidebar.vue?d9e8","webpack:///./src/components/sidebar/EntryForm.vue?ea71","webpack:///src/components/sidebar/EntryForm.vue","webpack:///./src/components/sidebar/EntryForm.vue?d1ed","webpack:///./src/components/sidebar/EntryForm.vue","webpack:///src/components/sidebar/EntrySidebar.vue","webpack:///./src/components/sidebar/EntrySidebar.vue?8094","webpack:///./src/components/sidebar/EntrySidebar.vue","webpack:///./src/components/sidebar/GroupCommentSidebar.vue?e0c5","webpack:///src/components/sidebar/GroupCommentSidebar.vue","webpack:///./src/components/sidebar/GroupCommentSidebar.vue?135d","webpack:///./src/components/sidebar/GroupCommentSidebar.vue","webpack:///./src/components/sidebar/AgreementSidebar.vue?dce1","webpack:///src/components/sidebar/AgreementSidebar.vue","webpack:///./src/components/sidebar/AgreementSidebar.vue?9b6d","webpack:///./src/components/sidebar/AgreementSidebar.vue","webpack:///./src/components/sidebar/GeneralStatisticsFilterSidebar.vue?aba8","webpack:///src/components/sidebar/GeneralStatisticsFilterSidebar.vue","webpack:///./src/components/sidebar/GeneralStatisticsFilterSidebar.vue?088a","webpack:///./src/components/sidebar/GeneralStatisticsFilterSidebar.vue","webpack:///./src/components/sidebar/HolidaySidebar.vue?eae5","webpack:///src/components/sidebar/HolidaySidebar.vue","webpack:///./src/components/sidebar/HolidaySidebar.vue?1d5e","webpack:///./src/components/sidebar/HolidaySidebar.vue","webpack:///./src/components/sidebar/DtReportSidebar.vue?abd3","webpack:///src/components/sidebar/DtReportSidebar.vue","webpack:///./src/components/sidebar/DtReportSidebar.vue?288d","webpack:///./src/components/sidebar/DtReportSidebar.vue","webpack:///./src/components/sidebar/SalaryRateSidebar.vue?7081","webpack:///src/components/sidebar/SalaryRateSidebar.vue","webpack:///./src/components/sidebar/SalaryRateSidebar.vue?f0c3","webpack:///./src/components/sidebar/SalaryRateSidebar.vue","webpack:///src/App.vue","webpack:///./src/App.vue?5b78","webpack:///./src/App.vue","webpack:///./src/router/configuration.js","webpack:///./src/router/index.js","webpack:///./src/filters/numbers.js","webpack:///./src/filters/dates.js","webpack:///./src/components/common/Icon.vue?907a","webpack:///src/components/common/Icon.vue","webpack:///./src/components/common/Icon.vue?a7fc","webpack:///./src/components/common/Icon.vue","webpack:///./src/main.js","webpack:///./src/components/scheduler/schedule/controls/EmployeeSelector.vue?35c1","webpack:///./src/repositories/groups.js","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/components/common/Dropdown.vue?38db","webpack:///src/components/common/Dropdown.vue","webpack:///./src/components/common/Dropdown.vue?0d06","webpack:///./src/components/common/Dropdown.vue","webpack:///./src/components/sidebar/DtReportSidebar.vue?93ef","webpack:///./src/styles/app.scss?6cff","webpack:///./src/components/scheduler/schedule/controls/EmployeeSelector.vue?0935","webpack:///./src/components/sidebar/AgreementSidebar.vue?e2fd","webpack:///./src/components/UserBadge.vue?92c2","webpack:///./src/repositories/circlesRepository.js","webpack:///./src/views/Home.vue?27fa","webpack:///src/views/Home.vue","webpack:///./src/views/Home.vue?2d4d","webpack:///./src/views/Home.vue","webpack:///./src/components/common/Icon.vue?3d97","webpack:///./src/repositories/allocations.js","webpack:///./src/repositories/forecasts.js","webpack:///./src/components/calendar/calendar-small/CalendarEntry.vue?17fa","webpack:///./src/components/common/Dropdown.vue?13af","webpack:///./src/views/Dashboard.vue?07d8","webpack:///./src/components/AppHeader.vue?cfe8","webpack:///./src/views/Dashboard.vue?0c4a","webpack:///src/views/Dashboard.vue","webpack:///./src/views/Dashboard.vue?f2a9","webpack:///./src/views/Dashboard.vue","webpack:///./src/components/calendar/calendar-small/CalendarEntry.vue?3b2c","webpack:///src/components/calendar/calendar-small/CalendarEntry.vue","webpack:///./src/components/calendar/calendar-small/CalendarEntry.vue?95b5","webpack:///./src/components/calendar/calendar-small/CalendarEntry.vue","webpack:///./src/components/calendar/calendar-small/CalendarEntry.vue?f62e","webpack:///./src/components/sidebar/EntryForm.vue?b2ef","webpack:///./src/components/sidebar/GroupCommentSidebar.vue?f9d5","webpack:///./src/enums/UPDATESTATE.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","circles","regions","id","allocationTypes","label","shortName","isVisible","title","forecasts","milestones","groups","resource","getGPSDataList","dto","AppUsersClient","assistantNumber","moment","fromDate","format","toDate","response","catch","updateGPSData","gpsData","put","getForPeriod","startDate","endDate","teamFilter","milestoneType","projectId","date","percentageCompleted","update","milestone","delete","milestoneId","updateTag","render","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","isLoading","_v","currentUser","isAdmin","isReplacement","on","viewAs","onUpdated","onSplit","loadMore","staticRenderFns","components","methods","viewStartDate","Date","viewToDate","computed","viewAsEmployeeId","viewAsEmployee","component","getAll","getOne","registerAppUser","userDto","post","updateAppUser","setAppUserPassword","form","deleteUser","forGroup","params","getForDayAndGroup","forDate","createOrUpdate","groupCommentForm","getGroupCommentsDashboard","forRegion","notificationId","getNotificationFromAllocation","getReportForPeriod","getReplacementReportForPeriod","getGeneralReportForPeriod","getAbsenceStatisticsForPeriod","forUser","getDriveReportForPeriod","getTimeOffForPeriod","getMonthReport","year","month","approveAllMonthReport","approveMonthReport","getMonthGroupReport","getYearlyReport","getReportNotification","employeeId","requestUrl","getDTReport","log","updateDTReport","deleteDTReport","getSalaryReport","compareDate","userDefined","toJSON","getSalaryDayReport","getSalaryHerdDayReport","herdNumber","processReportSalaryEmployee","lockReportSalaryEmployee","unlockReportSalaryEmployee","updateReportSalaryEmployee","exportSalaryReportCsv","getFullYear","holiday","getAllForGroup","groupTemplate","canApply","loadGroupTemplateAllocation","createGroupTemplateAllocation","updateGroupTemplateAllocation","deleteGroupTemplateAllocation","rollbackGroupTemplate","uploadCsv","file","getById","getAllForYear","agreement","updateAll","agreements","getAllSalaryRatesForYear","updateSalaryRate","createSalaryRate","repositories","AppUsersRepository","GroupCommentRepository","allocations","circlesRepository","employees","overallocations","notificationsRepository","reportRepository","holidayRepository","groupTemplateRepository","agreementRepository","gpsDataRepository","salaryRatesRepository","salaryManualInput","salaryManualInputRepository","apiConfig","JSON","parse","process","baseDomain","url","baseURL","axiosClient","axios","headers","interceptors","use","req","authorization","store","getters","INIT","LOADING","ERROR","LOADED","oidcSettings","getActive","getActiveInPeriod","getReplacements","region","getReplacementsForDate","getAllEmployees","getEmployees","getAvailableEmployees","openResolve","Repository","namespaced","state","apiState","ENUM","appUser","appUsers","myAppUser","employments","role","mutations","setApiState","setAppUser","appUserResponse","forEach","isEditing","addEmptyEmployment","appUserId","isNew","index","saveEmployment","employment","today","setRole","setEditEmployment","findIndex","removeEmployment","employmentIndex","setAppUsers","appUsersResponse","setMyAppUser","actions","loadAppUser","commit","setEmptyAppUser","editEmployment","indexOf","loadAppUsers","appUserDto","dispatch","UTC","getMonth","getDate","getHours","getMinutes","getSeconds","loadMyUser","oidcUser","sub","deleteAppUser","appUserApiState","userRole","notifications","notification","errorModalOpen","errorModalText","setNotification","setNotifications","initialized","setErrorModalText","text","setErrorModalOpen","open","getNotificationsForPeriod","createNotification","allocationDto","retries","updateState","UPDATESTATE","RequestReplacement","status","deleteNotification","notificationDto","_UpdateTag","updateNotification","setNotificationOnStore","notificationApiState","entryModel","setEntryModel","entry","entrySidebarOpenAsync","entrySidebarOpen","entrySidebarUpdate","model","Function","action","entrySidebarNotification","entrySidebarDelete","entrySidebarCancel","entrySidebarViewUpdate","entrySidebarSplit","entrySidebarModel","allocationsDashboard","allocation","allocationApiState","allocationDashboardApiState","allocationsTimeOffApiState","allocationsTimeOff","allocationsOnDateApiState","allocationsOnDate","setDashboardApiState","setAllocationApiState","setAllocation","setAllocations","setAllocationDashboard","setTimeOffApiState","setAllocationsTimeOff","setAllocationsOnDateApiState","setAllocationsOnDate","addAllocations","item","initialize","getMyAllocations","asEmployee","isLoadingMore","getTimeOff","getAllocationDashboard","updateAllocation","getAllocationForGroupOnDate","splitAllocation","split","isLoaded","allocationsApiState","CirclesRepository","apiStateCircleForGroup","circlesForGroup","circle","setCircleForGroupApiState","setCircle","setCircles","setCircleForGroup","loadAllCircles","loadCirclesForPeriod","loadCirclesCurrentWeek","getCirclesCurrentWeek","loadCircles","getPeriods","getCircle","getCircleForGroup","groupId","createCircle","updateCircle","circleIsLoading","circleForGroupIsLoading","circleApiState","arrayRemoveWhere","array","where","filter","val","ApiState","groupState","group","groupsForUser","groupsForUserApiState","usersForGroup","usersForGroupApiState","setGroup","setGroups","removeGroup","isRemoved","setState","setGroupsForUserApiState","setGroupsForUser","setUsersForGroupApiState","setUsersForGroup","getAllGroups","getAllForMyCalendar","groupRepository","getGroupById","remove","getGroupsForUser","getUsersGorGroup","updateGroup","createGroup","groupsIsLoading","groupApiState","find","q","groupTemplateApiState","groupTemplates","historicGroupTemplatesDisplayed","groupTemplatesApiState","simulating","showAll","setGroupTemplateApiState","setGroupTemplate","setGroupTemplatesApiState","setGroupTemplates","setSimulating","setShowAll","setHistoricGroupTemplatesDisplayed","historicGroupTemplate","getAllTemplatesForGroup","updateGroupTemplate","createGroupTemplate","applyGroupTemplate","canApplyGroupTemplate","showAllPressed","isSimulating","isGroupTemplateSimulating","EmployeesRepository","employeeApiState","replacementApiState","replacements","replacementsForDateApiState","replacementsForDate","allEmployeeApiState","allEmployees","allEmployeesDict","availableEmployees","availableEmployeesApiState","setReplacementApiState","setEmployeeApiState","setEmployees","setReplacements","setReplacementsForDateApiState","setReplacementsForDate","setAllEmployeeApiState","setAllEmployees","employee","Vue","set","setAvailableEmployees","setAvailableEmployeesApiState","loadEmployees","loadReplacements","loadReplacementsFromDate","allEmployeesLookup","reduce","accumulator","currentValue","allocationTypesReport","AllocationsRepository","allocationsResponse","loadReplacementAllocationsForCurrentWeek","getReplacementAllocationsCurrentWeek","replacementAllocationsApiState","replacementAllocations","groupBy","lookup","teams","clients","byEmployee","byCircle","byEmployeeCircle","byProject","byEmployeeProject","forecastType","colors","colorsHex","map","obj","teamId","teamName","values","unshift","colorCode","periodChanged","allocationAdded","allocationDeleted","allocationId","allocationToLookup","allocationUpdated","allocationToUpdate","assign","allocationsAddOrUpdate","Array","isArray","existing","removeChildAllocations","parentAllocationId","lookupAllocation","milestoneAdded","milestoneDeleted","milestoneToLookup","milestoneUpdated","milestoneToUpdate","overallocationUpdated","circleId","forecastUpdated","forecastKey","changePeriod","fetchEmployees","addAllocation","allocationType","allocationSpanInDays","retrieveChildren","attachNewAllocation","existingAllocation","removeChildren","replacementId","getForParent","childAllocation","deleteAllocation","updateChildAllocations","addMilestone","updateMilestone","deleteMilestone","updateOverallocations","updateForecasts","getFromDate","employeeLookup","clientLookup","circleLookup","GroupRepository","apiStateDashboard","groupComments","groupComment","groupCommentsDashboard","lookupArgs","editingGroupComment","groupCommentMeta","setApiStateDashboard","setGroupComments","groupCommentsResponse","setGroupCommentsDashboard","respones","setGroupComment","groupCommentResponse","setLookupArgs","setEditingGroupComment","setGroupCommentMetaGroup","groupResponse","setGroupCommentMetaDate","setCleared","clear","loadGroupComments","loadGroupCommentsDashboard","loadGroupComment","createOrUpdateGroupComment","groupCommentModel","editGroupComment","commitEditingGroupComment","updatedGroupCommentModel","cancelEditingGroupComment","groupCommentsApiStateDashboard","groupCommentsApiState","reports","reportForPeriodApiState","replacementReportForPeriodApiState","monthReportApiState","monthReportForPeriodApiState","monthReportGroupApiState","reportForPeriod","replacementReportForPeriod","monthReport","monthReportForPeriod","monthReportGroup","yearlyReport","yearlyReportApiState","reportNotification","reportNotificationApiState","generalReportForPeriodApiState","generalReportForPeriod","driveReportForPeriod","driveReportForPeriodApiState","timeOffForPeriod","timeOffForPeriodApiState","setReportForPeriodApiState","setMonthReportGroupApiState","setReplacementReportForPeriodApiState","setMonthReportForPeriodApiState","setMonthReportApiState","setReportForPeriod","setReplacementReportForPeriod","setMonthReportForPeriod","setMonthReport","setMonthReportGroup","setYearlyReport","setYearlyReportApiState","setReportNotification","setReportNotificationApiState","setGeneralReportForPeriod","setGeneralReportForPeriodApiState","setDriveReportForPeriod","setAbsenceStatisticsForPeriod","setDriveReportForPeriodApiState","setTimeOffForPeriod","setTimeOffForPeriodApiState","driveStaticsForPeriod","absenceStatisticsForPeriod","getDateFromMonthYear","day","setMonth","setFullYear","setDate","getLatestDayOfMonth","APISTATE","salaryReportList","salaryDayReportList","salaryReportFilterYear","salaryReportFilterMonth","salaryReportFilterToYear","salaryReportFilterToMonth","salaryReportFilterEmployeeNumber","showYear","showEmpty","showToDate","salaryReportCsv","setSalaryReportList","setSalaryDayReportList","setSalaryReportFilterYear","setSalaryReportFilterMonth","setSalaryReportFilterToYear","setSalaryReportFilterToMonth","setSalaryReportFilterEmployeeNumber","setShowYear","setCompareDate","setShowEmpty","setShowToDate","setFromDate","setToDate","setSalaryReportCsv","addNewLine","identifier","times","reportRowName","newLine","rate","total","isUserDefined","dateFrom","performLookup","rootGetters","number","toString","getAllSalaryReport","salaryReports","partialSumRows","v","style","color","fontWeight","payrollRows","averageRows","general","totalSalaryRows","setYear","setToYear","setToMonth","setEmployeeNumber","employeeNumber","initYearMonth","salaryReportApiState","holidays","holidaysApiState","chosenHoliday","sidebarOpen","setHolidaysApiState","setHolidays","setChosenHoliday","setSidebarOpen","getHolidays","closeSidebar","updateHoliday","generateUUID","getTime","performance","now","newGuid","replace","Math","random","floor","compare","a","b","af","bf","freeInRow","compareEmployeeOrderNumber","orderNumber","compareOrderNumber","isActive","weekdays","isChecked","allocationsRepository","allocationForDay","endDateInclusive","isAllocatedForDay","dayBetween","start","end","totalDays","diff","employeeStatistics","formGroupTemplate","activeSidebar","isNewGroupTemplate","loadStatisticsStartDate","loadStatisticsEndDate","loadStatisticsGroupFilter","loadStatisticsRegionFilter","setStatisticsApiState","clearEmployeeStatistics","setEmployeeStatistics","pushToAllocations","filterAllocations","element","clearAllocations","pushToEmployeeStatistics","setActiveSidebar","setFormGroupTemplate","setFormGroupTemplateFromDate","setFormGroupTemplateToDate","setFormGroupTemplateState","itemState","setFormGroupTemplateAllocations","clearFormGroupTemplate","setIsNewGroupTemplate","sortEmployeeStatistics","compareMethod","sort","setFormGroupTemplateProperty","propertyName","setLoadStatisticsProperties","groupFilter","regionFilter","initializeStatistics","rootState","emp","f","dayGroup","em","isGroupReplacement","area","isStandIn","weekDayGroupId","weekendGroupId","maxWorkInRow","grp","baseCircleId","free","saturday","sunday","vacation","work","other","currentWorkInRow","standIn","finalizeStatistics","loadStatistics","getAggregate","setLoadStatisticsStartDate","setLoadStatisticsEndDate","alert","isTemplateManual","add","utc","groupTemplateId","comment","moveAllocations","daysToMove","allocationsToRepeat","isRepeated","updateManuel","repeatWeeks","planningWeeks","newAllocation","shiftCircle","saturdays","sundays","wDay","isoWeekday","generateFormGroupTemplate","startOf","isTemplateDynamic","isSaturdayWeekendGroup","days","cDay","indexDate","isHoliday","holidayStore","isSame","employeeDay","Set","circleTitle","adminNote","allocatedHoursPerDay","allocatedTotalHours","circleColor","circleName","created","employeeName","note","replacementName","isSimulation","getEmployeesForDay","compareDayGroupSaturDay","ae","be","as","bs","lookUp","daysFreeInRow","compareWeekDay","ad","bd","compareSaturday","compareSunday","compareStandIn","atWorkWeekSaturday","calc","added","dg","atWorkWeekSunday","atWork","atWorkWeekDays","weekDay","sortedDayGroup","grpResult","circleIds","workLoad","employeeStandIns","se","circleStandIn","getSimpleEmployeesForDay","dayFree","initAllocation","closeGroupTemplateSidebars","showGroupTemplateSelectionSidebar","showGroupTemplateEditSidebar","copyGroupTemplate","newFrom","newTo","newTotalDays","copyAllocations","root","groupTemplateStore","generateGroupTemplate","editGroupTemplate","initGroupTemplate","selectedGroup","atWorkHolidayWeekdays","atWorkHolidayWeekend","createGroupTemplateFromForm","updateGroupTemplateFromForm","prevFromDate","rw","Number","pw","weeks","spanInDays","templatePropertyChanged","selectedDate","vueTmp","buefyTmp","$buefy","dialog","confirm","cancelText","confirmText","onConfirm","onCancel","statisticsApiState","latestUpdateTextFormGroupTemplate","duration","_LatestUpdate","durationText","humanize","_UpdatedByName","selectedAllocations","addSelection","clearSelection","selectAllocation","hasEditRights","selectMoveTarget","rowData","rowDataKey","allocationRowDataKey","keys","awaitingSelection","allocationSelectionClass","isAllocationSelected","moveTargetClass","output","agreementsApiState","agreementApiState","editingAgreement","setAgreementsApiState","setAgreements","setAgreementApiState","setAgreement","agreementById","agreementByYear","agreementUpdate","agreementUpdateAll","cancelEditingAgreement","startEditingAgreement","GPSDataRepository","gpsDataApiState","gpsDataList","gpsDataFilterYear","gpsDataFilterMonth","gpsDataFilterEmployeeNumber","setGPSDataList","setGPSDataFilterYear","setGPSDataFilterMonth","setGPSDataFilterEmployeeNumber","getAllGPSData","groupMembers","availableGroupMembers","isOpen","setChosenAssistant","gm","isSelected","setRejectedAssistant","setIsOpen","setGroupMembers","setAvailableGroupMembers","setFilter","sidebarOpenAsync","markAssistantNumber","specificAssistant","rejectAll","agm","sidebarCancel","markedGroupMembers","updateParentView","searchForEmployee","searchTerm","toLowerCase","includes","elem","confirmationButtonText","confirmed","errorModalHeader","confirmingModel","setErrorModalHeader","header","setConfirmationButtonText","confirmationText","setConfirmed","setConfirmingModel","confrimationText","setConfirmedAndClose","emptyUserDriveData","assistant_Name","subType","timeInMinutes","remark","distance","createdDate","chr","approvedBy","approvedByUser","totalImposed","totalPreliminaryInvestigations","totalPreliminaryInvestigationsDonor","vgProject","vainVisits","onDayOff","report","selectedUserDriveData","types","backgroundColor","setReport","setSelectedUserDriveData","setSelectedType","typeData","typeStringified","setEmployeeId","setEmployeeName","setNewUserDriveData","newUserDriveData","assistant_Number","assistant_Uid","cancelSidebar","deleteItem","loading","showSidebar","sidebarHeaderText","rateRepository","rates","ratesApiState","rateApiState","editingRate","setRatesApiState","setRates","setRateApiState","setRate","cancelEditingRate","startEditingRate","SalaryManualInputRepository","csvModalOpen","discriminator","discriminatorOptions","selectedFile","setCsvOpenModal","setDiscriminator","setSelectedFile","setModalOpen","uploadFile","FormData","append","Vuex","Store","setCurrentUser","userInfo","setViewAs","employeeAndGroup","userLoaded","user","decoded","jwt","decode","access_token","Name","Role","email","Email","GroupId","icalendarKey","ICalendarKey","isSalaryReportOpen","IsSalaryReportOpen","userUnloaded","icalendar","clearViewAs","currentRole","viewAsGroup","allocationMoverStore","entrySidebar","metadata","scheduler","salaryReportStore","reportStore","notificationStore","groupStore","statisticsStore","agreementStore","gpsDataStore","generalStatisticsFilteringSidebar","confirmationModalStore","dtReportStore","salaryRateStore","csvModalStore","oidcStore","vuexOidcCreateStoreModule","dispatchEventsOnWindow","accessTokenExpiring","accessTokenExpired","silentRenewError","userSignedOut","oidcError","payload","automaticSilentRenewError","_s","staticStyle","$event","toggleDropdown","placeholder","_e","_l","selected","stopPropagation","arguments","directives","rawName","expression","class","ref","domProps","_k","keyCode","select","closeDropdown","navigateNext","navigatePrev","composing","filterInput","gindex","eindex","cursorOnItem","navigateClick","mixins","props","multiple","Boolean","default","String","beforeDestroy","cursor","$refs","focus","filteredEmployees","$nextTick","closable","$delete","$emit","$set","dictionary","current","groupName","lookedUpEmployee","processEmployee","relations","grouped","employeeNameSort","showPlaceholder","hasSelection","watch","newValue","count","nativeOn","openSidebar","showBell","pulse","toggle","_t","$slots","close","show","notificationLabel","showNotificationBell","callback","$$v","scopedSlots","_u","fn","proxy","path","signOutOidc","initials","parts","substring","windowHeight","innerHeight","windowWidth","innerWidth","mounted","addEventListener","onResize","generateUrl","showReplacementView","readOnlyForm","onChange","onRequestSplit","onRequestReplacement","onRequestReplacementRemove","onViewReplacement","editing","isOwnEntry","onUpdate","isOwnEntryValidForDeleting","onDelete","latestUpdateText","replacement","toggleEmployeeInfo","_m","employeeInfoOpen","employeeInfoRows","row","startDateComputed","readonly","modelUpdated","endDateComputed","onHoldUntilDateComputed","typeDisabled","avalilableCircles","splitComputed","formatAvailability","showReplacement","dayTypeComputed","daysReplacementTypeComputed","createNew","employeeInfoClosable","closeEmployeeInfo","getSelectorValue","showSelector","selector","isCurrentUser","isReadOnly","availableAllocationTypes","daysType","daysReplacementType","onHoldUntilDate","replacementNumber","filteredResult","canGroupReplace","bookedReplacements","employeeInfoFields","circlesWithoutOverallocations","arg","onClickAway","allowClose","openModal","setModel","delayClose","headerText","cancel","searchInput","search","removeAllSelectedCheckboxes","displayedGroupMembers","markAssistant","dateFormat","markAllFree","this$1","formatDate","formatTime","AppHeader","EntrySidebar","GroupCommentSidebar","AgreementSidebar","GeneralStatisticsFilterSidebar","HolidaySidebar","DtReportSidebar","SalaryRateSidebar","configurationRoutes","children","redirect","VueRouter","routes","meta","isPublic","router","base","linkActiveClass","beforeEach","vuexOidcCreateRouterMiddleware","toFixed","onClick","icon","require","library","faCheck","faCheckCircle","faInfoCircle","faExclamationTriangle","faExclamationCircle","faArrowUp","faAngleRight","faAngleLeft","faAngleDown","faPlus","faBars","faComment","faTimes","faStickyNote","faEye","faEyeSlash","faCaretDown","faCaretUp","faUpload","faEnvelope","faLock","faChevronLeft","faChevronRight","faBell","locale","VueMoment","config","productionTip","VSwatches","FontAwesomeIcon","Icon","Buefy","defaultIconComponent","defaultIconPack","defaultContainerElement","defaultModalScroll","h","App","$mount","webpackContext","webpackContextResolve","width","background","disabled","fontSize","padding","height","dropdownWidth","float","borderColor","toggleIsOpen","selectedName","nullValueText","selectionChanged","displayPropertyName","sourceList","keyPropertyName","localStorageProperty","selectedValue","selectedObject","localStorage","focussed","blurred","Dashboard","CalendarHome","$router","forTeam","asEmployeeParam","formattedDate","filterRegions","filteredNotifications","getStateLabel","_f","filteredReplacements","gotoCalenderReplacement","colorMap","replacementAllocationLabel","replacementAllocation","replacementAllocationAddDays","gotoCalender","employeeFilter","groupAllocation","tomorrow","newDate","filtered","filteredGroups","entryColor","notificationCount","important","entryLabel","circleLabel","nextDayEmployeeName","circlesLookup","entryStart","entryEnd","entryDuration","entryCircle","Model"],"mappings":"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","file":"js/app.4ea60050.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({\"about\":\"about\"}[chunkId]||chunkId) + \".\" + {\"about\":\"5a5f0b21\",\"chunk-03519b75\":\"2f0cf0eb\",\"chunk-0942952f\":\"88bc22c1\",\"chunk-11a55402\":\"fa484bd3\",\"chunk-143973b6\":\"8dc4d831\",\"chunk-186e8184\":\"1947462e\",\"chunk-1ed563a6\":\"f5e14b00\",\"chunk-202ed8bb\":\"5260c1a7\",\"chunk-22635d00\":\"a4585b77\",\"chunk-348bbac2\":\"ca80897e\",\"chunk-67614409\":\"4d2980e3\",\"chunk-994a5582\":\"b59889e2\",\"chunk-260c8fa7\":\"5a12dee0\",\"chunk-27363e12\":\"3b6b1600\",\"chunk-2a4e962f\":\"05f93d5b\",\"chunk-2b224dd4\":\"e5dd8adb\",\"chunk-2b6918eb\":\"e83b1599\",\"chunk-2d0abc2e\":\"09de5042\",\"chunk-2d228ea4\":\"a7173f16\",\"chunk-2d237165\":\"a6d0d9e6\",\"chunk-3bec8ba3\":\"e6e9fac1\",\"chunk-3cf5a993\":\"76f5d2d4\",\"chunk-43f9ee9e\":\"9424ccec\",\"chunk-47f2620c\":\"049fedfb\",\"chunk-4a857606\":\"8e18859d\",\"chunk-529a5d18\":\"95ccd605\",\"chunk-581ef988\":\"9556a057\",\"chunk-5efd9efb\":\"1a638442\",\"chunk-6700bbd9\":\"6ec302f3\",\"chunk-67da5850\":\"1da6ddbc\",\"chunk-6b3acf3d\":\"68b9f823\",\"chunk-70a697b7\":\"d4509159\",\"chunk-79e15962\":\"489f2128\",\"chunk-7a3f4035\":\"c2145b54\",\"chunk-7c5aefe8\":\"fa5ab11f\",\"chunk-8ce121a0\":\"9f56bf76\",\"chunk-be95eedc\":\"5d43e12d\",\"chunk-ceb8df70\":\"be63f460\",\"chunk-f408b9d4\":\"d5237147\",\"chunk-716b3f73\":\"edcc6317\",\"chunk-732654f6\":\"eebb34df\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-03519b75\":1,\"chunk-0942952f\":1,\"chunk-11a55402\":1,\"chunk-143973b6\":1,\"chunk-186e8184\":1,\"chunk-1ed563a6\":1,\"chunk-202ed8bb\":1,\"chunk-348bbac2\":1,\"chunk-67614409\":1,\"chunk-994a5582\":1,\"chunk-260c8fa7\":1,\"chunk-27363e12\":1,\"chunk-2a4e962f\":1,\"chunk-2b224dd4\":1,\"chunk-2b6918eb\":1,\"chunk-3bec8ba3\":1,\"chunk-3cf5a993\":1,\"chunk-43f9ee9e\":1,\"chunk-47f2620c\":1,\"chunk-4a857606\":1,\"chunk-529a5d18\":1,\"chunk-581ef988\":1,\"chunk-5efd9efb\":1,\"chunk-6700bbd9\":1,\"chunk-67da5850\":1,\"chunk-6b3acf3d\":1,\"chunk-70a697b7\":1,\"chunk-79e15962\":1,\"chunk-7a3f4035\":1,\"chunk-7c5aefe8\":1,\"chunk-8ce121a0\":1,\"chunk-be95eedc\":1,\"chunk-ceb8df70\":1,\"chunk-f408b9d4\":1,\"chunk-716b3f73\":1,\"chunk-732654f6\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({\"about\":\"about\"}[chunkId]||chunkId) + \".\" + {\"about\":\"e3b0c442\",\"chunk-03519b75\":\"36781d42\",\"chunk-0942952f\":\"73fe181c\",\"chunk-11a55402\":\"c23a9198\",\"chunk-143973b6\":\"9a79d9a8\",\"chunk-186e8184\":\"f45c5f39\",\"chunk-1ed563a6\":\"164da013\",\"chunk-202ed8bb\":\"1314cf65\",\"chunk-22635d00\":\"e3b0c442\",\"chunk-348bbac2\":\"9eaa1e65\",\"chunk-67614409\":\"969a39a7\",\"chunk-994a5582\":\"ef51b8e5\",\"chunk-260c8fa7\":\"5dcbe3d5\",\"chunk-27363e12\":\"b155ebf3\",\"chunk-2a4e962f\":\"d8b8481f\",\"chunk-2b224dd4\":\"b5bea41b\",\"chunk-2b6918eb\":\"b38c5fa2\",\"chunk-2d0abc2e\":\"e3b0c442\",\"chunk-2d228ea4\":\"e3b0c442\",\"chunk-2d237165\":\"e3b0c442\",\"chunk-3bec8ba3\":\"3ca09a1a\",\"chunk-3cf5a993\":\"7e0201d4\",\"chunk-43f9ee9e\":\"c753cf29\",\"chunk-47f2620c\":\"b9c6b512\",\"chunk-4a857606\":\"6adee4d2\",\"chunk-529a5d18\":\"d8b8481f\",\"chunk-581ef988\":\"e44a68fc\",\"chunk-5efd9efb\":\"c39f106a\",\"chunk-6700bbd9\":\"66fac598\",\"chunk-67da5850\":\"1e5f501f\",\"chunk-6b3acf3d\":\"68272489\",\"chunk-70a697b7\":\"2d9e5d87\",\"chunk-79e15962\":\"7e406b04\",\"chunk-7a3f4035\":\"c99630b8\",\"chunk-7c5aefe8\":\"fe902b62\",\"chunk-8ce121a0\":\"a56fdf6a\",\"chunk-be95eedc\":\"f150c44e\",\"chunk-ceb8df70\":\"6060b6fc\",\"chunk-f408b9d4\":\"345d63cc\",\"chunk-716b3f73\":\"a66dfdc8\",\"chunk-732654f6\":\"85ad9c75\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import moment, { ISO_8601 } from 'moment';\r\n\r\nconst employees = [];\r\n\r\nconst circles = [];\r\n\r\nconst gpsData = [];\r\n\r\nconst allocations = [];\r\nconst regions = [\r\n { id: null, name: 'Alle regioner' }, \r\n {id: \"syd\", name: \"syd\"}, \r\n {id: \"nord\", name: \"nord\"}, \r\n //{id: \"begge\", name: \"begge\"}\r\n];\r\n\r\nconst allocationTypes = [\r\n { key: 'TIMEOFF', label: 'Afspadsering', shortName: 'Afs', isVisible: true },\r\n { key: 'WORK', label: 'Arbejde', shortName: 'Arb', isVisible: true },\r\n { key: 'WORKINGSATURDAY', label: 'Arbejde lørdag', shortName: 'Arb', isVisible: false },\r\n { key: 'WORKINGSUNDAY', label: 'Arbejde søndag', shortName: 'Arb', isVisible: false },\r\n { key: 'WORKINGHOLIDAY', label: 'Arbejde helligdag', shortName: 'Arb', isVisible: false },\r\n { key: 'OTHER', label: 'Andet', shortName: 'And', isVisible: true },\r\n { key: 'FUNERAL', label: 'Begravelse', shortName: 'Beg', isVisible: true },\r\n { key: 'MATERNETY', label: 'Barsel', title: 'Barsel betalt af viking', shortName: 'Bar', isVisible: true },\r\n { key: 'VACATION', label: 'Ferie', shortName: 'Fer', isVisible: true },\r\n { key: 'ABSENCE', label: 'Fravær', shortName: 'Fra', isVisible: true },\r\n { key: 'OFFDAY', label: 'Fridag', shortName: 'Fri', isVisible: true },\r\n { key: 'OFFDAYREPLACEMENT', label: 'Ledig', shortName: 'Led', isVisible: false },\r\n { key: 'BIRTHDAY', label: 'Fødselsdage (rund fødselsdag)', shortName: 'Fød', isVisible: true },\r\n { key: 'WORKHOLEDAY', label: 'Heldagsarbejde (husk bemærking eg. livestock)', shortName: 'Hel', isVisible: true },\r\n { key: 'HOLIDAY', label: 'Helligdag', shortName: 'Hel', isVisible: true },\r\n { key: 'ANNIVERSARY', label: 'Jubilæum mv.', shortName: 'Jub', isVisible: true },\r\n { key: 'MATERNETYNONPAID', label: 'Orlov', title: 'Orlov ikke betalt af viking', shortName: 'Orl', isVisible: true},\r\n { key: 'VACATIONSICKDAY', label: 'Sygdom under ferie', shortName: 'Syg Fer', isVisible: true },\r\n { key: 'SICKDAY', label: 'Sygedag', shortName: 'Syg', isVisible: true },\r\n { key: 'SICKDAYCHILD', label: 'Sygedag - Barnets første', shortName: 'Syg', isVisible: true },\r\n { key: 'SICKDAYWORK', label: 'Sygedag - Arbejdsrelateret', shortName: 'Syg', isVisible: true },\r\n { key: 'SICKDAYUNAVAILABLE', label: 'Sygedag - Ikke tilgængelig', shortName: 'Syg', isVisible: true },\r\n { key: 'SICKREPLACEMENT', label: 'Sygdomsafløsning', shortName: 'SAL', isVisible: true}\r\n];\r\n\r\nconst forecasts = [];\r\n\r\nconst milestones = [];\r\n\r\nconst overAllocations = []\r\n\r\nlet groups = [];\r\n\r\nexport { circles, employees, allocations, allocationTypes, forecasts, milestones, overAllocations, groups, regions };","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","import axios from 'axios';\r\nimport constants from '../constants';\r\n// import authService from '../auth/AuthService'; // acquire token from getters['oidcStore/oidcAccessToken']\r\nimport moment from 'moment';\r\nimport { employees } from './devdata';\r\nimport AppUsersClient from \"../clients/AppUsersClient\";\r\n\r\nconst resource = '/gpsdata';\r\n\r\nexport default {\r\n getGPSDataList(dto) {\r\n return new Promise((resolve, reject) => {\r\n AppUsersClient.get(`${resource}/GetGPSDataBeforeGivenClock/${dto.assistantNumber}?fromdate=${moment(dto.fromDate).format('YYYY-MM-DD')}&todate=${moment(dto.toDate).format('YYYY-MM-DD')}`)\r\n .then(response => {\r\n resolve(response.data)\r\n })\r\n .catch(error => {\r\n reject(error)\r\n });\r\n });\r\n },\r\n updateGPSData(gpsData){\r\n return new Promise((resolve, reject) => {\r\n AppUsersClient.put(`${resource}/Update`, gpsData)\r\n .then(response => {\r\n resolve(response.data)\r\n })\r\n .catch(error => {\r\n reject(error)\r\n });\r\n });\r\n }\r\n}","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&lang=scss&\"","import axios from 'axios';\r\nimport constants from '@/constants';\r\n// import authService from '../auth/AuthService'; // acquire token from getters['oidcStore/oidcAccessToken']\r\nimport moment from 'moment';\r\nimport { milestones } from './devdata';\r\n\r\nexport default {\r\n getForPeriod(startDate, endDate, teamFilter) {\r\n return new Promise((resolve, reject) => { resolve(milestones); });\r\n // return new Promise(function(resolve, reject) {\r\n // authService.acquireToken(['api://6b77f60e-8f2e-4d88-8f34-fb827da6f495/planning.read'])\r\n // .then(accessToken => {\r\n // const headers = { 'Authorization': `Bearer ${accessToken}` };\r\n // const options = {\r\n // headers\r\n // };\r\n // axios.get(`${constants.planningApiBasePath}/milestones/?fromdate=${moment(startDate).format('YYYY-MM-DD')}&todate=${moment(endDate).format('YYYY-MM-DD')}&forteam=${(teamFilter ? teamFilter : '')}`, options)\r\n // .then(response => {\r\n // resolve(response);\r\n // })\r\n // .catch(error => {\r\n // reject(error);\r\n // });\r\n // }).catch(error => {\r\n // reject(error);\r\n // });\r\n // });\r\n },\r\n create(\r\n name,\r\n milestoneType,\r\n projectId,\r\n date,\r\n percentageCompleted,) {\r\n return new Promise((resolve, reject) => { resolve(); });\r\n // return new Promise(function(resolve, reject) {\r\n // authService.acquireToken(['api://6b77f60e-8f2e-4d88-8f34-fb827da6f495/planning.manage'])\r\n // .then(accessToken => {\r\n // const headers = { 'Authorization': `Bearer ${accessToken}` };\r\n // const options = {\r\n // headers\r\n // };\r\n // axios\r\n // .post(`${constants.planningApiBasePath}/milestones`, {\r\n // name: name,\r\n // projectId: projectId,\r\n // milestoneType: milestoneType,\r\n // date: date,\r\n // percentageCompleted: percentageCompleted,\r\n // }, options)\r\n // .then(response => {\r\n // resolve(response);\r\n // })\r\n // .catch(error => {\r\n // reject(error);\r\n // });\r\n // }).catch(error => {\r\n // reject(error);\r\n // });\r\n // });\r\n },\r\n update(milestone) {\r\n return new Promise((resolve, reject) => { resolve(milestone); });\r\n // return new Promise(function(resolve, reject) {\r\n // authService.acquireToken(['api://6b77f60e-8f2e-4d88-8f34-fb827da6f495/planning.manage'])\r\n // .then(accessToken => {\r\n // const headers = { 'Authorization': `Bearer ${accessToken}` };\r\n // const options = {\r\n // headers\r\n // };\r\n // axios\r\n // .put(`${constants.planningApiBasePath}/milestones`, milestone, options)\r\n // .then(response => {\r\n // resolve(response);\r\n // })\r\n // .catch(error => {\r\n // reject(error);\r\n // });\r\n // }).catch(error => {\r\n // reject(error);\r\n // });\r\n // });\r\n },\r\n delete(milestoneId, updateTag) {\r\n return new Promise((resolve, reject) => { resolve([]); });\r\n // return new Promise(function(resolve, reject) {\r\n // authService.acquireToken(['api://6b77f60e-8f2e-4d88-8f34-fb827da6f495/planning.manage'])\r\n // .then(accessToken => {\r\n // const headers = { 'Authorization': `Bearer ${accessToken}` };\r\n // const options = {\r\n // headers\r\n // };\r\n // axios\r\n // .delete(`${constants.planningApiBasePath}/milestones/${milestoneId}?updateTag=${updateTag}`, options)\r\n // .then(response => {\r\n // resolve(response);\r\n // })\r\n // .catch(error => {\r\n // reject(error);\r\n // });\r\n // }).catch(error => {\r\n // reject(error);\r\n // });\r\n // });\r\n },\r\n};\r\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EntryForm.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"calendar-home\"},[_c('b-loading',{attrs:{\"is-full-page\":false,\"active\":_vm.isLoading}}),_c('div',{staticClass:\"c-tabs\"},[_c('router-link',{staticClass:\"c-tab\",attrs:{\"to\":\"/calendar/group-overview\"}},[_vm._v(\"Gruppe oversigt\")]),_c('router-link',{staticClass:\"c-tab\",attrs:{\"to\":\"/calendar/my-calendar\"}},[_vm._v(\"Min kalender\")])],1),_c('div',{staticClass:\"admin-panel\"},[_c('employee-selector',{attrs:{\"placeholder\":\"Vis som...\",\"currentUser\":_vm.currentUser,\"showAll\":_vm.isAdmin || _vm.isReplacement},on:{\"selection-changed\":_vm.viewAs}})],1),_c('div',[_c('router-view',{on:{\"onUpdated\":_vm.onUpdated,\"onSplit\":_vm.onSplit,\"loadMore\":_vm.loadMore}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n\r\n \r\n Gruppe oversigt\r\n Min kalender\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=6e4076f8&\"\nimport script from \"./Home.vue?vue&type=script&lang=js&\"\nexport * from \"./Home.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Home.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import AppUsersClient from \"../clients/AppUsersClient\";\r\nconst resource = '/appusers';\r\n\r\nexport default {\r\n getAll() {\r\n return AppUsersClient.get(`${resource}`);\r\n },\r\n getOne(id) {\r\n return AppUsersClient.get(`${resource}/${id}`);\r\n },\r\n registerAppUser(userDto) {\r\n return AppUsersClient.post(`${resource}`, userDto);\r\n },\r\n updateAppUser(userDto) {\r\n return AppUsersClient.put(`${resource}`, userDto);\r\n },\r\n setAppUserPassword(id, form) {\r\n return AppUsersClient.post(`${resource}/${id}/password`, form);\r\n },\r\n deleteUser(id) {\r\n return AppUsersClient.delete(`${resource}/${id}`);\r\n }\r\n}\r\n","import AppUsersClient from \"../clients/AppUsersClient\";\r\nimport moment from 'moment';\r\nconst resource = '/groupcomment';\r\n\r\nexport default {\r\n getOne(id) {\r\n return AppUsersClient.get(`${resource}/${id}`);\r\n },\r\n get(fromDate, toDate, forGroup) {\r\n return AppUsersClient.get(`${resource}`, { \r\n params: { \r\n fromDate: moment(fromDate).format('YYYY-MM-DD'),\r\n toDate: moment(toDate).format('YYYY-MM-DD'),\r\n forGroup: forGroup ? forGroup : ''\r\n }\r\n });\r\n },\r\n getForDayAndGroup(forDate, forGroup) {\r\n return AppUsersClient.get(`${resource}/${moment(forDate).format('YYYY-MM-DD')}/${forGroup ? forGroup : ''}`);\r\n },\r\n createOrUpdate(groupCommentForm) {\r\n return AppUsersClient.post(`${resource}`, groupCommentForm);\r\n },\r\n getGroupCommentsDashboard(fromDate, toDate) {\r\n return AppUsersClient.get(`${resource}/getDashboard/`, { \r\n params: { \r\n fromDate: moment(fromDate).format('YYYY-MM-DD'),\r\n toDate: moment(toDate).format('YYYY-MM-DD')\r\n }\r\n });\r\n },\r\n};\r\n","import moment from 'moment';\r\nimport AppUsersClient from \"../clients/AppUsersClient\";\r\n\r\nconst resource = '/notification';\r\n\r\nexport default {\r\n getForPeriod(startDate, endDate, forRegion) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.get(`${resource}/?fromdate=${moment(startDate).format('YYYY-MM-DD')}&todate=${moment(endDate).format('YYYY-MM-DD')}&forRegion=${(forRegion ? forRegion : '')}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n create(dto) { // Takes an allocation\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.post(`${resource}`, dto)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n update(dto) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.put(`${resource}`, dto)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n delete(notificationId, updateTag) { \r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.delete(`${resource}/${notificationId}/${updateTag}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getNotificationFromAllocation(id) { \r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.get(`${resource}/getNotificationFromAllocation/${id}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n};\r\n","// import axios from 'axios';\r\n// import constants from '../constants';\r\n// import authService from '../auth/AuthService';\r\nimport moment from \"moment\";\r\nimport AppUsersClient from \"../clients/AppUsersClient\";\r\n\r\nconst resource = \"/report\";\r\n\r\nexport default {\r\n // Get's data for a given period and group. Group is mandatory. Data is grouped by type and user\r\n getReportForPeriod(startDate, endDate, forGroup) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(\r\n `${resource}/getReportForPeriod/?fromdate=${moment(startDate).format(\r\n \"YYYY-MM-DD\"\r\n )}&todate=${moment(endDate).format(\"YYYY-MM-DD\")}&forGroup=${\r\n forGroup ? forGroup : \"\"\r\n }`\r\n )\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n // Get's data for a given period and region. Region is mandatory. Data is grouped by type\r\n getReplacementReportForPeriod(startDate, endDate, forRegion) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(\r\n `${resource}/getReplacementReportForPeriod/?fromdate=${moment(\r\n startDate\r\n ).format(\"YYYY-MM-DD\")}&todate=${moment(endDate).format(\r\n \"YYYY-MM-DD\"\r\n )}&forRegion=${forRegion ? forRegion : \"\"}`\r\n )\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n // Get's data for a given period and region. Region is mandatory. Data is grouped by type\r\n getGeneralReportForPeriod(startDate, endDate, forGroup, forRegion) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(\r\n `${resource}/getGeneralReportForPeriod/?fromdate=${moment(\r\n startDate\r\n ).format(\"YYYY-MM-DD\")}&todate=${moment(endDate).format(\r\n \"YYYY-MM-DD\"\r\n )}&forGroup=${forGroup ? forGroup : \"\"}&forRegion=${\r\n forRegion ? forRegion : \"\"\r\n }`\r\n )\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n // Get's monthly data for a given period and group\\user. Group\\User is mandatory. Data is grouped by month\r\n getAbsenceStatisticsForPeriod(startDate, endDate, forGroup, forUser) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(\r\n `${resource}/getAbsenceStatisticsForPeriod/?fromdate=${moment(\r\n startDate\r\n ).format(\"YYYY-MM-DD\")}&todate=${moment(endDate).format(\r\n \"YYYY-MM-DD\"\r\n )}&forGroup=${forGroup ? forGroup : \"\"}&forUser=${\r\n forUser ? forUser : \"\"\r\n }`\r\n )\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n // Get's monthly data for a given period and group\\user. Group\\User is mandatory. Data is grouped by month\r\n getDriveReportForPeriod(startDate, endDate, forGroup) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(\r\n `${resource}/getDriveReportForPeriod/?fromdate=${moment(\r\n startDate\r\n ).format(\"YYYY-MM-DD\")}&todate=${moment(endDate).format(\r\n \"YYYY-MM-DD\"\r\n )}&forGroup=${forGroup ? forGroup : \"\"}`\r\n )\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n // Get's monthly data for a given period and group\\user. Group\\User is mandatory. Data is grouped by month\r\n getTimeOffForPeriod(startDate, endDate, forGroup) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(\r\n `${resource}/getTimeOffForPeriod/?fromdate=${moment(startDate).format(\r\n \"YYYY-MM-DD\"\r\n )}&todate=${moment(endDate).format(\"YYYY-MM-DD\")}&forGroup=${\r\n forGroup ? forGroup : \"\"\r\n }`\r\n )\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n // Get's monthly report for a given year and user. User is mandatory. Data is grouped by day\r\n getMonthReport(year, month, forUser) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(\r\n `${resource}/getMonthReport/?year=${year}&month=${month}&forUser=${\r\n forUser ? forUser : \"\"\r\n }`\r\n )\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n approveAllMonthReport(year, month, forUser) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.post(`${resource}/approveAllMonthReport`, {\r\n year: year,\r\n month: month,\r\n forUser: forUser,\r\n })\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n approveMonthReport(date, forUser) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.post(`${resource}/approveMonthReport`, {\r\n date: moment(date).format(\"YYYY-MM-DD\"),\r\n forUser: forUser,\r\n })\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n // Get's monthly report for a given year and group. Group is mandatory. Data is grouped by day\r\n getMonthGroupReport(year, month, forGroup, forRegion) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(\r\n `${resource}/getMonthGroupReport/?year=${year}&month=${month}&forGroup=${\r\n forGroup ? forGroup : \"\"\r\n }&forRegion=${forRegion ? forRegion : \"\"}`\r\n )\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getYearlyReport(year, forUser) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(\r\n `${resource}/getYearlyReport/?year=${year}&forUser=${\r\n forUser ? forUser : \"\"\r\n }`\r\n )\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getReportNotification(employeeId) {\r\n let requestUrl = employeeId\r\n ? `${resource}/getReportNotification?employeeId=${employeeId}`\r\n : `${resource}/getReportNotification`;\r\n\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(requestUrl)\r\n .then((response) => {\r\n resolve(response);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getDTReport(employeeId, year, month) {\r\n let requestUrl = `${resource}/getDtReport?assistantNumber=${employeeId}&year=${year}&month=${month}`;\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(requestUrl)\r\n .then((response) => {\r\n console.log(response.data);\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n updateDTReport(data) {\r\n let requestUrl = `${resource}/updateDtReport`;\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.put(requestUrl, data)\r\n .then((response) => {\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n deleteDTReport(id){\r\n let requestUrl = `${resource}/deleteDtReport/${id}`;\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.delete(requestUrl)\r\n .then((response) => {\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getSalaryReport(employeeId, fromDate, toDate, compareDate, userDefined) {\r\n let requestUrl = `${resource}/getSalaryReport?assistantNumber=${employeeId}&fromDate=${fromDate.toJSON()}&toDate=${toDate.toJSON()}&compareDate=${compareDate}&userDefined=${userDefined}`;\r\n\r\n return new Promise( function ( resolve, reject ) {\r\n AppUsersClient.get( requestUrl )\r\n .then( ( response ) => {\r\n resolve( response.data );\r\n } )\r\n .catch( ( error ) => {\r\n reject( error );\r\n } );\r\n } );\r\n },\r\n getSalaryDayReport(employeeId, fromDate) {\r\n let requestUrl = `${resource}/getSalaryDayReport?assistantNumber=${employeeId}&fromDate=${fromDate.toJSON()}`;\r\n\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(requestUrl)\r\n .then((response) => {\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getSalaryHerdDayReport(employeeId, herdNumber, fromDate) {\r\n let requestUrl = `${resource}/getSalaryHerdDayReport?assistantNumber=${employeeId}&herdNumber=${herdNumber}&fromDate=${fromDate.toJSON()}`;\r\n\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(requestUrl)\r\n .then((response) => {\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n processReportSalaryEmployee(data) {\r\n let requestUrl = `${resource}/processReportSalaryEmployee`;\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.put(requestUrl, data)\r\n .then((response) => {\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n lockReportSalaryEmployee(data) {\r\n let requestUrl = `${resource}/lockReportSalaryEmployee`;\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.put(requestUrl, data)\r\n .then((response) => {\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n unlockReportSalaryEmployee(data) {\r\n let requestUrl = `${resource}/unlockReportSalaryEmployee`;\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.put(requestUrl, data)\r\n .then((response) => {\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n updateReportSalaryEmployee(data) {\r\n let requestUrl = `${resource}/updateReportSalaryEmployee`;\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.put(requestUrl, data)\r\n .then((response) => {\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n exportSalaryReportCsv(dto) {\r\n let requestUrl = `${resource}/exportSalaryReportCsv/?year=${dto.date.getFullYear()}`;\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(requestUrl)\r\n .then((response) => {\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n }\r\n};\r\n","// import axios from 'axios';\r\n// import constants from '../constants';\r\n// import authService from '../auth/AuthService';\r\nimport moment from 'moment';\r\nimport AppUsersClient from \"../clients/AppUsersClient\";\r\n\r\nconst resource = '/holiday';\r\n\r\n\r\nexport default {\r\n // Get's data for a given period and group. Group is mandatory. Data is grouped by type and user\r\n getAll() {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.get(`${resource}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n }, \r\n update(holiday) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.put(`${resource}`, holiday)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n } \r\n };","// import axios from 'axios';\r\n// import constants from '../constants';\r\n// import authService from '../auth/AuthService';\r\nimport moment from 'moment';\r\nimport AppUsersClient from \"../clients/AppUsersClient\";\r\n\r\nconst resource = '/grouptemplate';\r\n\r\nexport default {\r\n getAllForGroup(forGroup) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.get(`${resource}/getAllForGroup/?forGroup=${(forGroup ? forGroup : '')}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n }, \r\n create(groupTemplate) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient\r\n .post(`${resource}`, groupTemplate)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n update(groupTemplate) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient\r\n .put(`${resource}`, groupTemplate)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n apply(groupTemplate) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient\r\n .post(`${resource}/apply`, groupTemplate)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n canApply(groupTemplate) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient\r\n .post(`${resource}/canApply`, groupTemplate)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n loadGroupTemplateAllocation(dto) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.get(`${resource}/loadGroupTemplateAllocation/?id=${dto.id}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n createGroupTemplateAllocation(dto) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.post(`${resource}/createGroupTemplateAllocation`, dto)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n updateGroupTemplateAllocation(dto) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.put(`${resource}/updateGroupTemplateAllocation`, dto)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n deleteGroupTemplateAllocation(dto) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.post(`${resource}/deleteGroupTemplateAllocation`, dto)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n rollbackGroupTemplate(groupTemplate) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient\r\n .post(`${resource}/reverse`, groupTemplate)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n};","import AppUsersClient from \"../clients/AppUsersClient\";\r\nimport moment from 'moment';\r\n\r\nconst resource = '/SalaryManualInput';\r\n\r\nexport default {\r\n uploadCsv ( file ) {\r\n console.log( file.get( 'discriminator' ) );\r\n return new Promise( function ( resolve, reject ) {\r\n AppUsersClient.post( `${resource}/upload`, file )\r\n .then( response => {\r\n resolve( response );\r\n } )\r\n .catch( error => {\r\n console.log( error );\r\n reject( error );\r\n } );\r\n } );\r\n },\r\n};\r\n","import moment from 'moment';\r\nimport { groups } from './devdata';\r\nimport AppUsersClient from \"../clients/AppUsersClient\";\r\n\r\nconst resource = '/employeeagreement';\r\n\r\nexport default {\r\n getById: (employeeId, year) => AppUsersClient.get(`${resource}/${employeeId}/${year}`),\r\n getAllForYear: (year) => AppUsersClient.get(`${resource}/getAllForYear/${year}`),\r\n update(agreement) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient\r\n .put(`${resource}`, agreement)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n updateAll(agreements) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient\r\n .put(`${resource}/updateAll`, agreements)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n }\r\n};\r\n","import moment from 'moment';\r\nimport { groups } from './devdata';\r\nimport AppUsersClient from \"../clients/AppUsersClient\";\r\n\r\nconst resource = '/salaryrate';\r\n\r\nexport default {\r\n getAllSalaryRatesForYear: (year) => AppUsersClient.get(`${resource}/getAllSalaryRatesForYear/${year}`),\r\n updateSalaryRate(dto) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient\r\n .put(`${resource}/updateSalaryRate`, dto)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n createSalaryRate(dto) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient\r\n .post(`${resource}/createSalaryRate`, dto)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n }\r\n};\r\n","import AppUsersRepository from './AppUsersRepository';\r\nimport allocations from './allocations';\r\nimport circlesRepository from './circlesRepository';\r\nimport employees from './employees';\r\nimport forecasts from './forecasts';\r\nimport groups from './groups';\r\nimport milestones from './milestones';\r\nimport overallocations from './overallocations';\r\nimport GroupCommentRepository from './GroupCommentRepository';\r\nimport notificationsRepository from './notificationsRepository';\r\nimport reportRepository from './reportRepository';\r\nimport holidayRepository from './holidayRepository';\r\nimport groupTemplateRepository from './groupTemplateRepository';\r\nimport salaryManualInputRepository from './salaryManualInputRepository';\r\nimport agreementRepository from './agreementRepository';\r\nimport gpsDataRepository from './gpsDataRepository';\r\nimport salaryRatesRepository from './salaryRatesRepository';\r\n\r\nconst repositories = {\r\n \"appUsers\": AppUsersRepository,\r\n \"groupComments\": GroupCommentRepository,\r\n allocations,\r\n \"circles\": circlesRepository,\r\n employees,\r\n forecasts,\r\n groups,\r\n milestones,\r\n overallocations,\r\n 'notifications': notificationsRepository,\r\n 'reports': reportRepository,\r\n holidayRepository,\r\n groupTemplateRepository,\r\n agreementRepository,\r\n gpsData: gpsDataRepository,\r\n salaryRatesRepository: salaryRatesRepository,\r\n salaryManualInput: salaryManualInputRepository\r\n};\r\n\r\nexport default {\r\n get: name => repositories[ name ]\r\n};\r\n","export const apiConfig = JSON.parse(process.env.VUE_APP_API_CONFIG);","import axios from 'axios';\r\nimport store from '../store/';\r\nimport { apiConfig } from '../config/apiConfig';\r\n\r\nconst baseDomain = `${apiConfig.url}`;\r\nconst baseURL = `${baseDomain}`;\r\n\r\nconst axiosClient = axios.create({\r\n baseURL,\r\n headers: {\r\n 'crossorigin': 'true',\r\n 'Content-Type': 'application/json'\r\n }\r\n});\r\n\r\naxiosClient.interceptors.request.use(req => {\r\n req.headers.authorization = `Bearer ${store?.getters['oidcStore/oidcAccessToken']}`;\r\n return req;\r\n});\r\n\r\nexport default axiosClient;\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GeneralStatisticsFilterSidebar.vue?vue&type=style&index=0&lang=scss&\"","export default {\r\n INIT: 0,\r\n LOADING: 1,\r\n ERROR: 2,\r\n LOADED: 3\r\n};\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","export const oidcSettings = JSON.parse(process.env.VUE_APP_OIDC_CONFIG);","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalendarSmall.vue?vue&type=style&index=0&id=2684443f&lang=scss&scoped=true&\"","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","import axios from 'axios';\r\nimport constants from '../constants';\r\n// import authService from '../auth/AuthService'; // acquire token from getters['oidcStore/oidcAccessToken']\r\nimport moment from 'moment';\r\nimport { employees } from './devdata';\r\nimport AppUsersClient from \"../clients/AppUsersClient\";\r\n\r\nconst resource = '/employee';\r\n\r\nexport default {\r\n getActive () {\r\n return new Promise( function ( resolve, reject ) {\r\n AppUsersClient.get( `${resource}/employees` )\r\n .then( response => {\r\n resolve( response.data );\r\n } )\r\n .catch( error => {\r\n reject( error );\r\n } );\r\n } );\r\n },\r\n getActiveInPeriod ( startDate, endDate ) {\r\n return new Promise( function ( resolve, reject ) {\r\n AppUsersClient.get( `${resource}/employeesByGivenPeriod?fromDate=${moment( startDate ).format( 'YYYY-MM-DD' )}&toDate=${moment( endDate ).format( 'YYYY-MM-DD' )}` )\r\n .then( response => {\r\n resolve( response.data );\r\n } )\r\n .catch( error => {\r\n reject( error );\r\n } );\r\n } );\r\n },\r\n getReplacements ( region ) {\r\n return new Promise( function ( resolve, reject ) {\r\n AppUsersClient.get( `${resource}/replacements/?region=${( region ? region : '' )}` )\r\n .then( response => {\r\n resolve( response );\r\n } )\r\n .catch( error => {\r\n reject( error );\r\n } );\r\n } );\r\n },\r\n getReplacementsForDate ( date, region ) {\r\n return new Promise( function ( resolve, reject ) {\r\n AppUsersClient.get( `${resource}/replacementsForDate/?date=${moment( date ).format( 'YYYY-MM-DD' )}®ion=${( region ? region : '' )}` )\r\n .then( response => {\r\n resolve( response );\r\n } )\r\n .catch( error => {\r\n reject( error );\r\n } );\r\n } );\r\n },\r\n getAllEmployees () {\r\n return new Promise( function ( resolve, reject ) {\r\n AppUsersClient.get( `${resource}/getAllEmployees` )\r\n .then( response => {\r\n resolve( response );\r\n } )\r\n .catch( error => {\r\n reject( error );\r\n } );\r\n } );\r\n },\r\n getEmployees () {\r\n return new Promise( function ( resolve, reject ) {\r\n AppUsersClient.get( `${resource}/getEmployees` )\r\n .then( response => {\r\n resolve( response.data );\r\n } )\r\n .catch( error => {\r\n reject( error );\r\n } );\r\n } );\r\n },\r\n getAvailableEmployees: ( forGroup, forDate ) => AppUsersClient.get( `${resource}/getAvailableEmployees/${forGroup}/${moment( forDate ).format( 'YYYY-MM-DD' )}` ),\r\n\r\n};","module.exports = __webpack_public_path__ + \"img/viking-logo-white-cropped.d016fcc3.svg\";","import AppUsersClient from \"../clients/AppUsersClient\";\r\nimport moment from 'moment';\r\n\r\nconst resource = '/overallocations';\r\n\r\nexport default {\r\n getForPeriod(startDate, endDate, forGroup) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.get(`${resource}/?fromdate=${moment(startDate).format('YYYY-MM-DD')}&todate=${moment(endDate).format('YYYY-MM-DD')}&forGroup=${(forGroup ? forGroup : '')}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n};\r\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupCommentSidebar.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EntrySidebar.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfirmationModal.vue?vue&type=style&index=0&id=d69077ea&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HolidaySidebar.vue?vue&type=style&index=0&lang=scss&\"","let openResolve, openReject;\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n entryModel: undefined\r\n },\r\n mutations: {\r\n setEntryModel: (state, entry) => {\r\n state.entryModel = entry;\r\n }\r\n },\r\n actions: {\r\n // Open sidebar and return a promise to be fulfilled when the user presses Update or Cancel.\r\n entrySidebarOpenAsync: ({commit}, entry) => {\r\n commit('setEntryModel', {...entry});\r\n return new Promise((resolve, reject) => {\r\n openResolve = resolve;\r\n openReject = reject;\r\n })\r\n },\r\n entrySidebarOpen: ({commit}, entry) => {\r\n commit('setEntryModel', {...entry});\r\n },\r\n\r\n // Update \r\n entrySidebarUpdate: ({commit,state}, model) => {\r\n if (openResolve instanceof Function) {\r\n openResolve({ action: 'update', model: model});\r\n }\r\n commit('setEntryModel', undefined);\r\n },\r\n\r\n // Notification \r\n entrySidebarNotification: ({commit,state}) => {\r\n if (openResolve instanceof Function) {\r\n \r\n openResolve({ action: 'notification', model: state.entryModel});\r\n }\r\n commit('setEntryModel', undefined);\r\n },\r\n\r\n // Delete\r\n entrySidebarDelete: ({commit, state}) => {\r\n if (openResolve instanceof Function) {\r\n openResolve({ action: 'delete', model: state.entryModel});\r\n }\r\n commit('setEntryModel', undefined);\r\n },\r\n\r\n // Cancel\r\n entrySidebarCancel: ({commit, state}) => {\r\n if (openResolve instanceof Function) {\r\n openResolve({ action: 'cancel', model: state.entryModel});\r\n }\r\n commit('setEntryModel', undefined);\r\n },\r\n // Update \r\n entrySidebarViewUpdate: ({commit,state}, entry) => {\r\n if(entry) { \r\n commit('setEntryModel', {...entry});\r\n }\r\n },\r\n // Update \r\n entrySidebarSplit: ({commit,state}) => {\r\n if (openResolve instanceof Function) {\r\n openResolve({ action: 'split', model: state.entryModel});\r\n }\r\n commit('setEntryModel', undefined);\r\n },\r\n },\r\n getters: {\r\n entrySidebarModel: (state) => state.entryModel\r\n }\r\n}","import Repository from '@/repositories/RepositoryFactory';\r\nimport ENUM from '../../enums/APISTATE';\r\nimport store from '../';\r\nimport moment from 'moment';\r\n\r\nconst AppUsersRepository = Repository.get('appUsers');\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n apiState: ENUM.INIT,\r\n appUser: {},\r\n appUsers: [],\r\n myAppUser: {},\r\n employments: [],\r\n role: \"\"\r\n },\r\n mutations: {\r\n setApiState: (state, apiState) => {\r\n state.apiState = apiState;\r\n },\r\n setAppUser(state, appUserResponse) {\r\n const { data } = appUserResponse;\r\n if ( data )\r\n {\r\n data.employments.forEach( e => {\r\n e.fromDate = new Date( e.fromDate );\r\n e.toDate = e.toDate ? new Date( e.toDate ) : null;\r\n e.isEditing = false;\r\n } );\r\n }\r\n state.employments = data.employments;\r\n state.role = data.role;\r\n state.appUser = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n addEmptyEmployment(state){\r\n if(!state.appUser.employments){\r\n state.appUser.employments = [];\r\n }\r\n if(state.appUser.employments.length !== 0 && state.appUser.employments[state.appUser.employments.length - 1].isEditing){\r\n return;\r\n }\r\n state.appUser.employments.push({\r\n appUserId: state.appUser.id ?? \"\",\r\n fromDate: new Date(),\r\n toDate: null,\r\n role: state.appUser.role ?? \"Replacement\",\r\n isNew: true,\r\n isEditing: true,\r\n index: state.appUser.employments.length\r\n });\r\n state.employments = state.appUser.employments;\r\n },\r\n saveEmployment(state, employment){\r\n employment.isEditing = false;\r\n state.appUser.employments[employment.index] = employment;\r\n state.employments[ employment.index ] = employment;\r\n const today = new Date();\r\n if ( state.appUser.employments.length === 1 )\r\n {\r\n state.role = employment.role;\r\n }\r\n else if ( employment.fromDate >= today && ( employment.toDate ? employment.toDate < today : true ) )\r\n {\r\n state.appUser.role = employment.role;\r\n }\r\n },\r\n setRole ( state, role ) {\r\n state.role = role;\r\n },\r\n setEditEmployment(state, employment){\r\n const index = state.employments.findIndex( e => e.toDate == employment.toDate \r\n && e.fromDate === employment.fromDate \r\n && e.role === employment.role);\r\n state.employments[ index ].isEditing = true;\r\n state.employments[ index ].index = index;\r\n },\r\n removeEmployment(state, employmentIndex){\r\n state.appUser.employments.splice(employmentIndex, 1);\r\n state.employments.splice( employmentIndex, 1 );\r\n },\r\n setAppUsers(state, appUsersResponse) {\r\n const { data } = appUsersResponse;\r\n state.appUsers = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n setMyAppUser(state, appUserResponse) {\r\n const { data } = appUserResponse;\r\n state.myAppUser = data;\r\n state.apiState = ENUM.LOADED;\r\n }\r\n },\r\n actions: {\r\n async loadAppUser({ commit }, appUserId) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n if ( appUserId !== null )\r\n {\r\n let appUser = await AppUsersRepository.getOne(appUserId);\r\n appUser.data.startDate = moment(appUser.data.startDate).toDate();\r\n appUser.data.endDate = moment(appUser.data.endDate).toDate();\r\n commit( \"setRole\", appUser.role );\r\n commit( 'setAppUser', appUser ); \r\n }\r\n else {\r\n commit('setAppUser', {data: {}});\r\n }\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async setEmptyAppUser ( { commit } ) {\r\n commit( 'setAppUser', { data: {} } );\r\n },\r\n async addEmptyEmployment({commit}){\r\n commit(\"addEmptyEmployment\")\r\n },\r\n async editEmployment({commit}, employment){\r\n commit(\"setEditEmployment\",employment);\r\n },\r\n async removeEmployment({commit,state}, employment){\r\n const employmentIndex = state.appUser.employments.indexOf(employment);\r\n commit(\"removeEmployment\", employmentIndex);\r\n },\r\n async saveEmployment({commit}, employment){\r\n commit(\"saveEmployment\", employment);\r\n },\r\n async loadAppUsers({ commit }) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n commit('setAppUsers', await AppUsersRepository.getAll());\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async registerAppUser ( { commit, dispatch, state }, appUserDto ) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n appUserDto.employments = state.employments;\r\n appUserDto.role = state.role;\r\n await AppUsersRepository.registerAppUser(appUserDto);\r\n await dispatch('loadAppUsers');\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async updateAppUser({ commit, dispatch, state }, appUserDto) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n appUserDto.employments = state.employments;\r\n appUserDto.employments.forEach(e => {\r\n const fromDate = moment(e.fromDate).toDate();\r\n e.fromDate = new Date(Date.UTC(fromDate.getFullYear(), fromDate.getMonth(), fromDate.getDate(), fromDate.getHours(), fromDate.getMinutes(),fromDate.getSeconds()));\r\n if(e.toDate){\r\n const toDate = moment(e.toDate).toDate();\r\n e.toDate = new Date(Date.UTC(toDate.getFullYear(), toDate.getMonth(), toDate.getDate(), toDate.getHours(), toDate.getMinutes(),toDate.getSeconds()));\r\n }\r\n } );\r\n appUserDto.role = state.role;\r\n await AppUsersRepository.updateAppUser(appUserDto);\r\n await dispatch('loadAppUsers');\r\n if (appUserDto.id === state.appUser?.id) {\r\n await dispatch('loadAppUser', appUserDto.id);\r\n }\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async setAppUserPassword({ commit }, { id, form }) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n await AppUsersRepository.setAppUserPassword(id, form);\r\n commit('setApiState', ENUM.LOADED);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async loadMyUser({ commit }) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n const oidcUser = store?.getters['oidcStore/oidcUser'];\r\n commit('setMyAppUser', await AppUsersRepository.getOne(oidcUser?.sub));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async deleteAppUser({ commit }, id) {\r\n commit('setApiState', ENUM.LOADING);\r\n\r\n try {\r\n await AppUsersRepository.deleteUser(id);\r\n commit(\"setApiState\", ENUM.LOADED);\r\n } catch(err) {\r\n console.error(err);\r\n commit(\"setApiState\", ENUM.ERROR);\r\n }\r\n }\r\n },\r\n getters: {\r\n appUserApiState(state) {\r\n return state.apiState;\r\n },\r\n appUser(state) {\r\n return state.appUser;\r\n },\r\n employments ( state ) {\r\n return state.employments;\r\n },\r\n userRole ( state ) {\r\n return state.role ?? \"Ukendt\";\r\n },\r\n appUsers(state) {\r\n return state.appUsers;\r\n },\r\n myAppUser(state) {\r\n return state.myAppUser;\r\n }\r\n }\r\n}","import Repository from '@/repositories/RepositoryFactory';\r\nimport ENUM from '../../enums/APISTATE';\r\nimport store from '../';\r\nimport UPDATESTATE from '../../enums/UPDATESTATE';\r\n\r\nconst notificationsRepository = Repository.get('notifications');\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n apiState: ENUM.INIT,\r\n notifications: [],\r\n notification: {},\r\n errorModalOpen: false,\r\n errorModalText: ''\r\n },\r\n mutations: {\r\n setApiState: (state, apiState) => {\r\n state.apiState = apiState;\r\n },\r\n setNotification(state, response) {\r\n const { data } = response;\r\n state.notification = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n setNotifications(state, response) {\r\n const { data } = response;\r\n state.notifications = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n initialized(state, { notifications }) {\r\n state.notifications = notifications;\r\n },\r\n setErrorModalText(state, text){\r\n state.errorModalText = text\r\n },\r\n setErrorModalOpen(state, open){\r\n state.setErrorModalOpen = open;\r\n }\r\n },\r\n actions: {\r\n async getNotificationsForPeriod({ commit }, request) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n commit('setNotifications', await notificationsRepository.getForPeriod(request.startDate, request.endDate, request.forRegion));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async createNotification({ commit, dispatch }, allocationDto) {\r\n commit('setApiState', ENUM.LOADING);\r\n let retries = 0;\r\n while(retries < 2){\r\n if(allocationDto.updateState !== UPDATESTATE.RequestReplacement){\r\n retries = 2;\r\n }\r\n try {\r\n retries++;\r\n let result = await notificationsRepository.create(allocationDto);\r\n if (result.status === 200) {\r\n commit(\"setApiState\", ENUM.LOADED);\r\n commit(\"setAllocation\", result);\r\n return true;\r\n }\r\n } catch (error) {\r\n if(allocationDto.updateState !== UPDATESTATE.RequestReplacement){\r\n commit(\"setApiState\", ENUM.ERROR);\r\n return false\r\n }\r\n if (retries < 2) {\r\n // do nothing\r\n }\r\n else{\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n return false;\r\n }\r\n }\r\n }\r\n },\r\n async deleteNotification({ commit, dispatch }, notificationDto) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n await notificationsRepository.delete(notificationDto.id, notificationDto._UpdateTag);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async updateNotification({ commit, dispatch }, notificationDto) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n await notificationsRepository.update(notificationDto);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async getNotificationFromAllocation({ commit, dispatch }, allocationDto) {\r\n if(!allocationDto || !allocationDto.id) {\r\n return;\r\n }\r\n\r\n commit('setApiState', ENUM.LOADING);\r\n try { \r\n commit('setNotification', await notificationsRepository.getNotificationFromAllocation(allocationDto.id));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n setNotificationOnStore(state, data) {\r\n state.notification = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n },\r\n getters: {\r\n notificationApiState(state) {\r\n return state.apiState;\r\n },\r\n notification(state) {\r\n return state.notification;\r\n },\r\n notifications(state) { \r\n return state.notifications; \r\n },\r\n errorModalOpen: (state) => {return state.errorModalOpen},\r\n errorModalText: (state) => {return state.errorModalText}\r\n }\r\n});\r\n","import Repository from '@/repositories/RepositoryFactory';\r\nimport ENUM from '../../enums/APISTATE';\r\nimport Vue from 'vue';\r\n\r\nconst allocations = Repository.get('allocations');\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n allocationsDashboard: [],\r\n allocations: [],\r\n allocation: {}, \r\n apiState: ENUM.INIT,\r\n allocationApiState: ENUM.INIT,\r\n allocationDashboardApiState: ENUM.INIT,\r\n allocationsTimeOffApiState: ENUM.INIT,\r\n allocationsTimeOff: [],\r\n allocationsOnDateApiState: ENUM.INIT,\r\n allocationsOnDate: []\r\n },\r\n mutations: {\r\n initialized(state, { allocations, allocationsDashboard }) {\r\n state.allocations = allocations;\r\n state.allocationsDashboard = allocationsDashboard;\r\n },\r\n setApiState: (state, apiState) => {\r\n state.apiState = apiState;\r\n },\r\n setDashboardApiState: (state, apiState) => {\r\n state.allocationDashboardApiState = apiState;\r\n },\r\n setAllocationApiState: (state, apiState) => {\r\n state.allocationApiState = apiState;\r\n },\r\n setAllocation(state, response) {\r\n const { data } = response;\r\n state.allocation = data;\r\n state.allocationApiState = ENUM.LOADED;\r\n },\r\n setAllocations(state, response) {\r\n const { data } = response;\r\n state.allocations = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n setAllocationDashboard(state, response) {\r\n const { data } = response;\r\n state.allocationsDashboard = data;\r\n state.allocationDashboardApiState = ENUM.LOADED;\r\n },\r\n setTimeOffApiState: (state, apiState) => {\r\n state.allocationsTimeOffApiState = apiState;\r\n },\r\n setAllocationsTimeOff(state, response) {\r\n const { data } = response;\r\n state.allocationsTimeOff = data;\r\n state.allocationsTimeOffApiState = ENUM.LOADED;\r\n },\r\n setAllocationsOnDateApiState: (state, apiState) => {\r\n state.allocationsOnDateApiState = apiState;\r\n },\r\n setAllocationsOnDate(state, response) {\r\n const { data } = response;\r\n state.allocationsOnDate = data;\r\n state.allocationsOnDateApiState = ENUM.LOADED;\r\n },\r\n addAllocations(state, response) {\r\n const { data } = response;\r\n for(const item of data) {\r\n state.allocations.push(item);\r\n } \r\n state.apiState = ENUM.LOADED;\r\n },\r\n },\r\n actions: {\r\n initialize({ commit }) {\r\n return new Promise((resolve, reject) => {\r\n try {\r\n commit('initialized', {\r\n allocations: allocations\r\n });\r\n resolve();\r\n }\r\n catch (e) {\r\n console.error(e);\r\n reject();\r\n }\r\n });\r\n },\r\n async getMyAllocations({ commit }, dto) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n const response = await allocations.getMyAllocations(dto.startDate, dto.endDate, dto.asEmployee);\r\n if(dto.isLoadingMore) {\r\n commit('addAllocations', response); \r\n } else {\r\n commit('setAllocations', response);\r\n } \r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async getTimeOff({ commit }, dto) {\r\n commit('setTimeOffApiState', ENUM.LOADING);\r\n try {\r\n commit('setAllocationsTimeOff', await allocations.getTimeOff(dto.fromDate, dto.forGroup));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setTimeOffApiState', ENUM.ERROR);\r\n }\r\n },\r\n async getAllocationDashboard({ commit }, dto) {\r\n const region = dto ? dto.region : null;\r\n commit('setDashboardApiState', ENUM.LOADING);\r\n try {\r\n commit('setAllocationDashboard', await allocations.getAllocationDashboard(region));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setDashboardApiState', ENUM.ERROR);\r\n }\r\n },\r\n async updateAllocation({ commit, dispatch, state }, dto) {\r\n commit('setAllocationApiState', ENUM.LOADING);\r\n try {\r\n const result = await allocations.update(dto); \r\n commit('setAllocation', result);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setAllocationApiState', ENUM.ERROR);\r\n }\r\n },\r\n // Get's allocation for my calendar for at given date and group\r\n async getAllocationForGroupOnDate({ commit, dispatch, state }, dto) {\r\n commit('setAllocationsOnDateApiState', ENUM.LOADING);\r\n try {\r\n commit('setAllocationsOnDate', { data: []});\r\n commit('setAllocationsOnDate', await allocations.getAllocationForGroupOnDate(dto.date, dto.forGroup, dto.asEmployee));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setAllocationsOnDateApiState', ENUM.ERROR);\r\n }\r\n },\r\n async splitAllocation({ commit, dispatch, state }, dto) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n const result = await allocations.split(dto); \r\n // TODO: Find a way to add to currect state \r\n commit('setApiState', ENUM.LOADED);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n setAllocations({state}, data) {\r\n state.allocations = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n },\r\n getters: {\r\n isLoaded(state) {\r\n return state.apiState === ENUM.LOADED;\r\n },\r\n allocationsApiState(state) {\r\n return state.apiState;\r\n },\r\n allocationApiState(state) {\r\n return state.allocationApiState;\r\n },\r\n allocation(state) {\r\n return state.allocation;\r\n },\r\n allocations(state) { \r\n return state.allocations; \r\n },\r\n allocationDashboardApiState(state) {\r\n return state.allocationDashboardApiState;\r\n },\r\n allocationsDashboard(state) { \r\n return state.allocationsDashboard; \r\n },\r\n allocationsTimeOffApiState(state) {\r\n return state.allocationsTimeOffApiState;\r\n },\r\n allocationsTimeOff(state) { \r\n return state.allocationsTimeOff; \r\n },\r\n allocationsOnDateApiState(state) {\r\n return state.allocationsOnDateApiState;\r\n },\r\n allocationsOnDate(state) {\r\n return state.allocationsOnDate;\r\n },\r\n }\r\n});\r\n","import Repository from '@/repositories/RepositoryFactory';\r\nimport ENUM from '../../enums/APISTATE';\r\nimport store from '../';\r\n\r\nconst CirclesRepository = Repository.get('circles');\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n apiState: ENUM.INIT,\r\n apiStateCircleForGroup: ENUM.INIT,\r\n circles: [],\r\n circlesForGroup: [],\r\n circle: {}\r\n },\r\n mutations: {\r\n setApiState: (state, apiState) => {\r\n state.apiState = apiState;\r\n },\r\n setCircleForGroupApiState: (state, apiState) => {\r\n state.apiStateCircleForGroup = apiState;\r\n },\r\n setCircle(state, response) {\r\n const { data } = response;\r\n state.circle = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n setCircles(state, response) {\r\n const { data } = response;\r\n state.circles = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n setCircleForGroup(state, response) {\r\n const { data } = response;\r\n state.circlesForGroup = data;\r\n },\r\n initialized(state, { circles }) {\r\n state.circles = circles;\r\n }\r\n },\r\n actions: {\r\n loadAllCircles({commit}) {\r\n return new Promise((resolve, reject) => {\r\n CirclesRepository.getAll().then((response) => {\r\n commit('setCircles', response);\r\n resolve();\r\n }).catch((error) => {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n reject();\r\n });\r\n });\r\n },\r\n\r\n loadCirclesForPeriod({commit}, {startDate, endDate, teamFilter}) {\r\n return new Promise((resolve, reject) => {\r\n CirclesRepository.getForPeriod(startDate, endDate, teamFilter).then((response) => {\r\n commit('setCircles', {data: response}); // not tested (data extracted in repository)\r\n resolve();\r\n }).catch((error) => {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n reject();\r\n });\r\n });\r\n },\r\n\r\n loadCirclesCurrentWeek({commit}) {\r\n return new Promise((resolve, reject) => {\r\n CirclesRepository.getCirclesCurrentWeek().then((response) => {\r\n commit('setCircles', response)\r\n resolve();\r\n }).catch((error) => {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n reject();\r\n })\r\n });\r\n },\r\n async loadCircles({ commit }) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n commit('setCircles', await CirclesRepository.getAll());\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async getPeriods({ commit }, {startDate, endDate, teamFilter}) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n commit('setCircles', await CirclesRepository.getPeriods());\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async getCircle({ commit }, id) {\r\n commit('setApiState', ENUM.LOADING);\r\n \r\n try {\r\n const circle = await CirclesRepository.getCircle(id);\r\n commit(\"setCircle\", circle);\r\n commit('setApiState', ENUM.LOADED);\r\n return circle;\r\n } \r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async getCircleForGroup({ commit }, dto) {\r\n commit('setCircleForGroupApiState', ENUM.LOADING);\r\n \r\n try {\r\n const circle = await CirclesRepository.getCircleForGroup(dto.groupId);\r\n commit(\"setCircleForGroup\", circle);\r\n commit('setCircleForGroupApiState', ENUM.LOADED);\r\n return circle;\r\n } \r\n catch (error) {\r\n console.error(error);\r\n commit('setCircleForGroupApiState', ENUM.ERROR);\r\n }\r\n },\r\n async createCircle({ commit }, circle) {\r\n commit('setApiState', ENUM.LOADING);\r\n\r\n try {\r\n await CirclesRepository.create(circle);\r\n commit('setApiState', ENUM.LOADED);\r\n } catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n async updateCircle({ commit }, circle) {\r\n commit('setApiState', ENUM.LOADING);\r\n\r\n try {\r\n await CirclesRepository.update(circle);\r\n commit('setApiState', ENUM.LOADED);\r\n } catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n }\r\n },\r\n getters: {\r\n circleIsLoading(state) {\r\n return state.apiState === ENUM.LOADING;\r\n },\r\n circleForGroupIsLoading(state) {\r\n return state.apiStateCircleForGroup === ENUM.LOADING;\r\n },\r\n circleApiState(state) {\r\n return state.apiState;\r\n },\r\n circle(state) {\r\n return state.circle;\r\n },\r\n circles(state) { \r\n return state.circles; \r\n },\r\n circlesForGroup(state) { \r\n return state.circlesForGroup; \r\n }\r\n }\r\n});\r\n","import Repository from '@/repositories/RepositoryFactory';\r\nimport groupRepository from \"../../repositories/groups\";\r\nimport ApiState from \"../../enums/APISTATE\";\r\n\r\nconst groups = Repository.get('groups');\r\n/**\r\n * Removes values from\r\n * @param { Array } array - This array\r\n * @param { Function } where - This is true\r\n * @returns { Array } - And return a new array\r\n */\r\n export function arrayRemoveWhere(array, where) {\r\n return array.filter(val => !where(val));\r\n}\r\n\r\nexport function sleep(ms) {\r\n return new Promise(res => setTimeout(res, ms));\r\n}\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n apiState: ApiState.INIT,\r\n groupState: ApiState.INIT,\r\n groups: [],\r\n group: {},\r\n groupsForUser: [],\r\n groupsForUserApiState: ApiState.INIT,\r\n usersForGroup: [],\r\n usersForGroupApiState: ApiState.INIT\r\n },\r\n mutations: {\r\n setApiState: (state, apiState) => {\r\n state.apiState = apiState;\r\n },\r\n setGroup(state, response) {\r\n const { data } = response;\r\n state.group = data;\r\n state.apiState = ApiState.LOADED;\r\n },\r\n setGroups(state, response) {\r\n const { data } = response;\r\n state.groups = data;\r\n state.apiState = ApiState.LOADED;\r\n },\r\n removeGroup(state, id) {\r\n state.groups = arrayRemoveWhere(state.groups, group => group.id === id);\r\n\r\n if (state.group) { \r\n state.group.isRemoved = true;\r\n }\r\n },\r\n setState(state, apiState) {\r\n state.groupState = apiState;\r\n },\r\n initialized(state, { groups }) {\r\n state.groups = groups;\r\n },\r\n setGroupsForUserApiState(state, apiState) {\r\n state.groupsForUserApiState = apiState;\r\n },\r\n setGroupsForUser(state, response) {\r\n const { data } = response;\r\n state.groupsForUser = data;\r\n state.groupsForUserApiState = ApiState.LOADED;\r\n },\r\n setUsersForGroupApiState(state, apiState) {\r\n state.usersForGroupApiState = apiState;\r\n },\r\n setUsersForGroup(state, response) {\r\n const { data } = response;\r\n state.usersForGroup = data;\r\n state.usersForGroupApiState = ApiState.LOADED;\r\n }\r\n },\r\n actions: {\r\n getAllGroups({commit}) {\r\n commit('setApiState', ApiState.LOADING);\r\n return new Promise((resolve, reject) => {\r\n groups.getAllForMyCalendar().then((response) => {\r\n commit('setGroups', response);\r\n resolve();\r\n }).catch((error) => {\r\n console.error(error);\r\n commit('setApiState', ApiState.ERROR);\r\n reject();\r\n });\r\n });\r\n },\r\n async initialize({ commit }) {\r\n commit(\"setState\", ApiState.LOADING);\r\n try {\r\n const groups = await groupRepository.getAll();\r\n commit(\"initialized\", groups);\r\n commit(\"setState\", ApiState.LOADED);\r\n } catch {\r\n commit(\"setState\", ApiState.ERROR);\r\n }\r\n },\r\n async getGroupById({ commit }, id) {\r\n try {\r\n const group = await groupRepository.getById(id);\r\n commit(\"setGroup\", group)\r\n return group;\r\n } catch {\r\n // Something error handly\r\n }\r\n },\r\n async removeGroup({ commit }, id) {\r\n try {\r\n await groupRepository.remove(id);\r\n commit(\"removeGroup\", id);\r\n return true;\r\n } catch {\r\n return false;\r\n }\r\n },\r\n async getGroupsForUser({ commit }, id) {\r\n commit('setGroupsForUserApiState', ApiState.LOADING);\r\n try {\r\n commit('setGroupsForUser', await groupRepository.getGroupsForUser(id));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setGroupsForUserApiState', ApiState.ERROR);\r\n }\r\n },\r\n async getUsersGorGroup({ commit }, id) {\r\n commit('setUsersForGroupApiState', ApiState.LOADING);\r\n try {\r\n commit('setUsersForGroup', await groupRepository.getUsersGorGroup(id));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setUsersForGroupApiState', ApiState.ERROR);\r\n }\r\n },\r\n async updateGroup({ commit, dispatch, state }, dto) {\r\n commit('setState', ApiState.LOADING);\r\n try {\r\n const group = await groupRepository.update(dto);\r\n commit(\"setGroup\", group)\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setState', ApiState.ERROR);\r\n }\r\n },\r\n async createGroup({ commit, dispatch, state }, dto) {\r\n commit('setState', ApiState.LOADING);\r\n try {\r\n const group = await groupRepository.create(dto);\r\n commit(\"setGroup\", group)\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setState', ApiState.ERROR);\r\n }\r\n },\r\n },\r\n getters: {\r\n group(state) { \r\n return state.group; \r\n },\r\n groupState(state) {\r\n return state.groupState;\r\n },\r\n groupsIsLoading(state) { \r\n return state.groupState === ApiState.LOADING \r\n },\r\n groupApiState(state) {\r\n return state.apiState;\r\n },\r\n groups(state) { \r\n return state.groups; \r\n },\r\n getGroupById: (state) => (groupId) => state.groups.find(q => q.id === groupId),\r\n groupsForUserApiState(state) {\r\n return state.groupsForUserApiState;\r\n },\r\n groupsForUser(state) {\r\n return state.groupsForUser;\r\n },\r\n usersForGroupApiState(state) {\r\n return state.usersForGroupApiState;\r\n },\r\n usersForGroup(state) {\r\n return state.usersForGroup;\r\n }\r\n }\r\n});\r\n","import Repository from \"@/repositories/RepositoryFactory\";\r\nimport APISTATE from \"../../enums/APISTATE\";\r\n\r\nlet openResolve, openReject;\r\n\r\nconst reports = Repository.get(\"reports\");\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n groupMembers: [],\r\n availableGroupMembers: [],\r\n isOpen: false,\r\n filter: {}\r\n },\r\n mutations: {\r\n setChosenAssistant(state, assistantNumber) {\r\n const index = state.groupMembers.findIndex(\r\n (gm) => gm.number == assistantNumber\r\n );\r\n if (index !== -1) {\r\n state.groupMembers[index].isSelected = true;\r\n }\r\n\r\n state.availableGroupMembers[\r\n state.availableGroupMembers.findIndex(\r\n (gm) => gm.number == assistantNumber\r\n )\r\n ].isSelected = true;\r\n },\r\n setRejectedAssistant(state, assistantNumber) {\r\n const index = state.groupMembers.findIndex(\r\n (gm) => gm.number == assistantNumber\r\n );\r\n if (index !== -1) {\r\n state.groupMembers[index].isSelected = false;\r\n }\r\n\r\n state.availableGroupMembers[\r\n state.availableGroupMembers.findIndex(\r\n (gm) => gm.number == assistantNumber\r\n )\r\n ].isSelected = false;\r\n },\r\n setIsOpen(state, isOpen) {\r\n state.isOpen = isOpen;\r\n },\r\n setGroupMembers(state, response) {\r\n state.groupMembers = response;\r\n state.apiState = APISTATE.LOADED;\r\n },\r\n setAvailableGroupMembers(state, response) {\r\n state.availableGroupMembers = response;\r\n },\r\n setFilter(state, filter) {\r\n state.filter = filter\r\n }\r\n },\r\n actions: {\r\n async sidebarOpenAsync({ commit}) {\r\n commit(\"setIsOpen\", true);\r\n return new Promise((resolve, reject) => {\r\n openResolve = resolve;\r\n openReject = reject;\r\n });\r\n },\r\n markAssistantNumber({ commit, state }, assistantNumber) {\r\n const specificAssistant = state.groupMembers.find(\r\n (gm) => gm.number === assistantNumber\r\n );\r\n specificAssistant.isSelected\r\n ? commit(\"setRejectedAssistant\", assistantNumber)\r\n : commit(\"setChosenAssistant\", assistantNumber);\r\n },\r\n rejectAll({ commit, state }) {\r\n state.availableGroupMembers.forEach((agm) => {\r\n commit(\"setRejectedAssistant\", agm.number);\r\n });\r\n },\r\n sidebarCancel: ({ commit, state }) => {\r\n if (openResolve instanceof Function) {\r\n openResolve({\r\n action: \"cancel\",\r\n markedGroupMembers: [],\r\n });\r\n }\r\n commit(\"setIsOpen\", false);\r\n },\r\n setIsOpen: ({ commit }) => {\r\n commit(\"setIsOpen\", true);\r\n },\r\n updateParentView: ({ commit, state }) => {\r\n if (openResolve instanceof Function) {\r\n openResolve({\r\n action: \"update\",\r\n markedGroupMembers: state.availableGroupMembers.filter(\r\n (gm) => gm.isSelected\r\n ),\r\n });\r\n }\r\n commit(\"setIsOpen\", false);\r\n },\r\n searchForEmployee: ({ commit, state }, searchTerm) => {\r\n let groupMembers;\r\n if (searchTerm === \"\") {\r\n groupMembers = state.availableGroupMembers;\r\n } else {\r\n groupMembers = state.availableGroupMembers.filter(\r\n (gm) =>\r\n gm.name.toLowerCase().includes(searchTerm.toLowerCase()) ||\r\n gm.number\r\n .toString()\r\n .toLowerCase()\r\n .includes(searchTerm.toLowerCase())\r\n );\r\n }\r\n\r\n if (groupMembers === undefined) {\r\n commit(\"setGroupMembers\", []);\r\n } else {\r\n commit(\"setGroupMembers\", groupMembers );\r\n }\r\n },\r\n setGroupMembers({commit, state}, groupMembers){\r\n commit(\"setGroupMembers\", groupMembers);\r\n commit(\"setAvailableGroupMembers\", groupMembers);\r\n state.groupMembers.forEach((elem) => {\r\n commit(\"setChosenAssistant\", elem.number);\r\n });\r\n },\r\n setFilter({commit}, filter){\r\n commit(\"setFilter\", filter);\r\n }\r\n },\r\n getters: {\r\n groupMembers: (state) => state.groupMembers,\r\n isOpen: (state) => state.isOpen,\r\n filter: (state) => state.filter,\r\n availableGroupMembers: (state) => state.availableGroupMembers\r\n },\r\n};\r\n","import Repository from '@/repositories/RepositoryFactory';\r\nimport ApiState from \"../../enums/APISTATE\";\r\n\r\nconst groupTemplateRepository = Repository.get('groupTemplateRepository');\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n groupTemplate: {},\r\n groupTemplateApiState: ApiState.INIT,\r\n groupTemplates: [],\r\n historicGroupTemplatesDisplayed: [],\r\n groupTemplatesApiState: ApiState.INIT,\r\n simulating: false,\r\n showAll: false\r\n },\r\n mutations: {\r\n setGroupTemplateApiState: (state, apiState) => {\r\n state.groupTemplateApiState = apiState;\r\n },\r\n setGroupTemplate(state, response) {\r\n const { data } = response;\r\n state.groupTemplate = data;\r\n state.groupTemplateApiState = ApiState.LOADED;\r\n },\r\n setGroupTemplatesApiState: (state, apiState) => {\r\n state.groupTemplatesApiState = apiState;\r\n },\r\n setGroupTemplates(state, response) {\r\n const { data } = response;\r\n state.groupTemplates = data;\r\n state.groupTemplatesApiState = ApiState.LOADED;\r\n },\r\n initialized(state, { groupTemplate, groupTemplates }) {\r\n state.groupTemplate = groupTemplate;\r\n state.groupTemplates = groupTemplates;\r\n },\r\n setSimulating(state, simulating) {\r\n state.simulating = simulating;\r\n },\r\n setShowAll(state, showAll){\r\n state.showAll = showAll;\r\n },\r\n setHistoricGroupTemplatesDisplayed(state, historicGroupTemplate){\r\n state.historicGroupTemplatesDisplayed = historicGroupTemplate\r\n }\r\n },\r\n actions: {\r\n async getAllTemplatesForGroup({ commit, dispatch }, forGroup) {\r\n commit('setGroupTemplatesApiState', ApiState.LOADING);\r\n try {\r\n commit('setGroupTemplates', await groupTemplateRepository.getAllForGroup(forGroup));\r\n dispatch('setHistoricGroupTemplatesDisplayed');\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setGroupTemplatesApiState', ApiState.ERROR);\r\n }\r\n },\r\n async updateGroupTemplate({ commit, dispatch, state }, dto) {\r\n commit('setGroupTemplateApiState', ApiState.LOADING);\r\n try {\r\n const groupTemplate = await groupTemplateRepository.update(dto);\r\n commit(\"setGroupTemplate\", groupTemplate)\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setGroupTemplateApiState', ApiState.ERROR);\r\n }\r\n },\r\n async createGroupTemplate({ commit, dispatch, state }, dto) {\r\n commit('setGroupTemplateApiState', ApiState.LOADING);\r\n try {\r\n const groupTemplate = await groupTemplateRepository.create(dto);\r\n commit(\"setGroupTemplate\", groupTemplate)\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setGroupTemplateApiState', ApiState.ERROR);\r\n }\r\n },\r\n async applyGroupTemplate({ commit, dispatch, state }, dto) {\r\n commit('setGroupTemplateApiState', ApiState.LOADING);\r\n try {\r\n const groupTemplate = await groupTemplateRepository.apply(dto);\r\n commit(\"setGroupTemplate\", groupTemplate)\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setGroupTemplateApiState', ApiState.ERROR);\r\n }\r\n },\r\n async canApplyGroupTemplate({ commit, dispatch, state }, dto) {\r\n const result = await groupTemplateRepository.canApply(dto);\r\n return result.data;\r\n },\r\n async setHistoricGroupTemplatesDisplayed({commit, state}){\r\n const groupTemplates = state.showAll ? state.groupTemplates.filter(q => q.state === 10) : state.groupTemplates.filter(q => q.state === 10).slice(0,1);\r\n commit(\"setHistoricGroupTemplatesDisplayed\", groupTemplates )\r\n },\r\n async showAllPressed({commit,state, dispatch}){\r\n commit(\"setShowAll\", !state.showAll);\r\n dispatch(\"setHistoricGroupTemplatesDisplayed\");\r\n },\r\n setSimulating({commit}, isSimulating) {\r\n commit('setSimulating', isSimulating);\r\n },\r\n async rollbackGroupTemplate({ commit, dispatch, state }, dto) {\r\n commit('setGroupTemplateApiState', ApiState.LOADING);\r\n try {\r\n const groupTemplate = await groupTemplateRepository.rollbackGroupTemplate(dto);\r\n commit('setGroupTemplateApiState', ApiState.LOADED);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setGroupTemplateApiState', ApiState.ERROR);\r\n }\r\n },\r\n },\r\n getters: {\r\n groupTemplatesApiState(state) {\r\n return state.groupTemplatesApiState;\r\n },\r\n groupTemplates(state) {\r\n return state.groupTemplates;\r\n },\r\n groupTemplateApiState(state) {\r\n return state.groupTemplateApiState;\r\n },\r\n groupTemplate(state) {\r\n return state.groupTemplate;\r\n },\r\n isGroupTemplateSimulating(state) {\r\n return state.simulating;\r\n },\r\n historicGroupTemplatesDisplayed: (state) => {return state.historicGroupTemplatesDisplayed},\r\n showAll: (state) => {return state.showAll}\r\n }\r\n });","import Repository from '@/repositories/RepositoryFactory';\r\nimport ENUM from '../../enums/APISTATE';\r\nimport Vue from 'vue';\r\n\r\nconst EmployeesRepository = Repository.get('employees');\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n employeeApiState: ENUM.INIT,\r\n employees: [],\r\n replacementApiState: ENUM.INIT,\r\n replacements: [],\r\n replacementsForDateApiState: ENUM.INIT,\r\n replacementsForDate: [],\r\n allEmployeeApiState: ENUM.INIT,\r\n allEmployees: [],\r\n allEmployeesDict: {},\r\n availableEmployees: [],\r\n availableEmployeesApiState: ENUM.INIT,\r\n },\r\n mutations: {\r\n setReplacementApiState: (state, apiState) => {\r\n state.replacementApiState = apiState;\r\n },\r\n setEmployeeApiState: (state, apiState) => {\r\n state.employeeApiState = apiState;\r\n },\r\n setEmployees(state, employees) {\r\n state.employees = employees;\r\n state.employeeApiState = ENUM.LOADED;\r\n },\r\n setReplacements(state, response) {\r\n const { data } = response;\r\n state.replacements = data;\r\n state.replacementApiState = ENUM.LOADED;\r\n },\r\n setReplacementsForDateApiState: (state, apiState) => {\r\n state.replacementsForDateApiState = apiState;\r\n if(apiState === ENUM.LOADING) {\r\n state.replacementsForDate = [];\r\n }\r\n },\r\n setReplacementsForDate(state, response) {\r\n const { data } = response;\r\n state.replacementsForDate = data;\r\n state.replacementsForDateApiState = ENUM.LOADED;\r\n },\r\n setAllEmployeeApiState: (state, apiState) => {\r\n state.allEmployeeApiState = apiState;\r\n },\r\n setAllEmployees(state, response) {\r\n state.allEmployees = response;\r\n state.allEmployeesDict = {};\r\n response.forEach(employee => Vue.set(state.allEmployeesDict, employee.id, employee));\r\n state.allEmployeeApiState = ENUM.LOADED;\r\n },\r\n setAvailableEmployees(state, response) {\r\n const {data} = response;\r\n state.availableEmployees = data;\r\n state.availableEmployeesApiState = ENUM.LOADED;\r\n },\r\n setAvailableEmployeesApiState(state, apiState) {\r\n state.availableEmployeesApiState = apiState;\r\n }\r\n },\r\n actions: {\r\n loadEmployees({ commit }) {\r\n commit('setEmployeeApiState', ENUM.LOADING);\r\n return new Promise((resolve, reject) => {\r\n EmployeesRepository.getActive().then((response) => {\r\n commit('setEmployees', response);\r\n resolve();\r\n }).catch((error) => {\r\n console.error(error);\r\n commit('setEmployeeApiState', ENUM.ERROR);\r\n reject();\r\n });\r\n });\r\n },\r\n loadReplacements({ commit }) {\r\n commit('setReplacementApiState', ENUM.LOADING);\r\n return new Promise((resolve, reject) => {\r\n EmployeesRepository.getReplacements().then((response) => {\r\n commit('setReplacements', response);\r\n resolve();\r\n }).catch((error) => {\r\n console.error(error);\r\n commit('setReplacementApiState', ENUM.ERROR);\r\n reject();\r\n });\r\n });\r\n },\r\n loadReplacementsFromDate({ commit }, request) {\r\n if(!request || !request.date) {\r\n return;\r\n }\r\n\r\n commit('setReplacementsForDateApiState', ENUM.LOADING);\r\n return new Promise((resolve, reject) => {\r\n EmployeesRepository.getReplacementsForDate(request.date, request.region).then((response) => {\r\n commit('setReplacementsForDate', response);\r\n resolve();\r\n }).catch((error) => {\r\n console.error(error);\r\n commit('setReplacementsForDateApiState', ENUM.ERROR);\r\n reject();\r\n });\r\n });\r\n },\r\n async setAllEmployees({commit}, employees){\r\n commit('setAllEmployees', employees);\r\n },\r\n async getAllEmployees({ commit }) {\r\n commit('setAllEmployeeApiState', ENUM.LOADING);\r\n try {\r\n const { data } = await EmployeesRepository.getAllEmployees();\r\n commit('setAllEmployees', data);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setAllEmployeeApiState', ENUM.ERROR);\r\n }\r\n },\r\n async getEmployees({ commit }) {\r\n commit('setEmployeeApiState', ENUM.LOADING);\r\n return new Promise((resolve, reject) => {\r\n EmployeesRepository.getEmployees().then((response) => {\r\n commit('setEmployees', response);\r\n resolve();\r\n }).catch((error) => {\r\n console.error(error);\r\n commit('setEmployeeApiState', ENUM.ERROR);\r\n reject();\r\n });\r\n });\r\n },\r\n async getAvailableEmployees({commit}, {forGroup, forDate}) {\r\n commit('setAvailableEmployeesApiState', ENUM.LOADING);\r\n try {\r\n commit('setAvailableEmployees', await EmployeesRepository.getAvailableEmployees(forGroup, forDate));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setAvailableEmployeesApiState', ENUM.ERROR);\r\n }\r\n }\r\n },\r\n getters: {\r\n employeeApiState(state) {\r\n return state.employeeApiState;\r\n },\r\n replacementApiState(state) {\r\n return state.replacementApiState;\r\n },\r\n employees(state) { \r\n return state.employees; \r\n },\r\n replacements(state) {\r\n return state.replacements;\r\n },\r\n replacementsForDateApiState(state) {\r\n return state.replacementsForDateApiState;\r\n },\r\n replacementsForDate(state) {\r\n return state.replacementsForDate;\r\n },\r\n allEmployeeApiState(state) {\r\n return state.allEmployeeApiState;\r\n },\r\n allEmployees(state) { \r\n return state.allEmployees; \r\n },\r\n availableEmployees(state) {\r\n return state.availableEmployees;\r\n },\r\n allEmployeesLookup: state => (employeeId) => state.allEmployeesDict[employeeId],\r\n\r\n }\r\n});\r\n","import { forecasts } from '@/repositories/devdata';\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n forecasts: []\r\n },\r\n mutations: {\r\n initialized(state, { forecasts }) {\r\n state.forecasts = forecasts;\r\n }\r\n },\r\n actions: {\r\n initialize({ commit }) {\r\n return new Promise((resolve, reject) => {\r\n try {\r\n commit('initialized', {\r\n forecasts: forecasts\r\n });\r\n resolve();\r\n }\r\n catch (e) {\r\n console.error(e);\r\n reject();\r\n }\r\n })\r\n }\r\n },\r\n getters: {\r\n forecasts(state) { return state.forecasts; }\r\n }\r\n});\r\n","import { allocationTypes, regions } from '@/repositories/devdata';\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n allocationTypes: [], \r\n regions: []\r\n },\r\n mutations: {\r\n initialized(state, { allocationTypes, regions }) {\r\n state.allocationTypes = allocationTypes;\r\n state.regions = regions;\r\n }\r\n },\r\n actions: {\r\n initialize({ commit }) {\r\n return new Promise((resolve, reject) => {\r\n try {\r\n commit('initialized', {\r\n allocationTypes: allocationTypes,\r\n regions: regions\r\n });\r\n resolve();\r\n }\r\n catch (e) {\r\n console.error(e);\r\n reject();\r\n }\r\n });\r\n }\r\n },\r\n getters: {\r\n allocationTypes(state) {\r\n // Convert allocationTypes array to object with key/values\r\n return state.allocationTypes.reduce((accumulator, currentValue) =>\r\n {\r\n accumulator[currentValue.key] = currentValue.label; \r\n return accumulator; \r\n }, {});\r\n },\r\n allocationTypesReport(state) {\r\n // Convert allocationTypes array to object with key/values\r\n return state.allocationTypes;\r\n },\r\n regions(state) {\r\n // Convert allocationTypes array to object with key/values\r\n return state.regions;\r\n }\r\n }\r\n});\r\n","import { milestones } from '@/repositories/devdata';\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n milestones: []\r\n },\r\n mutations: {\r\n initialized(state, { milestones }) {\r\n state.milestones = milestones;\r\n }\r\n },\r\n actions: {\r\n initialize({ commit }) {\r\n return new Promise((resolve, reject) => {\r\n try {\r\n commit('initialized', {\r\n milestones: milestones\r\n });\r\n resolve();\r\n }\r\n catch (e) {\r\n console.error(e);\r\n reject();\r\n }\r\n });\r\n }\r\n },\r\n getters: {\r\n milestones(state) { return state.milestones; }\r\n }\r\n});\r\n","import ApiState from '../../enums/APISTATE';\r\nimport Repository from '@/repositories/RepositoryFactory';\r\n\r\nconst AllocationsRepository = Repository.get('allocations');\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n apiState: ApiState.INIT,\r\n allocations: []\r\n },\r\n mutations: {\r\n setApiState(state, apiState) {\r\n state.apiState = apiState;\r\n },\r\n setAllocations(state, allocationsResponse) {\r\n const {data} = allocationsResponse;\r\n state.allocations = data;\r\n state.apiState = ApiState.LOADED;\r\n },\r\n },\r\n actions: {\r\n async loadReplacementAllocationsForCurrentWeek({commit}) {\r\n commit('setApiState', ApiState.LOADING);\r\n try {\r\n commit('setAllocations', await AllocationsRepository.getReplacementAllocationsCurrentWeek());\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ApiState.ERROR);\r\n }\r\n },\r\n },\r\n getters: {\r\n replacementAllocationsApiState: (state) => state.apiState,\r\n replacementAllocations: (state) => state.allocations,\r\n }\r\n}","import allocations from './repositories/allocations';\r\nimport circlesRepository from './repositories/circlesRepository';\r\nimport employees from './repositories/employees';\r\nimport forecasts from './repositories/forecasts';\r\nimport milestones from './repositories/milestones';\r\nimport overallocations from './repositories/overallocations';\r\nimport groups from './repositories/groups';\r\n\r\nexport default {\r\n allocations,\r\n circlesRepository,\r\n employees,\r\n forecasts,\r\n milestones,\r\n overallocations,\r\n groups\r\n};\r\n","import data from '@/data';\r\nimport Vue from 'vue';\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n fromDate: Date(),\r\n toDate: Date(),\r\n teamFilter: null,\r\n forRegion: null,\r\n groupBy: 'PROJECT',\r\n lookup: {\r\n employees: {},\r\n teams: {},\r\n clients: {},\r\n circles: {},\r\n allocations: {},\r\n milestones: {},\r\n overallocations: {\r\n byEmployee: {},\r\n byCircle: {},\r\n byEmployeeCircle: {},\r\n },\r\n forecasts: {\r\n byEmployee: {},\r\n byProject: {},\r\n byEmployeeProject: {},\r\n },\r\n groups: {},\r\n regions: {}\r\n },\r\n teams: [],\r\n employees: [],\r\n clients: [],\r\n circles: [],\r\n allocations: [],\r\n milestones: [],\r\n groups: [],\r\n regions:[],\r\n forecastType: 'FUTURE_PLANNED',\r\n colors: [\r\n 'orange',\r\n 'green',\r\n 'aqua',\r\n 'blue',\r\n 'purple',\r\n 'magenta',\r\n 'red',\r\n 'gray',\r\n 'black',\r\n ],\r\n colorsHex: [\r\n '#fa6400',\r\n '#1e8c0a',\r\n '#3ca0c8',\r\n '#004696',\r\n '#78328c',\r\n '#d22864',\r\n '#d20a0a',\r\n '#888',\r\n '#222',\r\n ],\r\n },\r\n mutations: {\r\n initialized(state, { teamFilter, groupBy, fromDate, toDate, clients, employees, circles, allocations, milestones, groups, regions }) {\r\n\r\n // If group by has changed - reset forecast type\r\n if(state.groupBy !== groupBy) {\r\n // eslint-disable-next-line\r\n state.forecastType = 'FUTURE_PLANNED';\r\n }\r\n\r\n // eslint-disable-next-line\r\n state.teamFilter = teamFilter;\r\n\r\n // eslint-disable-next-line\r\n state.groupBy = groupBy;\r\n\r\n // eslint-disable-next-line\r\n state.fromDate = fromDate;\r\n\r\n // eslint-disable-next-line\r\n state.toDate = toDate;\r\n\r\n // eslint-disable-next-line\r\n state.clients = clients;\r\n // eslint-disable-next-line\r\n state.lookup.clients = clients?.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n // eslint-disable-next-line\r\n state.lookup.employees = employees?.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n // eslint-disable-next-line\r\n state.employees = employees;\r\n // eslint-disable-next-line\r\n state.lookup.teams = employees?.reduce((map, obj) => {\r\n if(obj.teamId && !map[obj.teamId]) {\r\n map[obj.teamId] = { id: obj.teamId, name: obj.teamName };\r\n }\r\n return map;\r\n }, {});\r\n // eslint-disable-next-line\r\n state.teams = Object.values(state.lookup.teams);\r\n \r\n // eslint-disable-next-line\r\n state.allocations = allocations;\r\n state.lookup.allocations = allocations?.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n // eslint-disable-next-line\r\n state.milestones = milestones;\r\n state.lookup.milestones = milestones?.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n \r\n // eslint-disable-next-line\r\n state.groups = groups;\r\n state.lookup.groups = groups?.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n\r\n // eslint-disable-next-line\r\n state.regions = regions;\r\n state.lookup.regions = regions?.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n\r\n // eslint-disable-next-line\r\n state.circles = circles;\r\n state.lookup.circles = circles?.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n // Add default absence project\r\n if (state.circles.findIndex(q => q.id === null) === -1) {\r\n state.circles.unshift({\r\n id: null,\r\n title: 'Ferie/Fri',\r\n code: '',\r\n colorCode: 'black'\r\n });\r\n }\r\n },\r\n periodChanged(state, { fromDate, toDate, teamFilter, forRegion, circles, allocations, milestones, employees }) {\r\n // eslint-disable-next-line\r\n state.fromDate = fromDate;\r\n\r\n // eslint-disable-next-line\r\n state.toDate = toDate;\r\n\r\n state.teamFilter = teamFilter;\r\n\r\n state.forRegion = forRegion;\r\n \r\n // // eslint-disable-next-line\r\n // state.lookup.employees = employees?.reduce((map, obj) => {\r\n // map[obj.id] = obj;\r\n // return map;\r\n // }, {});\r\n // // eslint-disable-next-line\r\n // state.employees = employees;\r\n\r\n // // eslint-disable-next-line\r\n // state.circles = circles;\r\n // state.lookup.circles = circles?.reduce((map, obj) => {\r\n // map[obj.id] = obj;\r\n // return map;\r\n // }, {});\r\n\r\n // // Add default absence project\r\n // if (state.circles.findIndex(q => q.id === null) === -1) {\r\n // state.circles.unshift({\r\n // id: null,\r\n // title: 'Ferie/Fri',\r\n // code: '',\r\n // colorCode: 'black'\r\n // });\r\n // }\r\n\r\n // eslint-disable-next-line\r\n state.allocations = allocations;\r\n state.lookup.allocations = allocations?.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n\r\n // eslint-disable-next-line\r\n state.lookup.employees = employees?.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n // eslint-disable-next-line\r\n state.employees = employees;\r\n // eslint-disable-next-line\r\n state.lookup.teams = employees?.reduce((map, obj) => {\r\n if(obj.teamId && !map[obj.teamId]) {\r\n map[obj.teamId] = { id: obj.teamId, name: obj.teamName };\r\n }\r\n return map;\r\n }, {});\r\n // eslint-disable-next-line\r\n state.teams = Object.values(state.lookup.teams);\r\n },\r\n allocationAdded(state, { allocation }) {\r\n state.allocations.push(allocation);\r\n state.lookup.allocations = state.allocations?.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n },\r\n allocationDeleted(state, { allocationId }) {\r\n var allocationToLookup = state.lookup.allocations[allocationId];\r\n state.allocations.splice(state.allocations.indexOf(allocationToLookup), 1);\r\n state.lookup.allocations = state.allocations.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n },\r\n allocationUpdated(state, { allocation }) {\r\n var allocationToUpdate = state.lookup.allocations[allocation.id];\r\n\r\n Object.assign(allocationToUpdate, allocation);\r\n state.lookup.allocations = state.allocations.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n },\r\n allocationsAddOrUpdate(state, {allocations}) {\r\n if (Array.isArray(allocations)) {\r\n allocations.forEach(allocation => {\r\n if (Object.prototype.hasOwnProperty.call(state.lookup.allocations, allocation.id)) {\r\n // update existing allocation in state.allocations\r\n const existing = state.allocations.find(q => q.id === allocation.id);\r\n if (existing) {\r\n Object.assign(existing, allocation);\r\n }\r\n }\r\n else {\r\n // add new allocation to state.allocations\r\n state.allocations.push(allocation);\r\n }\r\n // update or add allocation to state.lookup.allocations\r\n Vue.set(state.lookup.allocations, allocation.id, allocation);\r\n });\r\n }\r\n },\r\n // Remove allocations with the specified allocationId as their parentAllocationId\r\n // The allocations are only removed from the frontend state.\r\n removeChildAllocations(state, {allocationId}) {\r\n state.allocations = state.allocations.filter(q => q.parentAllocationId !== allocationId);\r\n Object.values(state.lookup.allocations).forEach(lookupAllocation => {\r\n if (lookupAllocation.parentAllocationId === allocationId) {\r\n Vue.delete(state.lookup.allocations, lookupAllocation.id);\r\n }\r\n })\r\n },\r\n milestoneAdded(state, { milestone }) {\r\n state.milestones.push(milestone);\r\n state.lookup.milestones = state.milestones.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n },\r\n milestoneDeleted(state, { milestoneId }) {\r\n var milestoneToLookup = state.lookup.milestones[milestoneId];\r\n state.milestones.splice(state.milestones.indexOf(milestoneToLookup), 1);\r\n state.lookup.milestones = state.milestones.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n },\r\n milestoneUpdated(state, { milestone }) {\r\n var milestoneToUpdate = state.lookup.milestones[milestone.id];\r\n\r\n Object.assign(milestoneToUpdate, milestone);\r\n state.lookup.milestones = state.milestones.reduce((map, obj) => {\r\n map[obj.id] = obj;\r\n return map;\r\n }, {});\r\n },\r\n overallocationUpdated(state, { overallocations }) {\r\n // eslint-disable-next-line\r\n state.lookup.overallocations.byEmployeeCircle = overallocations?.reduce((map, obj) => {\r\n if(!map[`${obj.employeeId}-${obj.circleId}`])\r\n map[`${obj.employeeId}-${obj.circleId}`] = [];\r\n\r\n map[`${obj.employeeId}-${obj.circleId}`].push(obj);\r\n return map;\r\n }, {}) ?? {};\r\n\r\n // eslint-disable-next-line\r\n state.lookup.overallocations.byEmployee = overallocations?.reduce((map, obj) => {\r\n if(!map[obj.employeeId])\r\n map[obj.employeeId] = [];\r\n\r\n map[obj.employeeId].push(obj);\r\n return map;\r\n }, {}) ?? {};\r\n\r\n // eslint-disable-next-line\r\n state.lookup.overallocations.byCircle = overallocations?.reduce((map, obj) => {\r\n if(!map[obj.circleId])\r\n map[obj.circleId] = [];\r\n\r\n map[obj.circleId].push(obj);\r\n return map;\r\n }, {}) ?? {};\r\n },\r\n forecastUpdated(state, { forecasts, forecastKey }) {\r\n // eslint-disable-next-line\r\n state.forecastType = forecastKey;\r\n\r\n // eslint-disable-next-line\r\n state.lookup.forecasts.byEmployeeProject = forecasts?.reduce((map, obj) => {\r\n if(!map[`${obj.employeeId}-${obj.circleId}`])\r\n map[`${obj.employeeId}-${obj.circleId}`] = [];\r\n\r\n map[`${obj.employeeId}-${obj.circleId}`].push(obj);\r\n return map;\r\n }, {});\r\n\r\n // eslint-disable-next-line\r\n state.lookup.forecasts.byEmployee = forecasts?.reduce((map, obj) => {\r\n if(!map[obj.employeeId])\r\n map[obj.employeeId] = [];\r\n\r\n map[obj.employeeId].push(obj);\r\n return map;\r\n }, {});\r\n\r\n // eslint-disable-next-line\r\n state.lookup.forecasts.byProject = forecasts?.reduce((map, obj) => {\r\n if(!map[obj.circleId])\r\n map[obj.circleId] = [];\r\n\r\n map[obj.circleId].push(obj);\r\n return map;\r\n }, {});\r\n },\r\n },\r\n actions: {\r\n initialize({ commit, state, dispatch }, { teamFilter, groupBy, fromDate, toDate, forRegion }) {\r\n \r\n // Fetch metadata\r\n return Promise.all([\r\n //data.clients.getActive(),\r\n data.employees.getActiveInPeriod(fromDate, toDate),\r\n data.circlesRepository.getForPeriod(fromDate, toDate, null),\r\n data.allocations.getForPeriod(fromDate, toDate, teamFilter, forRegion),\r\n data.groups.getForPeriod(fromDate, toDate, null)\r\n ])\r\n .then((response) => {\r\n commit('initialized', {\r\n teamFilter: teamFilter,\r\n groupBy: groupBy,\r\n fromDate: fromDate,\r\n toDate: toDate,\r\n forRegion: forRegion,\r\n clients: null, //response[0].data,\r\n employees: response[0],\r\n circles: response[1],\r\n allocations: response[2],\r\n groups: response[3],\r\n regions: [{id: 'syd', name: 'syd'}, {id: 'nord', name: 'nord'}]\r\n });\r\n dispatch('updateOverallocations');\r\n dispatch('updateForecasts', { forecastKey: state.forecastType });\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n },\r\n changePeriod({ commit, state, dispatch }, { fromDate, toDate, teamFilter, forRegion }) {\r\n // Fetch metadata\r\n return Promise.all([\r\n data.allocations.getForPeriod(fromDate, toDate, teamFilter, forRegion),\r\n data.employees.getActiveInPeriod(fromDate, toDate)\r\n ])\r\n .then((response) => {\r\n commit('periodChanged', {\r\n fromDate: fromDate,\r\n toDate: toDate,\r\n teamFilter: teamFilter,\r\n forRegion: forRegion,\r\n allocations: response[0]/*.data*/,\r\n employees: response[1]\r\n });\r\n this.fetchEmployees(fromDate, toDate);\r\n dispatch('updateOverallocations');\r\n dispatch('updateForecasts', { forecastKey: state.forecastType });\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n },\r\n // fetchEmployees({commit, state}, fromDate, toDate){\r\n // console.log('im hit')\r\n // data.employees.getActiveInPeriod(fromDate, toDate).then(response => {\r\n\r\n // commit('initialized', {\r\n // teamFilter: state.teamFilter,\r\n // groupBy: state.groupBy,\r\n // fromDate: fromDate,\r\n // toDate: toDate,\r\n // forRegion: state.forRegion,\r\n // clients: null, //response[0].data,\r\n // employees: response,\r\n // circles: state.circles,\r\n // allocations: state.allocations,\r\n // groups: state.groups,\r\n // regions: state.regions})\r\n // }\r\n // );\r\n // },\r\n addAllocation({ commit, state, dispatch }, dto) {\r\n\r\n return data.allocations\r\n .create(dto.allocationType, dto.circleId, dto.employeeId, dto.startDate, dto.allocationSpanInDays, dto.groupId)\r\n .then((response) => {\r\n commit('allocationAdded', {\r\n allocation: response.data\r\n });\r\n dispatch('updateOverallocations');\r\n dispatch('updateForecasts', { forecastKey: state.forecastType });\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n },\r\n updateAllocation({ commit, state, dispatch }, { allocation }) {\r\n const retrieveChildren = !!(allocation.attachNewAllocation);\r\n const existingAllocation = state.allocations.find(q => q.id === allocation.id);\r\n const removeChildren = existingAllocation.replacementId !== null && allocation.replacementId === null;\r\n return data.allocations\r\n .update(allocation)\r\n .then((response) => {\r\n commit('allocationUpdated', {\r\n allocation: response.data\r\n });\r\n if (removeChildren) {\r\n data.allocations\r\n .getForParent(allocation.id)\r\n .then((response) => {\r\n if (Array.isArray(response.data)) {\r\n for (let childAllocation of response.data) {\r\n dispatch('deleteAllocation', {\r\n allocationId: childAllocation.id,\r\n updateTag: childAllocation._UpdateTag\r\n });\r\n }\r\n }\r\n })\r\n .catch((error) => console.error(error));\r\n }\r\n if (retrieveChildren) {\r\n dispatch('updateChildAllocations', allocation.id);\r\n }\r\n dispatch('updateOverallocations');\r\n dispatch('updateForecasts', { forecastKey: state.forecastType });\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n },\r\n deleteAllocation({ commit, state, dispatch }, { allocationId, updateTag }) {\r\n return data.allocations\r\n .delete(allocationId, updateTag)\r\n .then(() => {\r\n commit('allocationDeleted', {\r\n allocationId: allocationId\r\n });\r\n dispatch('updateOverallocations');\r\n dispatch('updateForecasts', { forecastKey: state.forecastType });\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n },\r\n // Insert or update children of the specified allocation, into the allocations lookup\r\n updateChildAllocations({commit, state, dispatch}, allocationId) {\r\n \r\n return data.allocations\r\n .getForParent(allocationId)\r\n .then((response) => {\r\n if (Array.isArray(response.data)) {\r\n commit('removeChildAllocations', { allocationId });\r\n commit('allocationsAddOrUpdate', { allocations: response.data });\r\n }\r\n dispatch('updateOverallocations');\r\n dispatch('updateForecasts', { forecastKey: state.forecastType });\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n })\r\n },\r\n addMilestone({ commit }, {\r\n name,\r\n circleId,\r\n milestoneType,\r\n date,\r\n percentageCompleted }) {\r\n return data.milestones\r\n .create(name, milestoneType, circleId, date, percentageCompleted)\r\n .then((response) => {\r\n commit('milestoneAdded', {\r\n milestone: response.data\r\n });\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n },\r\n updateMilestone({ commit }, { milestone }) {\r\n return data.milestones\r\n .update(milestone)\r\n .then((response) => {\r\n commit('milestoneUpdated', {\r\n milestone: response.data\r\n });\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n },\r\n deleteMilestone({ commit }, { milestoneId, updateTag }) {\r\n return data.milestones\r\n .delete(milestoneId, updateTag)\r\n .then(() => {\r\n commit('milestoneDeleted', {\r\n milestoneId: milestoneId\r\n });\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n },\r\n updateOverallocations({ commit, state }) {\r\n return data.overallocations\r\n .getForPeriod(state.fromDate, state.toDate, state.teamFilter) \r\n .then((response) => {\r\n commit('overallocationUpdated', {\r\n overallocations: response.data //.data\r\n });\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n },\r\n updateForecasts({ commit, state }, { forecastKey }) {\r\n return data.forecasts\r\n .getFromDate(forecastKey, state.fromDate, null)\r\n .then((response) => {\r\n commit('forecastUpdated', {\r\n forecasts: response,\r\n forecastKey: forecastKey,\r\n });\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n },\r\n },\r\n getters: {\r\n teamFilter(state) { return state.teamFilter; },\r\n groupBy(state) { return state.groupBy; },\r\n forecastType(state) { return state.forecastType; },\r\n teams(state) { return state.teams; },\r\n employees(state) { return state.employees; },\r\n employeeLookup(state) { return state.lookup.employees; },\r\n clients(state) { return state.clients; },\r\n clientLookup(state) { return state.lookup.clients; },\r\n circleLookup(state) { return state.lookup.circles; },\r\n circles(state) { return state.circles; },\r\n allocations(state) { return state.allocations; },\r\n milestones(state) { return state.milestones; },\r\n overallocations(state) { return state.lookup.overallocations; },\r\n forecasts(state) { return state.lookup.forecasts; }, \r\n colors(state) { return state.colors; },\r\n colorsHex(state) { return state.colorsHex; },\r\n groups(state) { return state.groups; },\r\n regions(state) { return state.regions; },\r\n },\r\n});\r\n","import Repository from \"@/repositories/RepositoryFactory\";\r\nimport ENUM from \"../../enums/APISTATE\";\r\nimport moment from 'moment';\r\n\r\nconst GroupCommentRepository = Repository.get(\"groupComments\");\r\nconst GroupRepository = Repository.get(\"groups\");\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n apiState: ENUM.INIT,\r\n apiStateDashboard: ENUM.INIT,\r\n groupComments: [],\r\n groupComment: {}, \r\n groupCommentsDashboard: [],\r\n lookupArgs: null,\r\n editingGroupComment: null,\r\n groupCommentMeta: { group: '', date: '' }\r\n },\r\n\r\n mutations: {\r\n setApiState: (state, apiState) => {\r\n state.apiState = apiState;\r\n },\r\n setApiStateDashboard: (state, apiState) => {\r\n state.apiStateDashboard = apiState;\r\n },\r\n setGroupComments: (state, groupCommentsResponse) => {\r\n const {data} = groupCommentsResponse;\r\n state.groupComments = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n setGroupCommentsDashboard: (state, respones) => {\r\n const {data} = respones;\r\n state.groupCommentsDashboard = data;\r\n state.apiStateDashboard = ENUM.LOADED;\r\n },\r\n setGroupComment: (state, groupCommentResponse) => {\r\n const {data} = groupCommentResponse;\r\n state.groupComment = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n setLookupArgs: (state, lookupArgs) => {\r\n state.lookupArgs = lookupArgs;\r\n },\r\n setEditingGroupComment: (state, groupCommentResponse) => {\r\n const {data} = groupCommentResponse;\r\n state.editingGroupComment = data;\r\n state.apiState = ENUM.LOADED;\r\n },\r\n setGroupCommentMetaGroup: (state, groupResponse) => {\r\n const {data} = groupResponse;\r\n state.groupCommentMeta.group = data.title;\r\n },\r\n setGroupCommentMetaDate: (state, date) => {\r\n state.groupCommentMeta.date = moment(date).format(\"D. MMMM\");\r\n },\r\n setCleared: (state) => {\r\n state.apiState = ENUM.LOADED;\r\n state.apiStateDashboard = ENUM.LOADED;\r\n state.groupComments= [];\r\n state.groupComment = {};\r\n state.groupCommentsDashboard = [];\r\n state.lookupArgs = null;\r\n state.editingGroupComment = null;\r\n state.groupCommentMeta = { group: '', date: '' };\r\n }\r\n },\r\n\r\n actions: {\r\n clear({commit}) {\r\n commit('setCleared');\r\n },\r\n\r\n // Load all groupComments for the given group and date-range.\r\n async loadGroupComments({commit, dispatch}, {fromDate, toDate, forGroup}) {\r\n dispatch('cancelEditingGroupComment');\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n if (forGroup === null) {\r\n commit('setCleared');\r\n }\r\n else {\r\n commit('setLookupArgs', {fromDate, toDate, forGroup});\r\n commit('setGroupComments', await GroupCommentRepository.get(fromDate, toDate, forGroup));\r\n }\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n \r\n async loadGroupCommentsDashboard({commit, dispatch}, {fromDate, toDate}) {\r\n dispatch('cancelEditingGroupComment');\r\n commit('setApiStateDashboard', ENUM.LOADING);\r\n try {\r\n commit('setGroupCommentsDashboard', await GroupCommentRepository.getGroupCommentsDashboard(fromDate, toDate));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiStateDashboard', ENUM.ERROR);\r\n }\r\n },\r\n\r\n // Load the groupComment for the given date and group.\r\n async loadGroupComment({commit}, {forDate, forGroup}) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n if (forGroup === null) {\r\n commit('setCleared');\r\n }\r\n else {\r\n commit('setGroupCommentMetaGroup', await GroupRepository.getById(forGroup));\r\n commit('setGroupCommentMetaDate', forDate);\r\n commit('setGroupComment', await GroupCommentRepository.getForDayAndGroup(forDate, forGroup));\r\n }\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n\r\n async createOrUpdateGroupComment({commit, dispatch, state}, groupCommentModel) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n await GroupCommentRepository.createOrUpdate(groupCommentModel);\r\n dispatch('loadGroupComments', state.lookupArgs);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n\r\n // Open the groupComment sidebar and load the comment for the given date and the group-reference stored in lookupArgs.\r\n // Do nothing, if no group-reference is set.\r\n async editGroupComment({commit, state}, forDate) {\r\n if (state.lookupArgs === null)\r\n return;\r\n\r\n commit('setEditingGroupComment', {data: {}}); // show modal immediately\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n commit('setGroupCommentMetaGroup', await GroupRepository.getById(state.lookupArgs.forGroup));\r\n commit('setGroupCommentMetaDate', forDate);\r\n commit('setEditingGroupComment', await GroupCommentRepository.getForDayAndGroup(forDate, state.lookupArgs.forGroup));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n commit('setEditingGroupComment', {data: null});\r\n }\r\n },\r\n\r\n // Commit the currently edited groupComment\r\n async commitEditingGroupComment({commit, state, dispatch}, updatedGroupCommentModel) {\r\n commit('setApiState', ENUM.LOADING);\r\n try {\r\n await GroupCommentRepository.createOrUpdate(updatedGroupCommentModel);\r\n await dispatch('loadGroupComments', state.lookupArgs);\r\n dispatch('cancelEditingGroupComment');\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ENUM.ERROR);\r\n }\r\n },\r\n\r\n // Close the groupComment sidebar\r\n cancelEditingGroupComment({commit}) {\r\n commit('setEditingGroupComment', { data: null });\r\n }\r\n },\r\n\r\n getters: {\r\n groupCommentsApiStateDashboard: (state) => state.apiStateDashboard,\r\n groupCommentsApiState: (state) => state.apiState,\r\n groupComment: (state) => state.groupComment,\r\n groupComments: (state) => state.groupComments,\r\n groupCommentMeta: (state) => state.groupCommentMeta,\r\n editingGroupComment: (state) => state.editingGroupComment,\r\n groupCommentsDashboard: (state) => state.groupCommentsDashboard,\r\n }\r\n};\r\n","import Repository from '@/repositories/RepositoryFactory';\r\nimport ApiState from \"../../enums/APISTATE\";\r\n\r\nconst reports = Repository.get('reports');\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n reportForPeriodApiState: ApiState.INIT,\r\n replacementReportForPeriodApiState: ApiState.INIT,\r\n monthReportApiState: ApiState.INIT,\r\n monthReportForPeriodApiState: ApiState.INIT,\r\n monthReportGroupApiState: ApiState.INIT,\r\n reportForPeriod: [],\r\n replacementReportForPeriod: [],\r\n monthReport: [],\r\n monthReportForPeriod: [],\r\n monthReportGroup: [],\r\n yearlyReport: [], \r\n yearlyReportApiState: ApiState.INIT,\r\n reportNotification: [],\r\n reportNotificationApiState: ApiState.INIT,\r\n generalReportForPeriodApiState: ApiState.INIT,\r\n generalReportForPeriod: [],\r\n driveReportForPeriod: [],\r\n driveReportForPeriodApiState: ApiState.INIT,\r\n timeOffForPeriod: [],\r\n timeOffForPeriodApiState: ApiState.INIT\r\n },\r\n mutations: {\r\n setReportForPeriodApiState: (state, apiState) => {\r\n state.reportForPeriodApiState = apiState;\r\n },\r\n setMonthReportGroupApiState(state, apiState) {\r\n state.monthReportGroupApiState = apiState;\r\n },\r\n setReplacementReportForPeriodApiState: (state, apiState) => {\r\n state.replacementReportForPeriodApiState = apiState;\r\n },\r\n setMonthReportForPeriodApiState: (state, apiState) => {\r\n state.monthReportForPeriodApiState = apiState;\r\n },\r\n setMonthReportApiState: (state, apiState) => {\r\n state.monthReportApiState = apiState;\r\n },\r\n setReportForPeriod(state, response) {\r\n const { data } = response;\r\n state.reportForPeriod = data;\r\n state.reportForPeriodApiState = ApiState.LOADED;\r\n },\r\n setReplacementReportForPeriod(state, response) {\r\n const { data } = response;\r\n state.replacementReportForPeriod = data;\r\n state.replacementReportForPeriodApiState = ApiState.LOADED;\r\n },\r\n setMonthReportForPeriod(state, response) {\r\n const { data } = response;\r\n state.monthReportForPeriod = data;\r\n state.monthReportForPeriodApiState = ApiState.LOADED;\r\n },\r\n setMonthReport(state, response) {\r\n const { data } = response;\r\n state.monthReport = data;\r\n state.monthReportApiState = ApiState.LOADED;\r\n },\r\n setMonthReportGroup(state, response) {\r\n const { data } = response;\r\n state.monthReportGroup = data;\r\n state.monthReportGroupApiState = ApiState.LOADED;\r\n },\r\n setYearlyReport(state, response){\r\n const { data } = response;\r\n state.yearlyReport = data;\r\n state.yearlyReportApiState = ApiState.LOADED;\r\n },\r\n setYearlyReportApiState: (state, apiState) => {\r\n state.yearlyReportApiState = apiState;\r\n },\r\n setReportNotification(state, response){\r\n const { data } = response;\r\n state.reportNotification = data;\r\n state.reportNotificationApiState = ApiState.LOADED;\r\n },\r\n setReportNotificationApiState: (state, apiState) => {\r\n state.reportNotificationApiState = apiState;\r\n },\r\n setGeneralReportForPeriod(state, response){\r\n const { data } = response;\r\n state.generalReportForPeriod = data;\r\n state.generalReportForPeriodApiState = ApiState.LOADED;\r\n },\r\n setGeneralReportForPeriodApiState: (state, apiState) => {\r\n state.generalReportForPeriodApiState = apiState;\r\n },\r\n setDriveReportForPeriod(state, response){\r\n const { data } = response;\r\n state.driveReportForPeriod = data;\r\n state.driveReportForPeriodApiState = ApiState.LOADED;\r\n },\r\n setAbsenceStatisticsForPeriod(state, response){\r\n const { data } = response;\r\n state.monthReportForPeriod = data;\r\n state.monthReportForPeriodApiState = ApiState.LOADED;\r\n },\r\n setDriveReportForPeriodApiState: (state, apiState) => {\r\n state.driveReportForPeriodApiState = apiState;\r\n },\r\n setTimeOffForPeriod(state, response){\r\n const { data } = response;\r\n state.timeOffForPeriod = data;\r\n state.timeOffForPeriodApiState = ApiState.LOADED;\r\n },\r\n setTimeOffForPeriodApiState: (state, apiState) => {\r\n state.timeOffForPeriodApiState = apiState;\r\n },\r\n initialized(state, { reportForPeriod, replacementReportForPeriod }) {\r\n state.reportForPeriod = reportForPeriod;\r\n state.replacementReportForPeriodApiState = replacementReportForPeriod;\r\n }\r\n },\r\n actions: {\r\n async getReportForPeriod({ commit }, dto) {\r\n commit('setReportForPeriodApiState', ApiState.LOADING);\r\n try {\r\n commit('setReportForPeriod', await reports.getReportForPeriod(dto.startDate, dto.endDate, dto.forGroup));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setReportForPeriodApiState', ApiState.ERROR);\r\n }\r\n },\r\n async getReplacementReportForPeriod({ commit }, dto) {\r\n commit('setReplacementReportForPeriodApiState', ApiState.LOADING);\r\n try {\r\n commit('setReplacementReportForPeriod', await reports.getReplacementReportForPeriod(dto.startDate, dto.endDate, dto.forRegion));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setReplacementReportForPeriodApiState', ApiState.ERROR);\r\n }\r\n },\r\n async getGeneralReportForPeriod({ commit }, dto) {\r\n commit('setGeneralReportForPeriodApiState', ApiState.LOADING);\r\n try {\r\n commit('setGeneralReportForPeriod', await reports.getGeneralReportForPeriod(dto.startDate, dto.endDate, dto.forGroup, dto.forRegion));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setGeneralReportForPeriodApiState', ApiState.ERROR);\r\n }\r\n },\r\n \r\n async getAbsenceStatisticsForPeriod({ commit }, dto) {\r\n commit('setMonthReportForPeriodApiState', ApiState.LOADING);\r\n try {\r\n commit('setMonthReportForPeriod', await reports.getAbsenceStatisticsForPeriod(dto.startDate, dto.endDate, dto.forGroup, dto.forUser));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setMonthReportForPeriodApiState', ApiState.ERROR);\r\n }\r\n },\r\n async getDriveReportForPeriod({ commit }, dto) {\r\n commit('setDriveReportForPeriodApiState', ApiState.LOADING);\r\n try {\r\n commit('setDriveReportForPeriod', await reports.getDriveReportForPeriod(dto.startDate, dto.endDate, dto.forGroup, dto.forUser));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setDriveReportForPeriodApiState', ApiState.ERROR);\r\n }\r\n },\r\n async getTimeOffForPeriod({ commit }, dto) {\r\n commit('setTimeOffForPeriodApiState', ApiState.LOADING);\r\n try {\r\n commit('setTimeOffForPeriod', await reports.getTimeOffForPeriod(dto.startDate, dto.endDate, dto.forGroup, dto.forUser));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setTimeOffForPeriodApiState', ApiState.ERROR);\r\n }\r\n },\r\n async getMonthReport({ commit }, dto) {\r\n commit('setMonthReportApiState', ApiState.LOADING);\r\n try {\r\n commit('setMonthReport', await reports.getMonthReport(dto.year, dto.month, dto.forUser));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setMonthReportApiState', ApiState.ERROR);\r\n }\r\n },\r\n async approveAllMonthReport({ commit }, dto) {\r\n commit('setMonthReportApiState', ApiState.LOADING);\r\n try {\r\n commit('setMonthReport', await reports.approveAllMonthReport(dto.year, dto.month, dto.forUser));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setMonthReportApiState', ApiState.ERROR);\r\n }\r\n },\r\n async approveMonthReport({ commit }, dto) {\r\n try {\r\n await reports.approveMonthReport(dto.date, dto.forUser);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n }\r\n },\r\n async getMonthGroupReport({ commit }, dto) {\r\n commit('setMonthReportGroupApiState', ApiState.LOADING);\r\n try {\r\n commit('setMonthReportGroup', await reports.getMonthGroupReport(dto.year, dto.month, dto.forGroup, dto.forRegion));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setMonthReportGroupApiState', ApiState.ERROR);\r\n }\r\n },\r\n async getYearlyReport({ commit }, dto) {\r\n commit('setYearlyReportApiState', ApiState.LOADING);\r\n try {\r\n console.log(await reports.getYearlyReport(dto.year, dto.forUser));\r\n commit('setYearlyReport', await reports.getYearlyReport(dto.year, dto.forUser));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setYearlyReportApiState', ApiState.ERROR);\r\n }\r\n },\r\n async getReportNotification({ commit }, employeeId) {\r\n commit('setReportNotificationApiState', ApiState.LOADING);\r\n try {\r\n commit('setReportNotification', await reports.getReportNotification(employeeId));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setReportNotificationApiState', ApiState.ERROR);\r\n }\r\n },\r\n async setGeneralReportForPeriod({commit}, generalReportForPeriod){\r\n const reports = {data: generalReportForPeriod}\r\n commit(\"setGeneralReportForPeriod\", reports)\r\n },\r\n async setDriveReportForPeriod({commit}, driveStaticsForPeriod){\r\n const reports = {data: driveStaticsForPeriod};\r\n commit(\"setDriveReportForPeriod\", reports);\r\n },\r\n async setAbsenceStatisticsForPeriod({commit}, absenceStatisticsForPeriod){\r\n const reports = {data: absenceStatisticsForPeriod};\r\n commit(\"setAbsenceStatisticsForPeriod\", reports);\r\n },\r\n async setTimeOffForPeriod({commit}, timeOffForPeriod){\r\n const reports = {data: timeOffForPeriod};\r\n commit(\"setTimeOffForPeriod\", reports);\r\n }\r\n },\r\n getters: {\r\n reportNotification(state) {\r\n return state.reportNotification;\r\n },\r\n reportForPeriodApiState(state) {\r\n return state.reportForPeriodApiState;\r\n },\r\n replacementReportForPeriodApiState(state) {\r\n return state.replacementReportForPeriodApiState;\r\n },\r\n monthReportApiState(state) {\r\n return state.monthReportApiState;\r\n },\r\n monthReportGroupApiState(state) {\r\n return state.monthReportGroupApiState;\r\n },\r\n monthReportForPeriodApiState(state) {\r\n return state.monthReportForPeriodApiState;\r\n },\r\n reportForPeriod(state) { \r\n return state.reportForPeriod; \r\n },\r\n replacementReportForPeriod(state) { \r\n return state.replacementReportForPeriod; \r\n },\r\n monthReport(state) { \r\n return state.monthReport; \r\n },\r\n monthReportGroup(state) { \r\n return state.monthReportGroup; \r\n },\r\n monthReportForPeriod(state) { \r\n return state.monthReportForPeriod; \r\n },\r\n yearlyReport(state) { \r\n return state.yearlyReport; \r\n },\r\n yearlyReportApiState(state) { \r\n return state.yearlyReportApiState; \r\n },\r\n generalReportForPeriod(state) { \r\n return state.generalReportForPeriod; \r\n },\r\n generalReportForPeriodApiState(state) { \r\n return state.generalReportForPeriodApiState; \r\n },\r\n driveReportForPeriod(state) { \r\n return state.driveReportForPeriod; \r\n },\r\n driveReportForPeriodApiState(state) { \r\n return state.driveReportForPeriodApiState; \r\n },\r\n timeOffForPeriod(state) { \r\n return state.timeOffForPeriod; \r\n },\r\n timeOffForPeriodApiState(state) { \r\n return state.timeOffForPeriodApiState; \r\n }\r\n }\r\n });","import Repository from \"@/repositories/RepositoryFactory\";\r\nimport groupRepository from \"../../repositories/groups\";\r\nimport gpsDataRepository from \"../../repositories/gpsDataRepository\";\r\nimport APISTATE from \"../../enums/APISTATE\";\r\n\r\nconst mockData = {\r\n rows: [\r\n {\r\n reportRowName: \"Hjemmetid HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Hjemmetid SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Besøg HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Besøg HV med kode 23 (Minus)\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Besøg SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Besøg SH med kode 23 (Minus)\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Insemineringer HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Insemineringer SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Drægtighedsundersøgelser HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Drægtighedsundersøgelser SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Øvrige behandlinger HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Øvrige behandlinger SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Forgæves besøg HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Forgæves besøg SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Mobiltilkald HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Mobiltilkald SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Ekstra besøg HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Ekstra besøg SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Afhentning af Sæd hos kollega HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Afhentning af Sæd hos kollega SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Donortilkald HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Donortilkald SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Rådgivningstid HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Rådgivningstid SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Anden tid HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Anden tid SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Admin tid HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Admin tid SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Aflevering af sæd HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Aflevering af sæd SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Køretid HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Køretid SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Køretid før 07:15 HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"Køretid før 07:15 SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"DNA HV\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName: \"DNA SH\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName:\r\n \"Andet heldagsarbejde a' 8 t. Hverdage og antal timer total\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n {\r\n reportRowName:\r\n \"Andet heldagsarbejde a' 8 t. Søn- og helligdage og antal timer total\",\r\n hourlySalaryHV: 0,\r\n hourlySalarySH: 0,\r\n driveTimeHV: 0,\r\n driveTimeSH: 0,\r\n },\r\n ],\r\n};\r\n\r\nconst reports = Repository.get(\"reports\");\r\nconst getDateFromMonthYear = ( day, month, year ) => {\r\n let date = new Date();\r\n date.setMonth( month );\r\n date.setFullYear( year );\r\n date.setDate( day );\r\n return date;\r\n};\r\nconst getLatestDayOfMonth = ( month, year ) => {\r\n return new Date( year, month + 1, 0 ).getDate();\r\n};\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n apiState: APISTATE.LOADED,\r\n salaryReportList: {},\r\n salaryDayReportList: {},\r\n salaryReportFilterYear: undefined,\r\n salaryReportFilterMonth: undefined,\r\n salaryReportFilterToYear: undefined,\r\n salaryReportFilterToMonth: undefined,\r\n salaryReportFilterEmployeeNumber: 0,\r\n showYear: false,\r\n showEmpty: false,\r\n compareDate: false,\r\n showToDate: false,\r\n fromDate: undefined,\r\n toDate: undefined,\r\n salaryReportCsv: [],\r\n },\r\n mutations: {\r\n setApiState: (state, apiState) => {\r\n state.apiState = apiState;\r\n },\r\n setSalaryReportList: (state, response) => {\r\n state.salaryReportList = response;\r\n console.log( response )\r\n state.apiState = APISTATE.LOADED;\r\n },\r\n setSalaryDayReportList: (state, response) => {\r\n state.salaryDayReportList = response;\r\n state.apiState = APISTATE.LOADED;\r\n },\r\n setSalaryReportFilterYear: (state, response) => {\r\n state.salaryReportFilterYear = response;\r\n },\r\n setSalaryReportFilterMonth: (state, response) => {\r\n state.salaryReportFilterMonth = response;\r\n },\r\n setSalaryReportFilterToYear: (state, response) => {\r\n state.salaryReportFilterToYear = response;\r\n },\r\n setSalaryReportFilterToMonth: (state, response) => {\r\n state.salaryReportFilterToMonth = response;\r\n },\r\n setSalaryReportFilterEmployeeNumber: (state, response) => {\r\n state.salaryReportFilterEmployeeNumber = response;\r\n },\r\n setShowYear: ( state, showYear ) => {\r\n state.showYear = showYear;\r\n },\r\n setCompareDate: ( state, compareDate ) => {\r\n state.compareDate = compareDate;\r\n },\r\n setShowEmpty: ( state, showEmpty ) => {\r\n state.showEmpty = showEmpty;\r\n },\r\n setShowToDate: ( state, showToDate ) => {\r\n state.showToDate = showToDate;\r\n },\r\n setFromDate: ( state, fromDate ) => {\r\n state.fromDate = fromDate;\r\n },\r\n setToDate: ( state, toDate ) => {\r\n state.toDate = toDate;\r\n },\r\n setSalaryReportCsv: (state, response) => {\r\n state.salaryReportCsv = response;\r\n },\r\n },\r\n actions: {\r\n async exportSalaryReportCsv({ commit, dispatch }, dto) {\r\n try {\r\n let salaryReportCsv = await reports.exportSalaryReportCsv(dto);\r\n commit('setSalaryReportCsv', salaryReportCsv);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit(\"setApiState\", APISTATE.ERROR);\r\n } \r\n },\r\n async addNewLine ( { commit, state }, type ) {\r\n let salaryReportList = state.salaryReportList;\r\n\r\n let group = 'Diverse';\r\n switch ( type ) {\r\n case 'partialSumRows':\r\n group = 'HandyVik';\r\n break;\r\n case 'payrollRows':\r\n group = 'Øvrige';\r\n break;\r\n case 'onAccountSalaryRows':\r\n group = 'OnAccount';\r\n break;\r\n }\r\n\r\n salaryReportList[ type ] = [\r\n ...salaryReportList[ type ].filter( s => s.identifier !== 'Total' ),\r\n {\r\n times: 0,\r\n reportRowName: '',\r\n type: 'gange',\r\n newLine: true,\r\n rate: 0,\r\n total: 0,\r\n isUserDefined: true,\r\n group: group\r\n },\r\n salaryReportList[ type ].find( s => s.identifier === 'Total' ) ];\r\n commit( \"setSalaryReportList\", salaryReportList );\r\n },\r\n setShowYear ( { commit, dispatch }, showYear ) {\r\n commit( \"setShowYear\", showYear );\r\n dispatch('performLookup');\r\n },\r\n setShowEmpty ( { commit }, showEmpty ) {\r\n commit( \"setShowEmpty\", showEmpty );\r\n },\r\n setShowToDate ( { commit }, showToDate ) {\r\n commit( \"setShowToDate\", showToDate );\r\n },\r\n setFromDate ( { commit }, dateFrom ) {\r\n commit( \"setFromDate\", dateFrom );\r\n },\r\n setToDate ( { commit }, toDate ) {\r\n commit( \"setToDate\", toDate );\r\n },\r\n setCompareDate ( { commit }, compareDate ) {\r\n commit( \"setCompareDate\", compareDate );\r\n },\r\n async performLookup ( { state, dispatch, rootGetters } ) {\r\n let fromDate = getDateFromMonthYear(1, state.salaryReportFilterMonth, state.salaryReportFilterYear);\r\n let toDate = getDateFromMonthYear(\r\n getLatestDayOfMonth(state.salaryReportFilterMonth, state.salaryReportFilterYear),\r\n state.salaryReportFilterMonth,\r\n state.salaryReportFilterYear\r\n );\r\n\r\n if (state.showToDate) {\r\n fromDate = state.fromDate;\r\n toDate = state.toDate;\r\n }\r\n\r\n if (state.showYear) {\r\n fromDate = getDateFromMonthYear( 1, 0, state.salaryReportFilterYear );\r\n toDate = getDateFromMonthYear( 31, 11, state.salaryReportFilterYear );\r\n }\r\n\r\n let number = state.salaryReportFilterEmployeeNumber;\r\n if ( !number || number.toString() === '0' ) {\r\n number = rootGetters.currentUser.number;\r\n }\r\n\r\n const dto = {\r\n assistantNumber: number,\r\n fromDate: fromDate,\r\n toDate: toDate,\r\n compareDate: state.compareDate,\r\n userDefined: state.showToDate\r\n };\r\n dispatch('getAllSalaryReport', dto );\r\n },\r\n async getAllSalaryReport ( { commit }, dto ) {\r\n commit(\"setApiState\", APISTATE.LOADING);\r\n let salaryReports = await reports.getSalaryReport(\r\n dto.assistantNumber,\r\n dto.fromDate,\r\n dto.toDate,\r\n dto.compareDate,\r\n dto.userDefined\r\n );\r\n salaryReports.partialSumRows.forEach((v, i) => {\r\n if(i !== salaryReports.partialSumRows.length -1){\r\n v.style = { color: 'Blue'};\r\n }\r\n else{\r\n v.style = {fontWeight: 'bold'};\r\n }\r\n });\r\n salaryReports.payrollRows.forEach((v, i) => {\r\n if(i !== salaryReports.payrollRows.length -1){\r\n v.style = { color: 'Red'};\r\n } else{\r\n v.style = {fontWeight: 'bold'};\r\n }\r\n });\r\n salaryReports.averageRows.forEach((v, i) => {\r\n v.style = { color: 'Green'};\r\n });\r\n salaryReports.general.forEach((v, i) => {\r\n v.style = { color: 'Purple'};\r\n });\r\n salaryReports.totalSalaryRows.forEach((v, i) => {\r\n v.style = {fontWeight: 'bold'};\r\n });\r\n commit(\"setSalaryReportList\", salaryReports);\r\n commit(\"setApiState\", APISTATE.LOADED);\r\n },\r\n async getSalaryDayReport({ commit }, dto) {\r\n commit(\"setApiState\", APISTATE.LOADING);\r\n try {\r\n let salaryReports = await reports.getSalaryDayReport(\r\n dto.assistantNumber,\r\n dto.fromDate\r\n );\r\n commit('setSalaryDayReportList', salaryReports);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit(\"setApiState\", APISTATE.ERROR);\r\n }\r\n },\r\n async setYear({ commit, dispatch }, year) {\r\n commit(\"setSalaryReportFilterYear\", year);\r\n },\r\n setMonth({ commit }, month) {\r\n commit(\"setSalaryReportFilterMonth\", month);\r\n },\r\n setToYear({ commit }, year) {\r\n commit(\"setSalaryReportFilterToYear\", year);\r\n },\r\n setToMonth({ commit }, month) {\r\n commit(\"setSalaryReportFilterToMonth\", month);\r\n },\r\n setEmployeeNumber({ commit }, employeeNumber) {\r\n commit(\"setSalaryReportFilterEmployeeNumber\", employeeNumber);\r\n },\r\n initYearMonth({ commit }) {\r\n const date = new Date();\r\n commit(\"setSalaryReportFilterYear\", date.getFullYear());\r\n commit(\"setSalaryReportFilterMonth\", date.getMonth());\r\n }, \r\n async processReportSalaryEmployee({commit, state}, dto){\r\n commit(\"setApiState\", APISTATE.LOADING);\r\n await reports.processReportSalaryEmployee(dto).then( async function (){\r\n commit(\"setApiState\", APISTATE.LOADED);\r\n });\r\n \r\n commit(\"setApiState\", APISTATE.LOADED);\r\n }, \r\n async lockReportSalaryEmployee({commit, state}, dto){\r\n commit(\"setApiState\", APISTATE.LOADING);\r\n await reports.lockReportSalaryEmployee(dto).then( async function (){\r\n commit(\"setApiState\", APISTATE.LOADED);\r\n });\r\n \r\n commit(\"setApiState\", APISTATE.LOADED);\r\n }, \r\n async unlockReportSalaryEmployee({commit, state}, dto){\r\n commit(\"setApiState\", APISTATE.LOADING);\r\n await reports.unlockReportSalaryEmployee(dto).then( async function (){\r\n commit(\"setApiState\", APISTATE.LOADED);\r\n });\r\n \r\n commit(\"setApiState\", APISTATE.LOADED);\r\n },\r\n async updateReportSalaryEmployee({commit, state}, dto){\r\n commit(\"setApiState\", APISTATE.LOADING);\r\n console.log( dto )\r\n await reports.updateReportSalaryEmployee(dto).then( async function () {\r\n commit(\"setApiState\", APISTATE.LOADED);\r\n });\r\n \r\n commit(\"setApiState\", APISTATE.LOADED);\r\n },\r\n },\r\n getters: {\r\n salaryReportCsv(state) {\r\n return state.salaryReportCsv;\r\n },\r\n salaryReportList(state) {\r\n return state.salaryReportList;\r\n },\r\n salaryDayReportList(state) {\r\n return state.salaryDayReportList;\r\n },\r\n salaryReportApiState(state) {\r\n return state.apiState;\r\n },\r\n salaryReportFilterYear(state) {\r\n return state.salaryReportFilterYear;\r\n },\r\n salaryReportFilterMonth(state) {\r\n return state.salaryReportFilterMonth;\r\n },\r\n salaryReportFilterEmployeeNumber(state) {\r\n return state.salaryReportFilterEmployeeNumber;\r\n },\r\n showYear: ( state ) => { return state.showYear; },\r\n compareDate: ( state ) => { return state.compareDate; },\r\n showEmpty: ( state ) => { return state.showEmpty; },\r\n showToDate: ( state ) => { return state.showToDate; },\r\n fromDate: ( state ) => { return state.fromDate; },\r\n toDate: ( state ) => { return state.toDate; }\r\n },\r\n};\r\n","import Repository from '@/repositories/RepositoryFactory';\r\nimport ApiState from \"../../enums/APISTATE\";\r\n\r\nconst holidayRepository = Repository.get('holidayRepository');\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n holidays: [],\r\n holidaysApiState: ApiState.INIT,\r\n chosenHoliday: {},\r\n sidebarOpen: false\r\n },\r\n mutations: {\r\n setHolidaysApiState: (state, apiState) => {\r\n state.holidaysApiState = apiState;\r\n },\r\n setHolidays(state, response) {\r\n const { data } = response;\r\n state.holidays = data;\r\n state.holidaysApiState = ApiState.LOADED;\r\n },\r\n initialized(state, { holidays }) {\r\n state.holidays = holidays;\r\n },\r\n setChosenHoliday(state, holiday){\r\n state.chosenHoliday = holiday;\r\n },\r\n setSidebarOpen(state, sidebarOpen){\r\n state.sidebarOpen = sidebarOpen;\r\n }\r\n },\r\n actions: {\r\n async getHolidays({ commit }) {\r\n commit('setHolidaysApiState', ApiState.LOADING);\r\n try {\r\n commit('setHolidays', await holidayRepository.getAll());\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setHolidaysApiState', ApiState.ERROR);\r\n }\r\n },\r\n setChosenHoliday({commit}, holiday){\r\n commit(\"setChosenHoliday\", holiday)\r\n commit(\"setSidebarOpen\", true);\r\n },\r\n closeSidebar({commit}){\r\n commit(\"setSidebarOpen\", false);\r\n },\r\n async updateHoliday({commit, state}){\r\n commit(\"setHolidaysApiState\", ApiState.LOADING);\r\n try{\r\n await holidayRepository.update(state.chosenHoliday)\r\n commit(\"setHolidays\", await holidayRepository.getAll())\r\n commit(\"setSidebarOpen\", false)\r\n commit(\"setHolidaysApiState\", ApiState.LOADED);\r\n }catch(error){\r\n console.error(error)\r\n commit(\"setHolidaysApiState\", ApiState.ERROR)\r\n }\r\n }\r\n },\r\n getters: {\r\n holidaysApiState(state) {\r\n return state.holidaysApiState;\r\n },\r\n holidays(state) {\r\n return state.holidays;\r\n },\r\n chosenHoliday: (state) => {return state.chosenHoliday},\r\n sidebarOpen: (state) => {return state.sidebarOpen}\r\n }\r\n });","const generateUUID = function() { // Public Domain/MIT\r\n var d = new Date().getTime();\r\n if (typeof performance !== 'undefined' && typeof performance.now === 'function'){\r\n d += performance.now(); //use high-precision timer if available\r\n }\r\n var newGuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\r\n var r = (d + Math.random() * 16) % 16 | 0;\r\n d = Math.floor(d / 16);\r\n return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);\r\n });\r\n \r\n return newGuid;\r\n}\r\n\r\nexport { generateUUID };","/*\r\n * a: number (work), b: number (work), af: number (free in row), bf: number (free in row), freeInRow: number (group setting)\r\n */\r\nconst compare = (a, b, af, bf, freeInRow) => {\r\n // a work less than b\r\n if (a < b) {\r\n // a has half the work than b then omit free in row rule\r\n if(a * 2 < b){\r\n return -1;\r\n }\r\n\r\n if(af > 0 && af % freeInRow !== 0 && af > bf){\r\n return 1;\r\n }\r\n\r\n // af is set larger than due to free in row rule\r\n return -1;\r\n }\r\n // a work more than b\r\n if (a > b) {\r\n // a has double the work than b then omit free in row rule\r\n if(a * 0.5 > b){\r\n return 1;\r\n }\r\n\r\n if(bf > 0 && bf % freeInRow !== 0 && bf > af){\r\n return -1;\r\n }\r\n\r\n // af is set larger than due to free in row rule\r\n return 1;\r\n }\r\n\r\n if(af > 0 && af % freeInRow !== 0 && af > bf){\r\n return 1;\r\n }\r\n \r\n if(bf > 0 && bf % freeInRow !== 0 && bf > af){\r\n return -1;\r\n }\r\n\r\n return 0;\r\n};\r\n\r\n// a and b are statistic row\r\nconst compareEmployeeOrderNumber = (a, b) => {\r\n if (a.employee.orderNumber < b.employee.orderNumber) { \r\n return -1;\r\n }\r\n if (a.employee.orderNumber > b.employee.orderNumber) { \r\n return 1;\r\n }\r\n return 0;\r\n};\r\n\r\nconst compareOrderNumber = (a, b) => {\r\n if (a.orderNumber < b.orderNumber) { \r\n return -1;\r\n }\r\n if (a.orderNumber > b.orderNumber) { \r\n return 1;\r\n }\r\n return 0;\r\n};\r\n\r\nconst isActive = (day, weekdays) => {\r\n if(!weekdays || weekdays.length === 0){\r\n return true;\r\n }\r\n let isActive = true;\r\n switch(day){\r\n case 1: // Monday\r\n isActive = !weekdays.find(o => o.id === 2) || weekdays.find(o => o.id === 2).isChecked;\r\n break;\r\n \r\n case 2: \r\n isActive = !weekdays.find(o => o.id === 4) || weekdays.find(o => o.id === 4).isChecked;\r\n break;\r\n \r\n case 3: \r\n isActive = !weekdays.find(o => o.id === 8) || weekdays.find(o => o.id === 8).isChecked;\r\n break;\r\n \r\n case 4: \r\n isActive = !weekdays.find(o => o.id === 16) || weekdays.find(o => o.id === 16).isChecked;\r\n break;\r\n \r\n case 5: \r\n isActive = !weekdays.find(o => o.id === 32) || weekdays.find(o => o.id === 32).isChecked;\r\n break;\r\n \r\n case 6: // Saturday\r\n isActive = !weekdays.find(o => o.id === 64) || weekdays.find(o => o.id === 64).isChecked;\r\n break;\r\n\r\n case 7: // Sunday\r\n isActive = !weekdays.find(o => o.id === 1) || weekdays.find(o => o.id === 1).isChecked;\r\n break;\r\n }\r\n return isActive;\r\n};\r\n\r\nexport {\r\n isActive, \r\n compare,\r\n compareEmployeeOrderNumber,\r\n compareOrderNumber,\r\n \r\n}\r\n","import ApiState from \"../../enums/APISTATE\";\r\nimport moment from 'moment';\r\nimport { generateUUID } from \"../../util/uuid\";\r\nimport Vue from \"vue\";\r\nimport { isActive, compare, compareEmployeeOrderNumber, compareOrderNumber } from \"../../util/statisticsComparers\";\r\nimport Repository from '@/repositories/RepositoryFactory';\r\n\r\nconst allocationsRepository = Repository.get('allocations');\r\nconst groupTemplateRepository = Repository.get('groupTemplateRepository');\r\n\r\nconst allocationForDay = (day, employeeId, allocationsTimeOff) => {\r\n return allocationsTimeOff\r\n .filter(o => o.employeeId === employeeId)\r\n .filter(o => moment(o.startDate).format('YYYY-MM-DD') === day || \r\n (o.allocationSpanInDays > 1 && moment(o.startDate).format('YYYY-MM-DD') <= day && day <= moment(o.endDateInclusive).format('YYYY-MM-DD')))\r\n};\r\n\r\nconst isAllocatedForDay = (day, employeeId, allocationsTimeOff) => {\r\n return allocationsTimeOff\r\n .filter(o => o.employeeId === employeeId)\r\n .filter(o => o.replacementId && o.circleId)\r\n .filter(o => moment(o.startDate).format('YYYY-MM-DD') === day || \r\n (o.allocationSpanInDays > 1 && moment(o.startDate).format('YYYY-MM-DD') <= day && day <= moment(o.endDateInclusive).format('YYYY-MM-DD')))\r\n};\r\n\r\nconst dayBetween = (start, end) => {\r\n const a = moment(start);\r\n const b = moment(end);\r\n const totalDays = b.diff(a, 'days');\r\n return totalDays;\r\n};\r\n\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n apiState: ApiState.INIT,\r\n allocations: [],\r\n employeeStatistics: [],\r\n formGroupTemplate: null,\r\n activeSidebar: '',\r\n isNewGroupTemplate: false,\r\n loadStatisticsStartDate: moment().month(0).date(1),\r\n loadStatisticsEndDate: moment().month(11).date(31),\r\n loadStatisticsGroupFilter: '',\r\n loadStatisticsRegionFilter: '',\r\n\r\n },\r\n mutations: {\r\n setStatisticsApiState(state, apiState) {\r\n state.apiState = apiState;\r\n },\r\n clearEmployeeStatistics(state) {\r\n state.employeeStatistics = [];\r\n },\r\n setEmployeeStatistics(state, employeeStatistics) {\r\n state.employeeStatistics = employeeStatistics;\r\n },\r\n pushToAllocations(state, entry) {\r\n state.allocations.push(entry);\r\n },\r\n setAllocations(state, allocations) {\r\n state.allocations = allocations;\r\n },\r\n filterAllocations(state, element) {\r\n state.allocations = state.allocations.filter(element);\r\n },\r\n clearAllocations(state) {\r\n state.allocations = [];\r\n },\r\n pushToEmployeeStatistics(state, entry) {\r\n state.employeeStatistics.push(entry);\r\n },\r\n setActiveSidebar(state, activeSidebar) {\r\n state.activeSidebar = activeSidebar;\r\n },\r\n setFormGroupTemplate(state, formGroupTemplate) {\r\n Vue.set(state, \"formGroupTemplate\", formGroupTemplate);\r\n if (formGroupTemplate) {\r\n Vue.set(state.formGroupTemplate, \"fromDate\", moment(formGroupTemplate.fromDate).format('YYYY-MM-DD'));\r\n Vue.set(state.formGroupTemplate, \"toDate\", moment(formGroupTemplate.toDate).format('YYYY-MM-DD'));\r\n Vue.set(state.formGroupTemplate, \"prevFromDate\", moment(formGroupTemplate.fromDate).format('YYYY-MM-DD'));\r\n }\r\n },\r\n setFormGroupTemplateFromDate(state, fromDate) {\r\n Vue.set(state.formGroupTemplate, \"fromDate\", fromDate);\r\n },\r\n setFormGroupTemplateToDate(state, toDate) {\r\n Vue.set(state.formGroupTemplate, \"toDate\", toDate);\r\n },\r\n setFormGroupTemplateState(state, itemState) {\r\n Vue.set(state.formGroupTemplate, \"state\", itemState);\r\n },\r\n setFormGroupTemplateAllocations(state, allocations) {\r\n Vue.set(state.formGroupTemplate, 'allocations', allocations);\r\n },\r\n clearFormGroupTemplate(state) {\r\n state.formGroupTemplate = null;\r\n },\r\n setIsNewGroupTemplate(state, isNew) {\r\n state.isNewGroupTemplate = isNew;\r\n },\r\n sortEmployeeStatistics(state, compareMethod) {\r\n state.employeeStatistics = state.employeeStatistics.sort(compareMethod);\r\n },\r\n setFormGroupTemplateProperty(state, {propertyName, value}) {\r\n Vue.set(state.formGroupTemplate, propertyName, value);\r\n },\r\n setLoadStatisticsProperties(state, {groupFilter, regionFilter, startDate, endDate}) {\r\n if (groupFilter) state.loadStatisticsGroupFilter = groupFilter;\r\n if (regionFilter) state.loadStatisticsRegionFilter = regionFilter;\r\n if (startDate) state.loadStatisticsStartDate = startDate;\r\n if (endDate) state.loadStatisticsEndDate = endDate;\r\n }\r\n\r\n },\r\n actions: {\r\n initializeStatistics({commit, state, rootState}, {totalDays, groupFilter}) {\r\n const emp = rootState.employees.employees.filter(o => o.groupId === groupFilter || o.groups.find(f => f.groupId === groupFilter));\r\n \r\n let dayGroup = [];\r\n for (const em of emp) {\r\n let isGroupReplacement = em.area === 0;\r\n let isStandIn = false;\r\n let circleId = em.circleId;\r\n let weekDayGroupId = em.weekDayGroupId;\r\n let weekendGroupId = em.weekendGroupId;\r\n let maxWorkInRow = 99;\r\n let weekdays = [];\r\n let orderNumber = em.orderNumber;\r\n if(em.groupId !== groupFilter) {\r\n var grp = em.groups.find(o => o.groupId === groupFilter);\r\n if(grp){\r\n isGroupReplacement = grp.isGroupReplacement;\r\n isStandIn = grp.isStandIn;\r\n circleId = grp.circleId;\r\n weekdays = grp.weekdays;\r\n weekendGroupId = grp.weekendGroupId;\r\n weekDayGroupId = grp.weekDayGroupId;\r\n orderNumber = grp.orderNumber;\r\n if(grp.maxWorkInRow && grp.maxWorkInRow > 0) {\r\n maxWorkInRow = grp.maxWorkInRow;\r\n }\r\n }\r\n }\r\n\r\n commit('pushToEmployeeStatistics', {\r\n employee: em,\r\n circleId: circleId,\r\n baseCircleId: circleId,\r\n isGroupReplacement: isGroupReplacement,\r\n isStandIn: isStandIn,\r\n weekendGroupId: weekendGroupId,\r\n weekDayGroupId: weekDayGroupId, \r\n weekdays: weekdays,\r\n orderNumber: orderNumber,\r\n allocations: {\r\n free: totalDays - rootState.allocations.allocationsTimeOff.filter(o => o.employeeId === em.id).filter(o => moment(o.startDate) < moment(state.formGroupTemplate.toDate)).length,\r\n saturday: 0,\r\n sunday: 0,\r\n vacation: rootState.allocations.allocationsTimeOff.filter(o => o.employeeId === em.id && !o.circleId).filter(o => moment(o.startDate) < moment(state.formGroupTemplate.toDate)).length,\r\n holiday: 0, // TODO - Add filter and distribution\r\n work: 0,\r\n other: 0,\r\n freeInRow: 0,\r\n maxWorkInRow: maxWorkInRow,\r\n currentWorkInRow: 0,\r\n standIn: 0\r\n }\r\n });\r\n\r\n if(!dayGroup.find(o => o === weekDayGroupId)){\r\n dayGroup.push(weekDayGroupId);\r\n }\r\n }\r\n\r\n commit('sortEmployeeStatistics', compareEmployeeOrderNumber);\r\n\r\n return dayGroup;\r\n },\r\n\r\n finalizeStatistics({commit, state}, totalDays) { \r\n for (const em of state.employeeStatistics) {\r\n em.allocations.free = totalDays - (em.allocations.vacation + em.allocations.holiday + em.allocations.saturday + em.allocations.sunday + em.allocations.work);\r\n } \r\n commit('sortEmployeeStatistics', compareEmployeeOrderNumber);\r\n },\r\n\r\n async loadStatistics({commit, state, rootState}, {groupFilter, regionFilter, startDate, endDate} = {}) {\r\n commit('setStatisticsApiState', ApiState.LOADING);\r\n try {\r\n commit('setLoadStatisticsProperties', {groupFilter, regionFilter, startDate, endDate});\r\n commit('clearEmployeeStatistics');\r\n\r\n const {data: employeeStatistics} = await allocationsRepository.getAggregate(state.loadStatisticsStartDate, state.loadStatisticsEndDate, state.loadStatisticsGroupFilter, state.loadStatisticsRegionFilter)\r\n console.log(employeeStatistics)\r\n commit('setEmployeeStatistics', employeeStatistics);\r\n commit('sortEmployeeStatistics', compareEmployeeOrderNumber);\r\n\r\n commit('setStatisticsApiState', ApiState.LOADED);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setStatisticsApiState', ApiState.ERROR);\r\n }\r\n },\r\n\r\n async setLoadStatisticsStartDate({commit, dispatch}, startDate) {\r\n commit('setLoadStatisticsProperties', {startDate: moment(startDate) });\r\n await dispatch('loadStatistics');\r\n },\r\n async setLoadStatisticsEndDate({commit, dispatch}, endDate) {\r\n commit('setLoadStatisticsProperties', {endDate: moment(endDate) });\r\n await dispatch('loadStatistics');\r\n },\r\n\r\n async addAllocation({commit, dispatch, state}, {data, groupFilter}) {\r\n if (!state.formGroupTemplate) {\r\n alert(\"Der er ikke valgt nogen template endnu!\")\r\n return;\r\n }\r\n\r\n if (!state.formGroupTemplate.isTemplateManual) {\r\n return;\r\n }\r\n \r\n if(moment(data.startDate).toDate() < moment(state.formGroupTemplate.fromDate).toDate()) {\r\n console.log(moment(data.startDate).format(\"YYYY-MM-DD\") + \" < \" + moment(state.formGroupTemplate.fromDate).format(\"YYYY-MM-DD\"));\r\n alert(\"Dagen er før starts dato for opsætningen og er derfor ikke valid!\")\r\n return;\r\n }\r\n\r\n if(moment(data.startDate).toDate() > moment(state.formGroupTemplate.toDate).add(1, 'days').toDate()) {\r\n console.log(moment(data.startDate).format(\"YYYY-MM-DD\") + \" > \" + moment(state.formGroupTemplate.toDate).format(\"YYYY-MM-DD\"));\r\n alert(\"Dagen er efter slut dato for opsætningen og er derfor ikke valid!\")\r\n return;\r\n }\r\n if(data.split) {\r\n for(let i = 0; i < data.allocationSpanInDays; i++) {\r\n const date = moment.utc(data.startDate).add(i, 'days').toDate()\r\n const response = await groupTemplateRepository.createGroupTemplateAllocation({\r\n allocationType: data.allocationType,\r\n circleId: data.circleId,\r\n groupId: state.formGroupTemplate.groupId,\r\n groupTemplateId: state.formGroupTemplate.id,\r\n employeeId: data.employeeId,\r\n startDate: date,\r\n endDateInclusive: date,\r\n allocationSpanInDays: 1,\r\n id: generateUUID(),\r\n comment: data.comment,\r\n });\r\n \r\n commit('pushToAllocations', response.data);\r\n }\r\n } else {\r\n const response = await groupTemplateRepository.createGroupTemplateAllocation({\r\n allocationType: data.allocationType,\r\n circleId: data.circleId,\r\n groupId: state.formGroupTemplate.groupId,\r\n groupTemplateId: state.formGroupTemplate.id,\r\n employeeId: data.employeeId,\r\n startDate: data.startDate,\r\n endDateInclusive: moment.utc(data.startDate).add(data.allocationSpanInDays - 1, 'days').toDate(),\r\n allocationSpanInDays: data.allocationSpanInDays,\r\n id: generateUUID(),\r\n comment: data.comment,\r\n });\r\n \r\n commit('pushToAllocations', response.data);\r\n }\r\n\r\n dispatch('updateManuel', {groupFilter}); //this.updateManuel();\r\n },\r\n\r\n async moveAllocations({commit, dispatch, state}, daysToMove) {\r\n const groupFilter = state.formGroupTemplate.groupId;\r\n commit('setStatisticsApiState', ApiState.LOADING);\r\n try {\r\n const allocationsToRepeat = state.allocations.filter(o => !o.isRepeated);\r\n for (let allocation of allocationsToRepeat) {\r\n allocation.startDate = moment(allocation.startDate).add(daysToMove, 'days').format('YYYY-MM-DD'); \r\n allocation.endDateInclusive = moment.utc(allocation.startDate).add(allocation.allocationSpanInDays - 1, 'days').format('YYYY-MM-DD');\r\n const response = await groupTemplateRepository.updateGroupTemplateAllocation(allocation);\r\n allocation._UpdateTag = response.data._UpdateTag;\r\n }\r\n commit('setStatisticsApiState', ApiState.LOADED); \r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setStatisticsApiState', ApiState.ERROR);\r\n }\r\n await dispatch('generateFormGroupTemplate', { groupFilter });\r\n },\r\n\r\n filterAllocations({commit}, element) {\r\n commit('filterAllocations', element);\r\n },\r\n\r\n updateManuel({commit, state, rootState}, {groupFilter}) {\r\n console.log(\"updateManuel\");\r\n\r\n if (!state.formGroupTemplate.isTemplateManual) {\r\n return;\r\n }\r\n\r\n if(state.formGroupTemplate.repeatWeeks > 0) {\r\n const allocationsToRepeat = state.allocations.filter(o => !o.isRepeated);\r\n for (let j = 1; j < state.formGroupTemplate.repeatWeeks + 1; j++) {\r\n for (let data of allocationsToRepeat) {\r\n let startDate = moment(data.startDate).add(state.formGroupTemplate.planningWeeks * j, 'weeks').format(\"YYYY-MM-DD\");\r\n //console.log(startDate);\r\n\r\n let newAllocation = {\r\n allocationType: data.allocationType,\r\n circleId: data.circleId,\r\n groupId: data.groupId,\r\n groupTemplateId: data.id,\r\n employeeId: data.employeeId,\r\n startDate: startDate,\r\n endDateInclusive: moment.utc(startDate).add(data.allocationSpanInDays - 1, 'days').toDate(),\r\n allocationSpanInDays: data.allocationSpanInDays,\r\n id: generateUUID(),\r\n isRepeated: true\r\n };\r\n\r\n commit('pushToAllocations', newAllocation);\r\n }\r\n }\r\n }\r\n\r\n commit('setFormGroupTemplateAllocations', state.allocations); //this.formGroupTemplate.allocations = this.allocations;\r\n\r\n const emp = rootState.employees.employees.filter(o => o.groupId === groupFilter || o.groups.find(f => f.groupId === groupFilter));\r\n const totalDays = state.formGroupTemplate.planningWeeks * 7 * (state.formGroupTemplate.repeatWeeks + 1);\r\n\r\n commit('clearEmployeeStatistics');\r\n\r\n const shiftCircle = rootState.circles.circles.find(o => o.title === \"Bagvagt\");\r\n\r\n for(const em of emp) {\r\n let isGroupReplacement = em.area === 0;\r\n let isStandIn = false;\r\n let circleId = em.circleId;\r\n let weekDayGroupId = em.weekDayGroupId;\r\n let weekendGroupId = em.weekendGroupId;\r\n let maxWorkInRow = 99;\r\n let weekdays = [];\r\n let orderNumber = em.orderNumber;\r\n if (em.groupId !== groupFilter) {\r\n var grp = em.groups.find(o => o.groupId === groupFilter);\r\n if (grp) {\r\n isGroupReplacement = grp.isGroupReplacement;\r\n isStandIn = grp.isStandIn;\r\n circleId = grp.circleId;\r\n weekdays = grp.weekdays;\r\n weekendGroupId = grp.weekendGroupId;\r\n weekDayGroupId = grp.weekDayGroupId;\r\n orderNumber = grp.orderNumber;\r\n if (grp.maxWorkInRow && grp.maxWorkInRow > 0) {\r\n maxWorkInRow = grp.maxWorkInRow;\r\n }\r\n }\r\n }\r\n\r\n let free = totalDays;\r\n let saturdays = 0;\r\n let sundays = 0;\r\n let work = 0;\r\n let standIn = 0;\r\n let allocations = state.allocations.filter(o => o.employeeId === em.id);\r\n\r\n for (let allocation of allocations) {\r\n for (let i = 0; i < allocation.allocationSpanInDays; i++) {\r\n let date = moment.utc(allocation.startDate).add(i, 'days');\r\n const wDay = date.isoWeekday();\r\n \r\n if(shiftCircle && shiftCircle.id === allocation.circleId){\r\n standIn += 1;\r\n } else {\r\n if(wDay === 6) {\r\n saturdays += 1;\r\n }else if(wDay === 7) {\r\n sundays += 1;\r\n }else{\r\n work += 1;\r\n } \r\n }\r\n console.log('e: ' + em.number + ' ' + moment(date).format('YYYY-MM-DD') + ' w: ' + work + ' sat: ' + saturdays + ' sun: ' + sundays);\r\n }\r\n \r\n free -= allocation.allocationSpanInDays;\r\n }\r\n\r\n commit('pushToEmployeeStatistics', {\r\n employee: em,\r\n circleId: circleId,\r\n baseCircleId: circleId,\r\n isGroupReplacement: isGroupReplacement,\r\n isStandIn: isStandIn,\r\n weekendGroupId: weekendGroupId,\r\n weekDayGroupId: weekDayGroupId, \r\n weekdays: weekdays,\r\n orderNumber: orderNumber,\r\n allocations: {\r\n free: free,\r\n saturday: saturdays,\r\n sunday: sundays,\r\n vacation: 0,\r\n holiday: 0,\r\n work: work,\r\n other: 0,\r\n freeInRow: 0,\r\n maxWorkInRow: maxWorkInRow,\r\n currentWorkInRow: 0,\r\n standIn: standIn\r\n }\r\n });\r\n }\r\n\r\n commit('sortEmployeeStatistics', compareOrderNumber);\r\n },\r\n\r\n /*\r\n * TODO: Remember to update this.selectedDate in the view with the output-date from this promise.\r\n */\r\n async generateFormGroupTemplate({commit, state, rootState, dispatch}, {groupFilter}) { // generateClicked\r\n if (state.formGroupTemplate) {\r\n commit('setStatisticsApiState', ApiState.LOADING);\r\n\r\n if (state.formGroupTemplate.isTemplateManual) {\r\n try {\r\n // LOAD TEMPLATE ALLOCATIONS\r\n const response = await groupTemplateRepository.loadGroupTemplateAllocation({id: state.formGroupTemplate.id});\r\n //console.log(response.data);\r\n commit('setAllocations', response.data);\r\n dispatch('updateManuel', {groupFilter}); // this.updateManuel();\r\n commit('setStatisticsApiState', ApiState.LOADED);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setStatisticsApiState', ApiState.ERROR);\r\n }\r\n\r\n return moment(state.formGroupTemplate.fromDate).utc().startOf('day').toDate()\r\n }\r\n\r\n try {\r\n commit('clearAllocations');\r\n commit('clearEmployeeStatistics');\r\n let totalDays = 90;\r\n if (state.formGroupTemplate.toDate === state.formGroupTemplate.fromDate) {\r\n commit('setFormGroupTemplateToDate', moment.utc(state.formGroupTemplate.fromDate).add(totalDays, 'days').format('YYYY-MM-DD'));\r\n } else {\r\n var a = moment(state.formGroupTemplate.fromDate);\r\n var b = moment(state.formGroupTemplate.toDate);\r\n totalDays = b.diff(a, 'days') + 1; // =1\r\n }\r\n \r\n if (state.formGroupTemplate.isTemplateDynamic) {\r\n for (const item of rootState.allocations.allocationsTimeOff){\r\n if (moment(item.startDate) < moment(state.formGroupTemplate.toDate)) {\r\n commit('pushToAllocations', item);\r\n } \r\n }\r\n }\r\n console.log(\"Generating\");\r\n \r\n const group = state.formGroupTemplate;\r\n if (!group) {\r\n return;\r\n }\r\n \r\n if (!group.isSaturdayWeekendGroup) {\r\n group.isSaturdayWeekendGroup = false;\r\n }\r\n \r\n let circles = rootState.circles.circles.filter(o => o.groupId === groupFilter);\r\n if(circles.length === 0) {\r\n circles = rootState.circles.circles;\r\n }\r\n \r\n let date = moment.utc(state.formGroupTemplate.fromDate).toDate();\r\n let days = 0;\r\n let dayGroup = await dispatch('initializeStatistics', {totalDays, groupFilter});\r\n \r\n // Loop days\r\n // Loop mini groups\r\n // Add allocations based on group\r\n while (days < totalDays){\r\n const cDay = moment.utc(date).add(days, 'days');\r\n const wDay = cDay.isoWeekday();\r\n var indexDate = moment.utc(cDay);\r\n let isHoliday = rootState.holidayStore.holidays && rootState.holidayStore.holidays.find(o => indexDate.isSame(moment(o.date), 'date'));\r\n let employeeDay = [];\r\n \r\n if(state.formGroupTemplate.isTemplateDynamic) {\r\n employeeDay = await dispatch('getEmployeesForDay', {date: cDay, group: group, dayGroup: [...new Set(dayGroup)] });\r\n } else {\r\n employeeDay = await dispatch('getSimpleEmployeesForDay', {date: cDay, group: group, dayGroup: [...new Set(dayGroup)] });\r\n }\r\n \r\n for (const e of employeeDay) {\r\n let circleId = circles[0].id;\r\n let circleTitle = circles[0].title;\r\n \r\n if(e.circleId) {\r\n circleId = e.circleId;\r\n }\r\n \r\n commit('pushToAllocations', {\r\n adminNote: \"\",\r\n allocatedHoursPerDay: 7,\r\n allocatedTotalHours: 7,\r\n allocationSpanInDays: 1,\r\n allocationType: isHoliday \r\n ? \"WORKHOLIDAY\"\r\n : wDay === 6 \r\n ? \"WORKINGSATURDAY\" \r\n : wDay === 7 \r\n ? \"WORKINGSUNDAY\" \r\n : \"WORK\",\r\n circleColor: null,\r\n circleId: circleId,\r\n circleName: circleTitle,\r\n comment: \"\",\r\n created: new Date(),\r\n employeeId: e.employee.id,\r\n employeeName: e.employee.name,\r\n endDateInclusive: moment.utc(date).add(days + 1, 'days').toDate(),\r\n id: generateUUID(), // \"00000000-0000-0000-0000-000000000000\",\r\n note: \"\",\r\n number: e.employee.number,\r\n region: e.employee.region,\r\n replacementId: null,\r\n replacementName: null,\r\n startDate: cDay.toDate(),\r\n isSimulation: true\r\n });\r\n }\r\n \r\n days = days + 1;\r\n }\r\n \r\n dispatch('finalizeStatistics', {totalDays, groupFilter});\r\n \r\n commit('setFormGroupTemplateAllocations', state.allocations.filter(o => o.isSimulation));\r\n \r\n commit('setStatisticsApiState', ApiState.LOADED);\r\n return moment(state.formGroupTemplate.fromDate).utc().startOf('day').toDate();\r\n\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setStatisticsApiState', ApiState.ERROR);\r\n }\r\n }\r\n return null;\r\n },\r\n\r\n getEmployeesForDay({commit, state, rootState}, {date, group, dayGroup}) { \r\n const compareDayGroupSaturDay = (a, b) => {\r\n let ae = state.employeeStatistics.filter(o => o.weekDayGroupId === a);\r\n let be = state.employeeStatistics.filter(o => o.weekDayGroupId === b);\r\n let as = 0;\r\n let bs = 0;\r\n for(let i of ae) {\r\n if(i.allocations.saturday > as) {\r\n as = i.allocations.saturday;\r\n }\r\n }\r\n for(let i of be) {\r\n if(i.allocations.saturday > bs) {\r\n bs = i.allocations.saturday;\r\n }\r\n }\r\n if(as < bs) {\r\n return -1;\r\n }\r\n if(as > bs) {\r\n return 1;\r\n }\r\n return 0;\r\n };\r\n\r\n const compareDayGroupSunday= (a, b) => {\r\n let ae = state.employeeStatistics.filter(o => o.weekDayGroupId === a);\r\n let be = state.employeeStatistics.filter(o => o.weekDayGroupId === b);\r\n let as = 0;\r\n let bs = 0;\r\n for(let i of ae) {\r\n if(i.allocations.sunday > as) {\r\n as = i.allocations.sunday;\r\n }\r\n }\r\n for(let i of be) {\r\n if(i.allocations.sunday > bs) {\r\n bs = i.allocations.sunday;\r\n }\r\n }\r\n if(as < bs) {\r\n return -1;\r\n }\r\n if(as > bs) {\r\n return 1;\r\n }\r\n return 0;\r\n };\r\n\r\n const lookUp = moment.utc(date).format('YYYY-MM-DD');\r\n const day = date.isoWeekday();\r\n var indexDate = moment.utc(date);\r\n let isHoliday = rootState.holidayStore.holidays && rootState.holidayStore.holidays.find(o => indexDate.isSame(moment(o.date), 'date'));\r\n let freeInRow = 1;\r\n\r\n if(group.daysFreeInRow && group.daysFreeInRow > 0){\r\n freeInRow = group.daysFreeInRow;\r\n }\r\n\r\n // 1: Check work\r\n // 2: Check holiday\r\n // 3: Check free in row\r\n const compareWeekDay = (a, b) => {\r\n let ad = a.allocations.work;\r\n let bd = b.allocations.work;\r\n let af = a.allocations.freeInRow;\r\n let bf = b.allocations.freeInRow;\r\n let maxWorkInRow = a.allocations.maxWorkInRow;\r\n\r\n if(maxWorkInRow < 99 && a.allocations.currentWorkInRow > 2) {\r\n console.log('w-maxWorkInRow: ' + maxWorkInRow);\r\n return 1;\r\n }\r\n if(group.isSaturdayWeekendGroup === false) {\r\n ad = a.allocations.saturday + a.allocations.work;\r\n bd = b.allocations.saturday + b.allocations.work;\r\n }\r\n if(isHoliday) {\r\n ad = a.allocations.holiday;\r\n bd = b.allocations.holiday;\r\n }\r\n if(ad === bd) {\r\n ad = a.orderNumber;\r\n bd = b.orderNumber;\r\n }\r\n return compare(ad, bd, af, bf, freeInRow);\r\n };\r\n\r\n const compareSaturday = (a, b) => {\r\n let ad = a.allocations.saturday; \r\n let bd = b.allocations.saturday;\r\n let af = a.allocations.freeInRow;\r\n let bf = b.allocations.freeInRow;\r\n let maxWorkInRow = a.allocations.maxWorkInRow;\r\n \r\n if(maxWorkInRow < 99 && a.allocations.currentWorkInRow > 2) {\r\n console.log('sa-maxWorkInRow: ' + maxWorkInRow);\r\n return 1;\r\n }\r\n if(group.isSaturdayWeekendGroup === false) {\r\n // TODO: Check all days\r\n if(isActive(2, a.weekdays) && isActive(2, b.weekdays)){\r\n ad = a.allocations.saturday + a.allocations.work;\r\n bd = b.allocations.saturday + b.allocations.work;\r\n }\r\n }\r\n if(isHoliday) {\r\n ad = a.allocations.holiday;\r\n bd = b.allocations.holiday;\r\n }\r\n if(ad === bd) {\r\n ad = a.orderNumber;\r\n bd = b.orderNumber;\r\n }\r\n return compare(ad, bd, af, bf, freeInRow);\r\n };\r\n\r\n const compareSunday = (a, b) => {\r\n let ad = a.allocations.sunday;\r\n let bd = b.allocations.sunday;\r\n let af = a.allocations.freeInRow;\r\n let bf = b.allocations.freeInRow;\r\n let maxWorkInRow = a.allocations.maxWorkInRow;\r\n \r\n if(maxWorkInRow < 99 && a.allocations.currentWorkInRow > 2) {\r\n console.log('su-maxWorkInRow: ' + maxWorkInRow);\r\n return 1;\r\n }\r\n if(isHoliday) {\r\n ad = a.allocations.holiday;\r\n bd = b.allocations.holiday;\r\n }\r\n if(ad === bd) {\r\n ad = a.orderNumber;\r\n bd = b.orderNumber;\r\n }\r\n return compare(ad, bd, af, bf, freeInRow);\r\n };\r\n\r\n var compareStandIn = (a, b) => {\r\n let ad = a.allocations.standIn;\r\n let bd = b.allocations.standIn;\r\n let af = 0;\r\n let bf = 0;\r\n\r\n if(ad === bd) {\r\n ad = a.orderNumber;\r\n bd = b.orderNumber;\r\n }\r\n \r\n return compare(ad, bd, af, bf, freeInRow);\r\n };\r\n \r\n const days = [1,2,3,4,5]; \r\n let result = [];\r\n\r\n // Saturday\r\n // TODO: where not hole numers are used\r\n if(day === 6 && group.isSaturdayWeekendGroup) {\r\n const saturday = group.atWorkWeekSaturday;\r\n const calc = saturday / dayGroup.length;\r\n if (!days.find(o => o == calc)) {\r\n let added = saturday;\r\n let employees = state.employeeStatistics.sort(compareSaturday);\r\n \r\n for(let dg of dayGroup) {\r\n for(let e of employees) {\r\n if(e.weekDayGroupId === dg) {\r\n if(allocationForDay(lookUp, e.employee.id, rootState.allocations.allocationsTimeOff).length === 0 && isActive(day, e.weekdays)) {\r\n if(added > 0) {\r\n result.push(e);\r\n e.allocations.saturday = e.allocations.saturday + 1;\r\n e.allocations.free = e.allocations.free - 1;\r\n e.allocations.freeInRow = 0;\r\n e.allocations.currentWorkInRow += 1;\r\n }\r\n added = added - 1;\r\n break;\r\n }\r\n\r\n if(isActive(day, e.weekdays) === false){\r\n e.allocations.freeInRow = 0;\r\n }\r\n }\r\n }\r\n }\r\n\r\n for(let e of employees) {\r\n if(!result.find(o => o.employee.id === e.employee.id)) {\r\n if(allocationForDay(lookUp, e.employee.id, rootState.allocations.allocationsTimeOff).length === 0 && isActive(day, e.weekdays)) {\r\n if(added > 0) {\r\n // TODO\r\n result.push(e);\r\n e.allocations.saturday = e.allocations.saturday + 1;\r\n e.allocations.free = e.allocations.free - 1;\r\n e.allocations.freeInRow = 0;\r\n e.allocations.currentWorkInRow += 1;\r\n } else {\r\n if(e.allocations.freeInRow === 0 || e.allocations.freeInRow % freeInRow !== 0) {\r\n e.allocations.freeInRow = e.allocations.freeInRow + 1;\r\n }\r\n e.allocations.currentWorkInRow = 0;\r\n }\r\n added = added - 1;\r\n }\r\n if(isActive(day, e.weekdays) === false){\r\n e.allocations.freeInRow = 0;\r\n }\r\n }\r\n }\r\n return result;\r\n }\r\n }\r\n\r\n // Sunday\r\n // TODO: where not whole numers are used\r\n if(day === 7) {\r\n const sunday = group.atWorkWeekSunday;\r\n const calc = sunday / dayGroup.length;\r\n if (!days.find(o => o == calc)) { \r\n let added = sunday;\r\n let employees = state.employeeStatistics.sort(compareSunday);\r\n \r\n for(let dg of dayGroup) {\r\n for(let e of employees) {\r\n if(e.weekDayGroupId === dg) {\r\n if(allocationForDay(lookUp, e.employee.id, rootState.allocations.allocationsTimeOff).length === 0 && isActive(day, e.weekdays)) {\r\n if(added > 0) { \r\n result.push(e);\r\n e.allocations.sunday = e.allocations.sunday + 1;\r\n e.allocations.free = e.allocations.free - 1;\r\n e.allocations.freeInRow = 0;\r\n e.allocations.currentWorkInRow += 1;\r\n }\r\n added = added - 1;\r\n break;\r\n }\r\n if(isActive(day, e.weekdays) === false){\r\n e.allocations.freeInRow = 0;\r\n }\r\n }\r\n }\r\n }\r\n\r\n for(let e of employees) {\r\n if(!result.find(o => o.employee.id === e.employee.id)) {\r\n if(allocationForDay(lookUp, e.employee.id, rootState.allocations.allocationsTimeOff).length === 0 && isActive(day, e.weekdays)) {\r\n if(added > 0) {\r\n // TODO\r\n result.push(e);\r\n e.allocations.sunday = e.allocations.sunday + 1;\r\n e.allocations.free = e.allocations.free - 1;\r\n e.allocations.freeInRow = 0;\r\n e.allocations.currentWorkInRow += 1;\r\n } else {\r\n if(e.allocations.freeInRow === 0 || e.allocations.freeInRow % freeInRow !== 0) {\r\n e.allocations.freeInRow = e.allocations.freeInRow + 1;\r\n }\r\n e.allocations.currentWorkInRow = 0;\r\n }\r\n added = added - 1;\r\n }\r\n if(isActive(day, e.weekdays) === false){\r\n e.allocations.freeInRow = 0;\r\n }\r\n }\r\n }\r\n return result;\r\n }\r\n }\r\n\r\n let atWork = group.atWorkWeekDays;\r\n if (day === 6) {\r\n atWork = group.atWorkWeekSaturday;\r\n } else if(day === 7) {\r\n atWork = group.atWorkWeekSunday;\r\n } \r\n\r\n let weekDay = atWork / dayGroup.length;\r\n \r\n let sortedDayGroup = dayGroup;\r\n // If value is not hole number\r\n if (!days.find(o => o == weekDay)) {\r\n if(day === 6) {\r\n sortedDayGroup = dayGroup.sort(compareDayGroupSaturDay);\r\n } else if(day === 7) {\r\n //sortedDayGroup = dayGroup.sort(this.compareDayGroup);\r\n } \r\n }\r\n\r\n console.log(\"dayGroup\");\r\n\r\n for(let dg of sortedDayGroup) {\r\n let added = weekDay;\r\n\r\n let employees = state.employeeStatistics.filter(o => o.weekDayGroupId === dg).sort(compareWeekDay);\r\n\r\n if(employees.filter(o => o.isGroupReplacement === false).length === 1){\r\n added = 1;\r\n }\r\n\r\n if (day === 6) {\r\n employees = employees.sort(compareSaturday);\r\n } else if (day === 7) {\r\n employees = employees.sort(compareSunday);\r\n } \r\n let grpResult = [];\r\n let circleIds = [];\r\n for(let circle of employees.filter(o => o.isGroupReplacement === false)) {\r\n circleIds.push(circle.baseCircleId);\r\n if(isAllocatedForDay(lookUp, circle.employee.id, rootState.allocations.allocationsTimeOff).length > 0) {\r\n circle.allocations.work = circle.allocations.work + 1; // Work allocated\r\n circle.allocations.currentWorkInRow += 1;\r\n added = added - 1;\r\n atWork -= 1;\r\n }\r\n }\r\n for(let e of employees) { \r\n if(allocationForDay(lookUp, e.employee.id, rootState.allocations.allocationsTimeOff).length === 0 && isActive(day, e.weekdays)) {\r\n if(added > 0 && atWork > 0) {\r\n \r\n // Group replacement\r\n if(e.isGroupReplacement) {\r\n if(circleIds.length > 0) {\r\n e.circleId = circleIds[0];\r\n } else {\r\n e.circleId = e.baseCircleId;\r\n }\r\n } else {\r\n e.circleId = e.baseCircleId;\r\n }\r\n\r\n circleIds = circleIds.filter(o => o !== e.circleId);\r\n \r\n result.push(e);\r\n\r\n let workLoad = 1;\r\n\r\n if (e.employee.workLoad > 0 && e.employee.workLoad < 100) {\r\n workLoad = 1 + (e.employee.workLoad / 100);\r\n }\r\n\r\n if (day === 6) {\r\n e.allocations.saturday = e.allocations.saturday + 1 * workLoad;\r\n } else if(day === 7) {\r\n e.allocations.sunday = e.allocations.sunday + 1 * workLoad;\r\n } else {\r\n if(isHoliday) {\r\n e.allocations.holiday = e.allocations.holiday + 1 * workLoad;\r\n } else {\r\n e.allocations.work = e.allocations.work + 1 * workLoad;\r\n }\r\n }\r\n \r\n e.allocations.freeInRow = 0;\r\n e.allocations.currentWorkInRow += 1;\r\n atWork -= 1;\r\n } else {\r\n if(e.allocations.freeInRow === 0 || e.allocations.freeInRow % freeInRow !== 0) {\r\n e.allocations.freeInRow = e.allocations.freeInRow + 1;\r\n }\r\n if(e.allocations.maxWorkInRow < 99) {\r\n //debugger;\r\n }\r\n\r\n e.allocations.currentWorkInRow = 0;\r\n }\r\n added = added - 1;\r\n }\r\n if(isActive(day, e.weekdays) === false){\r\n e.allocations.freeInRow = 0;\r\n }\r\n }\r\n result.push(...grpResult);\r\n }\r\n \r\n if(day === 7) { \r\n console.log(state.employeeStatistics);\r\n let employeeStandIns = state.employeeStatistics.filter(o => o.isStandIn).sort(compareStandIn);\r\n for (let se of employeeStandIns) {\r\n let circleStandIn = rootState.circles.circles.find(o => o.title === \"Bagvagt\");\r\n\r\n if (!circleStandIn) {\r\n circleStandIn = rootState.circles.circles[0];\r\n }\r\n \r\n if (result.filter(o => o.employee.id === se.employee.id).length === 0) {\r\n se.circleId = circleStandIn.id;\r\n se.allocations.standIn += 1;\r\n result.push(se); \r\n break;\r\n }\r\n }\r\n }\r\n\r\n return result;\r\n },\r\n\r\n getSimpleEmployeesForDay({state, rootState}, {date, group, dayGroup}) {\r\n let freeInRow = 1;\r\n const day = date.isoWeekday();\r\n const lookUp = moment.utc(date).format('YYYY-MM-DD');\r\n\r\n if(group.daysFreeInRow && group.daysFreeInRow > 0){\r\n freeInRow = group.daysFreeInRow;\r\n }\r\n var compare = (a, b) => {\r\n let ad = a.allocations.work + a.allocations.saturday + a.allocations.sunday;\r\n let bd = b.allocations.work + b.allocations.saturday + b.allocations.sunday;\r\n let af = a.allocations.freeInRow;\r\n let bf = b.allocations.freeInRow;\r\n \r\n if(day === 7) { \r\n console.log(`${day} (${lookUp}): a (${ad}-${af}-${a.allocations.dayFree}), b (${bd}-${bf}-${b.allocations.dayFree})`);\r\n }\r\n\r\n if(freeInRow === 3){\r\n if(a.allocations.dayFree && a.allocations.dayFree === 7) {\r\n if(day === 3) {\r\n return 1;\r\n }\r\n }\r\n if(a.allocations.dayFree && a.allocations.dayFree === 4) {\r\n if(day === 7) {\r\n return 1;\r\n }\r\n }\r\n if(b.allocations.dayFree && b.allocations.dayFree === 7) { \r\n if(day === 3) {\r\n return -1;\r\n }\r\n }\r\n if(b.allocations.dayFree && b.allocations.dayFree === 4) {\r\n if(day === 7) {\r\n return -1;\r\n }\r\n }\r\n }\r\n\r\n if(af === freeInRow) {\r\n af = 0;\r\n }\r\n\r\n if(bf === freeInRow) {\r\n bf = 0;\r\n }\r\n \r\n if(af < bf){\r\n return -1;\r\n }\r\n\r\n if(af > bf){\r\n return 1;\r\n }\r\n\r\n if(ad === bd) {\r\n ad = a.orderNumber;\r\n bd = b.orderNumber;\r\n }\r\n\r\n if(ad < bd) {\r\n return -1;\r\n }\r\n\r\n if(ad > bd) {\r\n return 1;\r\n }\r\n\r\n return 0;\r\n };\r\n\r\n let result = [];\r\n var indexDate = moment.utc(date);\r\n let isHoliday = rootState.holidayStore.holidays && rootState.holidayStore.holidays.find(o => indexDate.isSame(moment(o.date), 'date'));\r\n let atWork = group.atWorkWeekDays;\r\n if (day === 6) {\r\n atWork = group.atWorkWeekSaturday;\r\n } else if(day === 7) {\r\n atWork = group.atWorkWeekSunday;\r\n } \r\n \r\n let employees = state.employeeStatistics;\r\n let circleIds = [];\r\n for (let circle of employees.filter(o => o.isGroupReplacement === false)) {\r\n circleIds.push(circle.baseCircleId);\r\n }\r\n\r\n if(group.daysFreeInRow === 4) {\r\n if (day === 4) {\r\n for(let e of employees) {\r\n e.allocations.freeInRow = 0;\r\n }\r\n }\r\n\r\n employees = state.employeeStatistics.sort(compare);\r\n \r\n for(let e of employees) {\r\n if(atWork > 0) { \r\n // Group replacement\r\n if(e.isGroupReplacement) {\r\n if(circleIds.length > 0) {\r\n e.circleId = circleIds[0];\r\n } else {\r\n e.circleId = e.baseCircleId;\r\n }\r\n } else {\r\n e.circleId = e.baseCircleId;\r\n }\r\n\r\n circleIds = circleIds.filter(o => o !== e.circleId);\r\n \r\n result.push(e);\r\n\r\n let workLoad = 1;\r\n\r\n if (day === 6) {\r\n e.allocations.saturday = e.allocations.saturday + 1 * workLoad;\r\n } else if(day === 7) {\r\n e.allocations.sunday = e.allocations.sunday + 1 * workLoad;\r\n } else {\r\n if(isHoliday) {\r\n e.allocations.holiday = e.allocations.holiday + 1 * workLoad;\r\n } else {\r\n e.allocations.work = e.allocations.work + 1 * workLoad;\r\n }\r\n }\r\n \r\n e.allocations.freeInRow = 0;\r\n e.allocations.currentWorkInRow += 1;\r\n atWork -= 1;\r\n } else {\r\n e.allocations.freeInRow += 1;\r\n } \r\n }\r\n }\r\n \r\n if(group.daysFreeInRow === 3) {\r\n if (day === 3 || day === 5) {\r\n for(let e of employees) {\r\n e.allocations.freeInRow = 0;\r\n }\r\n }\r\n \r\n employees = state.employeeStatistics.sort(compare);\r\n \r\n for(let e of employees) {\r\n if(atWork > 0) { \r\n // Group replacement\r\n if(e.isGroupReplacement) {\r\n if(circleIds.length > 0) {\r\n e.circleId = circleIds[0];\r\n } else {\r\n e.circleId = e.baseCircleId;\r\n }\r\n } else {\r\n e.circleId = e.baseCircleId;\r\n }\r\n\r\n circleIds = circleIds.filter(o => o !== e.circleId);\r\n \r\n result.push(e);\r\n\r\n let workLoad = 1;\r\n\r\n if (day === 6) {\r\n e.allocations.saturday = e.allocations.saturday + 1 * workLoad;\r\n } else if(day === 7) {\r\n e.allocations.sunday = e.allocations.sunday + 1 * workLoad;\r\n } else {\r\n if(isHoliday) {\r\n e.allocations.holiday = e.allocations.holiday + 1 * workLoad;\r\n } else {\r\n e.allocations.work = e.allocations.work + 1 * workLoad;\r\n }\r\n }\r\n \r\n e.allocations.freeInRow = 0;\r\n e.allocations.currentWorkInRow += 1;\r\n atWork -= 1;\r\n } else {\r\n e.allocations.freeInRow += 1;\r\n e.allocations.dayFree = day;\r\n } \r\n }\r\n }\r\n if(group.daysFreeInRow === 2) {\r\n if (day === 2 || day === 4 || day === 6) {\r\n for(let e of employees) {\r\n e.allocations.freeInRow = 0;\r\n }\r\n }\r\n \r\n employees = state.employeeStatistics.sort(compare);\r\n \r\n for(let e of employees) {\r\n if(atWork > 0) { \r\n // Group replacement\r\n if(e.isGroupReplacement) {\r\n if(circleIds.length > 0) {\r\n e.circleId = circleIds[0];\r\n } else {\r\n e.circleId = e.baseCircleId;\r\n }\r\n } else {\r\n e.circleId = e.baseCircleId;\r\n }\r\n\r\n circleIds = circleIds.filter(o => o !== e.circleId);\r\n \r\n result.push(e);\r\n\r\n let workLoad = 1;\r\n\r\n if (day === 6) {\r\n e.allocations.saturday = e.allocations.saturday + 1 * workLoad;\r\n } else if(day === 7) {\r\n e.allocations.sunday = e.allocations.sunday + 1 * workLoad;\r\n } else {\r\n if(isHoliday) {\r\n e.allocations.holiday = e.allocations.holiday + 1 * workLoad;\r\n } else {\r\n e.allocations.work = e.allocations.work + 1 * workLoad;\r\n }\r\n }\r\n \r\n e.allocations.freeInRow = 0;\r\n e.allocations.currentWorkInRow += 1;\r\n atWork -= 1;\r\n } else {\r\n e.allocations.freeInRow += 1;\r\n e.allocations.dayFree = day;\r\n } \r\n }\r\n }\r\n return result;\r\n },\r\n\r\n initAllocation({commit, state, rootState}, {groupFilter}) {\r\n console.log(\"initAllocation\");\r\n if (groupFilter && state.allocations.length === 0) { \r\n try {\r\n commit('setStatisticsApiState', ApiState.LOADING);\r\n \r\n for(const item of rootState.allocations.allocationsTimeOff){\r\n commit('pushToAllocations', item);\r\n }\r\n \r\n const totalDays = 90;\r\n const emp = rootState.employees.employees.filter(o => o.groupId === groupFilter);\r\n \r\n for(const em of emp) {\r\n commit('pushToEmployeeStatistics', {\r\n employee: em,\r\n circleId: null,\r\n allocations: {\r\n free: totalDays - rootState.allocations.allocationsTimeOff.filter(o => o.employeeId === em.id).length,\r\n saturday: 0,\r\n sunday: 0,\r\n vacation: rootState.allocations.allocationsTimeOff.filter(o => o.employeeId === em.id && !o.circleId).length,\r\n holiday: 0, // TODO - Add filter and distribution\r\n work: rootState.allocations.allocationsTimeOff.filter(o => o.employeeId === em.id && o.circleId && o.replacementId).length,\r\n other: 0\r\n }\r\n });\r\n }\r\n \r\n commit('sortEmployeeStatistics', compareEmployeeOrderNumber);\r\n commit('setStatisticsApiState', ApiState.LOADED);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setStatisticsApiState', ApiState.ERROR);\r\n }\r\n } else { \r\n commit('setStatisticsApiState', ApiState.LOADED);\r\n }\r\n }, \r\n\r\n async setFormGroupTemplate({commit}, formGroupTemplate) {\r\n commit('setFormGroupTemplate', formGroupTemplate);\r\n },\r\n\r\n closeGroupTemplateSidebars({commit}) {\r\n commit('setActiveSidebar', '');\r\n },\r\n\r\n showGroupTemplateSelectionSidebar({commit}) {\r\n commit('setActiveSidebar', 'group-templates');\r\n },\r\n\r\n showGroupTemplateEditSidebar({commit}) {\r\n commit('setActiveSidebar', 'edit-group-template');\r\n },\r\n\r\n async copyGroupTemplate({commit, dispatch, rootState, state}, {groupTemplate, groupFilter}){\r\n if(groupTemplate) {\r\n commit('setFormGroupTemplate', groupTemplate);\r\n\r\n var a = moment(state.formGroupTemplate.fromDate);\r\n var b = moment(state.formGroupTemplate.toDate);\r\n const totalDays = b.diff(a, 'days') // =1\r\n\r\n if(state.formGroupTemplate.toDate !== state.formGroupTemplate.fromDate) {\r\n const newFrom = moment.utc(state.formGroupTemplate.toDate).add(1, 'days');\r\n const newTo = moment.utc(newFrom).add(totalDays, 'days');\r\n const newTotalDays = newTo.diff(newFrom, 'days') // =1\r\n\r\n if(totalDays != newTotalDays) {\r\n console.log('error: days between not korrekt' + totalDays + ' != ' + newTotalDays);\r\n }\r\n\r\n commit('setFormGroupTemplateFromDate', moment.utc(newFrom).format('YYYY-MM-DD'));\r\n commit('setFormGroupTemplateToDate', moment.utc(newTo).format('YYYY-MM-DD'));\r\n }\r\n\r\n commit('setFormGroupTemplateState', 0);\r\n\r\n // LOAD TEMPLATE ALLOCATIONS\r\n const response = await groupTemplateRepository.loadGroupTemplateAllocation({id: state.formGroupTemplate.id});\r\n const copyAllocations = response.data;\r\n\r\n await dispatch('groupTemplateStore/createGroupTemplate', state.formGroupTemplate, { root: true });\r\n await dispatch('groupTemplateStore/getAllTemplatesForGroup', groupFilter, { root: true });\r\n\r\n commit('setFormGroupTemplate', rootState.groupTemplateStore.groupTemplate);\r\n \r\n for (let data of copyAllocations) {\r\n let startDate = moment.utc(data.startDate).add(totalDays + 1, 'days').format(\"YYYY-MM-DD\");\r\n\r\n await dispatch('addAllocation', {data: {\r\n allocationType: data.allocationType,\r\n circleId: data.circleId,\r\n groupId: state.formGroupTemplate.groupId,\r\n groupTemplateId: state.formGroupTemplate.id,\r\n employeeId: data.employeeId,\r\n startDate: startDate,\r\n endDateInclusive: moment.utc(startDate).add(data.allocationSpanInDays - 1, 'days').format(\"YYYY-MM-DD\"),\r\n allocationSpanInDays: data.allocationSpanInDays,\r\n id: generateUUID(),\r\n }, groupFilter});\r\n }\r\n\r\n if (state.formGroupTemplate) {\r\n commit('setFormGroupTemplateFromDate', moment(state.formGroupTemplate.fromDate).format('YYYY-MM-DD'));\r\n commit('setFormGroupTemplateToDate', moment(state.formGroupTemplate.toDate).format('YYYY-MM-DD'));\r\n }\r\n commit('setIsNewGroupTemplate', false);\r\n }\r\n },\r\n\r\n async generateGroupTemplate({commit, dispatch}, {groupTemplate, groupFilter}) {\r\n commit('setStatisticsApiState', ApiState.LOADING);\r\n await new Promise(q => setTimeout(q, 500)); // Kind of a hack, to give the UI time to update\r\n commit('setFormGroupTemplate', groupTemplate);\r\n commit('setIsNewGroupTemplate', false);\r\n commit('setActiveSidebar', '');\r\n return await dispatch('generateFormGroupTemplate', {groupFilter});\r\n },\r\n\r\n async editGroupTemplate({commit, dispatch}, groupTemplate) {\r\n commit('setFormGroupTemplate', groupTemplate);\r\n commit('setIsNewGroupTemplate', false);\r\n if(groupTemplate) {\r\n const groupFilter = groupTemplate.groupId;\r\n await dispatch('generateFormGroupTemplate', { groupFilter });\r\n }\r\n commit('setActiveSidebar', 'edit-group-template');\r\n },\r\n\r\n async initGroupTemplate({commit, dispatch, rootState, state}, {selectedGroup, fromDate, toDate, groupFilter}) {\r\n if(selectedGroup) {\r\n\r\n commit('setIsNewGroupTemplate', true);\r\n \r\n commit('setFormGroupTemplate', {\r\n atWorkWeekDays: selectedGroup.atWorkWeekDays,\r\n atWorkWeekSaturday: selectedGroup.atWorkWeekSaturday,\r\n atWorkWeekSunday: selectedGroup.atWorkWeekSunday,\r\n atWorkHolidayWeekdays: selectedGroup.atWorkHolidayWeekdays,\r\n atWorkHolidayWeekend: selectedGroup.atWorkHolidayWeekend,\r\n daysFreeInRow: !selectedGroup.daysFreeInRow || selectedGroup.daysFreeInRow <= 0 \r\n ? 2 \r\n : selectedGroup.daysFreeInRow,\r\n isSaturdayWeekendGroup: !selectedGroup.isSaturdayWeekendGroup \r\n ? false \r\n : selectedGroup.isSaturdayWeekendGroup,\r\n title: selectedGroup.title,\r\n fromDate: fromDate,\r\n toDate: toDate,\r\n groupId: selectedGroup.id,\r\n isTemplateManual: true,\r\n isTemplateDynamic: false,\r\n planningWeeks: 1,\r\n repeatWeeks: 0\r\n });\r\n\r\n if (state.formGroupTemplate.isTemplateManual) {\r\n const totalDays = (state.formGroupTemplate.planningWeeks * 7 * (state.formGroupTemplate.repeatWeeks + 1)) - 1;\r\n commit('setFormGroupTemplateToDate', moment(state.formGroupTemplate.fromDate).add(totalDays, 'days').format('YYYY-MM-DD'));\r\n }\r\n\r\n //this.isSaturdayWeekendGroup = this.formGroupTemplate.isSaturdayWeekendGroup; // not sure that this does anything\r\n \r\n await dispatch('allocations/getTimeOff', {fromDate, forGroup: groupFilter}, { root: true });\r\n await dispatch('groupTemplateStore/getAllTemplatesForGroup', groupFilter, { root: true });\r\n await dispatch('groupComments/loadGroupComments', {fromDate, toDate, forGroup: groupFilter}, { root: true });\r\n } \r\n },\r\n\r\n async createGroupTemplateFromForm({commit, dispatch, state, rootState}, {groupFilter}) {\r\n if (!state.formGroupTemplate) {\r\n return;\r\n }\r\n try {\r\n commit('setStatisticsApiState', ApiState.LOADING);\r\n \r\n await dispatch('groupTemplateStore/createGroupTemplate', state.formGroupTemplate, { root: true });\r\n await dispatch('groupTemplateStore/getAllTemplatesForGroup', groupFilter, { root: true });\r\n \r\n commit('setFormGroupTemplate', rootState.groupTemplateStore.groupTemplate);\r\n commit('setIsNewGroupTemplate', false);\r\n commit('setStatisticsApiState', ApiState.LOADED);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setStatisticsApiState', ApiState.ERROR);\r\n }\r\n },\r\n\r\n async updateGroupTemplateFromForm({commit, dispatch, state, rootState}, {fromDate, groupFilter}) { // updateClicked\r\n console.log(`updateGroupTemplateFromForm({fromDate: ${fromDate}, groupFilter: ${groupFilter}})`);\r\n if (!state.formGroupTemplate) {\r\n return;\r\n }\r\n\r\n const prevFromDate = state.formGroupTemplate.prevFromDate;\r\n\r\n if (state.formGroupTemplate.isTemplateManual) {\r\n let rw = new Number(state.formGroupTemplate.repeatWeeks);\r\n let pw = new Number(state.formGroupTemplate.planningWeeks);\r\n const weeks = pw * (rw + 1); \r\n const totalDays = (weeks * 7) - 1;\r\n\r\n commit('setFormGroupTemplateToDate', moment(state.formGroupTemplate.fromDate).add(totalDays, 'days').format('YYYY-MM-DD'));\r\n }\r\n\r\n await dispatch('groupTemplateStore/updateGroupTemplate', state.formGroupTemplate, { root: true });\r\n commit('setFormGroupTemplate', rootState.groupTemplateStore.groupTemplate);\r\n\r\n if (fromDate) {\r\n let spanInDays = dayBetween(fromDate, state.formGroupTemplate.fromDate);\r\n\r\n if(prevFromDate) {\r\n spanInDays = dayBetween(prevFromDate, state.formGroupTemplate.fromDate);\r\n console.log('prevFromDate: ' + prevFromDate);\r\n }\r\n\r\n console.log(spanInDays);\r\n // TODO: Move existing allocations\r\n console.log('fromDate: ' + fromDate);\r\n console.log('newFromDate: ' + state.formGroupTemplate.fromDate);\r\n if(spanInDays !== 0) {\r\n dispatch('moveAllocations', spanInDays);\r\n }\r\n }\r\n\r\n if (state.formGroupTemplate) {\r\n commit('setFormGroupTemplateFromDate', moment(state.formGroupTemplate.fromDate).format('YYYY-MM-DD'));\r\n commit('setFormGroupTemplateToDate', moment(state.formGroupTemplate.toDate).format('YYYY-MM-DD'));\r\n\r\n await dispatch('allocations/getTimeOff', {fromDate: state.formGroupTemplate.fromDate, forGroup: groupFilter}, { root: true });\r\n } \r\n },\r\n\r\n templatePropertyChanged({commit}, {propertyName, value}) {\r\n commit('setFormGroupTemplateProperty', {propertyName, value});\r\n },\r\n\r\n async updateGroupTemplate({commit, dispatch}, {fromDate, groupFilter}) {\r\n commit('setStatisticsApiState', ApiState.LOADING);\r\n try {\r\n // await this.updateClicked();\r\n await dispatch('updateGroupTemplateFromForm', {fromDate, groupFilter});\r\n \r\n //this.generateClicked();\r\n const selectedDate = await dispatch('generateFormGroupTemplate', {groupFilter});\r\n \r\n await dispatch('groupTemplateStore/getAllTemplatesForGroup', groupFilter, { root: true });\r\n \r\n dispatch('closeGroupTemplateSidebars');\r\n commit('setStatisticsApiState', ApiState.LOADED);\r\n \r\n return selectedDate;\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setStatisticsApiState', ApiState.ERROR);\r\n }\r\n },\r\n\r\n async applyGroupTemplate({commit, dispatch, state}, groupFilter) {\r\n const response = await groupTemplateRepository.canApply(state.formGroupTemplate);\r\n \r\n if(response.data > 0) { \r\n const vueTmp = Vue;\r\n const buefyTmp = vueTmp.prototype.$buefy;\r\n buefyTmp.dialog.confirm({\r\n title: \"Advarsel\",\r\n message: `Der er ${response.data} allokerede opgaver. Vil du erstatte din nuværende kalender med den nye kalender?`,\r\n cancelText: 'Nej',\r\n confirmText: 'Ja',\r\n type: 'is-success',\r\n onConfirm: async () => {\r\n commit('setStatisticsApiState', ApiState.LOADING);\r\n try {\r\n dispatch('closeGroupTemplateSidebars');\r\n console.log(state.formGroupTemplate)\r\n if(!state.formGroupTemplate.isTemplateManual) {\r\n commit('setFormGroupTemplateProperty', { propertyName: 'allocations', value: state.allocations.filter(o => o.isSimulation) });\r\n }\r\n \r\n await dispatch('groupTemplateStore/applyGroupTemplate', state.formGroupTemplate, { root: true }); \r\n await dispatch('groupTemplateStore/getAllTemplatesForGroup', groupFilter, { root: true });\r\n\r\n commit('clearFormGroupTemplate');\r\n commit('setStatisticsApiState', ApiState.LOADED);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setStatisticsApiState', ApiState.ERROR);\r\n }\r\n },\r\n onCancel:() => {\r\n dispatch('closeGroupTemplateSidebars');\r\n }\r\n });\r\n }\r\n else {\r\n commit('setStatisticsApiState', ApiState.LOADING);\r\n try {\r\n dispatch('closeGroupTemplateSidebars');\r\n\r\n if(!state.formGroupTemplate.isTemplateManual) {\r\n commit('setFormGroupTemplateProperty', { propertyName: 'allocations', value: state.allocations.filter(o => o.isSimulation) });\r\n }\r\n \r\n await dispatch('groupTemplateStore/applyGroupTemplate', state.formGroupTemplate, { root: true });\r\n await dispatch('groupTemplateStore/getAllTemplatesForGroup', groupFilter, { root: true });\r\n\r\n commit('clearFormGroupTemplate');\r\n commit('setStatisticsApiState', ApiState.LOADED);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setStatisticsApiState', ApiState.ERROR);\r\n }\r\n }\r\n },\r\n async rollbackGroupTemplate({commit, dispatch, state}, {groupTemplate, groupFilter}) {\r\n const vueTmp = Vue;\r\n const buefyTmp = vueTmp.prototype.$buefy;\r\n commit('setFormGroupTemplate', groupTemplate);\r\n buefyTmp.dialog.confirm({\r\n title: \"Advarsel\",\r\n message: `Vil du rulle dette template tilbage?`,\r\n cancelText: 'Nej',\r\n confirmText: 'Ja',\r\n type: 'is-success',\r\n onConfirm: async () => {\r\n commit('setStatisticsApiState', ApiState.LOADING);\r\n try {\r\n dispatch('closeGroupTemplateSidebars');\r\n console.log(state.formGroupTemplate)\r\n if(!state.formGroupTemplate.isTemplateManual) {\r\n commit('setFormGroupTemplateProperty', { propertyName: 'allocations', value: state.allocations.filter(o => o.isSimulation) });\r\n }\r\n \r\n await dispatch('groupTemplateStore/rollbackGroupTemplate', state.formGroupTemplate, { root: true }); \r\n await dispatch('groupTemplateStore/getAllTemplatesForGroup', groupFilter, { root: true });\r\n \r\n commit('clearFormGroupTemplate');\r\n commit('setStatisticsApiState', ApiState.LOADED);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setStatisticsApiState', ApiState.ERROR);\r\n }\r\n },\r\n onCancel:() => {\r\n dispatch('closeGroupTemplateSidebars');\r\n }\r\n });\r\n }\r\n },\r\n getters: {\r\n statisticsApiState: state => state.apiState,\r\n allocations: state => state.allocations,\r\n employeeStatistics: state => state.employeeStatistics,\r\n formGroupTemplate: state => state.formGroupTemplate,\r\n activeSidebar: state => state.activeSidebar,\r\n isNewGroupTemplate: state => state.isNewGroupTemplate,\r\n latestUpdateTextFormGroupTemplate: state => {\r\n if (state.formGroupTemplate) {\r\n const duration = moment().diff(moment(state.formGroupTemplate._LatestUpdate), \"milliseconds\");\r\n const durationText = duration > 0 ? moment.duration(duration).humanize() : '';\r\n \r\n return `Opdateret ${durationText} siden af ${state.formGroupTemplate?._UpdatedByName}`;\r\n }\r\n return '';\r\n },\r\n loadStatisticsStartDate: state => state.loadStatisticsStartDate.toDate(),\r\n loadStatisticsEndDate: state => state.loadStatisticsEndDate.toDate(),\r\n loadStatisticsGroupFilter: state => state.loadStatisticsGroupFilter,\r\n loadStatisticsRegionFilter: state => state.loadStatisticsRegionFilter\r\n\r\n }\r\n}\r\n","import Vue from \"vue\";\r\nimport ApiState from '@/enums/APISTATE';\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n apiState: ApiState.INIT,\r\n selectedAllocations: {},\r\n\r\n },\r\n mutations: {\r\n setApiState(state, apiState) {\r\n state.apiState = apiState;\r\n },\r\n addSelection(state, allocation) {\r\n if (!Object.prototype.hasOwnProperty.call(state.selectedAllocations, allocation.id)) {\r\n // state.selectedAllocations[allocation.id] = allocation;\r\n Vue.set(state.selectedAllocations, allocation.id, allocation);\r\n }\r\n else {\r\n Vue.delete(state.selectedAllocations, allocation.id);\r\n }\r\n },\r\n clearSelection(state) {\r\n Vue.set(state, 'selectedAllocations', {});\r\n }\r\n\r\n },\r\n actions: {\r\n selectAllocation({commit, rootGetters}, allocation) {\r\n if (rootGetters.isReplacement || rootGetters.hasEditRights === false){\r\n return;\r\n }\r\n\r\n commit('addSelection', allocation);\r\n },\r\n async selectMoveTarget({commit, dispatch, state}, {rowData, rowDataKey, allocationRowDataKey = rowDataKey}) {\r\n if (state.apiState === ApiState.LOADING)\r\n return;\r\n\r\n commit('setApiState', ApiState.LOADING);\r\n try {\r\n for (let allocationId of Object.keys(state.selectedAllocations)) {\r\n let allocation = state.selectedAllocations[allocationId];\r\n allocation[allocationRowDataKey] = rowData[rowDataKey];\r\n await dispatch('scheduler/updateAllocation', { allocation }, { root: true });\r\n }\r\n dispatch('clearSelection');\r\n commit('setApiState', ApiState.LOADED);\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', ApiState.ERROR);\r\n }\r\n },\r\n clearSelection({commit}) {\r\n commit('clearSelection');\r\n }\r\n\r\n },\r\n getters: {\r\n awaitingSelection: state => Object.keys(state.selectedAllocations).length > 0,\r\n allocationSelectionClass: state => (allocation) => Object.prototype.hasOwnProperty.call(state.selectedAllocations, allocation.id) ? 'allocation-selection__allocation--selected' : '',\r\n isAllocationSelected: state => (allocation) => Object.prototype.hasOwnProperty.call(state.selectedAllocations, allocation.id),\r\n moveTargetClass: state => ({rowData, rowDataKey}) => {\r\n const output = [];\r\n output.push('allocation-selection__target');\r\n if (Object.keys(state.selectedAllocations).length > 0) {\r\n output.push('allocation-selection__target--active');\r\n }\r\n return output;\r\n }\r\n }\r\n}\r\n","import Repository from '@/repositories/RepositoryFactory';\r\nimport ApiState from \"../../enums/APISTATE\";\r\n\r\nconst agreementRepository = Repository.get('agreementRepository');\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n agreements: [],\r\n agreementsApiState: ApiState.INIT,\r\n agreement: {},\r\n agreementApiState: ApiState.INIT,\r\n editingAgreement: null,\r\n },\r\n mutations: {\r\n setAgreementsApiState: (state, apiState) => {\r\n state.agreementsApiState = apiState;\r\n },\r\n setAgreements(state, response) {\r\n const { data } = response;\r\n state.agreements = data;\r\n state.agreementsApiState = ApiState.LOADED;\r\n },\r\n setAgreementApiState: (state, apiState) => {\r\n state.agreementApiState = apiState;\r\n },\r\n setAgreement(state, response) {\r\n const { data } = response;\r\n state.agreement = data;\r\n state.agreementApiState = ApiState.LOADED;\r\n },\r\n initialized(state, { agreements }) {\r\n state.agreements = agreements;\r\n }\r\n },\r\n actions: {\r\n async agreementById({ commit, dispatch }, dto) {\r\n dispatch('cancelEditingAgreement');\r\n commit('setAgreementApiState', ApiState.LOADING);\r\n try {\r\n commit('setAgreement', await agreementRepository.getById(dto.employeeId, dto.year));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setAgreementApiState', ApiState.ERROR);\r\n }\r\n },\r\n async agreementByYear({ commit, dispatch }, dto) {\r\n dispatch('cancelEditingAgreement');\r\n commit('setAgreementsApiState', ApiState.LOADING);\r\n try {\r\n commit('setAgreements', await agreementRepository.getAllForYear(dto.year));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setAgreementsApiState', ApiState.ERROR);\r\n }\r\n },\r\n async agreementUpdate({ commit, dispatch, state }, dto) {\r\n commit('setAgreementApiState', ApiState.LOADING);\r\n try {\r\n const response = await agreementRepository.update(dto);\r\n commit(\"setAgreement\", response);\r\n dispatch('cancelEditingAgreement');\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setAgreementApiState', ApiState.ERROR);\r\n }\r\n },\r\n async agreementUpdateAll({ commit, dispatch, state }, dto) {\r\n commit('setAgreementsApiState', ApiState.LOADING);\r\n try {\r\n const response = await agreementRepository.updateAll(dto);\r\n commit(\"setAgreements\", response)\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setAgreementsApiState', ApiState.ERROR);\r\n }\r\n },\r\n // Close the agreement sidebar\r\n cancelEditingAgreement({commit}) {\r\n commit('setAgreement', { data: null });\r\n },\r\n \r\n // Open the agreement sidebar\r\n startEditingAgreement({commit}, dto) {\r\n commit('setAgreement', { data: dto });\r\n }\r\n },\r\n getters: {\r\n agreementApiState(state) {\r\n return state.agreementApiState;\r\n },\r\n agreement(state) {\r\n return state.agreement;\r\n },\r\n agreementsApiState(state) {\r\n return state.agreementsApiState;\r\n },\r\n agreements(state) {\r\n return state.agreements;\r\n }\r\n }\r\n });","import Repository from \"@/repositories/RepositoryFactory\";\r\nimport groupRepository from \"../../repositories/groups\";\r\nimport gpsDataRepository from \"../../repositories/gpsDataRepository\";\r\nimport APISTATE from \"../../enums/APISTATE\";\r\n\r\nconst GPSDataRepository = Repository.get(\"gpsData\");\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n gpsDataApiState: APISTATE.LOADED,\r\n gpsDataList: [],\r\n gpsDataFilterYear: undefined,\r\n gpsDataFilterMonth: undefined,\r\n gpsDataFilterEmployeeNumber: 0\r\n },\r\n mutations: {\r\n setApiState: (state, apiState) => {\r\n state.gpsDataApiState = apiState;\r\n },\r\n setGPSDataList: (state, response) => {\r\n state.gpsDataList = response;\r\n state.apiState = APISTATE.LOADED;\r\n },\r\n setGPSDataFilterYear: (state, response) => {\r\n state.gpsDataFilterYear = response;\r\n },\r\n setGPSDataFilterMonth: (state, response) => {\r\n state.gpsDataFilterMonth = response;\r\n },\r\n setGPSDataFilterEmployeeNumber: (state, response) => {\r\n state.gpsDataFilterEmployeeNumber = response;\r\n }\r\n },\r\n actions: {\r\n getAllGPSData({ commit }, dto) {\r\n commit(\"setApiState\", APISTATE.LOADING);\r\n return new Promise((resolve, reject) => {\r\n GPSDataRepository\r\n .getGPSDataList(dto)\r\n .then((response) => {\r\n commit(\"setGPSDataList\", response);\r\n commit(\"setApiState\", APISTATE.LOADED);\r\n resolve();\r\n })\r\n .catch((error) => {\r\n commit(\"setApiState\", APISTATE.ERROR);\r\n reject(error);\r\n });\r\n });\r\n },\r\n async updateGPSData({ commit}, gpsData) {\r\n commit('setApiState', APISTATE.LOADING);\r\n try {\r\n const response = await gpsDataRepository.updateGPSData(gpsData);\r\n commit('setApiState',APISTATE.LOADED)\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setApiState', APISTATE.ERROR);\r\n }\r\n },\r\n setYear({commit}, year) {\r\n commit(\"setGPSDataFilterYear\", year)\r\n },\r\n setMonth({commit}, month) {\r\n commit(\"setGPSDataFilterMonth\", month)\r\n },\r\n setEmployeeNumber ({commit}, employeeNumber) {\r\n commit(\"setGPSDataFilterEmployeeNumber\", employeeNumber)\r\n },\r\n initYearMonth ({commit}) {\r\n \r\n const date = new Date();\r\n commit(\"setGPSDataFilterYear\", date.getFullYear());\r\n commit(\"setGPSDataFilterMonth\", date.getMonth());\r\n \r\n }\r\n },\r\n getters: {\r\n gpsDataList(state) {\r\n return state.gpsDataList\r\n },\r\n gpsDataApiState (state) {\r\n return state.gpsDataApiState\r\n },\r\n gpsDataFilterYear (state) {\r\n return state.gpsDataFilterYear\r\n },\r\n gpsDataFilterMonth (state) {\r\n return state.gpsDataFilterMonth\r\n },\r\n gpsDataFilterEmployeeNumber (state) {\r\n return state.gpsDataFilterEmployeeNumber\r\n }\r\n }\r\n};\r\n","import Repository from '@/repositories/RepositoryFactory';\r\nimport ENUM from '../../enums/APISTATE';\r\nimport store from '../';\r\n\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n errorModalOpen: false,\r\n errorModalText: '',\r\n confirmationButtonText: '',\r\n confirmed: undefined,\r\n errorModalHeader: '',\r\n confirmingModel: {},\r\n },\r\n mutations: {\r\n setErrorModalOpen (state, open){\r\n state.errorModalOpen = open\r\n },\r\n setErrorModalText (state, text) {\r\n state.errorModalText = text\r\n },\r\n setErrorModalHeader (state, header) {\r\n state.errorModalHeader = header\r\n },\r\n setConfirmationButtonText(state, confirmationText){\r\n state.confirmationButtonText = confirmationText\r\n },\r\n setConfirmed(state, confirmed){\r\n console.log(confirmed);\r\n state.confirmed = confirmed\r\n },\r\n setConfirmingModel(state, confirmingModel){\r\n state.confirmingModel = confirmingModel;\r\n }\r\n },\r\n actions: {\r\n setErrorModalOpen: ({commit}, open) => {commit(\"setErrorModalOpen\", open)},\r\n setErrorModalText: ({commit}, text) => {commit(\"setErrorModalText\", text)},\r\n setConfirmationButtonText: ({commit}, confrimationText) => {commit(\"setConfirmationButtonText\", confrimationText)},\r\n setConfirmedAndClose: ({commit}, confirmed) => {\r\n commit(\"setErrorModalOpen\", false)\r\n commit(\"setConfirmed\", confirmed)\r\n },\r\n setConfirmed: ({commit}, confirmed) => {commit(\"setConfirmed\", confirmed)}, \r\n setErrorModalHeader: ({commit}, header) => {commit(\"setErrorModalHeader\", header)},\r\n setConfirmingModel({commit}, confirmingModel){commit(\"setConfirmingModel\", confirmingModel)}\r\n },\r\n getters: {\r\n errorModalOpen: (state) => {return state.errorModalOpen},\r\n errorModalText: (state) => {return state.errorModalText},\r\n confirmationButtonText: (state) => {return state.confirmationButtonText},\r\n confirmed: (state) => {return state.confirmed},\r\n errorModalHeader: (state) => {return state.errorModalHeader},\r\n confirmingModel: (state) => {return state.confirmingModel}\r\n }\r\n\r\n}","import Repository from '@/repositories/RepositoryFactory';\r\nimport APISTATE from '../../enums/APISTATE';\r\nimport moment, { ISO_8601 } from \"moment\";\r\n\r\nconst reports = Repository.get('reports');\r\nconst emptyUserDriveData = {\r\n id: 0,\r\n assistant_Name: '',\r\n type: 21,\r\n subType: 'DT',\r\n days: 0,\r\n timeInMinutes: 0,\r\n remark: '',\r\n distance: 0,\r\n createdDate: new Date(),\r\n chr: '',\r\n approvedBy: '',\r\n approvedByUser: false,\r\n totalImposed: 0,\r\n totalPreliminaryInvestigations: 0,\r\n totalPreliminaryInvestigationsDonor: 0,\r\n vgProject: false,\r\n vainVisits: 0,\r\n onDayOff: false\r\n}\r\n\r\nconst getDateFromMonthYear = (day, month, year) => {\r\n let date = new Date();\r\n date.setMonth(month);\r\n date.setFullYear(year);\r\n date.setDate(day);\r\n date.setHours(3);\r\n return date;\r\n };\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n report: [],\r\n apiState: APISTATE.LOADED,\r\n employeeNumber: undefined,\r\n employeeId: undefined,\r\n employeeName: undefined,\r\n year: undefined,\r\n month: undefined,\r\n selectedUserDriveData: undefined,\r\n types: [{id: 21, title:'ATK', backgroundColor: 'white'}, {id: 22, title: 'RTA', backgroundColor: 'white'}]\r\n },\r\n mutations: {\r\n setReport (state, open){\r\n state.report = open\r\n },\r\n setApiState(state, apiState){\r\n state.APISTATE = apiState;\r\n },\r\n setYear(state, year){\r\n state.year = year;\r\n },\r\n setMonth(state, month){\r\n state.month = month;\r\n },\r\n setEmployeeNumber(state, employeeNumber) {\r\n state.employeeNumber = employeeNumber;\r\n },\r\n setSelectedUserDriveData(state, data){\r\n state.selectedUserDriveData = data;\r\n },\r\n setSelectedType(state, type){\r\n const typeData = state.types.find(t => t.id == type);\r\n state.selectedUserDriveData.type = typeData.id;\r\n state.selectedUserDriveData.typeStringified = typeData.title;\r\n },\r\n setEmployeeId(state, id){\r\n state.employeeId = id;\r\n },\r\n setEmployeeName(state, name){\r\n state.setEmployeeName = name;\r\n }\r\n },\r\n actions: {\r\n async performLookup({commit, state}) {\r\n commit(\"setApiState\", APISTATE.LOADING);\r\n let report = await reports.getDTReport(state.employeeNumber, state.year, state.month + 1);\r\n commit(\"setReport\", report);\r\n commit(\"setApiState\", APISTATE.LOADED);\r\n },\r\n setYear({commit}, year) {\r\n commit(\"setYear\", year);\r\n },\r\n setMonth({commit}, month) {\r\n commit(\"setMonth\", month);\r\n },\r\n setEmployeeNumber({commit}, employeeNumber) {\r\n commit(\"setEmployeeNumber\", employeeNumber);\r\n },\r\n setSelectedUserDriveData({commit}, data){\r\n data.createdDate = new Date(data.createdDate);\r\n commit(\"setSelectedUserDriveData\", data);\r\n },\r\n setNewUserDriveData({commit, state}, currentUser){\r\n const newUserDriveData = emptyUserDriveData;\r\n newUserDriveData.assistant_Number = state.employeeNumber;\r\n newUserDriveData.assistant_Name = state.employeeName;\r\n newUserDriveData.assistant_Uid = state.employeeId;\r\n newUserDriveData.approvedBy = currentUser.name;\r\n newUserDriveData.remark = 'DT';\r\n commit(\"setSelectedUserDriveData\", newUserDriveData);\r\n },\r\n setEmployeeId({commit}, id){\r\n commit(\"setEmployeeId\", id);\r\n },\r\n cancelSidebar({commit}){\r\n commit(\"setSelectedUserDriveData\", undefined);\r\n },\r\n async update({commit, state}){\r\n commit(\"setApiState\", APISTATE.LOADING);\r\n state.selectedUserDriveData.assistant_Number = state.selectedUserDriveData.assistant_Number.toString();\r\n const date = state.selectedUserDriveData.createdDate;\r\n state.selectedUserDriveData.createdDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()));\r\n reports.updateDTReport(state.selectedUserDriveData).then( async function (){\r\n let report = await reports.getDTReport(state.employeeNumber, state.year, state.month + 1);\r\n commit(\"setReport\", report);\r\n commit(\"setSelectedUserDriveData\", undefined);\r\n });\r\n \r\n commit(\"setApiState\", APISTATE.LOADED);\r\n },\r\n setSelectedType({commit}, type){\r\n commit(\"setSelectedType\",type)\r\n },\r\n setEmployeeName({commit}, name){\r\n commit(\"setEmployeeName\", name);\r\n },\r\n async deleteItem({commit, state}){\r\n commit(\"setApiState\", APISTATE.LOADING);\r\n reports.deleteDTReport(state.selectedUserDriveData.id).then(async function(){\r\n let report = await reports.getDTReport(state.employeeNumber, state.year, state.month + 1);\r\n commit(\"setReport\", report);\r\n commit(\"setSelectedUserDriveData\", undefined);\r\n });\r\n commit(\"setApiState\", APISTATE.LOADED);\r\n }\r\n },\r\n getters: {\r\n report: (state) => { return state.report },\r\n year: (state) => { return state.year},\r\n month: (state) => { return state.month },\r\n employeeNumber: (state) => { return state.employeeNumber },\r\n loading: (state) => { return state.apiState !== APISTATE.LOADED },\r\n showSidebar: (state) => { return state.selectedUserDriveData !== undefined },\r\n sidebarHeaderText: (state) => { return state.selectedUserDriveData?.id !== 0 ? \"Opdater\" : \"Opret\" },\r\n selectedUserDriveData: (state) => { return state.selectedUserDriveData },\r\n types: (state) => { return state.types }\r\n }\r\n}","import Repository from '@/repositories/RepositoryFactory';\r\nimport ApiState from \"../../enums/APISTATE\";\r\n\r\nconst rateRepository = Repository.get('salaryRatesRepository');\r\n\r\nexport default ({\r\n namespaced: true,\r\n state: {\r\n rates: [],\r\n ratesApiState: ApiState.INIT,\r\n rate: {},\r\n rateApiState: ApiState.INIT,\r\n editingRate: null,\r\n },\r\n mutations: {\r\n setRatesApiState: (state, apiState) => {\r\n state.ratesApiState = apiState;\r\n },\r\n setRates(state, response) {\r\n const { data } = response;\r\n state.rates = data;\r\n state.ratesApiState = ApiState.LOADED;\r\n },\r\n setRateApiState: (state, apiState) => {\r\n state.rateApiState = apiState;\r\n },\r\n setRate(state, response) {\r\n const { data } = response;\r\n state.rate = data;\r\n state.rateApiState = ApiState.LOADED;\r\n },\r\n initialized(state, { rates }) {\r\n state.rates = rates;\r\n }\r\n },\r\n actions: {\r\n async getAllSalaryRatesForYear({ commit, dispatch }, dto) {\r\n dispatch('cancelEditingRate');\r\n commit('setRatesApiState', ApiState.LOADING);\r\n try {\r\n commit('setRates', await rateRepository.getAllSalaryRatesForYear(dto.year));\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setRatesApiState', ApiState.ERROR);\r\n }\r\n },\r\n async updateSalaryRate({ commit, dispatch, state }, dto) {\r\n commit('setRateApiState', ApiState.LOADING);\r\n try {\r\n const response = await rateRepository.updateSalaryRate(dto);\r\n commit(\"setRate\", response);\r\n dispatch('cancelEditingRate');\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setRateApiState', ApiState.ERROR);\r\n }\r\n },\r\n async createSalaryRate({ commit, dispatch, state }, dto) {\r\n commit('setRateApiState', ApiState.LOADING);\r\n try {\r\n const response = await rateRepository.createSalaryRate(dto);\r\n commit(\"setRate\", response);\r\n dispatch('cancelEditingRate');\r\n }\r\n catch (error) {\r\n console.error(error);\r\n commit('setRateApiState', ApiState.ERROR);\r\n }\r\n },\r\n // Close the rate sidebar\r\n cancelEditingRate({commit}) {\r\n commit('setRate', { data: null });\r\n },\r\n \r\n // Open the rate sidebar\r\n startEditingRate({commit}, dto) {\r\n commit('setRate', { data: dto });\r\n }\r\n },\r\n getters: {\r\n rateApiState(state) {\r\n return state.rateApiState;\r\n },\r\n rate(state) {\r\n return state.rate;\r\n },\r\n ratesApiState(state) {\r\n return state.ratesApiState;\r\n },\r\n rates(state) {\r\n return state.rates;\r\n }\r\n }\r\n });","import Repository from \"@/repositories/RepositoryFactory\";\r\nimport groupRepository from \"../../repositories/groups\";\r\nimport gpsDataRepository from \"../../repositories/gpsDataRepository\";\r\nimport APISTATE from \"../../enums/APISTATE\";\r\nimport Vuex from \"vuex\";\r\n\r\nconst SalaryManualInputRepository = Repository.get( \"salaryManualInput\" );\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n csvModalOpen: false,\r\n discriminator: {},\r\n discriminatorOptions: [ { key: 'OnAccount', value: 'Aconto' }, { key: 'CommissionSales', value: 'Provisionssalg' }, { key: 'SpecialHolidayAllowance', value: 'Særlig feriegodtgørelse' } ],\r\n selectedFile: null\r\n },\r\n mutations: {\r\n setCsvOpenModal: ( state, csvModalOpen ) => {\r\n state.csvModalOpen = csvModalOpen;\r\n },\r\n setDiscriminator: ( state, discriminator ) => {\r\n state.discriminator = discriminator\r\n },\r\n setSelectedFile: ( state, file ) => {\r\n state.selectedFile = file;\r\n }\r\n },\r\n actions: {\r\n setModalOpen: ( { commit }, csvModalOpen ) => { commit( \"setCsvOpenModal\", csvModalOpen ) },\r\n setDiscriminator: ( { commit }, discriminator ) => { commit( \"setDiscriminator\", discriminator ) },\r\n setSelectedFile: ( { commit }, file ) => { commit( \"setSelectedFile\", file ) },\r\n uploadFile: async ( { commit, state, dispatch } ) => {\r\n let data = new FormData();\r\n // console.log( 'selectedFile', state.selectedFile )\r\n data.append( 'file', state.selectedFile );\r\n data.append( 'discriminator', state.discriminator.key )\r\n // console.log( 'keys', data.keys() )\r\n\r\n await SalaryManualInputRepository.uploadCsv( data );\r\n commit( \"setSelectedFile\", null );\r\n\r\n await dispatch( 'salaryReportStore/performLookup', {}, { root: true } );\r\n commit( \"setCsvOpenModal\", false );\r\n }\r\n },\r\n getters: {\r\n isOpen: ( state ) => { return state.csvModalOpen },\r\n discriminator: ( state ) => { return state.discriminator },\r\n discriminatorOptions: ( state ) => { return state.discriminatorOptions },\r\n selectedFile: ( state ) => { return state.selectedFile }\r\n }\r\n};\r\n","import Vue from 'vue'\r\nimport Vuex from 'vuex'\r\nimport { vuexOidcCreateStoreModule } from 'vuex-oidc';\r\nimport { oidcSettings } from '../config/oidc';\r\nimport jwt from 'jsonwebtoken';\r\n\r\nimport appUsers from './modules/AppUsersStore';\r\nimport notificationStore from './modules/notificationStore';\r\nimport entrySidebar from './modules/EntrySidebar';\r\nimport allocations from './modules/allocations';\r\nimport circles from './modules/circles';\r\nimport groupStore from './modules/groupStore';\r\nimport groupTemplateStore from './modules/groupTemplateStore';\r\nimport employees from './modules/employees';\r\nimport forecasts from './modules/forecasts';\r\nimport metadata from './modules/metadata';\r\nimport milestones from './modules/milestones';\r\nimport replacementAllocations from './modules/ReplacementAllocations';\r\nimport scheduler from './modules/scheduler';\r\nimport groupComments from './modules/GroupCommentStore';\r\nimport reportStore from './modules/reportStore';\r\nimport salaryReportStore from './modules/salaryReportStore';\r\nimport holidayStore from './modules/holidayStore';\r\nimport statisticsStore from './modules/statisticsStore';\r\nimport allocationMoverStore from './modules/allocationMoverStore';\r\nimport agreementStore from './modules/agreementStore';\r\nimport gpsDataStore from './modules/gpsDataStore';\r\nimport generalStatisticsFilteringSidebar from './modules/GeneralStatisticsFilteringSidebar'\r\nimport confirmationModalStore from './modules/confirmationModalStore'\r\nimport dtReportStore from './modules/dtReportStore'\r\nimport salaryRateStore from './modules/salaryRateStore';\r\nimport csvModalStore from './modules/csvModalStore'\r\n\r\nVue.use(Vuex)\r\n\r\nconst store = new Vuex.Store({\r\n state: {\r\n currentUser: {},\r\n viewAs: {employee: undefined, group: undefined},\r\n isAdmin: false,\r\n isReplacement: false,\r\n hasEditRights: true\r\n },\r\n mutations: {\r\n setCurrentUser(state, userInfo) {\r\n state.currentUser = userInfo;\r\n },\r\n setViewAs(state, employeeAndGroup) {\r\n state.viewAs = employeeAndGroup;\r\n }\r\n },\r\n actions: {\r\n userLoaded({ commit }, user) {\r\n const decoded = jwt.decode(user.access_token);\r\n commit('setCurrentUser', { name: decoded.Name, role: decoded.Role, email: decoded.Email, id: decoded.sub, groupId: decoded.GroupId, number: decoded.Number, icalendarKey: decoded.ICalendarKey, isSalaryReportOpen: decoded.IsSalaryReportOpen });\r\n },\r\n userUnloaded({ commit }) {\r\n commit('setCurrentUser', { name: 'Not logged in', role: '', email: '', id: '', number: 0, icalendar: null, isSalaryReportOpen: null });\r\n },\r\n setViewAs({commit}, employeeAndGroup) {\r\n commit('setViewAs', employeeAndGroup);\r\n },\r\n clearViewAs({commit}) {\r\n commit('setViewAs', {employee: undefined, group: undefined});\r\n }\r\n },\r\n getters: {\r\n // Contains the currently logged-in user, or the user currently being impersonated\r\n currentUser: (state) => (state.viewAs.employee) ? state.viewAs.employee : state.currentUser,\r\n\r\n // Role of the currently logged-in user, regardless of impersonation\r\n currentRole: (state) => (state.currentUser) ? state.currentUser.role : \"---\",\r\n\r\n // Administrator state of the currently logged-in user, regardless of impersonation\r\n isAdmin: (state) => state.currentUser && state.currentUser.role === \"Admin\",\r\n\r\n // Replacement state of the currently logged-in user\r\n isReplacement: (state) => state.currentUser && state.currentUser.role === \"Replacement\",\r\n \r\n // State of the currently logged-in user\r\n hasEditRights: (state) => state.currentUser && state.currentUser.number !== 1014 && state.currentUser.email !== \"1014@vikingdanmark.dk\",\r\n\r\n // User currently being impersonated, otherwise undefined\r\n viewAsEmployee: state => state.viewAs.employee,\r\n \r\n // Group of user currently being impersonated, otherwise undefined\r\n viewAsGroup: state => state.viewAs.group,\r\n \r\n icalendarKey: (state) => state.currentUser.icalendarKey, \r\n\r\n // isSalaryReportOpen\r\n isSalaryReportOpen: (state) => state.currentUser && state.currentUser.isSalaryReportOpen,\r\n },\r\n modules: {\r\n allocations,\r\n appUsers,\r\n allocationMoverStore,\r\n circles,\r\n employees,\r\n entrySidebar,\r\n forecasts,\r\n groupComments,\r\n metadata,\r\n milestones,\r\n scheduler,\r\n replacementAllocations,\r\n salaryReportStore,\r\n reportStore,\r\n notificationStore,\r\n groupStore,\r\n groupTemplateStore,\r\n holidayStore,\r\n statisticsStore,\r\n agreementStore,\r\n gpsDataStore,\r\n generalStatisticsFilteringSidebar,\r\n confirmationModalStore,\r\n dtReportStore,\r\n salaryRateStore,\r\n csvModalStore,\r\n oidcStore: vuexOidcCreateStoreModule(\r\n oidcSettings,\r\n // ...\r\n {\r\n namespaced: true,\r\n dispatchEventsOnWindow: true\r\n },\r\n // OIDC Event listeners\r\n {\r\n userLoaded: (user) => store.dispatch('userLoaded', user),\r\n userUnloaded: () => store.dispatch('userUnloaded'),\r\n accessTokenExpiring: () => console.log('Access token will expire'),\r\n accessTokenExpired: () => console.log('Access token did expire'),\r\n silentRenewError: () => console.log('OIDC user is unloaded'),\r\n userSignedOut: () => console.log('OIDC user is signed out'),\r\n oidcError: (payload) => console.log('OIDC error', payload),\r\n automaticSilentRenewError: (payload) => console.log('OIDC automaticSilentRenewError', payload)\r\n }\r\n )\r\n }\r\n})\r\n\r\nexport default store;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-modal',{attrs:{\"active\":_vm.errorModalOpen}},[_c('div',[_c('div',{staticClass:\"modal-header\"},[_c('h1',[_vm._v(_vm._s(_vm.errorModalHeader))])]),_c('div',{staticClass:\"modal-body\"},[_c('div',[_c('b-icon',{staticClass:\"exclamation-icon inline-block\",staticStyle:{\"color\":\"#ff7800\"},attrs:{\"icon\":\"exclamation-triangle\"}}),_c('h2',{staticClass:\"inline-block\"},[_vm._v(_vm._s(_vm.errorModalText))])],1)]),_c('div',{staticClass:\"modal-footer\"},[_c('b-button',{staticClass:\"is-blue\",on:{\"click\":function($event){return _vm.setConfirmed(true)}}},[_vm._v(_vm._s(_vm.confirmationButtonText))]),_c('b-button',{staticClass:\"is-text\",on:{\"click\":function($event){return _vm.setConfirmedAndClose(false)}}},[_vm._v(\"Annullér\")])],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n {{ errorModalHeader }}\r\n \r\n \r\n \r\n \r\n {{errorModalText}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfirmationModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfirmationModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ConfirmationModal.vue?vue&type=template&id=d69077ea&scoped=true&\"\nimport script from \"./ConfirmationModal.vue?vue&type=script&lang=js&\"\nexport * from \"./ConfirmationModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ConfirmationModal.vue?vue&type=style&index=0&id=d69077ea&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d69077ea\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"employee-selector\"},[_c('div',{staticClass:\"employee-selector__trigger\",on:{\"click\":_vm.toggleDropdown}},[(_vm.showPlaceholder)?_c('span',{key:\"placeholder\",staticClass:\"employee-selector__trigger--full\"},[_vm._v(\" \"+_vm._s(_vm.placeholder)+\" \")]):_vm._e(),_vm._l((Object.values(_vm.selected)),function(employee,index){return _c('span',{key:index,staticClass:\"employee-selector__trigger--full\"},[_vm._v(\" \"+_vm._s(employee.name)+\" \")])}),(_vm.hasSelection)?_c('span',{staticClass:\"employee-selector__trigger--clear\",on:{\"click\":function($event){$event.stopPropagation();return _vm.clearSelection.apply(null, arguments)}}},[_c('b-icon',{staticClass:\"icon\",attrs:{\"icon\":\"times\"}})],1):_vm._e()],2),_c('div',{directives:[{name:\"on-clickaway\",rawName:\"v-on-clickaway\",value:(_vm.closeDropdown),expression:\"closeDropdown\"}],class:[\n 'employee-selector__dropdown',\n _vm.open && 'employee-selector__dropdown--visible' ]},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.filterInput),expression:\"filterInput\"}],ref:\"filterInput\",staticClass:\"input employee-selector__dropdown__input\",attrs:{\"type\":\"search\",\"placeholder\":\"Filtrér...\"},domProps:{\"value\":(_vm.filterInput)},on:{\"keydown\":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.select.apply(null, arguments)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"])){ return null; }return _vm.closeDropdown.apply(null, arguments)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"down\",40,$event.key,[\"Down\",\"ArrowDown\"])){ return null; }return _vm.navigateNext.apply(null, arguments)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"up\",38,$event.key,[\"Up\",\"ArrowUp\"])){ return null; }return _vm.navigatePrev.apply(null, arguments)}],\"input\":function($event){if($event.target.composing){ return; }_vm.filterInput=$event.target.value}}}),_c('div',{staticClass:\"employee-selector__dropdown__list-container\"},[_c('div',{staticClass:\"employee-selector__dropdown__list\"},_vm._l((_vm.filteredEmployees),function(group,gindex){return _c('div',{key:gindex,staticClass:\"employee-selector__dropdown__group\"},[_c('span',[_vm._v(\" \"+_vm._s(group.group ? group.group.title : \"-\")+\" \")]),_c('div',{staticClass:\"employee-selector__dropdown__group--members\"},_vm._l((group.employees),function(employee,eindex){return _c('div',{key:eindex,class:[\n 'employee-selector__dropdown__group__member',\n _vm.cursorOnItem(gindex, eindex) &&\n 'employee-selector__dropdown__group--cursor' ],on:{\"click\":function($event){return _vm.navigateClick(gindex, eindex)}}},[_c('span',[_vm._v(_vm._s(employee.number))]),_c('span',{staticClass:\"dropdown__column--name\"},[_vm._v(_vm._s(employee.name))]),_c('span',[_vm._v(_vm._s(employee.role[0]))])])}),0)])}),0)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n {{ placeholder }}\r\n \r\n \r\n {{ employee.name }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ group.group ? group.group.title : \"-\" }}\r\n \r\n \r\n \r\n {{ employee.number }}\r\n {{ employee.name }}\r\n {{ employee.role[0] }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmployeeSelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmployeeSelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EmployeeSelector.vue?vue&type=template&id=476b7f21&\"\nimport script from \"./EmployeeSelector.vue?vue&type=script&lang=js&\"\nexport * from \"./EmployeeSelector.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EmployeeSelector.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SalaryRateSidebar.vue?vue&type=style&index=0&id=0bb45983&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"calendar-small-component\"},[(_vm.showNotificationBell)?_c('notification',[[(_vm.reportNotification && _vm.reportNotification.length > 0)?_c('div',_vm._l((_vm.reportNotification),function(entry,index){return _c('p',{key:index,attrs:{\"entry\":entry}},[_vm._v(\" \"+_vm._s(entry.year)+\"-\"+_vm._s(entry.month)+\" har \"+_vm._s(entry.count)+\" dage der ikke er godkendt endnu. \")])}),0):_vm._e()],(false)?[_c('div',[_vm._v(\"Don't render the template, if there's nothing to display\")])]:_vm._e(),[(false)?_c('div',[_vm._v(\" Content can also be hidden like this. \")]):_vm._e()]],2):_vm._e(),_c('div',{staticClass:\"calendar-small__spacer--admin\"}),_c('div',{staticClass:\"scroll-view\"},[_vm._l((_vm.allocations),function(entry,index){return _c('calendar-entry',{key:index,attrs:{\"entry\":entry,\"allocationTypes\":_vm.allocationTypes,\"circles-lookup\":_vm.circles},nativeOn:{\"click\":function($event){return _vm.openSidebar(entry)}}})}),_c('b-button',{staticClass:\"viking-button\",staticStyle:{\"margin-bottom\":\"65px\"},attrs:{\"type\":\"is-warning\",\"size\":\"is-large\",\"icon-left\":\"angle-down\"},on:{\"click\":function($event){return _vm.loadMore()}}},[_vm._v(\" Hent flere \")])],2),_c('div')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:['notifications-component', _vm.showBell && 'notifications-component--visible', _vm.pulse && 'notifications-component--pulse']},[_c('div',{staticClass:\"notifications-component__icon\",on:{\"click\":_vm.toggle}},[_c('font-awesome-icon',{attrs:{\"icon\":\"bell\"}})],1),_c('div',{directives:[{name:\"on-clickaway\",rawName:\"v-on-clickaway\",value:(_vm.close),expression:\"close\"}],class:['notifications-component__content', _vm.open && 'notifications-component__content--visible']},[_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Notification.vue?vue&type=template&id=291f8d94&\"\nimport script from \"./Notification.vue?vue&type=script&lang=js&\"\nexport * from \"./Notification.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Notification.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n \r\n \r\n \r\n 0\">\r\n \r\n {{entry.year}}-{{entry.month}} har {{entry.count}} dage der ikke er godkendt endnu.\r\n \r\n \r\n \r\n \r\n Don't render the template, if there's nothing to display\r\n \r\n \r\n \r\n Content can also be hidden like this.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Hent flere\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalendarSmall.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalendarSmall.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CalendarSmall.vue?vue&type=template&id=2684443f&scoped=true&\"\nimport script from \"./CalendarSmall.vue?vue&type=script&lang=js&\"\nexport * from \"./CalendarSmall.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CalendarSmall.vue?vue&type=style&index=0&id=2684443f&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2684443f\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('entry-sidebar',{model:{value:(_vm.entrySidebarModel),callback:function ($$v) {_vm.entrySidebarModel=$$v},expression:\"entrySidebarModel\"}}),_c('dt-report-sidebar'),_c('group-comment-sidebar'),_c('agreement-sidebar'),_c('general-statistics-filter-sidebar'),_c('holiday-sidebar'),_c('salary-rate-sidebar'),_c('div',{staticClass:\"app-viewport\"},[(_vm.currentUser.name)?_c('app-header'):_vm._e(),_c('div',{staticClass:\"app-contents\"},[_c('router-view')],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-navbar',{scopedSlots:_vm._u([{key:\"brand\",fn:function(){return [_c('b-navbar-item',{staticClass:\"no-hover\",attrs:{\"tag\":\"router-link\",\"to\":\"/\"}},[_c('img',{attrs:{\"src\":require(\"../assets/viking-logo-white-cropped.svg\")}})])]},proxy:true},{key:\"start\",fn:function(){return [(_vm.isAdmin)?_c('b-navbar-item',{attrs:{\"tag\":\"router-link\",\"to\":{path: '/dashboard'}}},[_vm._v(\"Dashboard\")]):_vm._e(),_c('b-navbar-item',{attrs:{\"tag\":\"router-link\",\"to\":{path: '/calendar'}}},[_vm._v(\"Min kalender\")]),(_vm.show)?_c('b-navbar-item',{attrs:{\"tag\":\"router-link\",\"to\":{path: '/schedule'}}},[_vm._v(\"Kalender\")]):_vm._e(),(_vm.show && _vm.icalendarKey)?_c('b-navbar-item',{attrs:{\"tag\":\"router-link\",\"to\":{path: '/icalendar'}}},[_vm._v(\"Abonner på arbejdskalender\")]):_vm._e(),(_vm.show)?_c('b-navbar-item',{attrs:{\"tag\":\"router-link\",\"to\":{name: 'Reports'}}},[_vm._v(\"Rapporter\")]):_vm._e(),(_vm.isAdmin)?_c('b-navbar-item',{attrs:{\"tag\":\"router-link\",\"to\":{path: '/configuration'}}},[_vm._v(\"Opsætning\")]):_vm._e(),(_vm.isAdmin === false && _vm.show)?_c('b-navbar-item',{attrs:{\"tag\":\"router-link\",\"to\":{path: '/configuration-user'}}},[_vm._v(\"Opsætning\")]):_vm._e()]},proxy:true},{key:\"end\",fn:function(){return [_c('b-navbar-item',{attrs:{\"tag\":\"a\"},on:{\"click\":_vm.signOutOidc}},[_vm._v(\" Log ud \"),(_vm.currentUser && _vm.currentUser.number)?_c('span',[_vm._v(\" (\"+_vm._s(_vm.currentUser.number)+\")\")]):_vm._e()]),_c('b-navbar-item',{staticClass:\"no-hover\"},[_c('user-badge')],1)]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"user-badge\"},[_c('div',{staticClass:\"frame\"},[_c('span',{staticClass:\"initials\"},[_vm._v(_vm._s(_vm.initials))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n {{ initials }}\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserBadge.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserBadge.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./UserBadge.vue?vue&type=template&id=4c3d8cdf&scoped=true&\"\nimport script from \"./UserBadge.vue?vue&type=script&lang=js&\"\nexport * from \"./UserBadge.vue?vue&type=script&lang=js&\"\nimport style0 from \"./UserBadge.vue?vue&type=style&index=0&id=4c3d8cdf&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4c3d8cdf\",\n null\n \n)\n\nexport default component.exports","\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Dashboard\r\n\r\n Min kalender\r\n\r\n Kalender\r\n\r\n Abonner på arbejdskalender\r\n\r\n Rapporter\r\n\r\n Opsætning\r\n\r\n Opsætning\r\n \r\n \r\n\r\n \r\n Log ud ({{currentUser.number}})\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppHeader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AppHeader.vue?vue&type=template&id=b4f8564e&scoped=true&\"\nimport script from \"./AppHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./AppHeader.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AppHeader.vue?vue&type=style&index=0&id=b4f8564e&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b4f8564e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"on-clickaway\",rawName:\"v-on-clickaway\",value:(_vm.onClickAway),expression:\"onClickAway\"}],staticClass:\"calendar-entry-sidebar\"},[_c('b-sidebar',{attrs:{\"position\":\"absolute\",\"right\":true,\"fullheight\":true,\"overlay\":false,\"open\":_vm.open}},[(!_vm.showReplacementView)?_c('div',{staticClass:\"sidebar-contents\"},[_c('calendar-entry-form',{staticClass:\"p-3\",attrs:{\"readonly\":_vm.readOnlyForm},on:{\"onChange\":function($event){return _vm.onChange($event)},\"onRequestSplit\":function($event){return _vm.onRequestSplit($event)},\"onRequestReplacement\":function($event){return _vm.onRequestReplacement($event)},\"onRequestReplacementRemove\":function($event){return _vm.onRequestReplacementRemove($event)},\"onViewReplacement\":function($event){return _vm.onViewReplacement($event)}},model:{value:(_vm.editing),callback:function ($$v) {_vm.editing=$$v},expression:\"editing\"}}),(_vm.isVisible)?_c('div',{staticClass:\"sidebar-footer\"},[_c('div',{staticClass:\"sidebar-controls p-3 mb-0\"},[_c('div',{staticClass:\"control-update\"},[(!_vm.isReplacement || _vm.isOwnEntry)?_c('b-button',{staticClass:\"is-blue\",on:{\"click\":_vm.onUpdate}},[_vm._v(\"Opdater\")]):_vm._e()],1),_c('div',{staticClass:\"control-cancel\"},[_c('b-button',{staticClass:\"is-text\",on:{\"click\":_vm.onCancel}},[_vm._v(\"Annuller\")])],1),_c('div',{staticClass:\"control-space\"}),_c('div',{staticClass:\"control-delete\"},[(!_vm.isReplacement || _vm.isOwnEntryValidForDeleting)?_c('b-button',{staticClass:\"is-text\",on:{\"click\":_vm.onDelete}},[_vm._v(\"Slet\")]):_vm._e()],1)]),_c('div',{staticClass:\"content p-2 updated has-text-centered\"},[_vm._v(\" \"+_vm._s(_vm.latestUpdateText)+\" \")])]):_vm._e()],1):_vm._e(),(_vm.showReplacementView)?_c('div',{staticClass:\"sidebar-contents\"},[_c('div',{staticClass:\"calendar-entry-form\",staticStyle:{\"padding\":\"0.75rem !important\"}},[_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-header\"},[_vm._v(\" Afløsere \")])]),_vm._l((_vm.replacements),function(replacement,index){return _c('div',{key:index},[_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(_vm._s(replacement.number))]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-input',{attrs:{\"expanded\":\"\",\"disabled\":true},model:{value:(replacement.name),callback:function ($$v) {_vm.$set(replacement, \"name\", $$v)},expression:\"replacement.name\"}})],1)])])})],2),(_vm.isVisible)?_c('div',{staticClass:\"sidebar-footer\"},[_c('div',{staticClass:\"sidebar-controls p-3 mb-0\"},[_c('div',{staticClass:\"control-space\"}),_c('div',{staticClass:\"control-cancel\"},[_c('b-button',{staticClass:\"is-text\",on:{\"click\":_vm.onViewReplacement}},[_vm._v(\"Annuller\")])],1),_c('div',{staticClass:\"control-space\"})]),_c('div',{staticClass:\"content p-2 updated has-text-centered\"},[_vm._v(\" \"+_vm._s(_vm.latestUpdateText)+\" \")])]):_vm._e()]):_vm._e()]),_c('confirmation-modal')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"calendar-entry-form\"},[_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-header\",on:{\"click\":_vm.toggleEmployeeInfo}},[_vm._v(\" \"+_vm._s(_vm.editing.number)+\" - \"+_vm._s(_vm.editing.employeeName)+\" \"),_vm._m(0)]),_c('div',{directives:[{name:\"on-clickaway\",rawName:\"v-on-clickaway\",value:(_vm.closeEmployeeInfo),expression:\"closeEmployeeInfo\"}],class:[\n 'sidebar-field__employee-info',\n _vm.employeeInfoOpen && 'sidebar-field__employee-info--visible' ]},[(_vm.employeeInfoRows.length > 0)?_c('div',{staticClass:\"employee-info__fields\"},_vm._l((_vm.employeeInfoRows),function(row,index){return _c('div',{key:index,staticClass:\"employee-info__field\"},[_c('span',{staticClass:\"employee-info__label\"},[_vm._v(\" \"+_vm._s(row.label)+\" \")]),_c('span',{staticClass:\"employee-info__text\"},[_vm._v(\" \"+_vm._s(row.text)+\" \")])])}),0):_c('div',{staticClass:\"employee-info__fields\"},[_c('span',{staticClass:\"employee-info__noInfo\"},[_vm._v(\" Ingen kontaktinformation \")])])])]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Fra dato\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-datepicker',{attrs:{\"focusedDate\":_vm.startDateComputed,\"locale\":\"da-DK\",\"expanded\":\"\",\"disabled\":_vm.readonly && !_vm.editing.isSimulation,\"placeholder\":\"Vælg en fra-dato\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.startDateComputed),callback:function ($$v) {_vm.startDateComputed=$$v},expression:\"startDateComputed\"}})],1)]),(_vm.editing.allocationType !== 'OFFDAYREPLACEMENT')?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Til dato\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-datepicker',{attrs:{\"focusedDate\":_vm.endDateComputed,\"locale\":\"da-DK\",\"expanded\":\"\",\"disabled\":_vm.readonly && !_vm.editing.isSimulation,\"placeholder\":\"Vælg en til-dato\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.endDateComputed),callback:function ($$v) {_vm.endDateComputed=$$v},expression:\"endDateComputed\"}})],1)]):_vm._e(),(_vm.notification && _vm.isAdmin)?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Udsæt indtil\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-datepicker',{attrs:{\"focusedDate\":_vm.onHoldUntilDateComputed,\"locale\":\"da-DK\",\"expanded\":\"\",\"disabled\":_vm.readonly,\"placeholder\":\"Vælg en udsæt indtil-dato\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.onHoldUntilDateComputed),callback:function ($$v) {_vm.onHoldUntilDateComputed=$$v},expression:\"onHoldUntilDateComputed\"}})],1)]):_vm._e(),(\n _vm.editing.allocationType !== undefined &&\n _vm.editing.allocationType !== 'OFFDAYREPLACEMENT'\n )?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Type\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-select',{attrs:{\"expanded\":\"\",\"disabled\":_vm.typeDisabled},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.allocationType),callback:function ($$v) {_vm.$set(_vm.editing, \"allocationType\", $$v)},expression:\"editing.allocationType\"}},_vm._l((_vm.availableAllocationTypes),function(item){return _c('option',{key:item.key,domProps:{\"value\":item.key}},[_vm._v(\" \"+_vm._s(item.label)+\" \")])}),0)],1)]):_vm._e(),(\n _vm.isAdmin &&\n !_vm.notification &&\n _vm.editing.circleId &&\n _vm.avalilableCircles.length > 1\n )?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Kreds\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-select',{attrs:{\"expanded\":\"\",\"disabled\":_vm.readonly},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.circleId),callback:function ($$v) {_vm.$set(_vm.editing, \"circleId\", $$v)},expression:\"editing.circleId\"}},_vm._l((_vm.avalilableCircles),function(circle,index){return _c('option',{key:index,domProps:{\"value\":circle.id}},[_vm._v(\" \"+_vm._s(circle.title)+\" \")])}),0)],1)]):_vm._e(),(\n _vm.editing.allocationSpanInDays > 1 &&\n !_vm.editing.replacementId &&\n !_vm.editing.isSimulation\n )?_c('div',[(!_vm.isReplacement && _vm.isVisible)?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"}),_c('div',{staticClass:\"sidebar-field-input\"},[_c('div',[_c('b-button',{staticClass:\"is-gray\",on:{\"click\":_vm.onRequestSplit}},[_vm._v(\"Split\")])],1)])]):_vm._e()]):_vm._e(),(_vm.editing.allocationSpanInDays > 1 && _vm.editing.isSimulation)?_c('div',[_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Split\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-checkbox',{attrs:{\"size\":\"is-medium\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.splitComputed),callback:function ($$v) {_vm.splitComputed=$$v},expression:\"splitComputed\"}})],1)])]):_vm._e(),(\n (_vm.editing.allocationSpanInDays <= 1 || _vm.editing.replacementId) &&\n !_vm.editing.isSimulation\n )?_c('div',[(\n !_vm.isReplacement &&\n _vm.editing.allocationType !== 'OFFDAYREPLACEMENT' &&\n !_vm.editing.replacementId &&\n _vm.isVisible\n )?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Overfør Til\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-select',{attrs:{\"expanded\":\"\",\"disabled\":_vm.readonly},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.transferTo),callback:function ($$v) {_vm.$set(_vm.editing, \"transferTo\", $$v)},expression:\"editing.transferTo\"}},_vm._l((_vm.availableEmployees),function(employee,index){return _c('option',{key:index,domProps:{\"value\":employee.id}},[_vm._v(\" \"+_vm._s(employee.number)+\" - \"+_vm._s(employee.name)+\" - \"+_vm._s(employee.region)+\" \")])}),0)],1)]):_vm._e(),(_vm.isAdmin && _vm.editing.circleId && !_vm.editing.isSimulation)?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Afløst af\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-select',{attrs:{\"expanded\":\"\",\"disabled\":_vm.readonly},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.replacementId),callback:function ($$v) {_vm.$set(_vm.editing, \"replacementId\", $$v)},expression:\"editing.replacementId\"}},_vm._l((_vm.replacements),function(employee,index){return _c('option',{key:index,domProps:{\"value\":employee.id}},[_vm._v(\" \"+_vm._s(employee.number)+\" - \"+_vm._s(employee.name)+\" - \"+_vm._s(employee.role === \"Replacement\" ? employee.region : employee.groupName)+\" - \"+_vm._s(_vm.formatAvailability(employee))+\" \")])}),0)],1)]):_vm._e(),(\n _vm.isAdmin &&\n _vm.editing.circleId &&\n _vm.editing.replacementId &&\n !_vm.editing.isSimulation\n )?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Bookede afl.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-select',{attrs:{\"expanded\":\"\",\"disabled\":_vm.readonly},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.bookedAllocationId),callback:function ($$v) {_vm.$set(_vm.editing, \"bookedAllocationId\", $$v)},expression:\"editing.bookedAllocationId\"}},_vm._l((_vm.bookedReplacements),function(employee,index){return _c('option',{key:index,domProps:{\"value\":employee.allocation.id}},[_vm._v(\" \"+_vm._s(employee.number)+\" - \"+_vm._s(employee.name)+\" - \"+_vm._s(employee.role === \"Replacement\" ? employee.circleName : \"\")+\" \")])}),0)],1)]):_vm._e(),(\n _vm.isAdmin &&\n _vm.editing.circleId &&\n _vm.editing.replacementId &&\n !_vm.editing.isSimulation\n )?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Tilknyt ny opg.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-select',{attrs:{\"expanded\":\"\",\"disabled\":_vm.readonly},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.attachNewAllocation),callback:function ($$v) {_vm.$set(_vm.editing, \"attachNewAllocation\", $$v)},expression:\"editing.attachNewAllocation\"}},_vm._l((_vm.circlesWithoutOverallocations),function(circle,index){return _c('option',{key:index,domProps:{\"value\":circle.id}},[_vm._v(\" \"+_vm._s(circle.title)+\" \")])}),0)],1)]):_vm._e(),(\n !_vm.isReplacement &&\n !_vm.editing.replacementId &&\n _vm.isVisible &&\n !_vm.editing.isSimulation\n )?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Afløser\")]),(_vm.editing.allocationSpanInDays <= 1)?_c('div',{staticClass:\"sidebar-field-input\"},[(!_vm.notification)?_c('div',[_c('b-button',{staticClass:\"is-gray\",on:{\"click\":_vm.onRequestReplacement}},[_vm._v(\"Anmod afløser\")]),(_vm.replacements.length > 1)?_c('span',{staticClass:\"free-replacement-label\",on:{\"click\":_vm.onViewReplacement}},[_vm._v(\"(ledige \"+_vm._s(_vm.replacements.length - 1)+\")\")]):_vm._e()],1):_vm._e(),(_vm.notification)?_c('div',[_c('b-button',{staticClass:\"is-gray\",on:{\"click\":_vm.onRequestReplacementRemove}},[_vm._v(\"Fjern anmodning\")]),_c('span',{staticClass:\"sidebar-label\",on:{\"click\":_vm.onRequestReplacementRemove}},[_vm._v(_vm._s(_vm.notificationLabel()))])],1):_vm._e()]):_vm._e(),(_vm.editing.allocationSpanInDays > 1)?_c('div',{staticClass:\"sidebar-field-input\"},[_c('span',{staticClass:\"sidebar-label\"},[_vm._v(\"Kan ikke anmode om afløser da denne opgave strækker sig over flere dage.\")])]):_vm._e()]):_vm._e(),(\n _vm.editing.replacementId &&\n _vm.editing.replacementName &&\n !_vm.isAdmin &&\n !_vm.editing.isSimulation\n )?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[(_vm.showReplacement)?_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Afløst af.\")]):_vm._e(),(_vm.showReplacement)?_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-input',{attrs:{\"expanded\":\"\",\"disabled\":_vm.readonly},model:{value:(_vm.editing.replacementName),callback:function ($$v) {_vm.$set(_vm.editing, \"replacementName\", $$v)},expression:\"editing.replacementName\"}})],1):_vm._e(),(!_vm.showReplacement)?_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Afløser\")]):_vm._e(),(!_vm.showReplacement)?_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-input',{attrs:{\"expanded\":\"\",\"disabled\":_vm.readonly},model:{value:(_vm.editing.employeeName),callback:function ($$v) {_vm.$set(_vm.editing, \"employeeName\", $$v)},expression:\"editing.employeeName\"}})],1):_vm._e()]):_vm._e()]):_vm._e(),(_vm.isAdmin && !_vm.editing.isSimulation)?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Dage ins.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-checkbox',{attrs:{\"title\":\"Afkrydset dette felt så auto beregnes dage ins. ikke\",\"size\":\"is-medium\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.dayTypeComputed),callback:function ($$v) {_vm.dayTypeComputed=$$v},expression:\"dayTypeComputed\"}}),_c('b-numberinput',{attrs:{\"step\":\"0.01\",\"controls\":false,\"disabled\":_vm.readonly},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.days),callback:function ($$v) {_vm.$set(_vm.editing, \"days\", $$v)},expression:\"editing.days\"}})],1)]):_vm._e(),(_vm.isAdmin && _vm.editing.replacementId && !_vm.editing.isSimulation)?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Dage afl.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-checkbox',{attrs:{\"title\":\"Afkrydset dette felt så auto beregnes dage afl. ikke\",\"size\":\"is-medium\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.daysReplacementTypeComputed),callback:function ($$v) {_vm.daysReplacementTypeComputed=$$v},expression:\"daysReplacementTypeComputed\"}}),_c('b-numberinput',{attrs:{\"step\":\"0.01\",\"controls\":false,\"disabled\":_vm.readonly},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.daysReplacement),callback:function ($$v) {_vm.$set(_vm.editing, \"daysReplacement\", $$v)},expression:\"editing.daysReplacement\"}})],1)]):_vm._e(),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Besked\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-input',{attrs:{\"type\":\"textarea\",\"maxlength\":\"256\",\"disabled\":_vm.readonly && !_vm.editing.isSimulation},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.comment),callback:function ($$v) {_vm.$set(_vm.editing, \"comment\", $$v)},expression:\"editing.comment\"}})],1)]),(_vm.isVisible && !_vm.editing.isSimulation)?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Bemærkninger\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-input',{attrs:{\"type\":\"textarea\",\"maxlength\":\"256\",\"disabled\":_vm.readonly},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.note),callback:function ($$v) {_vm.$set(_vm.editing, \"note\", $$v)},expression:\"editing.note\"}})],1)]):_vm._e(),(_vm.isVisible && !_vm.editing.isSimulation)?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Note til kontor\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-input',{attrs:{\"type\":\"textarea\",\"maxlength\":\"256\",\"disabled\":_vm.readonly},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.officeNote),callback:function ($$v) {_vm.$set(_vm.editing, \"officeNote\", $$v)},expression:\"editing.officeNote\"}})],1)]):_vm._e(),(_vm.isAdmin && _vm.hasEditRights && !_vm.editing.isSimulation)?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Admin note\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-input',{attrs:{\"type\":\"textarea\",\"maxlength\":\"256\",\"disabled\":_vm.readonly},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.adminNote),callback:function ($$v) {_vm.$set(_vm.editing, \"adminNote\", $$v)},expression:\"editing.adminNote\"}})],1)]):_vm._e(),_c('div',{staticClass:\"calendar-entry-sidebar-spacer\"}),(_vm.isAdmin && _vm.hasEditRights)?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Notifikation\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-select',{attrs:{\"expanded\":\"\",\"disabled\":_vm.readonly},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.editing.emailTarget),callback:function ($$v) {_vm.$set(_vm.editing, \"emailTarget\", $$v)},expression:\"editing.emailTarget\"}},[_c('option',{attrs:{\"value\":\"\"}},[_vm._v(\"Ingen får besked\")]),_c('option',{attrs:{\"value\":\"1\"}},[_vm._v(\"Send e-mail til ins.\")]),_c('option',{attrs:{\"value\":\"2\"}},[_vm._v(\"Send e-mail til involverede\")])])],1)]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"employee-info__icon\"},[_c('span',[_vm._v(\"i\")])])}]\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n {{ editing.number }} - {{ editing.employeeName }}\r\n \r\n i\r\n \r\n \r\n \r\n 0\" class=\"employee-info__fields\">\r\n \r\n \r\n {{ row.label }}\r\n \r\n \r\n {{ row.text }}\r\n \r\n \r\n \r\n \r\n \r\n Ingen kontaktinformation\r\n \r\n \r\n \r\n \r\n \r\n Fra dato\r\n \r\n \r\n \r\n \r\n \r\n \r\n Til dato\r\n \r\n \r\n \r\n \r\n \r\n \r\n Udsæt indtil\r\n \r\n \r\n \r\n \r\n \r\n \r\n Type\r\n \r\n \r\n \r\n {{ item.label }}\r\n \r\n \r\n \r\n \r\n 1\r\n \"\r\n >\r\n Kreds\r\n \r\n \r\n \r\n {{ circle.title }}\r\n \r\n \r\n \r\n \r\n\r\n 1 &&\r\n !editing.replacementId &&\r\n !editing.isSimulation\r\n \"\r\n >\r\n \r\n \r\n \r\n \r\n Split\r\n \r\n \r\n \r\n \r\n\r\n 1 && editing.isSimulation\">\r\n \r\n Split\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Overfør Til\r\n \r\n \r\n \r\n {{ employee.number }} - {{ employee.name }} -\r\n {{ employee.region }}\r\n \r\n \r\n \r\n \r\n \r\n Afløst af\r\n \r\n \r\n \r\n {{ employee.number }} - {{ employee.name }} -\r\n {{\r\n employee.role === \"Replacement\"\r\n ? employee.region\r\n : employee.groupName\r\n }}\r\n - {{ formatAvailability(employee) }}\r\n \r\n \r\n \r\n \r\n \r\n Bookede afl.\r\n \r\n \r\n \r\n {{ employee.number }} - {{ employee.name }} -\r\n {{ employee.role === \"Replacement\" ? employee.circleName : \"\" }}\r\n \r\n \r\n \r\n \r\n \r\n Tilknyt ny opg.\r\n \r\n \r\n \r\n {{ circle.title }}\r\n \r\n \r\n \r\n \r\n\r\n \r\n Afløser\r\n \r\n \r\n Anmod afløser\r\n 1\"\r\n class=\"free-replacement-label\"\r\n @click=\"onViewReplacement\"\r\n >(ledige {{ replacements.length - 1 }})\r\n \r\n \r\n Fjern anmodning\r\n {{\r\n notificationLabel()\r\n }}\r\n \r\n \r\n 1\"\r\n >\r\n Kan ikke anmode om afløser da denne opgave strækker sig over flere\r\n dage.\r\n \r\n \r\n\r\n \r\n Afløst af.\r\n \r\n \r\n \r\n Afløser\r\n \r\n \r\n \r\n \r\n \r\n \r\n Dage ins.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Dage afl.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Besked\r\n \r\n \r\n \r\n \r\n \r\n Bemærkninger\r\n \r\n \r\n \r\n \r\n \r\n Note til kontor\r\n \r\n \r\n \r\n \r\n \r\n Admin note\r\n \r\n \r\n \r\n \r\n \r\n \r\n Notifikation\r\n \r\n \r\n Ingen får besked\r\n Send e-mail til ins.\r\n Send e-mail til involverede\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EntryForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EntryForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EntryForm.vue?vue&type=template&id=76040958&\"\nimport script from \"./EntryForm.vue?vue&type=script&lang=js&\"\nexport * from \"./EntryForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EntryForm.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n Afløsere\r\n \r\n \r\n \r\n \r\n {{ replacement.number }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EntrySidebar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EntrySidebar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EntrySidebar.vue?vue&type=template&id=1642466d&\"\nimport script from \"./EntrySidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./EntrySidebar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EntrySidebar.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"group-comment-sidebar\"},[_c('b-sidebar',{attrs:{\"position\":\"absolute\",\"right\":true,\"fullheight\":true,\"overlay\":false,\"open\":_vm.editingGroupComment !== null},on:{\"close\":_vm.cancelEditingGroupComment}},[_c('div',{staticClass:\"group-comment-sidebar-contents\"},[_c('div',{staticClass:\"sidebar-header\"},[_c('span',[_vm._v(\" \"+_vm._s(_vm.headerText)+\" \")])]),_c('div',{staticClass:\"sidebar-body\"},[_c('b-input',{attrs:{\"type\":\"textarea\",\"size\":\"is-medium\",\"loading\":_vm.loading,\"expanded\":\"\"},model:{value:(_vm.model.comment),callback:function ($$v) {_vm.$set(_vm.model, \"comment\", $$v)},expression:\"model.comment\"}})],1),_c('div',{staticClass:\"sidebar-footer\"},[_c('div',{staticClass:\"sidebar-footer-controls\"},[_c('b-button',{staticClass:\"is-blue\",attrs:{\"loading\":_vm.loading},on:{\"click\":_vm.update}},[_vm._v(\"Opdater\")]),_c('b-button',{staticClass:\"is-text\",on:{\"click\":_vm.cancelEditingGroupComment}},[_vm._v(\"Annuller\")])],1),_c('div',{staticClass:\"sidebar-footer-updated content p-2 has-text-centered\"},[_vm._v(\" \"+_vm._s(_vm.latestUpdateText)+\" \")])])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n \r\n \r\n {{ headerText }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupCommentSidebar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupCommentSidebar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GroupCommentSidebar.vue?vue&type=template&id=249a5a84&\"\nimport script from \"./GroupCommentSidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./GroupCommentSidebar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GroupCommentSidebar.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"group-comment-sidebar\"},[_c('b-sidebar',{attrs:{\"position\":\"absolute\",\"right\":true,\"fullheight\":true,\"overlay\":false,\"open\":_vm.open},on:{\"close\":_vm.cancel}},[(_vm.agreement && _vm.agreement.employee)?_c('div',{staticClass:\"calendar-entry-form\"},[_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-header\"},[_vm._v(\" \"+_vm._s(_vm.headerText)+\" \")])]),_c('div',{staticClass:\"sidebar-body\"},[_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Dage ins.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.agreement.daysCalculated),callback:function ($$v) {_vm.$set(_vm.agreement, \"daysCalculated\", $$v)},expression:\"agreement.daysCalculated\"}})],1)])]),_c('div',{staticClass:\"sidebar-footer\"},[_c('div',{staticClass:\"sidebar-footer-controls\"},[_c('b-button',{staticClass:\"is-blue\",attrs:{\"loading\":_vm.loading},on:{\"click\":_vm.update}},[_vm._v(\"Opdater\")]),_c('b-button',{staticClass:\"is-text\",on:{\"click\":_vm.cancel}},[_vm._v(\"Annuller\")])],1),_c('div',{staticClass:\"sidebar-footer-updated content p-2 has-text-centered\"},[_vm._v(\" \"+_vm._s(_vm.latestUpdateText)+\" \")])])]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ headerText }}\r\n \r\n \r\n \r\n \r\n \r\n Dage ins.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AgreementSidebar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AgreementSidebar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AgreementSidebar.vue?vue&type=template&id=2621aeaf&\"\nimport script from \"./AgreementSidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./AgreementSidebar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AgreementSidebar.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"group-comment-sidebar\"},[_c('b-sidebar',{attrs:{\"position\":\"absolute\",\"right\":true,\"fullheight\":true,\"overlay\":false,\"open\":_vm.isOpen},on:{\"close\":_vm.sidebarCancel}},[_c('div',[_c('b-input',{staticClass:\"search-bar\",attrs:{\"placeholder\":\"Søg på Navn eller Nummer\"},model:{value:(_vm.searchInput),callback:function ($$v) {_vm.searchInput=$$v},expression:\"searchInput\"}}),_c('div',[_c('b-button',{staticClass:\"search-button\",on:{\"click\":_vm.search}},[_vm._v(\" Søg \")])],1),_c('div',[_c('b-button',{staticClass:\"table-related-button button\",on:{\"click\":_vm.removeAllSelectedCheckboxes}},[_vm._v(\" Fravælg alle \")])],1),(_vm.displayedGroupMembers !== undefined)?_c('b-table',{staticClass:\"sidebar-table table\",attrs:{\"data\":_vm.displayedGroupMembers,\"hoverable\":\"\"}},[_c('b-table-column',{attrs:{\"field\":\"number\",\"label\":\"Nummer\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_vm._v(\" \"+_vm._s(props.row.number)+\" \")]}}],null,false,4281656126)}),_c('b-table-column',{attrs:{\"field\":\"name\",\"label\":\"Navn\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_vm._v(\" \"+_vm._s(props.row.name)+\" \")]}}],null,false,2982927002)}),_c('b-table-column',{attrs:{\"field\":\"isSelected\",\"label\":\"Valgt\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('b-field',[_c('b-checkbox',{attrs:{\"value\":props.row.isSelected},on:{\"input\":function (value) { return _vm.markAssistant(props.row.number); }}})],1)]}}],null,false,3059264153)})],1):_vm._e(),_c('button',{staticClass:\"acceptance-button button is-primary\",on:{\"click\":_vm.cancel}},[_vm._v(\"Anuller\")]),_c('button',{staticClass:\"acceptance-button button is-primary\",on:{\"click\":_vm.update}},[_vm._v(\"Vis\")])],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n \r\n \r\n \r\n Søg\r\n \r\n \r\n\r\n \r\n \r\n Fravælg alle\r\n \r\n \r\n\r\n \r\n \r\n {{ props.row.number }}\r\n \r\n\r\n \r\n {{ props.row.name }}\r\n \r\n\r\n \r\n \r\n markAssistant(props.row.number)\"\r\n >\r\n \r\n \r\n \r\n \r\n\r\n Anuller\r\n Vis\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GeneralStatisticsFilterSidebar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GeneralStatisticsFilterSidebar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GeneralStatisticsFilterSidebar.vue?vue&type=template&id=6373800a&\"\nimport script from \"./GeneralStatisticsFilterSidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./GeneralStatisticsFilterSidebar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GeneralStatisticsFilterSidebar.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"holiday-sidebar\"},[_c('b-sidebar',{attrs:{\"position\":\"absolute\",\"right\":true,\"fullheight\":true,\"overlay\":false,\"open\":_vm.sidebarOpen},on:{\"close\":_vm.closeSidebar}},[_c('div',{staticClass:\"holiday-sidebar-contents\"},[_c('div',{staticClass:\"sidebar-body\"},[_c('label',{staticClass:\"input-label\"},[_vm._v(\"Navn\")]),_c('b-input',{staticClass:\"b-input\",attrs:{\"disabled\":true},model:{value:(_vm.chosenHoliday.name),callback:function ($$v) {_vm.$set(_vm.chosenHoliday, \"name\", $$v)},expression:\"chosenHoliday.name\"}}),_c('label',{staticClass:\"input-label\"},[_vm._v(\"Dato\")]),_c('b-input',{staticClass:\"b-input\",attrs:{\"value\":_vm.dateFormat(_vm.chosenHoliday.date),\"disabled\":true}}),_c('label',{staticClass:\"input-label\"},[_vm._v(\"Alle fri\")]),_c('b-checkbox',{staticClass:\"b-checkbox\",attrs:{\"value\":_vm.chosenHoliday.state === 1,\"true-value\":1,\"false-value\":0},on:{\"input\":function (value) { return (_vm.markAllFree(value)); }}})],1),_c('div',{staticClass:\"sidebar-footer\"},[_c('b-button',{staticClass:\"is-blue\",on:{\"click\":_vm.updateHoliday}},[_vm._v(\"Gem\")]),_c('b-button',{staticClass:\"is-white\",on:{\"click\":_vm.closeSidebar}},[_vm._v(\"Annullér\")])],1)])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n \r\n Navn\r\n \r\n \r\n\r\n Dato\r\n \r\n \r\n\r\n Alle fri\r\n (markAllFree(value))\"\r\n >\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HolidaySidebar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HolidaySidebar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HolidaySidebar.vue?vue&type=template&id=eb6c3ce2&\"\nimport script from \"./HolidaySidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./HolidaySidebar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HolidaySidebar.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {\nvar this$1 = this;\nvar _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"dtreport__sidebar__view\"},[_c('b-sidebar',{attrs:{\"position\":\"absolute\",\"right\":true,\"fullheight\":true,\"overlay\":false,\"open\":_vm.showSidebar},on:{\"close\":_vm.cancelSidebar}},[(_vm.showSidebar && _vm.selectedUserDriveData)?_c('div',{staticClass:\"calendar-entry-form\"},[_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-header\"},[_vm._v(\" \"+_vm._s(_vm.sidebarHeaderText)+\" \")])]),_c('div',{staticClass:\"sidebar-body\"},[_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Tid i minutter\")]),_c('b-input',{attrs:{\"disabled\":!_vm.isAdmin},model:{value:(_vm.selectedUserDriveData.timeInMinutes),callback:function ($$v) {_vm.$set(_vm.selectedUserDriveData, \"timeInMinutes\", $$v)},expression:\"selectedUserDriveData.timeInMinutes\"}}),_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Distance\")]),_c('b-input',{attrs:{\"disabled\":!_vm.isAdmin},model:{value:(_vm.selectedUserDriveData.distance),callback:function ($$v) {_vm.$set(_vm.selectedUserDriveData, \"distance\", $$v)},expression:\"selectedUserDriveData.distance\"}}),_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Dage\")]),_c('b-input',{attrs:{\"disabled\":!_vm.isAdmin},model:{value:(_vm.selectedUserDriveData.days),callback:function ($$v) {_vm.$set(_vm.selectedUserDriveData, \"days\", $$v)},expression:\"selectedUserDriveData.days\"}})],1),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Type\")]),_c('b-input',{attrs:{\"disabled\":true},model:{value:(_vm.selectedUserDriveData.remark),callback:function ($$v) {_vm.$set(_vm.selectedUserDriveData, \"remark\", $$v)},expression:\"selectedUserDriveData.remark\"}})],1),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[(_vm.selectedUserDriveData.type)?_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\" Type \")]):_vm._e(),(_vm.selectedUserDriveData.type)?_c('dropdown',{attrs:{\"disabled\":!_vm.isAdmin,\"sourceList\":_vm.types,\"keyPropertyName\":function (o) { return o.id; },\"displayPropertyName\":function (o) { return o.title; },\"selectedValue\":_vm.type,\"backgroundColor\":'white',\"fontSize\":'1rem',\"padding\":'7px 11px',\"height\":'40px',\"dropdownWidth\":'204.72px'},on:{\"selectionChanged\":function (type) {\n this$1.setSelectedType(type);\n }}}):_vm._e()],1),(_vm.selectedUserDriveData.createdDate)?_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Dato\")]),_c('b-datepicker',{attrs:{\"disabled\":!_vm.isAdmin,\"focusedDate\":_vm.selectedUserDriveData.createdDate,\"locale\":\"da-DK\",\"placeholder\":\"Vælg en dato\"},model:{value:(_vm.selectedUserDriveData.createdDate),callback:function ($$v) {_vm.$set(_vm.selectedUserDriveData, \"createdDate\", $$v)},expression:\"selectedUserDriveData.createdDate\"}})],1):_vm._e(),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"CHR\")]),_c('b-input',{attrs:{\"disabled\":!_vm.isAdmin},model:{value:(_vm.selectedUserDriveData.chr),callback:function ($$v) {_vm.$set(_vm.selectedUserDriveData, \"chr\", $$v)},expression:\"selectedUserDriveData.chr\"}})],1),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Antal ilagte emb.\")]),_c('b-input',{attrs:{\"disabled\":!_vm.isAdmin},model:{value:(_vm.selectedUserDriveData.totalImposed),callback:function ($$v) {_vm.$set(_vm.selectedUserDriveData, \"totalImposed\", $$v)},expression:\"selectedUserDriveData.totalImposed\"}})],1),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Antal FU.\")]),_c('b-input',{attrs:{\"disabled\":!_vm.isAdmin},model:{value:(_vm.selectedUserDriveData.totalPreliminaryInvestigations),callback:function ($$v) {_vm.$set(_vm.selectedUserDriveData, \"totalPreliminaryInvestigations\", $$v)},expression:\"selectedUserDriveData.totalPreliminaryInvestigations\"}})],1),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Forgæves besøg\")]),_c('b-input',{attrs:{\"disabled\":!_vm.isAdmin},model:{value:(_vm.selectedUserDriveData.vainVisits),callback:function ($$v) {_vm.$set(_vm.selectedUserDriveData, \"vainVisits\", $$v)},expression:\"selectedUserDriveData.vainVisits\"}})],1),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"VGProjekt\")]),_c('b-checkbox',{attrs:{\"size\":\"is-large\",\"disabled\":!_vm.isAdmin},model:{value:(_vm.selectedUserDriveData.vgProject),callback:function ($$v) {_vm.$set(_vm.selectedUserDriveData, \"vgProject\", $$v)},expression:\"selectedUserDriveData.vgProject\"}})],1),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"På fridag\")]),_c('b-checkbox',{attrs:{\"size\":\"is-large\",\"disabled\":!_vm.isAdmin},model:{value:(_vm.selectedUserDriveData.onDayOff),callback:function ($$v) {_vm.$set(_vm.selectedUserDriveData, \"onDayOff\", $$v)},expression:\"selectedUserDriveData.onDayOff\"}})],1)]),(!_vm.isAdmin)?_c('div',{staticClass:\"sidebar-footer\"},[_c('div',{staticClass:\"sidebar-footer-controls\"},[_c('b-button',{staticClass:\"is-text\",on:{\"click\":function($event){return _vm.cancelSidebar()}}},[_vm._v(\"Luk\")])],1)]):_vm._e(),(_vm.isAdmin)?_c('div',{staticClass:\"sidebar-footer\"},[_c('div',{staticClass:\"sidebar-footer-controls\"},[_c('b-button',{staticClass:\"is-blue\",attrs:{\"loading\":_vm.loading},on:{\"click\":function($event){return _vm.update()}}},[_vm._v(_vm._s(_vm.sidebarHeaderText))]),_c('b-button',{staticClass:\"is-text\",on:{\"click\":function($event){return _vm.cancelSidebar()}}},[_vm._v(\"Annuller\")]),(_vm.selectedUserDriveData.id !== 0)?_c('b-button',{staticClass:\"is-red\",on:{\"click\":function($event){return _vm.deleteItem()}}},[_vm._v(\"Slet\")]):_vm._e()],1),_c('div',{staticClass:\"sidebar-footer-updated content p-2 has-text-centered\"})]):_vm._e()]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n \r\n \r\n {{ sidebarHeaderText }}\r\n \r\n \r\n\r\n \r\n \r\n Tid i minutter\r\n \r\n\r\n Distance\r\n \r\n\r\n Dage\r\n \r\n \r\n \r\n Type\r\n \r\n \r\n \r\n \r\n \r\n Type\r\n \r\n o.id\"\r\n :displayPropertyName=\"(o) => o.title\"\r\n :selectedValue=\"type\"\r\n :backgroundColor=\"'white'\"\r\n :fontSize=\"'1rem'\"\r\n :padding=\"'7px 11px'\"\r\n :height=\"'40px'\"\r\n :dropdownWidth=\"'204.72px'\"\r\n @selectionChanged=\"\r\n (type) => {\r\n this.setSelectedType(type);\r\n }\r\n \"\r\n >\r\n \r\n \r\n \r\n Dato\r\n \r\n \r\n \r\n \r\n CHR\r\n \r\n \r\n \r\n Antal ilagte emb.\r\n \r\n \r\n \r\n Antal FU.\r\n \r\n \r\n \r\n \r\n Forgæves besøg\r\n \r\n \r\n \r\n VGProjekt\r\n \r\n \r\n \r\n På fridag\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DtReportSidebar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DtReportSidebar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DtReportSidebar.vue?vue&type=template&id=3f7e0da8&scoped=true&\"\nimport script from \"./DtReportSidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./DtReportSidebar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DtReportSidebar.vue?vue&type=style&index=0&id=3f7e0da8&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3f7e0da8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"group-comment-sidebar\"},[_c('b-sidebar',{attrs:{\"position\":\"absolute\",\"right\":true,\"fullheight\":true,\"overlay\":false,\"open\":_vm.open},on:{\"close\":_vm.cancel}},[(_vm.rate)?_c('div',{staticClass:\"calendar-entry-form\"},[_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-header\"},[_vm._v(\" \"+_vm._s(_vm.headerText)+\" \")])]),_c('div',{staticClass:\"sidebar-body\"},[_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Kørsel HV.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.drivingRateWeekday),callback:function ($$v) {_vm.$set(_vm.rate, \"drivingRateWeekday\", $$v)},expression:\"rate.drivingRateWeekday\"}})],1)]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Kørsel SH.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.drivingRateHoliday),callback:function ($$v) {_vm.$set(_vm.rate, \"drivingRateHoliday\", $$v)},expression:\"rate.drivingRateHoliday\"}})],1)]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Kørsel før 07:15 HV.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.hourRateWeekdayDrivingBefore),callback:function ($$v) {_vm.$set(_vm.rate, \"hourRateWeekdayDrivingBefore\", $$v)},expression:\"rate.hourRateWeekdayDrivingBefore\"}})],1)]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Kørsel før 07:15 SH.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.hourRateWeekendDrivingBefore),callback:function ($$v) {_vm.$set(_vm.rate, \"hourRateWeekendDrivingBefore\", $$v)},expression:\"rate.hourRateWeekendDrivingBefore\"}})],1)]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Time RTA HV.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.hourRateWeekday),callback:function ($$v) {_vm.$set(_vm.rate, \"hourRateWeekday\", $$v)},expression:\"rate.hourRateWeekday\"}})],1)]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Time RTA SH.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.hourRateHoliday),callback:function ($$v) {_vm.$set(_vm.rate, \"hourRateHoliday\", $$v)},expression:\"rate.hourRateHoliday\"}})],1)]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Time ATK HV.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.hourRateWeekdayAtk),callback:function ($$v) {_vm.$set(_vm.rate, \"hourRateWeekdayAtk\", $$v)},expression:\"rate.hourRateWeekdayAtk\"}})],1)]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Time ATK SH.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.hourRateHolidayAtk),callback:function ($$v) {_vm.$set(_vm.rate, \"hourRateHolidayAtk\", $$v)},expression:\"rate.hourRateHolidayAtk\"}})],1)]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Time barsel\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.hourRateWeekdayMaternity),callback:function ($$v) {_vm.$set(_vm.rate, \"hourRateWeekdayMaternity\", $$v)},expression:\"rate.hourRateWeekdayMaternity\"}})],1)]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Pensions rate %.\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.pensionPercentage),callback:function ($$v) {_vm.$set(_vm.rate, \"pensionPercentage\", $$v)},expression:\"rate.pensionPercentage\"}})],1)]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Anciennitet\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.seniorityRate),callback:function ($$v) {_vm.$set(_vm.rate, \"seniorityRate\", $$v)},expression:\"rate.seniorityRate\"}})],1)]),_c('div',{staticClass:\"calendar-entry-sidebar-field\"},[_c('div',{staticClass:\"sidebar-field-label\"},[_vm._v(\"Timer pr. session\")]),_c('div',{staticClass:\"sidebar-field-input\"},[_c('b-numberinput',{attrs:{\"controls\":false,\"step\":\"0.01\"},on:{\"input\":_vm.modelUpdated},model:{value:(_vm.rate.tariff),callback:function ($$v) {_vm.$set(_vm.rate, \"tariff\", $$v)},expression:\"rate.tariff\"}})],1)])]),_c('div',{staticClass:\"sidebar-footer\"},[_c('div',{staticClass:\"sidebar-footer-controls\"},[_c('b-button',{staticClass:\"is-blue\",attrs:{\"loading\":_vm.loading},on:{\"click\":_vm.update}},[_vm._v(\"Opdater\")]),_c('b-button',{staticClass:\"is-text\",on:{\"click\":_vm.cancel}},[_vm._v(\"Annuller\")])],1),_c('div',{staticClass:\"sidebar-footer-updated content p-2 has-text-centered\"},[_vm._v(\" \"+_vm._s(_vm.latestUpdateText)+\" \")])])]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ headerText }}\r\n \r\n \r\n \r\n \r\n \r\n Kørsel HV.\r\n \r\n \r\n \r\n \r\n \r\n Kørsel SH.\r\n \r\n \r\n \r\n \r\n \r\n Kørsel før 07:15 HV.\r\n \r\n \r\n \r\n \r\n \r\n Kørsel før 07:15 SH.\r\n \r\n \r\n \r\n \r\n \r\n Time RTA HV.\r\n \r\n \r\n \r\n \r\n \r\n Time RTA SH.\r\n \r\n \r\n \r\n \r\n \r\n Time ATK HV.\r\n \r\n \r\n \r\n \r\n \r\n Time ATK SH.\r\n \r\n \r\n \r\n \r\n \r\n Time barsel\r\n \r\n \r\n \r\n \r\n \r\n Pensions rate %.\r\n \r\n \r\n \r\n \r\n \r\n Anciennitet\r\n \r\n \r\n \r\n \r\n \r\n Timer pr. session\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SalaryRateSidebar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SalaryRateSidebar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SalaryRateSidebar.vue?vue&type=template&id=0bb45983&scoped=true&\"\nimport script from \"./SalaryRateSidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./SalaryRateSidebar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SalaryRateSidebar.vue?vue&type=style&index=0&id=0bb45983&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0bb45983\",\n null\n \n)\n\nexport default component.exports","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=66e4b29a&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export const configurationRoutes = [\r\n {\r\n path: '/configuration',\r\n component: () => import('../views/Configuration.vue'),\r\n children: [\r\n {\r\n path: '',\r\n name: 'Opsætning',\r\n redirect: \"users\"\r\n },\r\n {\r\n path: 'users',\r\n name: 'Users',\r\n component: () => import('../views/Users.vue')\r\n }, \r\n {\r\n path: '/configuration/users/:userId/edit',\r\n name: 'UserEdit',\r\n props: true,\r\n component: () => import('/src/views/User.vue')\r\n },\r\n {\r\n path: '/configuration/users/:userId/password',\r\n name: 'UserPassword',\r\n props: true,\r\n component: () => import('../views/ChangePassword.vue')\r\n },\r\n {\r\n path: '/configuration/users/new',\r\n name: 'UserNew',\r\n component: () => import('../views/User.vue')\r\n },{\r\n path: 'holidays',\r\n name: 'Holiday',\r\n component: () => import('../views/configuration-views/Holiday.vue')\r\n }, \r\n {\r\n path: 'groups',\r\n name: 'Groups',\r\n component: () => import('../views/configuration-views/Groups')\r\n }, \r\n {\r\n path: '/configuration/groups/:groupId/group',\r\n name: 'GroupConfiguration',\r\n props: true,\r\n component: () => import('@/views/group-views/Group.vue')\r\n },\r\n {\r\n path: '/configuration/groups/new',\r\n name: 'NewGroupConfiguration',\r\n component: () => import('@/views/group-views/Group.vue')\r\n },\r\n {\r\n path: 'circles',\r\n name: 'Circles',\r\n component: () => import('../views/Circles')\r\n }, \r\n {\r\n path: '/configuration/circles/:circleId/edit',\r\n name: 'CircleEdit',\r\n props: true,\r\n component: () => import('../views/Circle.vue')\r\n },\r\n {\r\n path: '/configuration/circles/new',\r\n name: 'CircleNew',\r\n component: () => import('/src/views/Circle.vue')\r\n },\r\n {\r\n path: 'agreements',\r\n name: 'Agreements',\r\n component: () => import('../views/configuration-views/Agreements')\r\n },\r\n {\r\n path: 'gpsdata',\r\n name: 'GPSData',\r\n component: () => import('../views/configuration-views/GPSData')\r\n },\r\n {\r\n path: 'salaryRates',\r\n name: 'SalaryRates',\r\n component: () => import('../views/configuration-views/SalaryRates')\r\n },\r\n ]\r\n },\r\n ];\r\n \r\n console.log(\"configurationRoutes\" + configurationRoutes);","import Vue from 'vue'\r\nimport VueRouter from 'vue-router'\r\nimport { vuexOidcCreateRouterMiddleware } from 'vuex-oidc'\r\nimport Home from '../views/Home.vue'\r\nimport store from '@/store';\r\nimport { userRoutes } from \"./users\";\r\nimport { circleRoutes } from \"./circles\";\r\nimport { configurationRoutes } from './configuration';\r\n\r\nVue.use(VueRouter)\r\n\r\nconst routes = [\r\n {\r\n path: '/',\r\n name: 'Home',\r\n component: () => import('../views/Home.vue'),\r\n },\r\n {\r\n path: '/calendar',\r\n component: () => import('@/components/calendar/Home.vue'),\r\n children: [\r\n {\r\n path: \"\",\r\n name: 'Calendar',\r\n redirect: \"my-calendar\"\r\n },\r\n {\r\n path: \"my-calendar\",\r\n component: () => import(\"@/components/calendar/CalendarSmall.vue\")\r\n }, {\r\n path: \"group-overview\",\r\n component: () => import(\"@/components/calendar/GroupOverview.vue\")\r\n },\r\n ]\r\n },\r\n {\r\n path: '/login',\r\n name: 'Login',\r\n component: () => import('../views/Login.vue'),\r\n meta: {\r\n isPublic: true\r\n }\r\n },\r\n {\r\n path: '/logout',\r\n name: 'Logout',\r\n component: () => import('../views/Logout.vue'),\r\n meta: {\r\n isPublic: true\r\n }\r\n },\r\n {\r\n path: '/oidc-callback', // Needs to match redirectUrl in oidcSettings\r\n name: 'oidcCallback',\r\n component: () => import('../views/OidcCallback.vue'),\r\n meta: {\r\n isPublic: true\r\n }\r\n },\r\n {\r\n path: '/oidc-popup-callback', // Needs to match popupRedirectUrl in oidcSettings\r\n name: 'oidcPopupCallback',\r\n component: () => import('../views/OidcPopupCallback.vue'),\r\n meta: {\r\n isPublic: true\r\n }\r\n },\r\n {\r\n path: '/oidc-callback-error', // Needs to match redirect_uri in oidcSettings\r\n name: 'oidcCallbackError',\r\n component: () => import('../views/OidcCallbackError.vue'),\r\n meta: {\r\n isPublic: true\r\n }\r\n },\r\n {\r\n path: '/replacementweek',\r\n name: 'ReplacementWeek',\r\n component: () => import('../views/ReplacementWeek.vue')\r\n },\r\n {\r\n path: \"/schedule\",\r\n component: () => import(\"@/views/ScheduleTop.vue\"),\r\n children: [\r\n {\r\n path: \"\",\r\n name: \"Schedule\",\r\n component: () => import(\"@/components/scheduler/Schedule.vue\"),\r\n },\r\n {\r\n path: \"disposition\",\r\n name: \"Disposition\",\r\n component: () => import(\"@/views/Disposition.vue\")\r\n }\r\n ]\r\n },\r\n {\r\n path: \"/configuration-user\",\r\n component: () => import(\"@/views/ConfigurationUserTop.vue\"),\r\n children: [ \r\n {\r\n path: \"\",\r\n name: 'My-Groups',\r\n redirect: \"my-groups\"\r\n },\r\n {\r\n path: 'my-groups',\r\n name: 'My-Groups',\r\n component: () => import('@/views/group-views/GroupsForUser.vue')\r\n },\r\n {\r\n path: 'my-groups/:groupId/group',\r\n name: 'Group',\r\n props: true,\r\n component: () => import('@/views/group-views/Group.vue')\r\n },\r\n {\r\n path: 'my-groups/new',\r\n name: 'NewGroup',\r\n component: () => import('@/views/group-views/Group.vue')\r\n },\r\n ]\r\n },\r\n {\r\n path: '/reports',\r\n component: () => import('@/views/Reports.vue'),\r\n children: [\r\n {\r\n path: '',\r\n name: 'Reports',\r\n redirect: \"monthlystatistics\"\r\n },\r\n {\r\n path: 'replacementstatistics',\r\n name: 'ReplacementStatistics',\r\n component: () => import(\"@/views/reports/ReplacementStatistics.vue\")\r\n },\r\n {\r\n path: 'generalstatistics',\r\n name: 'GeneralStatistics',\r\n component: () => import(\"@/views/reports/GeneralStatistics.vue\")\r\n },\r\n {\r\n path: 'drivestatistics',\r\n name: 'DriveStatistics',\r\n component: () => import(\"@/views/reports/DriveStatistics.vue\")\r\n },\r\n {\r\n path: 'absencestatistics',\r\n name: 'AbsenceStatistics',\r\n component: () => import(\"@/views/reports/AbsenceStatistics.vue\")\r\n },\r\n {\r\n path: 'replacementmonthlystatistics',\r\n name: 'ReplacementMonthlyStatistics',\r\n props: true,\r\n component: () => import(\"@/views/reports/ReplacementMonthlyStatistics.vue\")\r\n },\r\n {\r\n path: 'monthlystatistics',\r\n name: 'MonthlyStatistics',\r\n props: true,\r\n component: () => import(\"@/views/reports/MonthlyStatistics.vue\")\r\n },\r\n {\r\n path: 'monthlygroup',\r\n name: 'MonthlyGroup',\r\n props: true,\r\n component: () => import(\"@/views/reports/MonthlyGroup.vue\")\r\n },\r\n {\r\n path: 'yearlytimeregistration',\r\n name: 'YearlyTimeRegistration',\r\n props: true,\r\n component: () => import(\"@/views/reports/YearlyTimeRegistrationReport.vue\")\r\n },\r\n {\r\n path: 'timeoff',\r\n name: 'TimeOff',\r\n props: true,\r\n component: () => import(\"@/views/reports/TimeOffReport.vue\")\r\n },\r\n {\r\n path: 'salaryReport',\r\n name: 'SalaryReport',\r\n props: true,\r\n component: () => import(\"@/views/reports/SalaryReport.vue\")\r\n },\r\n {\r\n path: 'salaryDayReport',\r\n name: 'SalaryDayReport',\r\n props: true,\r\n component: () => import(\"@/views/reports/SalaryDayReport.vue\")\r\n },\r\n {\r\n path: 'dtReport',\r\n name: 'DTReport',\r\n component: () => import(\"@/views/reports/DTReport.vue\")\r\n },\r\n ]\r\n },\r\n {\r\n path: '/dashboard',\r\n name: 'Dashboard',\r\n component: () => import('../views/Dashboard.vue')\r\n },\r\n {\r\n path: '/icalendar',\r\n name: 'ICalendar',\r\n component: () => import('../views/ICalendar.vue')\r\n },\r\n //...circleRoutes,\r\n ...configurationRoutes,\r\n {\r\n path: '/about',\r\n name: 'About',\r\n // route level code-splitting\r\n // this generates a separate chunk (about.[hash].js) for this route\r\n // which is lazy-loaded when the route is visited.\r\n component: () => import(/* webpackChunkName: \"about\" */ '../views/About.vue')\r\n }\r\n]\r\n\r\nconst router = new VueRouter({\r\n mode: 'history',\r\n base: process.env.BASE_URL,\r\n routes,\r\n linkActiveClass: 'is-active'\r\n});\r\n\r\nrouter.beforeEach(vuexOidcCreateRouterMiddleware(store, 'oidcStore'));\r\n\r\nexport default router\r\n","import Vue from 'vue';\r\n\r\nVue.filter(\"nodecimal\", v => (v ? v.toFixed(0) : ''));\r\nVue.filter(\"onedecimal\", v => (v ? v.toFixed(1) : ''));\r\nVue.filter(\"twodecimal\", v => (v ? v.toFixed(2) : ''));\r\n\r\nVue.filter(\"nodecimalorline\", v => (v ? v.toFixed(0) : '-'));\r\nVue.filter(\"salarydecimal\", v => (\r\n v \r\n ? \r\n Number(v)\r\n .toFixed(2)\r\n .replace('.', ',') \r\n .replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, \"$1.\") \r\n : ''\r\n));","import moment from 'moment'\r\nimport Vue from 'vue';\r\n\r\nVue.filter('formatDate', function(value) {\r\n if (value) {\r\n return moment(String(value)).format('DD-MM-YYYY')\r\n }\r\n});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"icon-container\",class:[_vm.type],on:{\"click\":_vm.onClick}},[_c('font-awesome-icon',{staticClass:\"icon\",attrs:{\"icon\":_vm.icon}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Icon.vue?vue&type=template&id=4838782f&scoped=true&\"\nimport script from \"./Icon.vue?vue&type=script&lang=js&\"\nexport * from \"./Icon.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Icon.vue?vue&type=style&index=0&id=4838782f&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4838782f\",\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\r\nimport App from './App.vue';\r\nimport router from './router';\r\nimport store from './store';\r\nimport Buefy from 'buefy';\r\nimport VueMoment from 'vue-moment';\r\nimport moment from 'moment';\r\nimport VSwatches from 'vue-swatches';\r\nimport 'moment/locale/da';\r\nimport './filters/numbers';\r\nimport './filters/dates'; \r\nimport '@fontsource/lato';\r\nimport Icon from \"./components/common/Icon.vue\";\r\n\r\nimport { library } from '@fortawesome/fontawesome-svg-core';\r\nimport { faCheck, faCheckCircle, faInfoCircle, faExclamationTriangle, faExclamationCircle,\r\n faArrowUp, faAngleRight, faAngleLeft, faAngleDown, faPlus, faBars, faComment, faTimes,\r\n faEye, faEyeSlash, faCaretDown, faCaretUp, faUpload, faEnvelope, faLock, faChevronLeft,faStickyNote,\r\n faChevronRight, faBell } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';\r\nlibrary.add(faCheck, faCheckCircle, faInfoCircle, faExclamationTriangle, faExclamationCircle, \r\n faArrowUp, faAngleRight, faAngleLeft, faAngleDown, faPlus, faBars, faComment, faTimes, faStickyNote,\r\n faEye, faEyeSlash, faCaretDown, faCaretUp, faUpload, faEnvelope, faLock, faChevronLeft,\r\n faChevronRight, faBell);\r\n\r\nrequire('./styles/app.scss');\r\n\r\nmoment.locale('da');\r\nVue.use(VueMoment, { moment });\r\nVue.config.productionTip = false\r\n\r\nVue.component(\"v-swatches\", VSwatches);\r\nVue.component('font-awesome-icon', FontAwesomeIcon);\r\nVue.component(\"icon\", Icon);\r\n\r\nVue.use(Buefy, {\r\n defaultIconComponent: 'font-awesome-icon',\r\n defaultIconPack: 'fas',\r\n defaultContainerElement: '#content',\r\n defaultModalScroll: 'keep'\r\n});\r\n\r\nnew Vue({\r\n router,\r\n store,\r\n render: h => h(App)\r\n}).$mount('#app')\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","import moment from 'moment';\r\nimport { groups } from './devdata';\r\nimport AppUsersClient from \"../clients/AppUsersClient\";\r\n\r\nconst resource = '/group';\r\n\r\nexport default {\r\n getById: (groupId) => AppUsersClient.get(`${resource}/${groupId}`),\r\n getForPeriod(startDate, endDate, teamFilter) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(`${resource}/?fromdate=${moment(startDate).format('YYYY-MM-DD')}&todate=${moment(endDate).format('YYYY-MM-DD')}&forteam=${(teamFilter ? teamFilter : '')}`)\r\n .then(response => {\r\n resolve(response.data);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getAllForMyCalendar(){\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(`${resource}/getAllForMyCalendar`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getAll() {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(`${resource}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n create(group) {\r\n return AppUsersClient.post(`${resource}`, group);\r\n },\r\n update(group) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient\r\n .put(`${resource}`, group)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n async remove(groupId) {\r\n await AppUsersClient.put(`${resource}/remove/${groupId}`);\r\n },\r\n delete(groupId, updateTag) {\r\n return new Promise((resolve, reject) => {\r\n let index = groups.findIndex(q => q.id === groupId);\r\n if (index >= 0) {\r\n groups.splice(index, 1);\r\n }\r\n return resolve(groups);\r\n });\r\n },\r\n getGroupsForUser(id) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(`${resource}/getGroupsForUser/${id}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getUsersGorGroup(id) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(`${resource}/getUsersGorGroup/${id}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n // delete(projectId, updateTag) {\r\n // return new Promise(function(resolve, reject) {\r\n // authService.acquireToken(['api://6b77f60e-8f2e-4d88-8f34-fb827da6f495/planning.manage']) //projects.manage\r\n // .then(accessToken => {\r\n // const headers = { 'Authorization': `Bearer ${accessToken}` };\r\n // const options = {\r\n // headers\r\n // };\r\n // axios\r\n // .delete(`${constants.planningApiBasePath}/projects/${projectId}?updateTag=${updateTag}`, options)\r\n // .then(response => {\r\n // resolve(response);\r\n // })\r\n // .catch(error => {\r\n // reject(error);\r\n // });\r\n // }).catch(error => {\r\n // reject(error);\r\n // });\r\n // });\r\n // },\r\n};\r\n","var map = {\n\t\"./af\": \"4fe5\",\n\t\"./af.js\": \"4fe5\",\n\t\"./ar\": \"3f7f\",\n\t\"./ar-dz\": \"0a4b\",\n\t\"./ar-dz.js\": \"0a4b\",\n\t\"./ar-kw\": \"9dc1\",\n\t\"./ar-kw.js\": \"9dc1\",\n\t\"./ar-ly\": \"cccb\",\n\t\"./ar-ly.js\": \"cccb\",\n\t\"./ar-ma\": \"d81c\",\n\t\"./ar-ma.js\": \"d81c\",\n\t\"./ar-sa\": \"dee2\",\n\t\"./ar-sa.js\": \"dee2\",\n\t\"./ar-tn\": \"df08\",\n\t\"./ar-tn.js\": \"df08\",\n\t\"./ar.js\": \"3f7f\",\n\t\"./az\": \"9a25\",\n\t\"./az.js\": \"9a25\",\n\t\"./be\": \"ffa8\",\n\t\"./be.js\": \"ffa8\",\n\t\"./bg\": \"c81c\",\n\t\"./bg.js\": \"c81c\",\n\t\"./bm\": \"0d5f\",\n\t\"./bm.js\": \"0d5f\",\n\t\"./bn\": \"fa65\",\n\t\"./bn-bd\": \"e711\",\n\t\"./bn-bd.js\": \"e711\",\n\t\"./bn.js\": \"fa65\",\n\t\"./bo\": \"b30d\",\n\t\"./bo.js\": \"b30d\",\n\t\"./br\": \"ee0a\",\n\t\"./br.js\": \"ee0a\",\n\t\"./bs\": \"89a9\",\n\t\"./bs.js\": \"89a9\",\n\t\"./ca\": \"0a16\",\n\t\"./ca.js\": \"0a16\",\n\t\"./cs\": \"b7a0\",\n\t\"./cs.js\": \"b7a0\",\n\t\"./cv\": \"2b90\",\n\t\"./cv.js\": \"2b90\",\n\t\"./cy\": \"0d0e\",\n\t\"./cy.js\": \"0d0e\",\n\t\"./da\": \"7a87\",\n\t\"./da.js\": \"7a87\",\n\t\"./de\": \"5f6f\",\n\t\"./de-at\": \"7f7e\",\n\t\"./de-at.js\": \"7f7e\",\n\t\"./de-ch\": \"f949\",\n\t\"./de-ch.js\": \"f949\",\n\t\"./de.js\": \"5f6f\",\n\t\"./dv\": \"3073\",\n\t\"./dv.js\": \"3073\",\n\t\"./el\": \"4130\",\n\t\"./el.js\": \"4130\",\n\t\"./en-au\": \"517c\",\n\t\"./en-au.js\": \"517c\",\n\t\"./en-ca\": \"eb45\",\n\t\"./en-ca.js\": \"eb45\",\n\t\"./en-gb\": \"594d\",\n\t\"./en-gb.js\": \"594d\",\n\t\"./en-ie\": \"7f1a\",\n\t\"./en-ie.js\": \"7f1a\",\n\t\"./en-il\": \"3d14\",\n\t\"./en-il.js\": \"3d14\",\n\t\"./en-in\": \"efab\",\n\t\"./en-in.js\": \"efab\",\n\t\"./en-nz\": \"a04d\",\n\t\"./en-nz.js\": \"a04d\",\n\t\"./en-sg\": \"c6c8\",\n\t\"./en-sg.js\": \"c6c8\",\n\t\"./eo\": \"d8aa\",\n\t\"./eo.js\": \"d8aa\",\n\t\"./es\": \"8dca\",\n\t\"./es-do\": \"24f7\",\n\t\"./es-do.js\": \"24f7\",\n\t\"./es-mx\": \"45bf\",\n\t\"./es-mx.js\": \"45bf\",\n\t\"./es-us\": \"8c15\",\n\t\"./es-us.js\": \"8c15\",\n\t\"./es.js\": \"8dca\",\n\t\"./et\": \"0207\",\n\t\"./et.js\": \"0207\",\n\t\"./eu\": \"4d24\",\n\t\"./eu.js\": \"4d24\",\n\t\"./fa\": \"9cf1\",\n\t\"./fa.js\": \"9cf1\",\n\t\"./fi\": \"5b8e\",\n\t\"./fi.js\": \"5b8e\",\n\t\"./fil\": \"9b23\",\n\t\"./fil.js\": \"9b23\",\n\t\"./fo\": \"cef1\",\n\t\"./fo.js\": \"cef1\",\n\t\"./fr\": \"74e2\",\n\t\"./fr-ca\": \"f791\",\n\t\"./fr-ca.js\": \"f791\",\n\t\"./fr-ch\": \"f086\",\n\t\"./fr-ch.js\": \"f086\",\n\t\"./fr.js\": \"74e2\",\n\t\"./fy\": \"0d86\",\n\t\"./fy.js\": \"0d86\",\n\t\"./ga\": \"d67f\",\n\t\"./ga.js\": \"d67f\",\n\t\"./gd\": \"d9d3\",\n\t\"./gd.js\": \"d9d3\",\n\t\"./gl\": \"29e2\",\n\t\"./gl.js\": \"29e2\",\n\t\"./gom-deva\": \"e231\",\n\t\"./gom-deva.js\": \"e231\",\n\t\"./gom-latn\": \"d91e\",\n\t\"./gom-latn.js\": \"d91e\",\n\t\"./gu\": \"d184\",\n\t\"./gu.js\": \"d184\",\n\t\"./he\": \"624c\",\n\t\"./he.js\": \"624c\",\n\t\"./hi\": \"061d\",\n\t\"./hi.js\": \"061d\",\n\t\"./hr\": \"6a0c\",\n\t\"./hr.js\": \"6a0c\",\n\t\"./hu\": \"dce0\",\n\t\"./hu.js\": \"dce0\",\n\t\"./hy-am\": \"39a7\",\n\t\"./hy-am.js\": \"39a7\",\n\t\"./id\": \"a8eb\",\n\t\"./id.js\": \"a8eb\",\n\t\"./is\": \"0ccb\",\n\t\"./is.js\": \"0ccb\",\n\t\"./it\": \"35f7\",\n\t\"./it-ch\": \"0a85\",\n\t\"./it-ch.js\": \"0a85\",\n\t\"./it.js\": \"35f7\",\n\t\"./ja\": \"239d\",\n\t\"./ja.js\": \"239d\",\n\t\"./jv\": \"9271\",\n\t\"./jv.js\": \"9271\",\n\t\"./ka\": \"d319\",\n\t\"./ka.js\": \"d319\",\n\t\"./kk\": \"83d9\",\n\t\"./kk.js\": \"83d9\",\n\t\"./km\": \"3319\",\n\t\"./km.js\": \"3319\",\n\t\"./kn\": \"a0c1\",\n\t\"./kn.js\": \"a0c1\",\n\t\"./ko\": \"6de7\",\n\t\"./ko.js\": \"6de7\",\n\t\"./ku\": \"a9d2\",\n\t\"./ku.js\": \"a9d2\",\n\t\"./ky\": \"0747\",\n\t\"./ky.js\": \"0747\",\n\t\"./lb\": \"6201\",\n\t\"./lb.js\": \"6201\",\n\t\"./lo\": \"c211\",\n\t\"./lo.js\": \"c211\",\n\t\"./lt\": \"6df3\",\n\t\"./lt.js\": \"6df3\",\n\t\"./lv\": \"55b3\",\n\t\"./lv.js\": \"55b3\",\n\t\"./me\": \"e661\",\n\t\"./me.js\": \"e661\",\n\t\"./mi\": \"fd00\",\n\t\"./mi.js\": \"fd00\",\n\t\"./mk\": \"1ffc\",\n\t\"./mk.js\": \"1ffc\",\n\t\"./ml\": \"18c9\",\n\t\"./ml.js\": \"18c9\",\n\t\"./mn\": \"c6f0\",\n\t\"./mn.js\": \"c6f0\",\n\t\"./mr\": \"48ce\",\n\t\"./mr.js\": \"48ce\",\n\t\"./ms\": \"d892\",\n\t\"./ms-my\": \"de1a\",\n\t\"./ms-my.js\": \"de1a\",\n\t\"./ms.js\": \"d892\",\n\t\"./mt\": \"9b8e\",\n\t\"./mt.js\": \"9b8e\",\n\t\"./my\": \"b403\",\n\t\"./my.js\": \"b403\",\n\t\"./nb\": \"cb28\",\n\t\"./nb.js\": \"cb28\",\n\t\"./ne\": \"89e8\",\n\t\"./ne.js\": \"89e8\",\n\t\"./nl\": \"3017\",\n\t\"./nl-be\": \"3daa\",\n\t\"./nl-be.js\": \"3daa\",\n\t\"./nl.js\": \"3017\",\n\t\"./nn\": \"6432\",\n\t\"./nn.js\": \"6432\",\n\t\"./oc-lnc\": \"92d0\",\n\t\"./oc-lnc.js\": \"92d0\",\n\t\"./pa-in\": \"5c40\",\n\t\"./pa-in.js\": \"5c40\",\n\t\"./pl\": \"a4a8\",\n\t\"./pl.js\": \"a4a8\",\n\t\"./pt\": \"6177\",\n\t\"./pt-br\": \"e204\",\n\t\"./pt-br.js\": \"e204\",\n\t\"./pt.js\": \"6177\",\n\t\"./ro\": \"b2de\",\n\t\"./ro.js\": \"b2de\",\n\t\"./ru\": \"a884\",\n\t\"./ru.js\": \"a884\",\n\t\"./sd\": \"60ab\",\n\t\"./sd.js\": \"60ab\",\n\t\"./se\": \"40bf\",\n\t\"./se.js\": \"40bf\",\n\t\"./si\": \"a975\",\n\t\"./si.js\": \"a975\",\n\t\"./sk\": \"e060\",\n\t\"./sk.js\": \"e060\",\n\t\"./sl\": \"46cd\",\n\t\"./sl.js\": \"46cd\",\n\t\"./sq\": \"c043\",\n\t\"./sq.js\": \"c043\",\n\t\"./sr\": \"77fd\",\n\t\"./sr-cyrl\": \"6868\",\n\t\"./sr-cyrl.js\": \"6868\",\n\t\"./sr.js\": \"77fd\",\n\t\"./ss\": \"bbaf\",\n\t\"./ss.js\": \"bbaf\",\n\t\"./sv\": \"be84\",\n\t\"./sv.js\": \"be84\",\n\t\"./sw\": \"c359\",\n\t\"./sw.js\": \"c359\",\n\t\"./ta\": \"73e1\",\n\t\"./ta.js\": \"73e1\",\n\t\"./te\": \"96fe\",\n\t\"./te.js\": \"96fe\",\n\t\"./tet\": \"7308\",\n\t\"./tet.js\": \"7308\",\n\t\"./tg\": \"0481\",\n\t\"./tg.js\": \"0481\",\n\t\"./th\": \"4331\",\n\t\"./th.js\": \"4331\",\n\t\"./tk\": \"b71b\",\n\t\"./tk.js\": \"b71b\",\n\t\"./tl-ph\": \"b965\",\n\t\"./tl-ph.js\": \"b965\",\n\t\"./tlh\": \"a42a\",\n\t\"./tlh.js\": \"a42a\",\n\t\"./tr\": \"183a\",\n\t\"./tr.js\": \"183a\",\n\t\"./tzl\": \"42e5\",\n\t\"./tzl.js\": \"42e5\",\n\t\"./tzm\": \"48ca\",\n\t\"./tzm-latn\": \"d974\",\n\t\"./tzm-latn.js\": \"d974\",\n\t\"./tzm.js\": \"48ca\",\n\t\"./ug-cn\": \"2453\",\n\t\"./ug-cn.js\": \"2453\",\n\t\"./uk\": \"9178\",\n\t\"./uk.js\": \"9178\",\n\t\"./ur\": \"9c29\",\n\t\"./ur.js\": \"9c29\",\n\t\"./uz\": \"3b78\",\n\t\"./uz-latn\": \"54ff\",\n\t\"./uz-latn.js\": \"54ff\",\n\t\"./uz.js\": \"3b78\",\n\t\"./vi\": \"63f8\",\n\t\"./vi.js\": \"63f8\",\n\t\"./x-pseudo\": \"51f1\",\n\t\"./x-pseudo.js\": \"51f1\",\n\t\"./yo\": \"cc6e\",\n\t\"./yo.js\": \"cc6e\",\n\t\"./zh-cn\": \"a25e\",\n\t\"./zh-cn.js\": \"a25e\",\n\t\"./zh-hk\": \"1bec\",\n\t\"./zh-hk.js\": \"1bec\",\n\t\"./zh-mo\": \"d297\",\n\t\"./zh-mo.js\": \"d297\",\n\t\"./zh-tw\": \"dba6\",\n\t\"./zh-tw.js\": \"dba6\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"94e4\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ctrl-button-toggle\",style:({ width: _vm.width + 'px' })},[_c('a',{staticClass:\"ctrl-button\",style:({\n background: _vm.disabled\n ? 'rgba(60, 60, 61, 0.1) !important'\n : _vm.backgroundColor\n ? _vm.backgroundColor\n : '#adadad',\n color: _vm.disabled\n ? 'black !important'\n : _vm.backgroundColor === 'white'\n ? '#363636'\n : 'white',\n fontSize: _vm.fontSize ? _vm.fontSize : '14px',\n padding: _vm.padding ? _vm.padding : '0px 0px 0px 10px',\n height: _vm.height ? _vm.height : '30px',\n width: _vm.dropdownWidth ? _vm.dropdownWidth : '285px',\n float: _vm.dropdownWidth ? 'left' : '',\n borderColor: _vm.disabled\n ? '#3c3c3d !important'\n : _vm.backgroundColor === 'white'\n ? '#707070'\n : '#bbb',\n cursor: _vm.disabled ? 'not-allowed' : 'pointer',\n }),on:{\"click\":_vm.toggleIsOpen}},[_vm._v(\" \"+_vm._s(_vm.selectedName)+\" \"),_vm._m(0)]),(_vm.isOpen && !_vm.disabled)?_c('div',{staticClass:\"ctrl-select-options\",style:({ width: _vm.dropdownWidth ? _vm.dropdownWidth : _vm.width + 'px' })},[_c('div',[(_vm.nullValueText !== undefined)?_c('div',{staticClass:\"ctrl-select-option\",attrs:{\"role\":\"option\"},on:{\"click\":function($event){return _vm.selectionChanged(null)}}},[_vm._v(\" \"+_vm._s(_vm.nullValueText)+\" \")]):_vm._e(),_vm._l((_vm.sourceList),function(obj,index){return _c('div',{key:index,staticClass:\"ctrl-select-option\",style:({\n background: obj.backgroundColor ? obj.backgroundColor : 'inherit',\n }),attrs:{\"role\":\"option\"},on:{\"click\":function($event){return _vm.selectionChanged(obj)}}},[_vm._v(\" \"+_vm._s(_vm.displayPropertyName(obj))+\" \")])})],2)]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticStyle:{\"float\":\"right\"}},[_c('i',{staticClass:\"icon\",attrs:{\"data-icon\":\"arrow-down-white\"}})])}]\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n {{ selectedName }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ nullValueText }}\r\n \r\n \r\n {{ displayPropertyName(obj) }}\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dropdown.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Dropdown.vue?vue&type=template&id=76a9cde2&scoped=true&\"\nimport script from \"./Dropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./Dropdown.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Dropdown.vue?vue&type=style&index=0&id=76a9cde2&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"76a9cde2\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DtReportSidebar.vue?vue&type=style&index=0&id=3f7e0da8&scoped=true&lang=css&\"","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmployeeSelector.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AgreementSidebar.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserBadge.vue?vue&type=style&index=0&id=4c3d8cdf&lang=scss&scoped=true&\"","import moment from 'moment';\r\nimport { circles } from './devdata';\r\nimport AppUsersClient from \"../clients/AppUsersClient\";\r\n\r\nconst resource = '/circle';\r\n\r\nexport default {\r\n getById: (circleId) => AppUsersClient.get(`${resource}/${circleId}`),\r\n getCirclesCurrentWeek: () => AppUsersClient.get(`${resource}/circlescurrentweek`),\r\n getCircle: id => AppUsersClient.get(`${resource}/${id}`),\r\n getForPeriod(startDate, endDate, teamFilter) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(`${resource}/?fromdate=${moment(startDate).format('YYYY-MM-DD')}&todate=${moment(endDate).format('YYYY-MM-DD')}&forteam=${(teamFilter ? teamFilter : '')}`)\r\n .then(response => {\r\n resolve(response.data);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getPeriods(startDate, endDate, teamFilter) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(`${resource}/?fromdate=${moment(startDate).format('YYYY-MM-DD')}&todate=${moment(endDate).format('YYYY-MM-DD')}&forteam=${(teamFilter ? teamFilter : '')}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getAll(regionFilter) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(`${resource}/getAllSystem/?forRegion=${(regionFilter ? regionFilter : '')}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getCircleForGroup(groupId) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.get(`${resource}/getCircleForGroup/?forGroup=${(groupId ? groupId : '')}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n create(circle) {\r\n return AppUsersClient.post(`${resource}`, circle)\r\n },\r\n update(circle) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient\r\n .put(`${resource}`, circle)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n delete(circleId, updateTag) {\r\n return new Promise((resolve, reject) => {\r\n let index = circles.findIndex(q => q.id === circleId);\r\n if (index >= 0) {\r\n circles.splice(index, 1);\r\n }\r\n return resolve(circles);\r\n });\r\n },\r\n // delete(projectId, updateTag) {\r\n // return new Promise(function(resolve, reject) {\r\n // authService.acquireToken(['api://6b77f60e-8f2e-4d88-8f34-fb827da6f495/planning.manage']) //projects.manage\r\n // .then(accessToken => {\r\n // const headers = { 'Authorization': `Bearer ${accessToken}` };\r\n // const options = {\r\n // headers\r\n // };\r\n // axios\r\n // .delete(`${constants.planningApiBasePath}/projects/${projectId}?updateTag=${updateTag}`, options)\r\n // .then(response => {\r\n // resolve(response);\r\n // })\r\n // .catch(error => {\r\n // reject(error);\r\n // });\r\n // }).catch(error => {\r\n // reject(error);\r\n // });\r\n // });\r\n // },\r\n};\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.isAdmin)?_c('CalendarHome'):_c('Dashboard')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=6f4b3ff8&\"\nimport script from \"./Home.vue?vue&type=script&lang=js&\"\nexport * from \"./Home.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icon.vue?vue&type=style&index=0&id=4838782f&lang=scss&scoped=true&\"","// import axios from 'axios';\r\n// import constants from '../constants';\r\n// import authService from '../auth/AuthService';\r\nimport moment from 'moment';\r\nimport { allocations } from './devdata';\r\nimport AppUsersClient from \"../clients/AppUsersClient\";\r\n\r\nconst resource = '/allocation';\r\n\r\nexport default {\r\n getForPeriod(startDate, endDate, teamFilter, forRegion) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.get(`${resource}/?fromdate=${moment(startDate).format('YYYY-MM-DD')}&todate=${moment(endDate).format('YYYY-MM-DD')}&forteam=${(teamFilter ? teamFilter : '')}&forRegion=${(forRegion ? forRegion : '')}`)\r\n .then(response => {\r\n resolve(response.data);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getAggregate: (startDate, endDate, teamFilter, forRegion) => AppUsersClient.get(`${resource}/aggregate`, {\r\n params: {\r\n fromDate: moment(startDate).format('YYYY-MM-DD'),\r\n toDate: moment(endDate).format('YYYY-MM-DD'),\r\n forTeam: teamFilter ? teamFilter : '',\r\n forRegion: forRegion ? forRegion : ''\r\n }\r\n }),\r\n getForParent: (allocationId) => AppUsersClient.get(`${resource}/byParentId/${allocationId}`),\r\n getMyAllocations(startDate, endDate, asEmployee) {\r\n return new Promise(function(resolve, reject) {\r\n const asEmployeeParam = (asEmployee) ? `&asEmployee=${asEmployee}` : '';\r\n AppUsersClient.get(`${resource}/getMyAllocations/?fromdate=${moment(startDate).format('YYYY-MM-DD')}&todate=${moment(endDate).format('YYYY-MM-DD')}${asEmployeeParam}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getAllocationDashboard(region) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.get(`${resource}/getAllocationDashboard/?region=${(region ? region : '')}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getTimeOff(fromDate, forGroup) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.get(`${resource}/getTimeOff/?fromdate=${moment(fromDate).format('YYYY-MM-DD')}&forGroup=${(forGroup ? forGroup : '')}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n create(\r\n allocationType,\r\n circleId,\r\n employeeId,\r\n startDate,\r\n allocationSpanInDays, \r\n groupId) {\r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.post(`${resource}`, {\r\n allocationType: allocationType,\r\n circleId: circleId,\r\n employeeId: employeeId,\r\n startDate: startDate,\r\n allocationSpanInDays: allocationSpanInDays,\r\n groupId: groupId\r\n })\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n update(allocation) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.put(`${resource}`, allocation)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n delete(allocationId, updateTag) { \r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.delete(`${resource}/${allocationId}?updateTag=${updateTag}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n split(allocation) {\r\n return new Promise(function(resolve, reject) {\r\n AppUsersClient.put(`${resource}/split`, allocation)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n getReplacementAllocationsCurrentWeek: () => AppUsersClient.get(`${resource}/replacementallocationscurrentweek`),\r\n // Get's allocation for my calendar for at given date and group\r\n getAllocationForGroupOnDate(date, forGroup, asEmployee) {\r\n const formattedDate = moment(date).format('YYYY-MM-DD');\r\n const asEmployeeParam = (asEmployee) ? `&asEmployee=${asEmployee}` : '';\r\n \r\n return new Promise(function(resolve, reject) { \r\n AppUsersClient.get(`${resource}/getAllocationForGroupOnDate/?fromdate=${formattedDate}&forUser=${(forGroup ? forGroup : '')}${asEmployeeParam}`)\r\n .then(response => {\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n};\r\n","import axios from 'axios';\r\nimport constants from '../constants';\r\n// import authService from '../auth/AuthService'; // acquire token from getters['oidcStore/oidcAccessToken']\r\nimport moment from 'moment';\r\nimport { forecasts } from './devdata';\r\n\r\nexport default {\r\n getFromDate(forecastKey, startDate, teamFilter) {\r\n return new Promise((resolve, reject) => { resolve(forecasts); });\r\n // return new Promise(function(resolve, reject) {\r\n // authService.acquireToken(['api://6b77f60e-8f2e-4d88-8f34-fb827da6f495/planning.read'])\r\n // .then(accessToken => {\r\n // const headers = { 'Authorization': `Bearer ${accessToken}` };\r\n // const options = {\r\n // headers\r\n // };\r\n // axios.get(`${constants.planningApiBasePath}/forecasts/?key=${forecastKey}&fromdate=${moment(startDate).format('YYYY-MM-DD')}&forteam=${(teamFilter ? teamFilter : '')}`, options)\r\n // .then(response => {\r\n // resolve(response);\r\n // })\r\n // .catch(error => {\r\n // reject(error);\r\n // });\r\n // }).catch(error => {\r\n // reject(error);\r\n // });\r\n // });\r\n },\r\n};\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dropdown.vue?vue&type=style&index=0&id=76a9cde2&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=style&index=0&id=8b0c5478&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppHeader.vue?vue&type=style&index=0&id=b4f8564e&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"replacementmonthlystatistics__report__view\"},[_c('div',{staticClass:\"box is-primary\"},[_c('h2',{staticClass:\"title is-3\"},[_vm._v(\" Overblikssiden \"),_c('b-select',{attrs:{\"expanded\":\"\"},on:{\"input\":_vm.filterRegions},model:{value:(_vm.regionFilter),callback:function ($$v) {_vm.regionFilter=$$v},expression:\"regionFilter\"}},_vm._l((_vm.regions),function(item,index){return _c('option',{key:index,domProps:{\"value\":item.id}},[_vm._v(\" \"+_vm._s(item.name)+\" \")])}),0)],1),_c('div',{staticClass:\"columns\"},[_c('div',{staticClass:\"column\"},[_c('h3',[_vm._v(\"Afløser anmodninger\")]),_c('section',{staticClass:\"personal-info\"},[_c('b-field',{staticClass:\"column\",attrs:{\"label\":\"Vis alle anmodninger\"}},[_c('div',{staticClass:\"fake-control\",staticStyle:{\"width\":\"200px\"}},[_c('b-switch',{attrs:{\"type\":\"is-primary\",\"size\":\"is-medium\"},model:{value:(_vm.showAll),callback:function ($$v) {_vm.showAll=$$v},expression:\"showAll\"}},[_vm._v(_vm._s(_vm.showAll ? 'Ja' : 'Nej'))])],1)])],1),_c('b-table',{attrs:{\"data\":_vm.filteredNotifications,\"loading\":_vm.loading,\"hoverable\":\"\"}},[_c('b-table-column',{attrs:{\"field\":\"employeeName\",\"label\":\"Ins.\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_vm._v(\" \"+_vm._s(_vm.getStateLabel(props.row.state))+\" \")]}}])}),_c('b-table-column',{attrs:{\"field\":\"employeeName\",\"label\":\"Ins.\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_vm._v(\" \"+_vm._s(props.row.employeeName)+\" \")]}}])}),_c('b-table-column',{attrs:{\"field\":\"replacementName\",\"label\":\"Afløser\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_vm._v(\" \"+_vm._s(props.row.allocation ? props.row.allocation.replacementName : '')+\" \")]}}])}),_c('b-table-column',{attrs:{\"field\":\"circleName\",\"label\":\"Kreds/Opg.\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_vm._v(\" \"+_vm._s(props.row.circleName)+\" \")]}}])}),_c('b-table-column',{attrs:{\"field\":\"date\",\"label\":\"Dato\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('a',{on:{\"click\":function($event){return _vm.openSidebar(props.row.allocation)}}},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(props.row.date))+\" \")])]}}])})],1)],1)]),_c('div',{staticClass:\"columns\"},[_c('div',{staticClass:\"column\"},[_c('h3',[_vm._v(\"Afløsere i dag\")]),_c('b-table',{attrs:{\"data\":_vm.filteredReplacements,\"loading\":_vm.loading,\"hoverable\":\"\"}},[_c('b-table-column',{attrs:{\"field\":\"employeeName\",\"label\":\"Ins.\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('a',{attrs:{\"href\":\"javascript:void(0)\"},on:{\"click\":function($event){return _vm.gotoCalenderReplacement(props.row)}}},[_vm._v(_vm._s(props.row.number))]),_vm._v(\" - \"+_vm._s(props.row.name)+\" \")]}}])}),_c('b-table-column',{attrs:{\"field\":\"type\",\"label\":\"Status i dag\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('div',{class:[_vm.colorMap(props.row, 0)]},[_vm._v(\" \"+_vm._s(_vm.replacementAllocationLabel(props.row.id, 0))+\" \")])]}}])}),_c('b-table-column',{attrs:{\"field\":\"who\",\"label\":\"Ins.\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_vm._v(\" \"+_vm._s(_vm.replacementAllocation(props.row.id) ? _vm.replacementAllocation(props.row.id).employeeName : '')+\" \")]}}])}),_c('b-table-column',{attrs:{\"field\":\"circleName\",\"label\":\"Kreds/Opgave\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_vm._v(\" \"+_vm._s(_vm.replacementAllocation(props.row.id) ? _vm.replacementAllocation(props.row.id).circleName : '')+\" \")]}}])}),_c('b-table-column',{attrs:{\"field\":\"circleName\",\"label\":\"Kommentar\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_vm._v(\" \"+_vm._s(_vm.replacementAllocation(props.row.id) ? _vm.replacementAllocation(props.row.id).comment : '')+\" \")]}}])}),_c('b-table-column',{attrs:{\"field\":\"type\",\"label\":\"Status i morgen\",\"cellClass\":\"table-tomorrow\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('div',{class:[_vm.colorMap(props.row, 1)]},[_vm._v(\" \"+_vm._s(_vm.replacementAllocationLabel(props.row.id, 1))+\" \")])]}}])}),_c('b-table-column',{attrs:{\"field\":\"who\",\"label\":\"Ins. i morgen/Opgave\",\"cellClass\":\"table-tomorrow\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_vm._v(\" \"+_vm._s(_vm.replacementAllocationAddDays(props.row.id, 1) ? _vm.replacementAllocationAddDays(props.row.id, 1).employeeName : '')+\" \")]}}])}),_c('b-table-column',{attrs:{\"field\":\"who\",\"label\":\"kreds/Opgave\",\"cellClass\":\"table-tomorrow\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_vm._v(\" \"+_vm._s(_vm.replacementAllocationAddDays(props.row.id, 1) ? _vm.replacementAllocationAddDays(props.row.id, 1).circleName : '')+\" \")]}}])})],1)],1)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n Overblikssiden\r\n \r\n \r\n \r\n {{ item.name }}\r\n \r\n \r\n \r\n \r\n \r\n Afløser anmodninger\r\n \r\n \r\n \r\n {{showAll ? 'Ja' : 'Nej'}}\r\n \r\n \r\n \r\n \r\n \r\n {{ getStateLabel(props.row.state) }} \r\n \r\n\r\n \r\n {{ props.row.employeeName }} \r\n \r\n \r\n {{ props.row.allocation ? props.row.allocation.replacementName : '' }} \r\n \r\n \r\n {{ props.row.circleName }} \r\n \r\n \r\n \r\n {{ props.row.date | formatDate }} \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Afløsere i dag\r\n \r\n\r\n \r\n {{ props.row.number }} - {{ props.row.name }} \r\n \r\n \r\n \r\n {{ replacementAllocationLabel(props.row.id, 0) }}\r\n \r\n \r\n \r\n {{ replacementAllocation(props.row.id) ? replacementAllocation(props.row.id).employeeName : '' }}\r\n \r\n \r\n {{ replacementAllocation(props.row.id) ? replacementAllocation(props.row.id).circleName : '' }}\r\n \r\n \r\n {{ replacementAllocation(props.row.id) ? replacementAllocation(props.row.id).comment : '' }}\r\n \r\n \r\n \r\n {{ replacementAllocationLabel(props.row.id, 1) }}\r\n \r\n \r\n \r\n {{ replacementAllocationAddDays(props.row.id, 1) ? replacementAllocationAddDays(props.row.id, 1).employeeName : '' }}\r\n \r\n \r\n {{ replacementAllocationAddDays(props.row.id, 1) ? replacementAllocationAddDays(props.row.id, 1).circleName : '' }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Dashboard.vue?vue&type=template&id=8b0c5478&scoped=true&\"\nimport script from \"./Dashboard.vue?vue&type=script&lang=js&\"\nexport * from \"./Dashboard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Dashboard.vue?vue&type=style&index=0&id=8b0c5478&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8b0c5478\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:(\"calendar-entry is-important \" + _vm.entryColor)},[_c('header',{staticClass:\"entry-date\"},[_vm._v(\" \"+_vm._s(_vm.headerText)+\" \")]),(_vm.entry.notificationCount > 0)?_c('b-icon',{staticClass:\"sticky-note\",attrs:{\"icon\":\"sticky-note\"}}):_vm._e(),_c('header'),(!!_vm.entry.important)?_c('header',{staticClass:\"entry-icon\"},[_c('b-icon',{staticClass:\"is-important\",attrs:{\"icon\":\"exclamation-circle\"}})],1):_vm._e(),_c('div',{staticClass:\"entry-label is-size-6\"},[_vm._v(\" \"+_vm._s(_vm.entryLabel)+\" \")]),_c('div',{staticClass:\"entry-comment is-size-6\"},[_vm._v(\" \"+_vm._s(_vm.entry.comment)+\" \")]),_c('div',{staticClass:\"entry-note is-size-6\"},[_vm._v(\" \"+_vm._s(_vm.circleLabel)+\" \"),(_vm.entry.nextDayEmployeeName)?_c('span',[_vm._v(\" - Omstilling til '\"+_vm._s(_vm.entry.nextDayEmployeeName)+\"'\")]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n {{ headerText }}\r\n \r\n 0\"\r\n icon=\"sticky-note\"\r\n >\r\n\r\n \r\n \r\n \r\n \r\n \r\n {{ entryLabel }}\r\n \r\n \r\n {{ entry.comment }}\r\n \r\n \r\n {{ circleLabel }}\r\n \r\n - Omstilling til '{{ entry.nextDayEmployeeName }}'\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalendarEntry.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalendarEntry.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CalendarEntry.vue?vue&type=template&id=34dfc51a&\"\nimport script from \"./CalendarEntry.vue?vue&type=script&lang=js&\"\nexport * from \"./CalendarEntry.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CalendarEntry.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalendarEntry.vue?vue&type=style&index=0&lang=scss&\"","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"userSelectColors-black\":\"#141414\",\"userSelectColors-charcoal\":\"#3c3c3c\",\"userSelectColors-blue\":\"#0099d9\",\"userSelectColors-red\":\"#ff5d5d\",\"userSelectColors-timeoff\":\"#5c5c5c\",\"userSelectColors-orange\":\"#ffc684\",\"userSelectColors-gray\":\"#c9c8c8\",\"userSelectColors-coolgray\":\"#4e4f50\",\"userSelectColors-ivory\":\"#e2ded0\",\"userSelectColors-bluegray\":\"#647c90\",\"userSelectColors-green\":\"#42b983\",\"userSelectColors-yellow\":\"#f6ff00\"};","export default {\r\n Model: 'Model',\r\n RequestReplacement: 'Request Replacement'\r\n}"],"sourceRoot":""}
\r\n {{entry.year}}-{{entry.month}} har {{entry.count}} dage der ikke er godkendt endnu.\r\n