{"version":3,"sources":["wwwroot/js/application/allinone.js","wwwroot/js/application/datatable.js","wwwroot/js/application/global.js","wwwroot/js/application/overtimedeclaration.js","wwwroot/js/application/parentalleave.js","wwwroot/js/application/powerbiembedded.js","wwwroot/js/application/pregnancyleave.js","wwwroot/js/application/profit2ad.js","wwwroot/js/application/signalr.js","wwwroot/js/application/validation.js"],"names":["allinone","$","initPieChart","chartData","json","JSON","parse","Chart","type","data","labels","Labels","datasets","Data","backgroundColor","options","title","display","text","align","tooltips","enabled","plugins","datalabels","color","anchor","font","weight","formatter","value","context","initBarChart","label","LineData","borderColor","fill","lineTension","BarData","BarOutsideSubscriptionData","layout","padding","left","right","top","bottom","scales","yAxes","stacked","ticks","beginAtZero","suggestedMax","Math","ceil","max","apply","concat","xAxes","mode","initSlider","hasPaidSubscription","slider","freeBalance","parseFloat","attr","maximumBalance","tooltip","step","precision","min","GetTicks","lock_to_ticks","on","event","validateValue","updateToolTip","animation","html","getToolTip","customClass","free","i","push","Array","from","Set","sort","nearestQuarter","val","totalBalance","paidBalance","freeBalanceText","parseInt","paidBalanceText","alertMessage","SetInfoMessage","newValue","minimumBalance","hide","SetSlider","show","initBundleTable","calculationLines","fn","dataTable","moment","tableDom","defaultOptions","datatable","defaultDatatableOptions","DataTable","dom","buttons","extend","className","exportOptions","modifier","page","pageLength","lengthMenu","language","columns","columnDefs","targets","render","full","meta","dutchDateFormat","order","removeClass","initSubscriptionTable","subscriptionLines","bindEditSubscriptionEvent","click","tab","onSubmit","button","global","DisableButton","ShowButtonSpinner","window","jQuery","defaults","column","orderSequence","_options$autoWidth","_options$processing","_options$serverSide","_options$pageLength","_options$lengthMenu","_options$stateSave","hideFooter","retrieve","autoWidth","processing","serverSide","stateSave","ajax","requestVerificationToken","length","__RequestVerificationToken","dutch","fnServerParams","forEach","items","index","initComplete","api","table","document","draw","anySearchable","flatten","toArray","some","aoColumns","searchable","rowFilter","appendTo","header","each","input","trim","initCompleteColumn","search","reset","append","e","preventDefault","dataTableSearch","find","enumeration","enum","addClass","multiselect","item","undefined","which","state","loaded","initCompletePost","columnDef","fixed","width","style","postInitComplete","info","rows","setTimeout","col","dataTableEnum","params","isArray","join","settings","class","icon","customFormat","dateFormat","locale","format","autoCloseSuccessAlert","delay","fadeOut","autoCloseInfoAlert","autoCloseWarningAlert","enablePopOver","popover","ShowSuccessAlert","alertContainer","message","autoCloseSuccess","arguments","showProgressIndicator","ShowAlert","ShowInfoAlert","ShowDangerAlert","success","successMessage","infoMessage","dangerMessage","container","alert","alertId","CreateUUIDv4","TemplateReplace","prepend","progressIndicator","progressInterval","progressIndicatorText","toggleClass","CloseAlert","clearInterval","ShowProgressIndicator","alertContainerId","ClearProgressIndicator","template","key","replace","RegExp","initModalDialog","callback","relatedTarget","load","validator","unobtrusive","onModalSuccess","modal","gridId","refreshTable","gridIds","split","id","url","area","controller","controllerAction","location","element","hasClass","reload","source","onFailure","_context$success","errorMessage","prop","EnableButton","spinner","HideButtonSpinner","initMasks","ready","applyDataMask","rebindValidators","$form","unbind","validate","c","r","random","v","toString","initChunckedDropzone","name","_options","init","dropzone","maxFiles","addRemoveLinks","dictDefaultMessage","dictResponseError","dictCancelUpload","dictRemoveFile","createImageThumbnails","parallelChunkUploads","chunking","forceChunking","retryChunks","files","xhr","chunk","Key","file","upload","uuid","Filename","TotalFileSize","size","ChunkSize","chunkSize","ChunkCount","totalChunkCount","ChunkIndex","CurrentChunkSize","dataBlock","addedFile","dot","setInterval","numberOfDots","repeat","addMethod","compare","overtimedeclaration","modes","submitFailed","_context$responseJSON","hideSubmitSpinner","responseJSON","showSubmitSpinner","roundTime","localDateTime","Date","timezoneOffset","getTimezoneOffset","minutes","getMinutes","roundedMinutes","round","setMinutes","setSeconds","setMilliseconds","toISOString","slice","flatpickr","localize","previous","control","contractId","cache","method","empty","InitSelect2","select2","amd","require","Search","oldRemoveChoice","prototype","searchRemoveChoice","$search","theme","dropdownParent","setFlatpickr","tag","isTime","selector","$selector","enableTime","noCalendar","minuteIncrement","time_24hr","onOpen","selectedDates","dateStr","instance","setDate","now","onChange","declarationRuleCountChanged","initDeclarationRulesTable","declarationRequestKey","hasRosterHours","orderFixed","dir","paging","sortable","responsivePriority","defaultContent","orderable","target","aHrefs","columnHeader","_iRecordsTotal","removeAttr","initDeclarationResultsTable","subscriptionKey","bindOnClicks","modalData","next","modalTemplate","getElementById","content","cloneNode","headerTemplate","rowTemplate","tbody","querySelector","beginEndHeaders","firstHeader","parentElement","insertBefore","results","result","createTd","node","td","createElement","tr","appendChild","row","start","end","displayDuration","displayPercentage","displayLeave","displayPaidOut","classList","add","setAttribute","innerHTML","div","outerHTML","count","weekdays","shorthand","longhand","months","firstDayOfWeek","weekAbbreviation","rangeSeparator","scrollTitle","toggleTitle","ordinal","nth","parentalleave","priorHoursDiv","parentalLeaveRequestKey","region","loadgrid","error","ajaxOptions","thrownError","onlyPaid","onlyUnpaid","leaveType","trigger","powerbiembedded","embedBoard","accessToken","embedUrl","embedBoardId","boardType","dataSetId","models","config","toLowerCase","tokenType","TokenType","Embed","extensions","commands","visualContextMenu","visualOptionsMenu","extendConfig","datasetBinding","datasetId","boardContainer","report","powerbi","embed","command","a","b","d","f","g","detail","pages","getPages","updateFilters","FiltersOperations","RemoveAll","visuals","getVisuals","j","visual","height","parent","css","pregnancyleave","clickedSubmitButton","calculateButtonClicked","pregnancyLeaveRequestKey","loadStartDateRange","bindExpectedDeliveryDateEvent","bindRegionEvent","bindInputEvent","initPartial","initAbsencesTable","calculateEvent","submitEvent","evt","get","done","jqXHR","expectedDeliveryDate","multipleBirths","rangestartdate","rangeenddate","submitRequest","showButtonSpinner","hideButtonSpinner","refresh","profit2ad","locationAD","profitEnvironmentKey","exclusions","maxGuidIndex","types","boolTranslation","initFileUpload","bindDefinitionsEvent","bindDossierItemTypeEvent","bindGroupEvents","bindDefinitionEvents","bindTabs","querySelectorAll","el","addEventListener","destroyTable","hash","createTable","tabId","initEmployersTable","initFieldsTable","initGroupsTable","destroy","tableId","searchUrl","createAction","deleteAction","firstColumnTitle","detailsAction","deferLoading","cell","initLogTable","eorderable","blur","initSearchDates","initDate","_dateArray$","_ref","_dateArray$2","dateString","dateArray","date","getDate","padStart","getMonth","getFullYear","_dateArray$3","_ref2","_dateArray$4","_dateArray$5","_dateArray$6","getHours","sourceFilters","action","substring","URL","origin","$this","children","clientKey","dossierItemTypeId","list","description","initSearchBar","grid","closest","submit","currentPage","addGroup","addLine","splice","redraw","profitName","initGroup","groupKey","currentGroup","groupIndex","controlIndex","andGroup","guidIndex","getGuidIndex","exclusionLabel","createFromTemplate","exclusion","templateSource","replaceAll","newBlock","obj","is","guid","generateGuid","newData","link","first","lastIndex","last","addFormat","removeFormat","updateAllIdGroupIds","itemToClone","toggle","root","newItem","clone","updateIds","itemToRemove","remove","updateIdGroupIds","maxIndex","clearInput","inputs","signalr","baseUrl","connection","initialEvents","signalR","HubConnectionBuilder","withUrl","configureLogging","LogLevel","Information","build","bindSignalrOnCloseEvent","addToGroup","initializeConnection","then","err","console","log","onclose","getConnectionId","HubConnectionState","Connected","connectionId","groupName","func","invoke","hub","connectionState","connected","removeFromGroup","adapters","rules","messages","exec","extension","inArray","methods","number","optional","test","parameters","dependentproperty","dependentvalue","controlType","actualvalue","toLocaleLowerCase","isValid","required","call"],"mappings":"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","file":"application.min.js","sourcesContent":["/** jQuery JavaScript for allinone functionality **/\r\n(function (allinone, $) {\r\n\r\n /**\r\n * Initializes the pie chart\r\n */\r\n allinone.initPieChart = function (chartData) {\r\n var json = JSON.parse(chartData);\r\n new Chart($(\"#BalanceChart\"), {\r\n type: \"pie\",\r\n data: {\r\n labels: json.Labels,\r\n datasets: [\r\n {\r\n data: json.Data,\r\n backgroundColor: [\"#073F21\", \"#1F284E\", \"#7A8E8D\"]\r\n }\r\n ]\r\n },\r\n options: {\r\n title: {\r\n display: true,\r\n text: \"Uren geldig t/m\",\r\n align: \"center\"\r\n\r\n },\r\n tooltips: {\r\n enabled: false\r\n },\r\n plugins: {\r\n datalabels: {\r\n color: \"white\",\r\n anchor: \"end\",\r\n align: \"start\",\r\n font: {\r\n weight: \"bold\"\r\n },\r\n formatter: function (value, context) {\r\n return value !== 0 ? value + \" uur\" : \"\"\r\n }\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Initializes the bar chart\r\n */\r\n allinone.initBarChart = function (chartData) {\r\n var json = JSON.parse(chartData);\r\n new Chart($(\"#PastMonthsChart\"), {\r\n type: \"bar\",\r\n data: {\r\n datasets: [\r\n {\r\n label: \"Aantal uur abonnement\",\r\n data: json.LineData,\r\n borderColor: \"#4A4A4A\",\r\n backgroundColor: \"#4A4A4A\",\r\n fill: false,\r\n type: \"line\",\r\n lineTension: 0\r\n },\r\n {\r\n label: \"Aantal uur verbruikt\",\r\n data: json.BarData,\r\n backgroundColor: \"#50A182\"\r\n },\r\n {\r\n label: \"Buiten abonnement verbruikt\",\r\n data: json.BarOutsideSubscriptionData,\r\n backgroundColor: \"#E4E8E8\"\r\n }\r\n ],\r\n labels: json.Labels\r\n\r\n },\r\n options: {\r\n layout: {\r\n padding: {\r\n left: 10,\r\n right: 0,\r\n top: 0,\r\n bottom: 0\r\n }\r\n },\r\n scales: {\r\n yAxes: [\r\n {\r\n stacked: true,\r\n ticks: {\r\n beginAtZero: true,\r\n suggestedMax: Math.ceil(Math.max.apply(null, json.LineData.concat(json.BarData)) * 1.1)\r\n }\r\n }\r\n ],\r\n xAxes: [\r\n {\r\n stacked: true\r\n }\r\n ]\r\n },\r\n tooltips: {\r\n mode: \"index\"\r\n },\r\n plugins: {\r\n datalabels: { display: false }\r\n }\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Initializes the slider\r\n */\r\n allinone.initSlider = function (hasPaidSubscription) {\r\n let slider = $(\".slider-aio > #subscription-amount-slider\");\r\n\r\n let freeBalance = parseFloat(slider.attr(\"data-slider-aiofree\"));\r\n let maximumBalance = parseFloat(slider.attr(\"data-slider-aiomax\"));\r\n\r\n slider.slider({\r\n tooltip: 'always',\r\n step: 0.25,\r\n precision: 2,\r\n min: 0,\r\n max: maximumBalance,\r\n ticks: GetTicks(freeBalance, maximumBalance),\r\n lock_to_ticks: true\r\n }).on(\"change\", (event) => { validateValue(event); updateToolTip(event); })\r\n .data(\"slider\");\r\n\r\n $('[data-toggle=\"tooltip\"]').tooltip({ animation: true, html: true, title: getToolTip(), customClass: \"all-in-one-tooltip\" });\r\n\r\n // Gets the valid values for the slider\r\n function GetTicks(free, max) {\r\n let ticks = [0, max];\r\n for (let i = 0; i < max; i++) {\r\n ticks.push(i + free);\r\n }\r\n return Array.from(new Set(ticks.sort()));\r\n }\r\n\r\n function updateToolTip(event) {\r\n $('[data-toggle=\"tooltip\"]').tooltip('dispose').tooltip({ animation: true, html: true, title: getToolTip(), customClass: \"all-in-one-tooltip\" });\r\n }\r\n\r\n function getToolTip() {\r\n let slider = $(\".slider-aio > #subscription-amount-slider\");\r\n\r\n let nearestQuarter = $('#nearestQuarter').val();\r\n let freeBalance = parseFloat(slider.attr(\"data-slider-aiofree\"));\r\n let totalBalance = parseFloat(slider.attr(\"data-value\"));\r\n let paidBalance = totalBalance - freeBalance;\r\n\r\n // parse the floats to an int so we don't have to mind any precision\r\n let freeBalanceText = parseInt(freeBalance) === 1.0 ? `${freeBalance} gratis uur` : `${freeBalance} gratis uren`\r\n let paidBalanceText = parseInt(paidBalance) === 1.0 ? `${paidBalance} betaalde uur` : `${paidBalance} betaalde uren`\r\n\r\n return `Per ${nearestQuarter} bundel aanpassen naar: `;\r\n }\r\n\r\n // Validates if the value is within the allowed range\r\n function validateValue(event) {\r\n let alertMessage = $(\".slider-aio > .alert.alert-aio\");\r\n let freeBalance = parseFloat(slider.attr(\"data-slider-aiofree\"));\r\n\r\n if (hasPaidSubscription === \"False\") {\r\n SetInfoMessage(\"Er is geen betaald abonnement aanwezig. Neem contact op met jouw contactpersoon.\", freeBalance);\r\n return;\r\n }\r\n\r\n let newValue = event.value.newValue;\r\n let minimumBalance = parseFloat(slider.attr(\"data-slider-aiomin\"));\r\n let maximumBalance = parseFloat(slider.attr(\"data-slider-aiomax\"));\r\n\r\n if (newValue < minimumBalance) {\r\n if (!(freeBalance < minimumBalance) && newValue < minimumBalance) {\r\n SetInfoMessage(\"Je kunt niet minder uren afnemen dan het aantal gratis uren.\", freeBalance);\r\n }\r\n else if (newValue < minimumBalance) {\r\n SetInfoMessage(\"Wil je lager dan het minimum neem dan contact op met jouw contactpersoon.\", minimumBalance);\r\n }\r\n }\r\n else if (newValue >= (maximumBalance + freeBalance)) {\r\n SetInfoMessage(\"Wil je hoger dan het maximum neem dan contact op met jouw contactpersoon.\", maximumBalance + freeBalance);\r\n }\r\n else {\r\n alertMessage.hide(\"fast\");\r\n SetSlider(newValue);\r\n }\r\n\r\n function SetInfoMessage(text, value) {\r\n alertMessage.text(text);\r\n alertMessage.show(\"fast\");\r\n SetSlider(value);\r\n }\r\n\r\n function SetSlider(value) {\r\n slider.slider('setValue', value);\r\n $(\"#modalNewHours\").text(value);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Init the datatables\r\n */\r\n allinone.initBundleTable = function (calculationLines) {\r\n $.fn.dataTable.moment('DD-MM-YYYY HH:mm');\r\n let tableDom = \"<'row buttons-row' B><'row'<'col-sm-12'tr>><'row'<'col-sm-12 col-md-6 d-flex'l<'px-2'i>><'col-sm-12 col-md-6 dataTables_pager'p>>\";\r\n let defaultOptions = datatable.defaultDatatableOptions();\r\n $('#allInOneBundleTable').DataTable({\r\n dom: tableDom,\r\n data: calculationLines,\r\n buttons: [\r\n {\r\n extend: 'excel',\r\n text: 'Exporteren',\r\n className: 'btn btn-primary',\r\n exportOptions: {\r\n modifier: {\r\n page: 'current'\r\n }\r\n }\r\n }\r\n ],\r\n pageLength: defaultOptions.pageLength,\r\n lengthMenu: defaultOptions.lengthMenu,\r\n language: defaultOptions.language,\r\n columns: [\r\n {\r\n title: 'Datum',\r\n data: 'date'\r\n },\r\n {\r\n title: 'Medewerker',\r\n data: 'employeeName'\r\n },\r\n {\r\n title: 'Aantal',\r\n data: 'amount'\r\n },\r\n {\r\n title: 'Omschrijving',\r\n data: 'calculationDescription'\r\n }\r\n ],\r\n columnDefs: [\r\n {\r\n targets: 0,\r\n render: function (data, type, full, meta) {\r\n return datatable.dutchDateFormat(data, \"DD-MM-YYYY HH:mm\")\r\n }\r\n }\r\n ],\r\n order: [[0, 'desc']]\r\n });\r\n\r\n // Remove dt-button class from the buttons\r\n $('.dt-button').removeClass('dt-button');\r\n }\r\n\r\n allinone.initSubscriptionTable = function (subscriptionLines) {\r\n $.fn.dataTable.moment('DD-MM-YYYY HH:mm');\r\n let tableDom = \"<'row'<'col-sm-12'tr>><'row'<'col-sm-12 col-md-6 d-flex'l<'px-2'i>><'col-sm-12 col-md-6 dataTables_pager'p>>\";\r\n let defaultOptions = datatable.defaultDatatableOptions();\r\n $('#allInOneSubscriptionTable').DataTable({\r\n dom: tableDom,\r\n data: subscriptionLines,\r\n pageLength: defaultOptions.pageLength,\r\n lengthMenu: defaultOptions.lengthMenu,\r\n language: defaultOptions.language,\r\n columns: [\r\n {\r\n title: 'Omschrijving',\r\n data: 'description'\r\n },\r\n {\r\n title: 'Aantal',\r\n data: 'amount'\r\n },\r\n {\r\n title: 'Begindatum',\r\n data: 'startDate'\r\n },\r\n {\r\n title: 'Einddatum',\r\n data: 'endDate'\r\n }\r\n ],\r\n columnDefs: [\r\n {\r\n targets: [2, 3],\r\n render: function (data, type, full, meta) {\r\n if(data == null) {\r\n return '';\r\n }\r\n\r\n return datatable.dutchDateFormat(data, \"DD-MM-YYYY\")\r\n }\r\n }\r\n ],\r\n order: [[3, 'desc']]\r\n });\r\n }\r\n\r\n /**\r\n * Bind edit subscription event\r\n */\r\n allinone.bindEditSubscriptionEvent = function () {\r\n $(\"#editSubscription\").click(function () {\r\n $('.nav-tabs a[href=\"#subscription\"]').tab('show');\r\n });\r\n }\r\n\r\n allinone.onSubmit = function (button) {\r\n global.DisableButton(button);\r\n global.ShowButtonSpinner(button);\r\n }\r\n\r\n}(window.allinone = window.allinone || {}, jQuery));\r\n","(function (datatable, $) {\r\n /**\r\n * Default DataTable options that can be overriden by the param options\r\n */\r\n\r\n // DataTables only allow ascending and descending sorting. Unsorting is prevented now.\r\n DataTable.defaults.column.orderSequence = ['asc', 'desc'];\r\n\r\n datatable.defaultDatatableOptions = function (options) {\r\n let tableDom = \"<'row'<'col-sm-12'tr>>\";\r\n if (options?.hideFooter !== true) {\r\n tableDom += \"<'row'<'col-sm-12 col-md-9 d-flex'l<'px-2'i>><'col-sm-12 col-md-3 dataTables_pager'p>>\"\r\n }\r\n\r\n let defaultOptions = {\r\n dom: tableDom,\r\n retrieve: true,\r\n autoWidth: options?.autoWidth ?? false,\r\n processing: options?.processing ?? false,\r\n serverSide: options?.serverSide ?? true,\r\n pageLength: options?.pageLength ?? 25,\r\n lengthMenu: options?.lengthMenu ?? [25, 50, 100],\r\n stateSave: options?.stateSave ?? true,\r\n ajax: {\r\n type: 'POST',\r\n data: function (data) {\r\n let requestVerificationToken = $(\"[name='__RequestVerificationToken']\");\r\n\r\n if (requestVerificationToken.length > 0)\r\n data.__RequestVerificationToken = requestVerificationToken.val();\r\n }\r\n },\r\n language: dutch,\r\n fnServerParams: function (data) {\r\n data['order'].forEach(function (items, index) {\r\n data['order'][index]['column'] = data['columns'][items.column]['name'];\r\n });\r\n },\r\n initComplete: function () {\r\n let api = this.api();\r\n let table = api.table();\r\n\r\n $(document).on(\"click\", \".nav-link\", function () {\r\n table.draw();\r\n });\r\n\r\n let anySearchable = api.columns().flatten().toArray().some(index => api.column(index).context[0].aoColumns[index].searchable);\r\n if (anySearchable) {\r\n let rowFilter = $('').appendTo($(table.header()));\r\n\r\n api.columns().flatten().each(function (index) {\r\n let input = null;\r\n let column = api.column(index);\r\n let title = $(column.header()).text().trim();\r\n\r\n if (options?.initCompleteColumn) {\r\n input = options.initCompleteColumn(column);\r\n }\r\n\r\n if (input == null) {\r\n switch (title) {\r\n case 'Acties':\r\n case '':\r\n let search = $(``);\r\n let reset = $(``);\r\n $('').append(search).append(reset).appendTo(rowFilter);\r\n\r\n $(search).on('click', function (e) {\r\n e.preventDefault();\r\n datatable.dataTableSearch(rowFilter, table);\r\n });\r\n\r\n $(reset).on('click', function (e) {\r\n e.preventDefault();\r\n $(rowFilter).find('.datatable-input').each(function (i) {\r\n $(this).val('');\r\n table.column($(this).data('col-index')).search('', false, false);\r\n });\r\n table.draw();\r\n });\r\n break;\r\n default:\r\n let searchable = column.context[0].aoColumns[index].searchable;\r\n if (searchable) {\r\n let enumeration = column.context[0].aoColumns[index].enum;\r\n if (enumeration != null) {\r\n input = $('`);\r\n input.on('keypress', function (e) {\r\n if (e.which === 13) {\r\n datatable.dataTableSearch(rowFilter, table);\r\n return false;\r\n }\r\n });\r\n }\r\n\r\n // Restore state saved values\r\n let state = this.state.loaded();\r\n if (state) {\r\n let val = state.columns[index];\r\n input.val(val.search.search);\r\n }\r\n\r\n break;\r\n }\r\n }\r\n }\r\n\r\n if (title !== '' && title !== 'Acties') {\r\n $(input).appendTo($('').appendTo(rowFilter));\r\n }\r\n\r\n if (options?.initCompletePost)\r\n options.initCompletePost();\r\n });\r\n }\r\n\r\n if (options?.columnDefs) {\r\n options.columnDefs.forEach(function (columnDef) {\r\n if (columnDef.fixed === true) {\r\n let targets = [];\r\n targets.push(columnDef.targets);\r\n\r\n targets.forEach(function (index) {\r\n let column = api.columns(index);\r\n let width = column.header()[0].style['width'];\r\n\r\n if (width !== undefined && width !== null) {\r\n column.header()[0].style['max-width'] = width;\r\n column.header()[0].style['min-width'] = width;\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n $(\"th\", table.header()).addClass(\"pb-2\")\r\n\r\n if (defaultOptions.postInitComplete !== undefined) {\r\n defaultOptions.postInitComplete();\r\n }\r\n\r\n if (table.page.info().page > 0 && table.rows()[0].length == 0) {\r\n // Wait 1 millisecond for this init function to finish, else table doesn't update rows\r\n window.setTimeout(function () {\r\n datatable.dataTableSearch(rowFilter, table)\r\n }, 1);\r\n }\r\n },\r\n postInitComplete: function () {\r\n // $('select[multiple]').select2({\r\n // tags: false,\r\n // selectionCssClass: 'form-select form-select-sm datatable-input'\r\n // });\r\n }\r\n };\r\n\r\n $.extend(true, defaultOptions, options);\r\n\r\n if (defaultOptions.columnDefs) {\r\n defaultOptions.columnDefs = defaultOptions.columnDefs.concat([\r\n {\r\n targets: \"_all\",\r\n render: function (data, type, full, meta) {\r\n if (defaultOptions.columns[meta.col].enum !== undefined) {\r\n return datatable.dataTableEnum(data, meta);\r\n }\r\n return datatable.display(data);\r\n }\r\n }\r\n ]);\r\n }\r\n\r\n return defaultOptions;\r\n }\r\n\r\n /**\r\n * Method that is used for searching for each column\r\n */\r\n datatable.dataTableSearch = function (rowFilter, table) {\r\n let params = {};\r\n\r\n $(rowFilter).find('.datatable-input').each(function () {\r\n let i = $(this).data('col-index');\r\n if (params[i]) {\r\n params[i] += '|' + $(this).val();\r\n } else {\r\n params[i] = $(this).val();\r\n }\r\n });\r\n\r\n $.each(params, function (i, val) {\r\n if (Array.isArray(val)) {\r\n val = val.join(';');\r\n }\r\n\r\n // Apply search params to datatable\r\n table.column(i).search(val ? val : '', false, false);\r\n });\r\n\r\n table.draw();\r\n }\r\n\r\n /**\r\n * Method that renders the enum for an icon or a label\r\n */\r\n datatable.dataTableEnum = function (data, meta) {\r\n let column = meta.settings.aoColumns[meta.col];\r\n if (!column)\r\n return datatable.display(data);\r\n\r\n let enumeration = column.enum;\r\n if (!enumeration)\r\n return datatable.display(data);\r\n\r\n let value = enumeration.find((item) => item.index === data || item.value === data);\r\n if (value) {\r\n if (value.class) {\r\n if (value.icon === true)\r\n return '';\r\n else\r\n return '' + datatable.display(value.title) + '';\r\n }\r\n return datatable.display(value.title);\r\n }\r\n return datatable.display(data);\r\n }\r\n\r\n /**\r\n * Wrapper for displaying a value\r\n */\r\n datatable.display = function (data) {\r\n return $.fn.dataTable.render.text().display(data);\r\n }\r\n\r\n /**\r\n * Method to format date time values\r\n * By default use DD-MM-YYYY HH:mm:ss\r\n */\r\n datatable.dutchDateFormat = function (data, customFormat) {\r\n let dateFormat = customFormat ?? \"DD-MM-YYYY HH:mm:ss\";\r\n if (data !== undefined && data !== \"0001-01-01T00:00:00\")\r\n return moment(data).locale(\"nl\").format(dateFormat);\r\n else\r\n return \"\";\r\n }\r\n\r\n}(window.datatable = window.datatable || {}, $));\r\n\r\nvar dutch =\r\n{\r\n \"lengthMenu\": \"_MENU_ resultaten weergeven\",\r\n \"zeroRecords\": \"Geen resultaten gevonden\",\r\n \"infoEmpty\": \"Geen resultaten om weer te geven\",\r\n \"search\": \"Zoeken:\",\r\n \"emptyTable\": \"Geen resultaten aanwezig in de tabel\",\r\n \"infoThousands\": \".\",\r\n \"loadingRecords\": \"Een moment geduld aub - bezig met laden...\",\r\n \"paginate\": {\r\n \"first\": \"Eerste\",\r\n \"last\": \"Laatste\",\r\n \"next\": \"Volgende\",\r\n \"previous\": \"Vorige\"\r\n },\r\n \"aria\": {\r\n \"sortAscending\": \": activeer om kolom oplopend te sorteren\",\r\n \"sortDescending\": \": activeer om kolom aflopend te sorteren\"\r\n },\r\n \"autoFill\": {\r\n \"fill\": \"Vul alle cellen met %d<\\/i>\",\r\n \"fillHorizontal\": \"Vul cellen horizontaal\",\r\n \"fillVertical\": \"Vul cellen verticaal\",\r\n \"cancel\": \"Annuleren\",\r\n \"info\": \"Voorbeeld automatisch aanvullen info\"\r\n },\r\n \"buttons\": {\r\n \"colvis\": \"Kolom zichtbaarheid\",\r\n \"colvisRestore\": \"Herstel zichtbaarheid\",\r\n \"copy\": \"Kopieer\",\r\n \"copySuccess\": {\r\n \"1\": \"1 regel naar klembord gekopieerd\",\r\n \"_\": \"%ds regels naar klembord gekopieerd\"\r\n },\r\n \"copyTitle\": \"Kopieer naar klembord\",\r\n \"csv\": \"CSV\",\r\n \"excel\": \"Excel\",\r\n \"pageLength\": {\r\n \"-1\": \"Toon alle regels\",\r\n \"_\": \"Toon %d regels\",\r\n \"1\": \"Toon 1 rij\"\r\n },\r\n \"pdf\": \"PDF\",\r\n \"print\": \"Print\",\r\n \"copyKeys\": \"Klik ctrl of u2318 + C om de tabeldata to kopi�ren naar je klembord. Om te annuleren klik hier of klik op escape.\",\r\n \"collection\": \"Verzameling\",\r\n \"createState\": \"Maak staat\",\r\n \"removeAllStates\": \"Verwijder alle\",\r\n \"removeState\": \"Verwijder\",\r\n \"renameState\": \"Hernoem\",\r\n \"savedStates\": \"Opgeslagen\",\r\n \"updateState\": \"Bijwerken\",\r\n \"stateRestore\": \"Preset %d\"\r\n },\r\n \"processing\": \"Verwerken...\",\r\n \"decimal\": \",\",\r\n \"searchBuilder\": {\r\n \"add\": \"Toevoegen\",\r\n \"clearAll\": \"Verwijder alles\",\r\n \"condition\": \"Conditie\",\r\n \"data\": \"Data\",\r\n \"deleteTitle\": \"Verwijder\",\r\n \"value\": \"Waarde\",\r\n \"conditions\": {\r\n \"date\": {\r\n \"after\": \"Na\",\r\n \"before\": \"Voor\",\r\n \"between\": \"Tussen\",\r\n \"empty\": \"Leeg\",\r\n \"equals\": \"Gelijk aan\",\r\n \"not\": \"Niet\",\r\n \"notBetween\": \"Niet tussen\",\r\n \"notEmpty\": \"Niet leeg\"\r\n },\r\n \"number\": {\r\n \"between\": \"Tussen\",\r\n \"empty\": \"Leeg\",\r\n \"equals\": \"Gelijk aan\",\r\n \"gt\": \"Groter dan\",\r\n \"gte\": \"Groter dan of gelijk aan\",\r\n \"lt\": \"Kleiner dan\",\r\n \"lte\": \"kleiner dan of gelijk aan\",\r\n \"not\": \"Niet\",\r\n \"notBetween\": \"Niet tussen\",\r\n \"notEmpty\": \"Niet leeg\"\r\n },\r\n \"string\": {\r\n \"contains\": \"Bevat\",\r\n \"empty\": \"Leeg\",\r\n \"endsWith\": \"Eindigt met\",\r\n \"equals\": \"Gelijk aan\",\r\n \"not\": \"Niet\",\r\n \"notEmpty\": \"Niet leeg\",\r\n \"startsWith\": \"Start met\",\r\n \"notContains\": \"Zonder\",\r\n \"notEndsWith\": \"Eindigt niet met\",\r\n \"notStartsWith\": \"Begint niet met\"\r\n },\r\n \"array\": {\r\n \"equals\": \"Gelijk aan\",\r\n \"empty\": \"Leeg\",\r\n \"contains\": \"Bevat\",\r\n \"not\": \"Niet\",\r\n \"notEmpty\": \"Niet leeg\",\r\n \"without\": \"Zonder\"\r\n }\r\n },\r\n \"logicAnd\": \"En\",\r\n \"logicOr\": \"Of\",\r\n \"button\": {\r\n \"0\": \"Zoekwizard\",\r\n \"_\": \"Zoekwizard (%d)\"\r\n },\r\n \"leftTitle\": \"Afwijkende criteria\",\r\n \"rightTitle\": \"Criteria inspringen\",\r\n \"title\": {\r\n \"0\": \"Zoekwizard\",\r\n \"_\": \"Zoekwizard (%d) \"\r\n }\r\n },\r\n \"searchPanes\": {\r\n \"clearMessage\": \"Alles leegmaken\",\r\n \"collapse\": {\r\n \"0\": \"Zoekpanelen\",\r\n \"_\": \"Zoekpanelen (%d)\"\r\n },\r\n \"count\": \"{total}\",\r\n \"countFiltered\": \"{shown} ({total})\",\r\n \"emptyPanes\": \"Geen zoekpanelen\",\r\n \"loadMessage\": \"Zoekpanelen laden...\",\r\n \"title\": \"%d filters actief\",\r\n \"showMessage\": \"Alles weergeven\",\r\n \"collapseMessage\": \"Instorten\"\r\n },\r\n \"select\": {\r\n \"cells\": {\r\n \"1\": \"1 cel geselecteerd\",\r\n \"_\": \"%d cellen geselecteerd\"\r\n },\r\n \"columns\": {\r\n \"1\": \"1 kolom geselecteerd\",\r\n \"_\": \"%d kolommen geselecteerd\"\r\n },\r\n \"rows\": {\r\n \"1\": \"1 rij geselecteerd\",\r\n \"_\": \"%d rijen geselecteerd\"\r\n }\r\n },\r\n \"thousands\": \".\",\r\n \"info\": \"_START_ tot _END_ van _TOTAL_ resultaten\",\r\n \"infoFiltered\": \" (gefilterd uit _MAX_ resultaten)\",\r\n \"datetime\": {\r\n \"previous\": \"Vorige\",\r\n \"next\": \"Volgende\",\r\n \"hours\": \"Uur\",\r\n \"minutes\": \"Minuut\",\r\n \"seconds\": \"Seconde\",\r\n \"unknown\": \"Onbekend\",\r\n \"amPm\": [\r\n \"vm\",\r\n \"nm\"\r\n ],\r\n \"weekdays\": [\r\n \"Zo\",\r\n \"Ma\",\r\n \"Di\",\r\n \"Wo\",\r\n \"Do\",\r\n \"Vr\",\r\n \"Za\"\r\n ],\r\n \"months\": [\r\n \"Januari\",\r\n \"Februari\",\r\n \"Maart\",\r\n \"April\",\r\n \"Mei\",\r\n \"Juni\",\r\n \"Juli\",\r\n \"Augustus\",\r\n \"September\",\r\n \"Oktober\",\r\n \"November\",\r\n \"December\"\r\n ]\r\n },\r\n \"editor\": {\r\n \"close\": \"Sluiten\",\r\n \"create\": {\r\n \"button\": \"Nieuw\",\r\n \"title\": \"Voeg nieuwe gegevens toe\",\r\n \"submit\": \"Toevoegen\"\r\n },\r\n \"edit\": {\r\n \"button\": \"Wijzigen\",\r\n \"title\": \"Wijzig gegevens\",\r\n \"submit\": \"Wijzigen\"\r\n },\r\n \"remove\": {\r\n \"button\": \"Verwijderen\",\r\n \"title\": \"Verwijder\",\r\n \"submit\": \"Verwijder\",\r\n \"confirm\": {\r\n \"_\": \"Bent u zeker dat u %d rijen wil verwijderen?\",\r\n \"1\": \"Bent u zeker dat u 1 rij wil verwijderen?\"\r\n }\r\n },\r\n \"error\": {\r\n \"system\": \"Er is een fout gebeurd\"\r\n },\r\n \"multi\": {\r\n \"title\": \"Meerdere waarden\",\r\n \"info\": \"De geselecteerde items bevatten verschillende waarden voor deze invoer. Om alle items voor deze invoer op dezelfde waarde te zetten, klik of tik hier, zoniet zullen de individuele waarden behouden blijven.\",\r\n \"restore\": \"Wijzigingen ongedaan maken\",\r\n \"noMulti\": \"Deze invoer kan individueel gewijzigd worden, maar niet als deel van een groep.\"\r\n }\r\n },\r\n \"stateRestore\": {\r\n \"creationModal\": {\r\n \"button\": \"Aanmaken\",\r\n \"columns\": {\r\n \"search\": \"Zoeken in kolom\",\r\n \"visible\": \"Kolom tonen\"\r\n },\r\n \"name\": \"Naam\",\r\n \"order\": \"Sorteervolgorde\",\r\n \"paging\": \"Paginering\",\r\n \"scroller\": \"Meescrollen\",\r\n \"search\": \"Zoeken\",\r\n \"searchBuilder\": \"SearchBuilder\",\r\n \"select\": \"Selecteer\",\r\n \"title\": \"Nieuwe staat aanmaken\",\r\n \"toggleLabel\": \"Bevat\"\r\n },\r\n \"duplicateError\": \"Staat bestaat al\",\r\n \"emptyError\": \"Naam kan niet leeg zijn\",\r\n \"emptyStates\": \"Geen beschikbare staten\",\r\n \"removeConfirm\": \"Weet u zeker dat u deze wil verwijderen:\",\r\n \"removeError\": \"De verwijdering is mislukt\",\r\n \"removeJoiner\": \"en\",\r\n \"removeSubmit\": \"Verwijder\",\r\n \"removeTitle\": \"Verwijder staat\",\r\n \"renameButton\": \"Hernoem\",\r\n \"renameLabel\": \"Nieuwe naam voor staat\",\r\n \"renameTitle\": \"Hernoem staat\"\r\n }\r\n}\r\n","/** jQuery JavaScript for global functionality **/\r\n(function (global, $) {\r\n\r\n moment.locale('nl');\r\n\r\n /** Close a success alert automaticly after a specified time */\r\n global.autoCloseSuccessAlert = function (delay) {\r\n window.setTimeout(function () { $(\".alert-success\").fadeOut(); }, delay);\r\n }\r\n\r\n /** Close an info alert automaticly after a specified time */\r\n global.autoCloseInfoAlert = function (delay) {\r\n window.setTimeout(function () { $(\".alert-info\").fadeOut(); }, delay);\r\n }\r\n\r\n /** Close a warning alert automaticly after a specified time */\r\n global.autoCloseWarningAlert = function (delay) {\r\n window.setTimeout(function () { $(\".alert-warning\").fadeOut(); }, delay);\r\n }\r\n\r\n /** Enable popover */\r\n global.enablePopOver = function () {\r\n $('[data-bs-toggle=\"popover\"]').popover();\r\n };\r\n\r\n /**\r\n *\r\n * @param {any} alertContainer the alert container to use for the alert HTML\r\n * @param {any} message the message to use\r\n * @param {any} autoCloseSuccess flag indicating whether to auto close the alert if it is a success message\r\n * @param {any} showProgressIndicator flag indicating whether to show a progress indicator in the message\r\n */\r\n global.ShowSuccessAlert = function (alertContainer, message, autoCloseSuccess = true, showProgressIndicator = false) {\r\n return global.ShowAlert(true, alertContainer, message, undefined, undefined, autoCloseSuccess, showProgressIndicator);\r\n };\r\n\r\n /**\r\n *\r\n * @param {any} alertContainer the alert container to use for the alert HTML\r\n * @param {any} message the message to use\r\n * @param {any} autoCloseSuccess flag indicating whether to auto close the alert if it is a success message\r\n * @param {any} showProgressIndicator flag indicating whether to show a progress indicator in the message\r\n */\r\n global.ShowInfoAlert = function (alertContainer, message, autoCloseSuccess = true, showProgressIndicator = false) {\r\n return global.ShowAlert(undefined, alertContainer, undefined, message, undefined, autoCloseSuccess, showProgressIndicator);\r\n };\r\n\r\n /**\r\n *\r\n * @param {any} alertContainer the alert container to use for the alert HTML\r\n * @param {any} message the message to use\r\n * @param {any} autoCloseSuccess flag indicating whether to auto close the alert if it is a success message\r\n * @param {any} showProgressIndicator flag indicating whether to show a progress indicator in the message\r\n */\r\n global.ShowDangerAlert = function (alertContainer, message, autoCloseSuccess = true, showProgressIndicator = false) {\r\n return global.ShowAlert(false, alertContainer, undefined, undefined, message, autoCloseSuccess, showProgressIndicator);\r\n };\r\n\r\n /**\r\n * Show an alert message in the top region of the viewport\r\n * @param {any} success flag indicating if it's a success of danger message\r\n * @param {any} alertContainer the alert container to use for the alert HTML\r\n * @param {any} successMessage the success message to use\r\n * @param {any} infoMessage the info message to use\r\n * @param {any} dangerMessage the danger message to use\r\n * @param {any} autoCloseSuccess flag indicating whether to auto close the alert if it is a success message\r\n * @param {any} showProgressIndicator flag indicating whether to show a progress indicator in the message\r\n */\r\n global.ShowAlert = function (success, alertContainer, successMessage, infoMessage, dangerMessage, autoCloseSuccess = true, showProgressIndicator = false) {\r\n var container = $(alertContainer);\r\n // retrieve template\r\n var alert = $(\"#alert-template\").text();\r\n // create a unique id for the alert\r\n var alertId = global.CreateUUIDv4();\r\n alert = global.TemplateReplace(alert, \"alertId\", alertId);\r\n // replace values in the template\r\n if (success) {\r\n alert = global.TemplateReplace(alert, \"alertType\", \"success\");\r\n alert = global.TemplateReplace(alert, \"alertMessage\", successMessage);\r\n } if (success === undefined) {\r\n alert = global.TemplateReplace(alert, \"alertType\", \"info\");\r\n alert = global.TemplateReplace(alert, \"alertMessage\", infoMessage);\r\n } else {\r\n alert = global.TemplateReplace(alert, \"alertType\", \"danger\");\r\n alert = global.TemplateReplace(alert, \"alertMessage\", dangerMessage);\r\n }\r\n\r\n // append alert html to container to display it\r\n container.prepend(alert).alert();\r\n\r\n // possibly show progress indicator\r\n if (showProgressIndicator) {\r\n var progressIndicator = container.find('#progressIndicator');\r\n global.progressInterval = progressIndicatorText(progressIndicator);\r\n }\r\n\r\n // show the alert\r\n container.toggleClass('d-none');\r\n container.find(`#${alertId}`).on('closed.bs.alert', () => {\r\n // hide the alert\r\n container.toggleClass('d-none');\r\n })\r\n\r\n if ((success || success === undefined) && autoCloseSuccess) {\r\n // close alert after 3 seconds\r\n window.setTimeout(() => {\r\n container.find(`#${alertId}`).alert('close');\r\n }, 3000);\r\n }\r\n return container.find(`#${alertId}`);\r\n }\r\n\r\n /**\r\n * Close an alert\r\n * @param {any} alertContainer the alert container\r\n */\r\n global.CloseAlert = function (alertContainer) {\r\n if (global.progressInterval) {\r\n window.clearInterval(global.progressInterval);\r\n global.progressInterval = undefined;\r\n }\r\n\r\n if (!alertContainer)\r\n return;\r\n\r\n alertContainer.alert('close');\r\n }\r\n\r\n /**\r\n * Show a progress indicator in the form of three repeating dots as a suffix of the message\r\n * @param {any} alertContainerId id of the alert container\r\n */\r\n global.ShowProgressIndicator = function (alertContainerId) {\r\n var container = $(alertContainerId);\r\n var progressIndicator = container.find('#progressIndicator');\r\n if (progressIndicator.length == 0)\r\n return;\r\n global.progressInterval = progressIndicatorText(progressIndicator);\r\n }\r\n\r\n /**\r\n * Close a progress indicator\r\n * @param {any} alertContainerId id of the alert container\r\n */\r\n global.ClearProgressIndicator = function (alertContainerId) {\r\n var container = $(alertContainerId);\r\n var progressIndicator = container.find('#progressIndicator');\r\n if (progressIndicator.length == 0)\r\n return;\r\n window.clearInterval(global.progressInterval);\r\n progressIndicator.text('');\r\n global.progressInterval = undefined;\r\n }\r\n\r\n /**\r\n * This function inserts a value in a template using a regex replace\r\n * @param {string} template the template in which one or more values should be inserted\r\n * @param {string} key the key of the value that should be inserted into the template\r\n * @param {string} value the value to insert into the template\r\n * @returns {string} The template after replacing the values\r\n */\r\n global.TemplateReplace = function (template, key, value) {\r\n return template.replace(new RegExp(`{{${key}}}`, \"gi\"), value);\r\n }\r\n\r\n /* Initializes modal dialog */\r\n global.initModalDialog = function (callback) {\r\n $(\"#modalcontainer\").on(\"show.bs.modal\", function (e) {\r\n if ($(e.relatedTarget).attr(\"href\")) {\r\n $(\"#modalcontainer .modal-content\").html(\"\");\r\n\r\n $(\"#modalcontainer .modal-content\").load($(e.relatedTarget).attr(\"href\"), null, function () {\r\n $.validator.unobtrusive.parse($(\"FORM\"));\r\n if (callback)\r\n callback();\r\n });\r\n }\r\n else {\r\n $.validator.unobtrusive.parse($(\"FORM\"));\r\n }\r\n });\r\n\r\n /** Change event handler for option Alles/vanaf. When vanaf is chosen an input field is shown */\r\n $(document).on(\"change\", \"input[name='SyncAll']\", function (e) {\r\n switch ($(this).val()) {\r\n case 'True':\r\n $(\"#synchronizefrom\").addClass('d-none');\r\n break;\r\n case 'False':\r\n $(\"#synchronizefrom\").removeClass('d-none');\r\n break;\r\n }\r\n });\r\n }\r\n\r\n global.onModalSuccess = function (context) {\r\n if (context.success === true) {\r\n $(\"#modalcontainer\").modal(\"hide\");\r\n\r\n if (context.gridId != null) {\r\n global.refreshTable(context.gridId);\r\n }\r\n if (context.gridIds != null) {\r\n context.gridIds.split(',').forEach(id => global.refreshTable(id));\r\n }\r\n\r\n var url = '';\r\n if (context.area != null)\r\n url += `/${context.area}`;\r\n if (context.controller != null)\r\n url += `/${context.controller}`;\r\n if (context.controllerAction != null)\r\n url += `/${context.controllerAction}`;\r\n\r\n if (url !== '')\r\n window.location.replace(url);\r\n }\r\n };\r\n\r\n global.refreshTable = function (gridId) {\r\n if (gridId != null) {\r\n let element = $(\"#\" + gridId);\r\n if (element.hasClass('dataTable')) {\r\n element.DataTable().ajax.reload();\r\n }\r\n else {\r\n var source = element.data(\"source\");\r\n if (source !== null && source !== undefined) {\r\n element.load(source);\r\n }\r\n }\r\n }\r\n }\r\n global.onSubmit = function (callback) {\r\n if (callback)\r\n callback();\r\n };\r\n\r\n global.onFailure = function (context) {\r\n global.ShowAlert(context?.success ?? false, \"#alertscontainer\", context?.infoMessage, null, context?.errorMessage);\r\n };\r\n\r\n global.DisableButton = function (button) {\r\n button.prop('disabled', true);\r\n }\r\n\r\n /* Enable a button */\r\n global.EnableButton = function (button) {\r\n button.prop('disabled', false);\r\n }\r\n\r\n /* Shows a spinner inside a button*/\r\n global.ShowButtonSpinner = function (button) {\r\n var spinner = button.find('span');\r\n spinner.show();\r\n }\r\n\r\n /* Hides a spinner inside a button */\r\n global.HideButtonSpinner = function (button) {\r\n var spinner = button.find('span');\r\n spinner.hide();\r\n }\r\n\r\n /** Initialise of date masks in popups */\r\n global.initMasks = function () {\r\n $(document).ready(function () {\r\n $.applyDataMask();\r\n });\r\n }\r\n\r\n /** Rebind jquery validators */\r\n global.rebindValidators = function () {\r\n $form = $(\"FORM\");\r\n $form.unbind();\r\n $form.data(\"validator\", null);\r\n $.validator.unobtrusive.parse($form);\r\n $form.validate($form.data(\"unobtrusiveValidation\").options);\r\n }\r\n\r\n /* Create a version 4 UUID */\r\n global.CreateUUIDv4 = function () {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\r\n var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);\r\n return v.toString(16);\r\n });\r\n }\r\n\r\n global.initChunckedDropzone = function (name, options) {\r\n var _options = {\r\n init: function () {\r\n global.dropzone = this;\r\n },\r\n url: \"/ChunkedUpload/UploadChunk\",\r\n maxFiles: 1,\r\n addRemoveLinks: true,\r\n dictDefaultMessage: \"Drop hier uw bestand om het te uploaden\",\r\n dictResponseError: \"Er is iets fout gegaan bij het uploaden van het bestand\",\r\n dictCancelUpload: \"Uploaden anuleren\",\r\n dictRemoveFile: \"Verwijderen\",\r\n\r\n createImageThumbnails: false,\r\n parallelChunkUploads: 1,\r\n chunking: true,\r\n forceChunking: true,\r\n retryChunks: true,\r\n\r\n params: function (files, xhr, chunk) {\r\n if (chunk) {\r\n return {\r\n Key: chunk.file.upload.uuid,\r\n Filename: chunk.file.name,\r\n TotalFileSize: chunk.file.size,\r\n ChunkSize: this.options.chunkSize,\r\n ChunkCount: chunk.file.upload.totalChunkCount,\r\n ChunkIndex: chunk.index,\r\n CurrentChunkSize: chunk.dataBlock.data.size\r\n };\r\n }\r\n }\r\n }\r\n\r\n if (options) {\r\n _options = $.extend(_options, options);\r\n }\r\n\r\n var element = $(name).dropzone(_options);\r\n\r\n if (options.addedFile)\r\n global.dropzone.on(\"addedfile\", options.addedFile);\r\n\r\n return element;\r\n }\r\n\r\n var progressIndicatorText = function (progressIndicator) {\r\n const dot = '.';\r\n var i = 1;\r\n return window.setInterval(() => {\r\n var numberOfDots = i % 4;\r\n progressIndicator.text(dot.repeat(numberOfDots));\r\n i++;\r\n }, 500);\r\n }\r\n\r\n}(window.global = window.global || {}, jQuery));\r\n\r\n/* validate date in the format dd-MM-yyyy */\r\njQuery.validator.addMethod(\"customdate\", function (value, element, params) {\r\n\r\n let val = $(element).val();\r\n if (val == \"\")\r\n return true;\r\n\r\n let compare = moment(value, 'DD-MM-YYYY').format('DD-MM-YYYY');\r\n if (value == compare)\r\n return true;\r\n\r\n return false;\r\n}, \"Ongeldige datum.\");\r\n","(function (overtimedeclaration, $) {\r\n\r\n overtimedeclaration.modes = [\r\n { index: 0, title: 'Toeslag uitbetalen' },\r\n { index: 1, title: 'Volledig uitbetalen' },\r\n { index: 2, title: 'Verlof' }\r\n ];\r\n\r\n /* Callback when declaration request submit failed */\r\n overtimedeclaration.submitFailed = (context) => {\r\n overtimedeclaration.hideSubmitSpinner();\r\n global.onFailure(context.responseJSON?.value);\r\n }\r\n\r\n /* Show the submit button */\r\n overtimedeclaration.showSubmitSpinner = function () {\r\n let button = $('[data-submit-button]');\r\n global.ShowButtonSpinner(button);\r\n global.DisableButton(button);\r\n }\r\n\r\n /* Hide the submit button */\r\n overtimedeclaration.hideSubmitSpinner = function () {\r\n let button = $('[data-submit-button]');\r\n global.HideButtonSpinner(button);\r\n global.EnableButton(button);\r\n }\r\n\r\n /* round time to nearest 15 minutes */\r\n overtimedeclaration.roundTime = function (value) {\r\n const localDateTime = new Date('1-1-2000 ' + value);\r\n const timezoneOffset = localDateTime.getTimezoneOffset();\r\n\r\n // Round minutes to the nearest 15\r\n const minutes = localDateTime.getMinutes();\r\n const roundedMinutes = Math.round(minutes / 15) * 15;\r\n localDateTime.setMinutes(roundedMinutes - timezoneOffset);\r\n localDateTime.setSeconds(0);\r\n localDateTime.setMilliseconds(0);\r\n\r\n return localDateTime.toISOString().slice(11, 16);\r\n }\r\n\r\n overtimedeclaration.init = function () {\r\n flatpickr.localize(dutch);\r\n\r\n let previous = $('[data-autosave-value]').val();\r\n $(document).on('change', '[data-autosave-value]', function () {\r\n let control = $(this);\r\n let contractId = $(this).val();\r\n\r\n $.ajax({\r\n url: '/OvertimeDeclaration/Home/UpdateDeclarationRequest',\r\n cache: false,\r\n method: 'POST',\r\n data: {\r\n key: $('[data-key]').val(),\r\n contractId: parseInt(contractId)\r\n },\r\n success: function (data) {\r\n if (data.success == false) {\r\n // Reset to previous value\r\n control.val(previous);\r\n\r\n $('#alertscontainer').empty();\r\n global.ShowInfoAlert('#alertscontainer', 'Er is iets misgegaan bij het opslaan');\r\n return;\r\n }\r\n\r\n if (previous != contractId) {\r\n previous == contractId;\r\n }\r\n\r\n }\r\n });\r\n });\r\n }\r\n\r\n /* Add Select2 to ProjectNumber select field */\r\n overtimedeclaration.InitSelect2 = function () {\r\n $.fn.select2.amd.require(['select2/selection/search'], function (Search) {\r\n var oldRemoveChoice = Search.prototype.searchRemoveChoice;\r\n\r\n Search.prototype.searchRemoveChoice = function () {\r\n oldRemoveChoice.apply(this, arguments);\r\n this.$search.val('');\r\n };\r\n\r\n $('[data-project]').select2({\r\n theme: 'bootstrap-5',\r\n dropdownParent: $('#modalcontent'),\r\n language: 'nl'\r\n });\r\n });\r\n\r\n var setFlatpickr = function (tag, isTime) {\r\n let selector = '[' + tag + ']';\r\n let $selector = $(selector);\r\n\r\n $('[' + tag + 'click]').flatpickr({\r\n dateFormat: (isTime ? \"H:i\" : \"d-m-Y\"),\r\n enableTime: isTime,\r\n noCalendar: isTime,\r\n minuteIncrement: 15,\r\n time_24hr: true,\r\n onOpen: function (selectedDates, dateStr, instance) {\r\n if ($selector.val() != '')\r\n instance.setDate($selector.val());\r\n else if (isTime)\r\n instance.setDate('12:00');\r\n else\r\n instance.setDate(Date.now());\r\n },\r\n onChange: function (selectedDates, dateStr, instance) {\r\n if (isTime)\r\n $selector.val(overtimedeclaration.roundTime(dateStr));\r\n else\r\n $selector.val(dateStr);\r\n }\r\n });\r\n\r\n $selector.on('change', function (e) {\r\n $selector.val(overtimedeclaration.roundTime($selector.val()));\r\n });\r\n };\r\n\r\n setFlatpickr(\"data-startdate\", false);\r\n setFlatpickr(\"data-starttime\", true);\r\n setFlatpickr(\"data-enddate\", false);\r\n setFlatpickr(\"data-endtime\", true);\r\n }\r\n\r\n overtimedeclaration.declarationRuleCountChanged = function (context) {\r\n global.onModalSuccess(context, function () {\r\n $('[data-contract-id]').prop('disabled', $('#declarationrulesgrid table>tbody>tr').length > 0);\r\n });\r\n }\r\n\r\n overtimedeclaration.initDeclarationRulesTable = function (declarationRequestKey, hasRosterHours) {\r\n var table = $('#declarationrulestable').DataTable(datatable.defaultDatatableOptions({\r\n ajax: {\r\n url: '/OvertimeDeclaration/Home/SearchDeclarationRules',\r\n data: {\r\n declarationRequestKey: declarationRequestKey\r\n }\r\n },\r\n orderFixed: {\r\n name: 'start',\r\n dir: 'asc'\r\n },\r\n searchable: false,\r\n info: false,\r\n paging: false,\r\n columns: [\r\n { data: 'start', name: 'Start', title: 'Begin', sortable: true, searchable: false },\r\n { data: 'end', name: 'End', title: 'Eind', sortable: false, searchable: false },\r\n { data: 'mode', name: 'Mode', title: 'Soort vergoeding', sortable: false, searchable: false, enum: overtimedeclaration.modes },\r\n { data: 'reason', name: 'Reason', title: 'Reden', sortable: false, searchable: false },\r\n { responsivePriority: -1, defaultContent: '', orderable: false, searchable: false }\r\n ],\r\n columnDefs: [\r\n {\r\n targets: [0, 1],\r\n width: '15%',\r\n render: function (data, type, full, meta) {\r\n return datatable.dutchDateFormat(data, hasRosterHours ? 'DD-MM-YYYY' : 'DD-MM-YYYY HH:mm')\r\n }\r\n },\r\n {\r\n targets: [2],\r\n width: '20%'\r\n },\r\n {\r\n targets: [3],\r\n width: '35%'\r\n },\r\n {\r\n target: -1,\r\n width: '10%',\r\n fixed: true,\r\n render: function (data, type, full, meta) {\r\n let aHrefs = [\r\n ``,\r\n ``];\r\n return aHrefs.join('\\n');\r\n }\r\n }\r\n ]\r\n }));\r\n var columnHeader = table.column(-1).header();\r\n $(columnHeader).html(``);\r\n\r\n table.on('processing.dt', function (e, settings, processing) {\r\n if (settings._iRecordsTotal > 0)\r\n $(\"[data-contract-id]\").attr(\"disabled\", \"disabled\");\r\n else\r\n $(\"[data-contract-id]\").removeAttr(\"disabled\");\r\n });\r\n }\r\n\r\n overtimedeclaration.initDeclarationResultsTable = function (subscriptionKey, declarationRequestKey, hasRosterHours) {\r\n var bindOnClicks = function () {\r\n $('[data-declarationResultModalButton]').on('click', function () {\r\n var modalData = $(this).next('[data-declarationResultModal]');\r\n $('#modalcontainer .modal-content').html(modalData.html());\r\n $('#modalcontainer').modal('show');\r\n $('#modal fade').attr('class', 'second');\r\n });\r\n };\r\n\r\n var table = $('#declarationresultstable').DataTable(datatable.defaultDatatableOptions({\r\n ajax: {\r\n url: '/OvertimeDeclaration/Home/SearchDeclarationResults',\r\n data: {\r\n subscriptionKey: subscriptionKey,\r\n declarationRequestKey: declarationRequestKey\r\n }\r\n },\r\n searchable: false,\r\n info: false,\r\n paging: false,\r\n columns: [\r\n { data: 'displayTotalDuration', name: 'DisplayTotalDuration', title: 'Aantal uren', sortable: true, searchable: false },\r\n { data: 'mode', name: 'Mode', title: 'Soort vergoeding', sortable: false, searchable: false, enum: overtimedeclaration.modes },\r\n { data: 'displayPercentage', name: 'DisplayPercentage', title: 'Percentage', sortable: false, searchable: false },\r\n { data: 'displayLeave', name: 'DisplayLeave', title: 'Verlof', sortable: false, searchable: false },\r\n { data: 'displayPaidOut', name: 'DisplayPaidOut', title: 'Uitbetalen', sortable: false, searchable: false },\r\n { responsivePriority: -1, defaultContent: '', orderable: false, searchable: false }\r\n ],\r\n columnDefs: [\r\n {\r\n targets: [0, 1, 3, 4],\r\n width: '20%'\r\n },\r\n {\r\n targets: 2,\r\n width: '20%',\r\n render: function (data, type, full, meta) {\r\n return `${data}%`;\r\n }\r\n },\r\n {\r\n target: -1,\r\n width: '10%',\r\n fixed: true,\r\n render: function (data, type, full, meta) {\r\n let modalTemplate = document.getElementById('declaration-result-modal-template');\r\n let modal = modalTemplate.content.cloneNode(true);\r\n let headerTemplate = document.getElementById('begin-end-header-template');\r\n let rowTemplate = document.getElementById('declaration-result-row-template');\r\n let tbody = modal.querySelector('tbody');\r\n\r\n if (!hasRosterHours) {\r\n let beginEndHeaders = headerTemplate.content.cloneNode(true);\r\n let firstHeader = modal.querySelector('thead>tr>th:nth-child(2)');\r\n firstHeader.parentElement.insertBefore(beginEndHeaders, firstHeader);\r\n }\r\n\r\n full.results.forEach((result) => {\r\n let createTd = function (node) {\r\n let td = document.createElement('td');\r\n td.append(node);\r\n tr.appendChild(td);\r\n }\r\n\r\n let row = rowTemplate.content.cloneNode(true);\r\n let tr = row.querySelector('tr');\r\n createTd(datatable.dutchDateFormat(result.start, 'DD-MM-YYYY'));\r\n if (!hasRosterHours) {\r\n createTd(datatable.dutchDateFormat(result.start, 'HH:mm'));\r\n createTd(datatable.dutchDateFormat(result.end, 'HH:mm'));\r\n }\r\n createTd(result.displayDuration);\r\n createTd(overtimedeclaration.modes.find(mode => mode.index === full.mode).title);\r\n createTd(`${full.displayPercentage}%`);\r\n createTd(result.displayLeave);\r\n createTd(result.displayPaidOut);\r\n tbody.appendChild(row);\r\n });\r\n let button = document.createElement('button');\r\n button.classList.add('btn', 'btn-datatable', 'btn-primary');\r\n button.setAttribute('type', 'button');\r\n button.setAttribute('data-declarationResultModalButton', '');\r\n button.innerHTML = 'Details';\r\n let div = document.createElement('div');\r\n div.setAttribute('hidden', '');\r\n div.setAttribute('data-declarationresultmodal', '');\r\n div.setAttribute('data-manualmodal', '');\r\n div.appendChild(modal);\r\n return `${button.outerHTML}\\n${div.outerHTML}`;\r\n }\r\n }\r\n ]\r\n }));\r\n\r\n table.on('draw', function () {\r\n $('button[type=\\'submit\\'][name=\\'Action\\']').prop('disabled', table.rows().count() == 0);\r\n\r\n bindOnClicks();\r\n });\r\n }\r\n\r\n\r\n}(window.overtimedeclaration = window.overtimedeclaration || {}, $));\r\n\r\nvar dutch = {\r\n weekdays: {\r\n shorthand: [\"zo\", \"ma\", \"di\", \"wo\", \"do\", \"vr\", \"za\"],\r\n longhand: [\r\n \"zondag\",\r\n \"maandag\",\r\n \"dinsdag\",\r\n \"woensdag\",\r\n \"donderdag\",\r\n \"vrijdag\",\r\n \"zaterdag\",\r\n ],\r\n },\r\n months: {\r\n shorthand: [\r\n \"jan\",\r\n \"feb\",\r\n \"mrt\",\r\n \"apr\",\r\n \"mei\",\r\n \"jun\",\r\n \"jul\",\r\n \"aug\",\r\n \"sept\",\r\n \"okt\",\r\n \"nov\",\r\n \"dec\",\r\n ],\r\n longhand: [\r\n \"januari\",\r\n \"februari\",\r\n \"maart\",\r\n \"april\",\r\n \"mei\",\r\n \"juni\",\r\n \"juli\",\r\n \"augustus\",\r\n \"september\",\r\n \"oktober\",\r\n \"november\",\r\n \"december\",\r\n ],\r\n },\r\n firstDayOfWeek: 1,\r\n weekAbbreviation: \"wk\",\r\n rangeSeparator: \" t/m \",\r\n scrollTitle: \"Scroll voor volgende / vorige\",\r\n toggleTitle: \"Klik om te wisselen\",\r\n time_24hr: true,\r\n ordinal: function (nth) {\r\n if (nth === 1 || nth === 8 || nth >= 20)\r\n return \"ste\";\r\n return \"de\";\r\n },\r\n};\r\n","(function (parentalleave, $) {\r\n parentalleave.init = function () {\r\n $('[name=\"PriorLeave\"]').on(\"change\", function () {\r\n let priorHoursDiv = $(\"#PriorHours\");\r\n switch ($(this).val()) {\r\n case \"True\":\r\n priorHoursDiv.show(500);\r\n break;\r\n case \"False\":\r\n priorHoursDiv.hide(500);\r\n\r\n break;\r\n }\r\n\r\n \r\n });\r\n\r\n $('[name=\"Region\"]').on(\"change\", function () {\r\n $.ajax({\r\n url: \"/ParentalLeave/Home/SetRegion\",\r\n cache: false,\r\n data: {\r\n parentalLeaveRequestKey: $(\"#Key\").val(),\r\n region: $(this).val()\r\n },\r\n success: function (result) {\r\n if (result.success) {\r\n $(\"#region-error\").hide(500);\r\n global.loadgrid(result.gridId);\r\n }\r\n else {\r\n $(\"#region-error\").show(500);\r\n }\r\n },\r\n error: function (xhr, ajaxOptions, thrownError) {\r\n $(\"#region-error\").show(500);\r\n }\r\n });\r\n });\r\n\r\n $(\"[data-parentalleavetype]\").on(\"change\", function () {\r\n const onlyPaid = 0;\r\n const onlyUnpaid = 1;\r\n\r\n let leaveType = $(this).val();\r\n\r\n if (leaveType != onlyUnpaid) {\r\n $(\"[data-paid]\").show();\r\n }\r\n else {\r\n $(\"[data-paid]\").hide();\r\n }\r\n\r\n if (leaveType != onlyPaid) {\r\n $(\"[data-unpaid]\").show();\r\n }\r\n else {\r\n $(\"[data-unpaid]\").hide();\r\n }\r\n });\r\n $(\"[data-parentalleavetype]\").trigger(\"change\");\r\n }\r\n}(window.parentalleave = window.parentalleave || {}, $));\r\n","/** jQuery JavaScript for powerbi functionality **/\r\n(function (powerbiembedded, $) {\r\n\r\n /* Embed a power BI board */\r\n powerbiembedded.embedBoard = function(accessToken, embedUrl, embedBoardId, boardType, dataSetId) {\r\n // Get models. models contains enums that can be used.\r\n var models = window['powerbi-client'].models;\r\n\r\n // Embed configuration used to describe the what and how to embed.\r\n var config = {\r\n type: boardType.toLowerCase(),\r\n tokenType: models.TokenType.Embed,\r\n accessToken: accessToken,\r\n embedUrl: embedUrl,\r\n id: embedBoardId,\r\n settings: {\r\n extensions: {\r\n commands: [{\r\n name: \"clear_all_filters\",\r\n title: \"Clear all filters\",\r\n extend: {\r\n visualContextMenu: {\r\n title: \"Clear all filters\",\r\n },\r\n visualOptionsMenu: {\r\n title: \"Clear all filters\",\r\n }\r\n }\r\n },\r\n {\r\n name: \"clear_filters\",\r\n title: \"Clear filters\",\r\n extend: {\r\n visualContextMenu: {\r\n title: \"Clear filters\",\r\n },\r\n visualOptionsMenu: {\r\n title: \"Clear filters\",\r\n }\r\n }\r\n }]\r\n }\r\n }\r\n };\r\n\r\n if (boardType === \"Report\" && dataSetId) {\r\n var extendConfig = {\r\n datasetBinding: {\r\n datasetId: dataSetId,\r\n }\r\n };\r\n\r\n $.extend(true, config, extendConfig);\r\n }\r\n\r\n // Get a reference to the embedded board HTML element\r\n var boardContainer = $('#boardContainer')[0];\r\n\r\n // Embed the board and display it within the div container.\r\n var report = powerbi.embed(boardContainer, config);\r\n\r\n report.on(\"commandTriggered\", async function (command, a, b, c, d, e, f, g) {\r\n if (command.detail.command !== \"clear_filters\")\r\n return;\r\n\r\n var pages = await report.getPages();\r\n for (var i = 0; i < pages.length; i++) {\r\n if (pages[i].name === command.detail.page.name) {\r\n await pages[i].updateFilters(models.FiltersOperations.RemoveAll);\r\n }\r\n var visuals = await pages[i].getVisuals();\r\n for (var j = 0; j < visuals.length; j++) {\r\n if (visuals[j].name === command.detail.visual.name) {\r\n await visuals[j].updateFilters(models.FiltersOperations.RemoveAll);\r\n }\r\n }\r\n }\r\n });\r\n\r\n report.on(\"commandTriggered\", async function (command, a, b, c, d, e, f, g) {\r\n if (command.detail.command !== \"clear_all_filters\")\r\n return;\r\n\r\n await report.updateFilters(models.FiltersOperations.RemoveAll);\r\n var pages = await report.getPages();\r\n for (var i = 0; i < pages.length; i++) {\r\n await pages[i].updateFilters(models.FiltersOperations.RemoveAll);\r\n var visuals = await pages[i].getVisuals();\r\n for (var j = 0; j < visuals.length; j++) {\r\n await visuals[j].updateFilters(models.FiltersOperations.RemoveAll);\r\n }\r\n }\r\n });\r\n\r\n // Set height and width\r\n $('#boardContainer').height($(document).height());\r\n $('#boardContainer').width($(document).width());\r\n $('#boardContainer').parent().parent().parent().css(\"padding\", 0);\r\n }\r\n\r\n}(window.powerbiembedded = window.powerbiembedded || {}, jQuery));\r\n","/** jQuery JavaScript for pregnancyleave functionality **/\r\n(function (pregnancyleave, $) {\r\n\r\n pregnancyleave.clickedSubmitButton = undefined;\r\n pregnancyleave.calculateButtonClicked = false;\r\n\r\n /** Initializes the Javascript for pregnancy leave */\r\n pregnancyleave.init = function (pregnancyLeaveRequestKey) {\r\n pregnancyleave.loadStartDateRange();\r\n\r\n pregnancyleave.bindExpectedDeliveryDateEvent();\r\n pregnancyleave.bindRegionEvent();\r\n pregnancyleave.bindInputEvent();\r\n pregnancyleave.initPartial();\r\n pregnancyleave.initAbsencesTable(pregnancyLeaveRequestKey);\r\n }\r\n\r\n /** Initializes the Javascript the pregnancy leave partial */\r\n pregnancyleave.initPartial = function () {\r\n pregnancyleave.calculateEvent();\r\n pregnancyleave.submitEvent();\r\n }\r\n\r\n /** Method that binds the expected delivery date on change event */\r\n pregnancyleave.bindExpectedDeliveryDateEvent = function () {\r\n $(document).on(\"change\", \"[data-expecteddeliverydate],[data-multiplebirths]\", pregnancyleave.loadStartDateRange);\r\n }\r\n\r\n /** Method that binds the region change event */\r\n pregnancyleave.bindRegionEvent = function () {\r\n $(document).on(\"change\", \"[data-region]\", function (evt) {\r\n var region = evt.target.value;\r\n var pregnancyLeaveRequestKey = $(\"[data-pregnancyleave-request-key]\").val();\r\n $.get(`/PregnancyLeave/Home/UpdateAbsencesGrid?pregnancyLeaveRequestKey=${pregnancyLeaveRequestKey}®ion=${region}`)\r\n .done((jqXHR) => {\r\n $(\"#absencestable\").DataTable().ajax.reload();\r\n });\r\n });\r\n }\r\n\r\n /** Method that binds the input change event */\r\n pregnancyleave.bindInputEvent = function () {\r\n $(document).on(\"change\", \"[data-input]\", function () {\r\n $(\"[data-submit-button]\").prop('disabled', true);\r\n });\r\n }\r\n\r\n /** Method that binds the calculate button event */\r\n pregnancyleave.calculateEvent = function () {\r\n $(document).on(\"click\", \"[data-calculate-button]\", function (evt) {\r\n pregnancyleave.clickedSubmitButton = evt.target;\r\n pregnancyleave.calculateButtonClicked = true;\r\n });\r\n }\r\n\r\n /** Method that binds the submit event */\r\n pregnancyleave.submitEvent = function () {\r\n $(document).on(\"click\", \"[data-submit-button]\", function (evt) {\r\n pregnancyleave.clickedSubmitButton = evt.target;\r\n });\r\n }\r\n\r\n /** Load start date range */\r\n pregnancyleave.loadStartDateRange = function () {\r\n if ($(\"[data-expecteddeliverydate]\").val()) {\r\n $.ajax({\r\n url: \"/PregnancyLeave/Home/DetermStartDateRange\",\r\n cache: false,\r\n data: {\r\n expectedDeliveryDate: $(\"[data-expecteddeliverydate]\").val(),\r\n multipleBirths: $(\"[data-multiplebirths]:checked\").data(\"multiplebirths\")\r\n },\r\n success: function (result) {\r\n $(\"[data-rangestartdate]\").html(result.rangestartdate);\r\n $(\"[data-rangeenddate]\").html(result.rangeenddate);\r\n }\r\n });\r\n } else {\r\n $(\"[data-rangestartdate]\").html(\"-\");\r\n $(\"[data-rangeenddate]\").html(\"-\");\r\n }\r\n }\r\n\r\n /** Method that is being called before submitting the request */\r\n pregnancyleave.submitRequest = function () {\r\n $(\"button[type='submit'][name='Action']\").prop('disabled', true);\r\n $(pregnancyleave.clickedSubmitButton).find('span').show();\r\n }\r\n\r\n /** Shows the spinner button */\r\n pregnancyleave.showButtonSpinner = function () {\r\n var spinner = $(pregnancyleave.clickedSubmitButton).find('span');\r\n spinner.show();\r\n }\r\n\r\n /** Hides the button spinner */\r\n pregnancyleave.hideButtonSpinner = function () {\r\n var spinner = $(pregnancyleave.clickedSubmitButton).find('span');\r\n spinner.hide();\r\n }\r\n\r\n /** Refresh method */\r\n pregnancyleave.refresh = function () {\r\n pregnancyleave.hideButtonSpinner();\r\n\r\n if (pregnancyleave.calculateButtonClicked) \r\n $(\"[data-submit-button]\").prop('disabled', false);\r\n \r\n pregnancyleave.loadStartDateRange();\r\n $('[data-bs-toggle=\"popover\"]').popover();\r\n }\r\n\r\n pregnancyleave.initAbsencesTable = function (pregnancyLeaveRequestKey) {\r\n let table = $('#absencestable').DataTable(datatable.defaultDatatableOptions({\r\n ajax: {\r\n url: '/PregnancyLeave/Home/SearchAbsences',\r\n data: {\r\n pregnancyLeaveRequestKey: pregnancyLeaveRequestKey\r\n }\r\n },\r\n searchable: false,\r\n info: false,\r\n paging: true,\r\n columns: [\r\n { data: 'startDate', name: 'StartDate', title: 'Van', sortable: false, searchable: false },\r\n { data: 'endDate', name: 'EndDate', title: 'T/m', sortable: false, searchable: false },\r\n { data: 'description', name: 'Description', title: 'Omschrijving', sortable: false, searchable: false },\r\n { responsivePriority: -1, defaultContent: '', orderable: false, searchable: false }\r\n ],\r\n columnDefs: [\r\n {\r\n targets: [0, 1],\r\n width: '15%',\r\n render: function (data, type, full, meta) {\r\n return datatable.dutchDateFormat(data, 'DD-MM-YYYY')\r\n }\r\n },\r\n {\r\n targets: [2],\r\n width: '60%'\r\n },\r\n {\r\n target: -1,\r\n width: '10%',\r\n fixed: true,\r\n render: function (data, type, full, meta) {\r\n return ``;\r\n }\r\n }\r\n ]\r\n }));\r\n var columnHeader = table.column(-1).header();\r\n $(columnHeader).html(``);\r\n }\r\n\r\n}(window.pregnancyleave = window.pregnancyleave || {}, jQuery));\r\n\r\n","/** jQuery JavaScript for profit2ad functionality **/\r\n(function (profit2ad, $) {\r\n\r\n profit2ad.subscriptionKey = null;\r\n profit2ad.locationAD = null;\r\n profit2ad.profitEnvironmentKey = null;\r\n profit2ad.exclusions = [];\r\n profit2ad.maxGuidIndex = 0;\r\n\r\n profit2ad.types = [\r\n { index: 0, title: \"Toegevoegd\" },\r\n { index: 1, title: \"Gewijzigd\" },\r\n { index: 2, title: \"Geblokkeerd\" },\r\n { index: 3, title: \"Fout\" }\r\n ];\r\n\r\n profit2ad.boolTranslation = [\r\n { index: true, title: 'Ja' },\r\n { index: false, title: 'Nee' }\r\n ];\r\n\r\n /** Initializes the Javascript for Profit2AD */\r\n profit2ad.init = function (subscriptionKey, profitEnvironmentKey, locationAD) {\r\n profit2ad.subscriptionKey = subscriptionKey;\r\n profit2ad.profitEnvironmentKey = profitEnvironmentKey;\r\n profit2ad.locationAD = locationAD\r\n profit2ad.initFileUpload();\r\n profit2ad.bindDefinitionsEvent();\r\n profit2ad.bindDossierItemTypeEvent();\r\n profit2ad.bindGroupEvents();\r\n profit2ad.bindDefinitionEvents();\r\n profit2ad.bindTabs();\r\n\r\n document.querySelectorAll('a[data-bs-toggle=\"tab\"]').forEach((el) => {\r\n el.addEventListener('hidden.bs.tab', (e) => {\r\n profit2ad.destroyTable(e.target.hash);\r\n });\r\n });\r\n\r\n document.querySelectorAll('a[data-bs-toggle=\"tab\"]').forEach((el) => {\r\n el.addEventListener('shown.bs.tab', (e) => {\r\n profit2ad.exclusions = [];\r\n profit2ad.createTable(e.target.hash)\r\n });\r\n });\r\n }\r\n\r\n profit2ad.createTable = function (tabId) {\r\n switch (tabId) {\r\n case '#definitions':\r\n profit2ad.initEmployersTable('#upnformatemployerstable', '/Profit2AD/Home/SearchUpnFormatEmployers', 'CreateUpnFormatEmployer', 'DeleteUpnFormatEmployer');\r\n profit2ad.initEmployersTable('#emailformatemployerstable', '/Profit2AD/Home/SearchEmailFormatEmployers', 'CreateEmailFormatEmployer', 'DeleteEmailFormatEmployer');\r\n break;\r\n case '#fields':\r\n profit2ad.initFieldsTable();\r\n break;\r\n case '#groups':\r\n profit2ad.initGroupsTable('#groupstable', 'Profit gebruikers groep', '/Profit2AD/Home/SearchGroups', 'Groups', 'DetailsGroup', 'DetailsGroup', 'DeleteGroup');\r\n break;\r\n case '#organisationalunits':\r\n profit2ad.initGroupsTable('#organisationalunitstable', 'Profit organisatorische eenheden', '/Profit2AD/Home/SearchGroups', 'OrganisationalUnits', 'DetailsOrganisationalUnit', 'DetailsOrganisationalUnit', 'DeleteOrganisationalUnit');\r\n break;\r\n case '#functions':\r\n profit2ad.initGroupsTable('#functionstable', 'Profit functies', '/Profit2AD/Home/SearchGroups', 'Functions', 'DetailsFunction', 'DetailsFunction', 'DeleteFunction');\r\n break;\r\n }\r\n }\r\n\r\n profit2ad.destroyTable = function (tabId) {\r\n switch (tabId) {\r\n case '#definitions':\r\n $('#upnformatemployerstable').DataTable().destroy();\r\n $('#emailformatemployerstable').DataTable().destroy();\r\n default:\r\n let table = $(`${tabId}table`).DataTable()\r\n if (table)\r\n table.destroy();\r\n }\r\n }\r\n\r\n profit2ad.initEmployersTable = function (tableId, searchUrl, createAction, deleteAction) {\r\n let table = $(tableId).DataTable(datatable.defaultDatatableOptions({\r\n ajax: {\r\n url: searchUrl,\r\n data: {\r\n subscriptionKey: profit2ad.subscriptionKey,\r\n profitEnvironmentKey: profit2ad.profitEnvironmentKey\r\n }\r\n },\r\n searchable: false,\r\n info: false,\r\n paging: true,\r\n orderFixed: {\r\n name: 'employerName',\r\n dir: 'asc'\r\n },\r\n columns: [\r\n { data: 'employerName', name: 'EmployerName', title: 'Werkgever', sortable: true, searchable: false },\r\n { data: 'organizationalUnit', name: 'OrganizationalUnit', title: 'Organisatorische eenheid', sortable: true, searchable: false },\r\n { data: 'domain', name: 'Domain', title: 'Domein', sortable: true, searchable: false },\r\n { responsivePriority: -1, defaultContent: '', orderable: false, searchable: false }\r\n ],\r\n columnDefs: [\r\n {\r\n targets: [0, 2],\r\n width: '25%'\r\n },\r\n {\r\n targets: [1],\r\n width: '50%'\r\n },\r\n {\r\n target: -1,\r\n width: '10%',\r\n fixed: true,\r\n render: function (data, type, full, meta) {\r\n return ``;\r\n }\r\n }\r\n ]\r\n }));\r\n var columnHeader = table.column(-1).header();\r\n $(columnHeader).html(``);\r\n }\r\n\r\n profit2ad.initFieldsTable = function () {\r\n let table = $('#fieldstable').DataTable(datatable.defaultDatatableOptions({\r\n ajax: {\r\n url: '/Profit2AD/Home/SearchFields',\r\n data: {\r\n subscriptionKey: profit2ad.subscriptionKey\r\n }\r\n },\r\n searchable: false,\r\n info: false,\r\n paging: true,\r\n orderFixed: {\r\n name: 'profitName',\r\n dir: 'asc'\r\n },\r\n columns: [\r\n { data: 'profitName', name: 'ProfitName', title: 'Profit veld', sortable: true, searchable: false },\r\n { data: 'adName', name: 'AdName', title: 'Active directory veld', sortable: true, searchable: false },\r\n { responsivePriority: -1, defaultContent: '', orderable: false, searchable: false }\r\n ],\r\n columnDefs: [\r\n {\r\n targets: [0],\r\n width: '35%'\r\n },\r\n {\r\n targets: [1],\r\n width: '65%'\r\n },\r\n {\r\n target: -1,\r\n width: '10%',\r\n fixed: true,\r\n render: function (data, type, full, meta) {\r\n return ``;\r\n }\r\n }\r\n ]\r\n }));\r\n var columnHeader = table.column(-1).header();\r\n $(columnHeader).html(``);\r\n }\r\n\r\n profit2ad.initGroupsTable = function (tableId, firstColumnTitle, searchUrl, source, createAction, detailsAction, deleteAction) {\r\n let table = $(tableId).DataTable(datatable.defaultDatatableOptions({\r\n ajax: {\r\n url: searchUrl,\r\n data: {\r\n subscriptionKey: profit2ad.subscriptionKey,\r\n source: source\r\n }\r\n },\r\n deferLoading: 0,\r\n searchable: false,\r\n info: false,\r\n paging: true,\r\n orderFixed: {\r\n name: 'profitName',\r\n dir: 'asc'\r\n },\r\n columns: [\r\n { data: 'profitName', name: 'ProfitName', title: firstColumnTitle, sortable: true, searchable: false },\r\n { data: 'adName', name: 'AdName', title: 'Active directory groep', sortable: true, searchable: false },\r\n { data: 'exclusions[]', name: 'Exclusions', title: 'Bevat uitsluiting', sortable: true, searchable: false },\r\n { data: 'exclusions[]', responsivePriority: -1, defaultContent: '', orderable: false, searchable: false }\r\n ],\r\n columnDefs: [\r\n {\r\n targets: [0,1],\r\n width: '33%'\r\n },\r\n {\r\n targets: [2],\r\n width: '13%',\r\n render: function (data, type, full, meta) {\r\n return data.length > 0 ? 'Ja' : 'Nee';\r\n }\r\n },\r\n {\r\n target: -1,\r\n width: '10%',\r\n fixed: true,\r\n render: function (data, type, full, meta) {\r\n let aHrefs = [\r\n ``,\r\n ``\r\n ];\r\n return aHrefs.join('\\n');\r\n }\r\n }\r\n ]\r\n }));\r\n var columnHeader = table.column(-1).header();\r\n $(columnHeader).html(``);\r\n\r\n $(`${tableId} thead th [data-create]`).on('click', function (e) {\r\n profit2ad.exclusions = [];\r\n });\r\n\r\n table.on('draw', function (e, settings) {\r\n $(`${tableId} tbody td [data-details]`).on('click', function (e) {\r\n profit2ad.exclusions = table.cell(this.parentElement).data();\r\n });\r\n });\r\n }\r\n\r\n profit2ad.initLogTable = function () {\r\n $(\"#profit2adlogtable\").DataTable(datatable.defaultDatatableOptions({\r\n ajax: {\r\n url: '/Profit2ADLog/Home/ADLogsGrid?searchFrom=' + $(\"#search\").val() + '&searchTill=' + $(\"#searchend\").val()\r\n },\r\n hideFooter: false,\r\n columns: [\r\n { data: \"date\", name: \"Date\", title: \"Datum\", orderable: true, searchable: false },\r\n { data: \"state\", name: \"State\", title: \"Actie\", orderable: true, searchable: true, enum: profit2ad.types },\r\n { data: \"upn\", name: \"Upn\", title: \"Gebruiker\", eorderable: true, searchable: true },\r\n { data: \"employeeCode\", name: \"EmployeeCode\", title: \"Medewerkercode\", orderable: true, searchable: true },\r\n { data: \"success\", name: \"Success\", title: \"Succes\", orderable: true, searchable: true, enum: profit2ad.boolTranslation },\r\n { responsivePriority: 2, defaultContent: \"\", orderable: false, searchable: false }\r\n ],\r\n columnDefs: [\r\n {\r\n targets: 0,\r\n width: '15%',\r\n render: function (data, type, full, meta) {\r\n return moment(data).format(\"DD-MM-YYYY HH:mm:ss\");\r\n }\r\n },\r\n {\r\n targets: 1,\r\n width: '10%',\r\n },\r\n {\r\n targets: 2,\r\n width: '25%',\r\n },\r\n {\r\n targets: -1,\r\n width: '15%'\r\n },\r\n {\r\n targets: 5,\r\n width: '100px',\r\n fixed: true,\r\n render: function (data, type, full, meta) {\r\n return '\\\r\n ';\r\n }\r\n }\r\n ]\r\n }));\r\n\r\n $(document).on('keypress', \"[date]\", function (event) {\r\n if (event.which == 13) {\r\n event.preventDefault();\r\n // Simulate onchange event before retrieving the data as the date must be set in the url via this event.\r\n this.blur();\r\n datatable.dataTableSearch($('tr.filter'), $(\"#profit2adlogtable\").DataTable());\r\n }\r\n });\r\n }\r\n\r\n profit2ad.initSearchDates = function () {\r\n $(document).on('change', \"[date]\", function () {\r\n $(\"#profit2adlogtable\").DataTable().ajax.url('/Profit2ADLog/Home/ADLogsGrid?searchFrom=' + $(\"#search\").val() + '&searchTill=' + $(\"#searchend\").val());\r\n });\r\n }\r\n\r\n profit2ad.initDate = function () {\r\n $(document).on('change', \"input[date]\", function () {\r\n let value = $(this).val();\r\n if (value) {\r\n // First normalize the input string to support multiple input types\r\n let dateString = value.replace(/ /g, '-').replace(/[/]/g, '-');\r\n let dateArray = dateString.split('-');\r\n\r\n let date = new Date(dateArray[2] ?? 0, dateArray[1] - 1 ?? 0, dateArray[0] ?? 0);\r\n $(this).val([\r\n date.getDate().toString().padStart(2, '0'),\r\n (date.getMonth() + 1).toString().padStart(2, '0'),\r\n date.getFullYear().toString().padStart(4, '0')].join('-'));\r\n } else {\r\n $(this).val(null);\r\n }\r\n });\r\n\r\n $(document).on('change', \"input[datetime]\", function () {\r\n let value = $(this).val();\r\n if (value) {\r\n // First normalize the input string to support multiple input types\r\n let dateString = value.replace(/ /g, '-').replace(/[/]/g, '-').replace(/:/g, '-');\r\n let dateArray = dateString.split('-');\r\n\r\n let date = new Date(dateArray[2] ?? 0, dateArray[1] - 1 ?? 0, dateArray[0] ?? 0, dateArray[3] ?? 0, dateArray[4] ?? 0);\r\n $(this).val([\r\n date.getDate().toString().padStart(2, '0'),\r\n (date.getMonth() + 1).toString().padStart(2, '0'),\r\n date.getFullYear().toString().padStart(4, '0')].join('-')\r\n + \" \" +\r\n [date.getHours().toString().padStart(2, '0'),\r\n date.getMinutes().toString().padStart(2, '0')].join(':'));\r\n }\r\n else {\r\n $(this).val(null);\r\n }\r\n })\r\n }\r\n\r\n /** Bind the tab events so the tab stays on the same tab **/\r\n profit2ad.bindTabs = function () {\r\n // Load the selected tab\r\n var hash = location.hash.replace(/^#x/, ''); // ^ means starting, meaning only match the first hash\r\n if (hash) {\r\n $('.nav-tabs a[href=\"#' + hash + '\"]').tab('show');\r\n if (hash == \"filters\") {\r\n sourceFilters.reload();\r\n }\r\n }\r\n\r\n // Selected tab\r\n $('.nav-tabs a').on('shown.bs.tab', function (e) {\r\n var action = $(\"form\").attr(\"action\");\r\n var hash = e.target.hash.substring(1);\r\n\r\n var url = new URL(action, window.location.origin);\r\n url.hash = `x${hash}`;\r\n\r\n $(\"form\").attr(\"action\", url.toString());\r\n })\r\n\r\n $(\"form\").data(\"url\", $(\"form\").attr(\"action\"));\r\n }\r\n\r\n /** Bind the defintion change event */\r\n profit2ad.bindDefinitionsEvent = function () {\r\n $(document).on(\"change\", \"[data-employer-key]\", function () {\r\n var $this = $(this).children(\"option:selected\");\r\n $(\"[data-employer-name]\", $(this).parent()).val($this.text());\r\n });\r\n }\r\n\r\n /** Bind the dossier item changed event */\r\n profit2ad.bindDossierItemTypeEvent = function () {\r\n $(document).on(\"change\", \"[data-alt-id='Profit2AdDossierItemTypeId']\", function (evt) {\r\n $.ajax({\r\n url: \"/Profit2AD/Home/DossierItemMarks\",\r\n cache: false,\r\n data: {\r\n clientKey: $(\"[data-clientkey]\").val(),\r\n profitEnvironmentKey: $(\"[data-profitenvironmentkey]\").val(),\r\n dossierItemTypeId: $(evt.target).val()\r\n },\r\n success: function (list) {\r\n var selector = \"[data-alt-id='\" + $(evt.target).data('altId').replace('Type', 'Mark') + \"'\";\r\n $(selector).empty().append($(\"