1(function() { 2 try { 3 var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {}; 4 e.SENTRY_RELEASE = { id: "live_2026-10-01-1531" }; 5 var t = new e.Error().stack; 6 t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "c96cd66d-1a4e-47a2-82c0-aece7fe996a4", e._sentryDebugIdIdentifier = "sentry-dbid-c96cd66d-1a4e-47a2-82c0-aece7fe996a4"); 7 } catch (e) {} 8})(); 9import { y as e } from "./App_qQfW2uRC.min.js"; 10import { $a as t, Ai as n, Ba as r, Bo as i, Do as a, Ga as o, Gi as s, Gr as c, Jc as l, Li as u, On as d, Ri as f, Sn as p, So as ee, Ua as m, Vs as h, Ws as g, _l as te, ca as _, cc as ne, fs as re, gl as v, ia as ie, jc as ae, ji as y, ki as b, mc as oe, ml as x, vo as se, wc as S, yo as ce } from "./topMessageHandler_CaWydTPF.min.js"; 11import { $ as le, At as ue, E as C, F as w, L as de, N as T, Ot as E, R as fe, T as pe, X as D, Y as O, _ as k, c as A, d as j, f as M, g as N, i as P, jt as F, l as I, lt as L, m as me, nt as R, ot as he, q as ge, tt as _e, u as z, w as ve, y as B, z as ye } from "./runtime-core.esm-bundler_DscPLG0X.min.js"; 12import { a as be, o as V } from "./mailtransport_K7iyl1JZ.min.js"; 13import { o as xe } from "./vue-router_D9yl1vCo.min.js"; 14import { r as Se } from "./vuex.esm-bundler_ByHC_Vqx.min.js"; 15import { s as Ce } from "./addresses_BKkK47Xf.min.js"; 16import { t as we } from "./ListPager_ClTN-8nC.min.js"; 17import { t as Te } from "./EntryHistory_5eJJkBfo.min.js"; 18import { t as Ee } from "./searchAbstract_DeMDx6Lx.min.js"; 19import { t as De } from "./AppContent_DtiJZ3PY.min.js"; 20import { n as Oe } from "./correction_DZYTtyFH.min.js"; 21import { t as ke } from "./CreditViewPopup_Di8IWCS5.min.js"; 22import { t as Ae } from "./FormTextEditor_B3Njopg2.min.js"; 23import { t as je }
23 from "./AbsenceViewPopup_DlbZOkXs.min.js"; 24import { t as Me } from "./TableSearch_Cq1hc2fH.min.js"; 25import { t as Ne } from "./NoteEditor_C0AAJHhd.min.js"; 26import { t as Pe } from "./EvaluationViewEmployeeInformation_8LVbtnBS.min.js"; 27import { n as Fe, t as Ie } from "./evaluation_B25KJeNM.min.js"; 28import { t as Le } from "./vocus_DiGMZGRu.min.js"; 29import { t as Re } from "./VacationEntryViewPopup_0iIi0oVj.min.js"; 30import { t as ze } from "./evaluationTable_CRzg8ymu.min.js"; 31import { a as Be, i as Ve, n as He, o as Ue, r as We, t as Ge } from "./surcharges_CqWXAmC5.min.js"; 32import { t as Ke } from "./FreezeViewPopup_CgCZl3qO.min.js"; 33import { t as qe } from "./RequestViewPopup_CtB_HPL8.min.js"; 34//#region src/views/time-tracker/evaluation/EvaluationAttendances.vue?vue&type=script&setup=true&lang.ts 35V(); 36var Je = { key: 0 }, Ye = { class: "vertical-align-middle" }, Xe = { key: 0 }, H = { 37 key: 0, 38 class: "material-icons md-16 link-color cursor-help", 39 "aria-hidden": "true", 40 role: "img" 41}, U = { 42 key: 1, 43 class: "material-icons md-16 link-color cursor-help", 44 "aria-hidden": "true", 45 role: "img" 46}, W = { key: 1 }, Ze = { key: 2 }, Qe = { key: 2 }, $e = ["aria-label"], G = { 47 key: 1, 48 class: "material-icons text-warning font-size-20", 49 "aria-hidden": "true", 50 role: "img" 51}, et = { 52 class: "material-icons text-info font-size-20", 53 "aria-hidden": "true", 54 role: "img" 55}, K = { 56 key: 3, 57 class: "material-icons md-16 link-color cursor-help", 58 "aria-hidden": "true", 59 role: "img" 60}, tt = { key: 4 }, q = { 61 key: 0, 62 class: "material-icons text-danger cursor-help", 63 "aria-hidden": "true", 64 role: "img" 65}, nt = { key: 0 }, rt = { 66 key: 0, 67 class: "material-icons text-danger cursor-help", 68 "aria-hidden": "true", 69 role: "img" 70}, it = { 71 key: 1, 72 class: "material-icons md-16 link-color cursor-help", 73 "aria-hidden": "true", 74 role: "img" 75}, at = { 76 class: "material-icons text-info font-size-20", 77 "aria-hidden": "true", 78 role: "img" 79}, ot = { key: 6 }, st = { 80 key: 0, 81 class: "material-icons md-16 link-color cursor-help evaluation-error", 82 "aria-hidden": "true", 83 role: "img" 84}, ct = { key: 7 }, lt = { 85 key: 8, 86 class: "text-warning font" 87}, ut = { 88 key: 4, 89 class: "material-icons font-size-20", 90 "aria-hidden": "true", 91 role: "img" 92}, dt = { 93 key: 5, 94 class: "material-icons text-success font-size-20", 95 "aria-hidden": "true", 96 role: "img" 97}, ft = { 98 key: 6, 99 class: "material-icons text-success font-size-20", 100 "aria-hidden": "true", 101 role: "img" 102}, pt = { 103 class: "material-icons text-success font-size-20", 104 "aria-hidden": "true", 105 role: "img" 106}, mt = { 107 class: "material-icons text-success font-size-20", 108 "aria-hidden": "true", 109 role: "img" 110}, J = { 111 key: 1, 112 class: "flex" 113}, Y = { 114 key: 0, 115 class: "material-icons", 116 "aria-hidden": "true", 117 role: "img" 118}, ht = { key: 1 }, gt = { 119 class: "material-icons font-size-20", 120 "aria-hidden": "true", 121 role: "img" 122}, _t = /* @__PURE__ */ B({ 123 __name: "EvaluationAttendances", 124 props: { 125 attendances: {}, 126 requestedCorrections: {}, 127 isBreak: { 128 type: Boolean, 129 default: !1 130 }, 131 isProject: { 132 type: Boolean, 133 default: !1 134 }, 135 isContact: { 136 type: Boolean, 137 default: !1 138 }, 139 isManualMode: { 140 type: Boolean, 141 default: !1 142 }, 143 hasMultipleSystems: { 144 type: Boolean, 145 default: !1 146 }, 147 date: { default: "" }, 148 settings: { default: () => ({}) }, 149 allowWorkOutsideWorkTime: { 150 type: Boolean, 151 default: !1 152 } 153 }, 154 setup(e) { 155 let t = e, n = (e, t, n, r) => { 156 if (n === 1) return "Der Standort konnte nicht ermittelt werden, da die erforderliche Berechtigung zur Standorterfassung nicht erteilt wurde oder die Standorterfassung nicht verfügbar war."; 157 if (n === 3) return "Der Standort konnte vom Gerät nicht ermittelt werden."; 158 if (!e) return ""; 159 let i = e[0] < 0 ? "S" : "N", a = e[1] < 0 ? "W" : "E", o = ""; 160 return n === 2 ? o += "Adresse: Es konnte keine Adresse zu den Koordinaten bestimmt werden." : t ? o += `Adresse: ${t}` : o += "Adresse: Die Adresse wird noch anhand der Koordinaten bezogen.", o += `<br>Koordinaten: ${e[0].toFixed(5)}° ${i}, ${e[1].toFixed(5)}° ${a}`, r && (o += `<br>Genauigkeit: ${r} Meter`), o; 161 }, r = (e) => { 162 let n = !!(e.beginSubType && e.beginSubType & 16), r = !!(e.endSubType && e.endSubType & 16); 163 if (t.isBreak) return n && r; 164 let i = e.end - e.begin; 165 return r && i <= 0; 166 }, o = A(() => t.isBreak ? "tooltipBreak" : "tooltip"), s = A(() => t.hasMultipleSystems), c = A(() => u(t.settings || {}, t.date ? i("Y-m-d", Fe(new Date(t.date))) : null)), l = () => { 167 let e = "<br><br>
167Pausenzeiten:", n = Number(Object.keys(t.settings).filter((e) => e.includes("breaktime_max")).map((e) => e.split("_")[2]).pop()) + 1; 168 for (let r = 0; r < n; r++) { 169 let n = a(t.settings["breaktime_start_" + r], t.settings["breaktime_end_" + r]); 170 e += `<br>${n ? "00:00" : t.settings["breaktime_start_" + r]} - ${n ? "24:00" : t.settings["breaktime_end_" + r]} (Maximal ${t.settings["breaktime_max_" + r]} Minuten)`; 171 } 172 return e; 173 }, d = (e) => { 174 let n = ""; 175 if (t.requestedCorrections.hasOwnProperty(e.beginId) || t.requestedCorrections.hasOwnProperty(e.endId)) { 176 let r = "", a = "", o = "", s = ""; 177 t.requestedCorrections.hasOwnProperty(e.beginId) && (r = i("H:i:s", e.begin), a = parseInt(t.requestedCorrections[e.beginId].change_type) === 3 ? "Eintrag entfernen" : i("H:i:s", t.requestedCorrections[e.beginId].stamp)), t.requestedCorrections.hasOwnProperty(e.endId) && (o = i("H:i:s", e.end), s = parseInt(t.requestedCorrections[e.endId].change_type) === 3 ? "Eintrag entfernen" : i("H:i:s", t.requestedCorrections[e.endId].stamp)); 178 let c = a && s ? "<br>" : ""; 179 n = `Für diesen Eintrag wurde eine Korrektur beantragt:<br>${a ? `(Beginn) Original: ${r} - Beantragt: ${a}` : ""}${c}${s ? `(Ende) Original: ${o} - Beantragt: ${s}` : ""}`; 180 } else e.correction || e.begin !== e.sourceBegin || e.end !== e.sourceEnd ? n = e.beginId === e.sourceBeginId && e.endId === e.sourceEndId ? "Dieser Eintrag wurde nachgetragen." : `Dieser Eintrag wurde korrigiert:<br>Original: ${i("H:i:s", e.sourceBegin)} - ${i("H:i:s", e.sourceEnd)}` : e.forgotLogoutDuration ? n = `Dieser Eintrag wurde durch einen vergessenen Logout nach ${e.forgotLogoutDurationHours} Stunden erstellt!` : e.forgotLogout && (n = "Dieser Eintrag wurde durch einen vergessenen Logout zur festen Uhrzeit erstellt!"); 181 return n; 182 }, f = (e) => { 183 let n = "Für diesen Tag wurde eine Korrektur beantragt.<br>"; 184 return t.isBreak && (n += `Fehlende Pause: ${i("H:i:s", e.new_break_begin_stamp)} - ${i("H:i:s", e.new_break_end_stamp)}`), n; 185 }, p = (e) => { 186 let t = e ? ce(e) : null; 187 return t ? c.value[t] : null; 188 }, ee = (e) => { 189 let t = "", n = p(i("Y-m-d", e.begin)); 190 return n ? (t += `<br><br>Eingestellter Arbeitszeitraum:<br>${n.start} - ${n.end}`, n.hours && (t += ` (${n.hours} Stunden)`)) : t += "<br>Kein Arbeitstag laut Einstellungen hinterlegt", t; 191 }, m = (e) => { 192 let n = "Beginn: " + i("H:i:s", e.begin); 193 return e.beginError && (n += ` - ${e.beginError}`), n += t.isBreak ? l() : ee(e), n; 194 }, h = (e) => { 195 let n = "Ende: " + i("H:i:s", e.end); 196 return e.endError && (n += ` - ${e.endError}`), n += t.isBreak ? l() : ee(e), n; 197 }; 198 return (t, a) => { 199 let c = de("router-link"), l = fe("tooltip"); 200 return e.attendances.length ? (T(), M("div", Je, [I("div", { class: E({ "message-content fr-view": e.isProject }) }, [I("ul", Ye, [(T(!0), M(P, null, w(e.attendances, (t) => (T(), M(P, null, [!r(t) || e.isBreak ? (T(), M("li", Xe, [ 201 e.isProject || e.isContact ? (T(), M(P, { key: 0 }, [ 202 s.value ? D((T(), M("i", H, [N(F(L(y)[t.beginSystem].icon), 1)])), [[l, L(y)[t.beginSystem][o.value]]]) : j("", !0), 203 a[0] || (a[0] = N()), 204 I("span", null, F(L(i)("H:i", t.begin)) + " bis " + F(t.end ? L(i)("H:i", t.end) : "-- : --"), 1), 205 a[1] || (a[1] = N()), 206 s.value && t.end ? D((T(), M("i", U, [N(F(L(y)[t.endSystem].icon), 1)])), [[l, L(y)[t.endSystem][o.value]]]) : j("", !0) 207 ], 64)) : j("", !0), 208 a[31] || (a[31] = N()), 209 e.isProject ? (T(), M(P, { key: 1 }, [ 210 t.project_id ? (T(), z(c, { 211 key: 0, 212 to: { 213 name: "time-tracker-project-view", 214 params: { id: t.project_id } 215 } 216 }, {
217 default: O(() => [N(F(t.project), 1)]), 218 _: 2 219 }, 1032, ["to"])) : (T(), M("strong", W, F(t.project), 1)), 220 a[2] || (a[2] = N()), 221 e.isContact ? (T(), M("strong", Ze, "(" + F(t.contact) + ")", 1)) : j("", !0) 222 ], 64)) : j("", !0), 223 a[32] || (a[32] = N()), 224 !e.isProject && e.isContact ? (T(), M("strong", Qe, F(t.contact), 1)) : j("", !0), 225 a[33] || (a[33] = N()), 226 !e.isProject && !e.isContact ? (T(), M(P, { key: 3 }, [ 227 t.beginError || t.endError || t.error ? D((T(), M("span", { 228 key: 0, 229 "aria-label": t.beginError || t.endError || t.error 230 }, [I("i", { 231 class: E(["material-icons", t.beginToleranceError || t.endToleranceError ? "text-warning" : "evaluation-error"]), 232 "aria-hidden": "true", 233 role: "img" 234 }, F(t.beginToleranceError || t.endToleranceError ? "dangerous" : "clear"), 3)], 8, $e)), [[l]]) : j("", !0), 235 a[14] || (a[14] = N()), 236 e.allowWorkOutsideWorkTime && t.isOutOfWorkTime ? D((T(), M("i", G, [...a[3] || (a[3] = [N("priority_high", -1)])])), [[l, "Diese Zeiten werden nicht Ihrer wöchentlichen Arbeitszeit angerechnet, da sie auÃerhalb Ihrer hinterlegten Arbeitszeiträume liegen."]]) : j("", !0), 237 a[15] || (a[15] = N()), 238 t.beginSubType && t.beginSubType & L(8) ? (T(), M(P, { key: 2 }, [a[5] || (a[5] = N("\xA0", -1)), D((T(), M("i", et, [...a[4] || (a[4] = [N("wifi_off", -1)])])), [[l, "Die offline erfasste Zeit basiert auf den Zeiteinstellungen des verwendeten Endgeräts."]])], 64)) : j("", !0), 239 a[16] || (a[16] = N()), 240 s.value ? D((T(), M("i", K, [N(F(L(y)[t.beginSystem].icon), 1)])), [[l, L(y)[t.beginSystem][o.value]]]) : j("", !0), 241 a[17] || (a[17] = N()), 242 D((T(), M("span", { class: E({ 243 "evaluation-error": t.beginError && !t.beginToleranceError, 244 "text-warning": e.allowWorkOutsideWorkTime && t.isOutOfWorkTime || t.beginToleranceError 245 }) }, [N(F(L(i)("H:i", t.begin)), 1)], 2)), [[l, m(t)]]), 246 a[18] || (a[18] = N()), 247 t.beginLocation === null ? j("", !0) : D((T(), M("span", tt, [[L(1), L(3)].includes(t.beginLocationUnavailable) ? (T(), M("i", q, "fmd_bad")) : (T(), M("i", { 248 key: 1, 249 class: E(["material-icons cursor-help", { "text-success": !!t.beginLocationAddress }]), 250 "aria-hidden": "true", 251 role: "img" 252 }, F(t.beginLocationAddress ? "where_to_vote" : "place"), 3))])), [[l, n(t.beginLocation, t.beginLocationAddress, t.beginLocationUnavailable, t.beginLocationAccuracy)]]), 253 a[19] || (a[19] = N()), 254 a[20] || (a[20] = I("span", null, "bis", -1)), 255 a[21] || (a[21] = N()), 256 t.end ? (T(), M(P, { key: 5 }, [ 257 D((T(), M("span", { class: E({ 258 "evaluation-error": t.endError && !t.endToleranceError, 259 "text-warning": e.allowWorkOutsideWorkTime && t.isOutOfWorkTime || t.endToleranceError 260 }) }, [N(F(L(i)("H:i", t.end)), 1)], 2)), [[l, h(t)]]), 261 a[8] || (a[8] = N()), 262 t.endLocation === null ? j("", !0) : D((T(), M("span", nt, [[L(1), L(3)].includes(t.endLocationUnavailable) ? (T(), M("i", rt, "fmd_bad")) : (T(), M("i", { 263 key: 1, 264 class: E(["material-icons cursor-help", { "text-success": !!t.endLocationAddress }]), 265 "aria-hidden": "true", 266 role: "img" 267 }, F(t.endLocationAddress ? "where_to_vote" : "place"), 3))])), [[l, n(t.endLocation, t.endLocationAddress, t.endLocationUnavailable, t.endLocationAccuracy)]]), 268 a[9] || (a[9] = N()), 269 s.value ? D((T(), M("i", it, [N(F(L(y)[t.endSystem].icon), 1)])), [[l, L(y)[t.endSystem].tooltip]]) : j("", !0), 270 a[10] || (a[10] = N()), 271 t.endSubType && t.endSubType & L(8) ? (T(), M(P, { key: 2 }, [a[7] || (a[7] = N("\xA0", -1)), D((T(), M("i", at, [...a[6] || (a[6] = [N("wifi_off", -1)])])), [[l, "Die offline erfasste Zeit basiert auf den Zeiteinstellungen des verwendeten Endgeräts."]])], 64)) : j("", !0) 272 ], 64)) : (T(), M("span", ot, [a[12] || (a[12] = N("\n -- : --\n ", -1)), e.isManualMode ? D((T(), M("i", st, [...a[11] || (a[11] = [N("close", -1)])])), [[l, "Kein Ende hinterlegt"]]) : j("", !0)])), 273 a[22] || (a[22] = N()), 274 r(t) ? (T(), M("span", ct, "(Pflichtpause)")) : j("", !0), 275 a[23] || (a[23] = N()), 276 t.isOutOfWorkTime ? D((T(), M("span", lt, [...a[13] || (a[13] = [N("(auÃerhalb der Arbeitszeiten)", -1)])])), [[l, h(t)]]) : j("", !0) 277 ], 64)) : j("", !0), 278 a[34] || (a[34] = N()), 279 e.requestedCorrections[t.beginId] || e.requestedCorrections[t.endId] ? D((T(), M("i", ut, [...a[24] || (a[24] = [N("hourglass_empty", -1)])])), [[l, d(t)]]) : t.correction ? D((T(), M("i", dt, [...a[25] || (a[25] = [N("task_alt", -1)])])), [[l, d(t)]]) : !e.isProject && t.forgotLogout ? D((T(), M("i", ft, [...a[26] || (a[26] = [N("info", -1)])])), [[l, d(t)]]) : j("", !0), 280 a[35] || (a[35] = N()), 281 t.homeoffice ? (T(), M(P, { key: 7 }, [a[28] || (a[28] = N("\xA0", -1)), D((T(), M("i", pt, [...a[27] || (a[27] = [N("home", -1)])])), [[l, "Mobile Arbeit"]])], 64)) : j("", !0), 282 a[36] || (a[36] = N()), 283 t.patrol ? (T(), M(P, { key: 8 }, [a[30] || (a[30] = N("\xA0", -1)), D((T(), M("i", mt, [...a[29] || (a[29] = [N("work", -1)])])), [[l, "Dienstgang"]])], 64)) : j("", !0) 284 ])) : j("", !0)], 64))), 256))])], 2)])) : (T(), M("div", J, [ 285 e.isProject ? (T(), M("i", Y, "remove")) : j("", !0), 286 a[38] || (a[38] = N()), 287 e.isBreak && e.requestedCorrections["break_" + e.date] ? (T(), M("div", ht, [D((T(), M("i", gt, [...a[37] || (a[37] = [N("hourglass_empty", -1)])])), [[l, f(e.requestedCorrections["break_" + e.date])]])])) : j("", !0) 288 ])); 289 }; 290 } 291}), vt = { class: "no-margin" }, yt = { class: "row spacer-20" }, bt = { class: "col-4" }, xt = { 292 key: 0, 293 class: "flex-vertical-middle" 294}, St = ["innerHTML"], Ct = { 295 key: 0, 296 class: "padding-right-5"
297}, X = { key: 1 }, wt = { key: 1 }, Tt = { class: "col-4" }, Et = /* @__PURE__ */ B({ 298 __name: "EvaluationDayNote", 299 props: { 300 dayEntry: {}, 301 overtimeAbsences: {}, 302 requestedCorrections: {}, 303 employee: {}, 304 day: {}, 305 settings: { default: () => ({}) } 306 }, 307 emits: ["saved"], 308 setup(n, { expose: r, emit: a }) { 309 let c = ve("popup-emitter"), u = l(), d = n, f = A(() => "note-text-" + u._uid), p = R(), ee = _e({ 310 toolbarButtons: e(), 311 heightMin: 150 312 }), m = A(() => d.dayEntry.note ? v(d.dayEntry.note) : { note: "" }); 313 return c.emit("setButtons", [g, { 314 title: "Kommentar speichern", 315 icon: "save", 316 type: "save", 317 cmd: () => { 318 s(t(p.value), m.value.id, d.employee, d.day, "day").then((e) => { 319 c.emit("saved", e), C(() => c.emit("close")); 320 }); 321 } 322 }]), r(Object.assign({}, u)), (e, t) => (T(), M("form", { 323 onSubmit: t[1] || (t[1] = x(() => {}, ["prevent"])), 324 ref_key: "form", 325 ref: p, 326 class: "module-time-tracker" 327 }, [ 328 I("h1", vt, F(L(i)("D, d.m.Y", n.day)), 1), 329 t[10] || (t[10] = N()), 330 I("div", yt, [ 331 I("div", bt, [ 332 t[5] || (t[5] = I("div", null, [I("strong", null, "Arbeitszeit")], -1)), 333 t[6] || (t[6] = N()), 334 n.dayEntry.work_time.string ? (T(), M("div", xt, [ 335 I("span", { 336 innerHTML: n.dayEntry.work_time.string, 337 class: "padding-right-5" 338 }, null, 8, St), 339 t[2] || (t[2] = N()), 340 n.dayEntry.work_time.int && n.dayEntry.work_time.absence ? (T(), M("span", Ct, "(" + F(L(b)(n.dayEntry.work_time.int)) + ")", 1)) : j("", !0), 341 t[3] || (t[3] = N()), 342 n.overtimeAbsences[n.day] ? (T(), M("span", X, "(Stundenabbau " + F(n.overtimeAbsences[n.day].duration) + ")", 1)) : j("", !0) 343 ])) : (T(), M("div", wt, [...t[4] || (t[4] = [I("i", { 344 class: "material-icons", 345 "aria-hidden": "true", 346 role: "img" 347 }, "remove", -1)])])) 348 ]), 349 t[9] || (t[9] = N()), 350 I("div", Tt, [ 351 t[7] || (t[7] = I("div", null, [I("strong", null, "Anwesenheit")], -1)), 352 t[8] || (t[8] = N()), 353 k(_t, { 354 attendances: n.dayEntry.data, 355 "requested-corrections": n.requestedCorrections, 356 settings: n.settings 357 }, null, 8, [ 358 "attendances", 359 "requested-corrections", 360 "settings" 361 ]) 362 ]) 363 ]), 364 t[11] || (t[11] = N()), 365 k(o, { 366 label: "Kommentar", 367 class: "spacer-20" 368 }, { 369 default: O(() => [k(Ae, { 370 id: f.value, 371 name: "note", 372 modelValue: m.value.note, 373 "onUpdate:modelValue": t[0] || (t[0] = (e) => m.value.note = e), 374 config: ee 375 }, null, 8, [ 376 "id", 377 "modelValue", 378 "config" 379 ])]), 380 _: 1 381 }) 382 ], 544)); 383 } 384}), Dt = { 385 key: 0, 386 class: "default" 387}, Ot = ["innerHTML"], kt = { 388 key: 1, 389 class: "error" 390}, At = ["innerHTML"], jt = { 391 key: 2, 392 class: "default" 393}, Mt = ["innerHTML"], Nt = { 394 key: 3, 395 class: "flex margin-bottom-15", 396 style: { gap: "15px" } 397}, Pt = ["href"], Ft = { 398 key: 1, 399 class: "button button-primary" 400}, It = { 401 class: "button button-default", 402 type: "button" 403}, Lt = { style: { "max-width": "400px" } }, Rt = { 404 class: "button button-default", 405 type: "button" 406}, zt = { style: { "max-width": "400px" } }, Bt = { class: "infobox infobox-border" }, Vt = { class: "row" }, Ht = { class: "col-md-6" }, Ut = { class: "flex flex-vertical-middle" }, Wt = { class: "flex--item-left flex flex-wrap gap-10" }, Gt = { key: 0 }, Kt = { key: 1 }, qt = { 407 class: "material-icons icon-fix-top md-16", 408 "aria-hidden": "true", 409 role: "img" 410}, Jt = { class: "flex flex-vertical-middle flex--item-right" }, Yt = { 411 key: 0, 412 class: "evaluation-week-range no-print" 413}, Xt = { class: "flex flex-vertical-middle evaluation-week-range" }, Zt = { 414 key: 1, 415 class: "portuna-table portuna-table-bordered evaluation-box-table spacer-15" 416}, Qt = { 417 key: 0, 418 style: { width: "8%" } 419}, $t = { 420 key: 1, 421 style: { width: "16%" } 422}, en = { 423 key: 2, 424 style: { width: "30%" } 425}, tn = { 426 key: 3, 427 style: { width: "54px" } 428}, nn = { key: 0 }, rn = { key: 1 }, an = { key: 2 }, on = { 429 key: 3, 430 class: "no-border-top" 431}, sn = { class: "max-width-10" }, cn = { 432 key: 0, 433 class: "flex flex-vertical-middle", 434 "aria-label": "Dieser Tag liegt vor dem Start der Zeiterfassung und wird nicht auf die Wochen
434arbeitszeit angerechnet." 435}, ln = { 436 key: 0, 437 class: "flex-vertical-middle" 438}, un = ["innerHTML"], dn = { 439 key: 1, 440 "aria-label": "Arbeitszeit wurde aufgrund der Pausenabzug-Einstellung gekürzt", 441 class: "margin-left-5" 442}, fn = { 443 key: 2, 444 "aria-label": "Arbeitszeit ohne Zeitzuschläge", 445 class: "margin-left-5" 446}, pn = ["aria-label"], mn = { 447 key: 4, 448 class: "material-icons font-size-20", 449 "aria-hidden": "true", 450 role: "img" 451}, hn = { key: 5 }, gn = { 452 key: 6, 453 "aria-label": "Wird von der Wochenarbeitszeit abgezogen", 454 class: "padding-left-5 vertical-align-middle" 455}, _n = { 456 key: 7, 457 "aria-label": "Mobile Arbeit" 458}, vn = ["aria-label"], yn = { key: 3 }, bn = { key: 0 }, xn = { key: 2 }, Sn = { key: 0 }, Cn = { key: 0 }, wn = { 459 key: 1, 460 class: "text-success" 461}, Tn = { key: 0 }, En = { key: 1 }, Dn = { 462 class: "material-icons", 463 "aria-hidden": "true", 464 role: "img" 465}, On = { class: "font-weight-500" }, kn = { 466 key: 3, 467 class: "material-icons md-16 text-grey margin-left-5", 468 "aria-hidden": "true", 469 role: "img" 470}, An = { key: 1 }, jn = { key: 0 }, Mn = { key: 0 }, Nn = { key: 0 }, Pn = { key: 0 }, Fn = { 471 key: 0, 472 class: "material-icons text-success", 473 "aria-hidden": "true", 474 role: "img" 475}, In = { 476 key: 1, 477 class: "material-icons text-danger", 478 "aria-hidden": "true", 479 role: "img" 480}, Ln = { key: 1 }, Rn = { 481 key: 1, 482 class: "vertical-align-middle" 483}, zn = { 484 class: "material-icons md-16 text-grey margin-left-5", 485 "aria-hidden": "true", 486 role: "img" 487}, Bn = { key: 1 }, Vn = { key: 2 }, Hn = ["innerHTML"], Un = { key: 3 }, Wn = ["aria-label"], Gn = ["title"], Kn = ["aria-label"], qn = ["title"], Jn = ["title"], Yn = ["title"], Xn = { 488 key: 2, 489 title: "In der Zukunft kann keine Korrektur beantragt werden.", 490 class: "material-icons font-size-16", 491 "aria-hidden": "true", 492 role: "img" 493}, Zn = { 494 key: 3, 495 "aria-hidden": "true", 496 class: "material-icons pointer font-size-16", 497 role: "img" 498}, Qn = { 499 key: 1, 500 title: "Nur Mitarbeiter mit ausgewähltem Zeiterfassungssystem können Korrekturen beantragen.", 501 class: "material-icons font-size-16", 502 "aria-hidden": "true", 503 role: "img" 504}, $n = { 505 key: 6, 506 class: "row spacer-15" 507}, er = { class: "col-lg-6" }, tr = { 508 key: 1, 509 class: "portuna-table portuna-table-bordered vertical-align-middle" 510}, nr = { class: "text-center" }, rr = { key: 0 }, ir = { 511 class: "material-icons text-warning", 512 "aria-hidden": "true", 513 role: "img" 514}, ar = { class: "text-center" }, or = { key: 0 }, sr = { key: 1 }, cr = { key: 0 }, lr = { 515 "aria-hidden": "true", 516 class: "material-icons", 517 role: "img" 518}, ur = { 519 key: 0, 520 "aria-label": "Antrag anzeigen", 521 class: "inline-block" 522}, dr = { 523 key: 1, 524 "aria-label": "Abwesenheit anzeigen", 525 class: "inline-block" 526}, fr = { class: "text-center" }, pr = { colspan: "2" }, mr = { class: "padding-left-15" }, hr = { 527 "aria-hidden": "true", 528 class: "material-icons", 529 role: "img" 530}, gr = { 531 key: 0, 532 "aria-label": "Antrag anzeigen", 533 class: "inline-block padding-right-5" 534}, _r = { class: "text-center" }, vr = { 535 key: 0, 536 class: "material-icons cursor-help", 537 "aria-hidden": "true", 538 role: "img" 539}, yr = ["aria-label"], br = { 540 key: 0, 541 class: "material-icons", 542 "aria-hidden": "true", 543 role: "img" 544}, xr = { 545 class: "material-icons cursor-help", 546 "aria-hidden": "true", 547 role: "img" 548}, Sr = { 549 key: 1, 550 class: "material-icons cursor-help", 551 "aria-hidden": "true", 552 role: "img" 553}, Cr = { key: 2 }, wr = { 554 key: 3, 555 "aria-label": "Antrag anzeigen", 556 class: "inline-block padding-right-5" 557}, Tr = { key: 4 }, Er = { 558 key: 1, 559 class: "material-icons", 560 "aria-hidden": "true", 561 role: "img" 562}, Dr = { 563 key: 2, 564 class: "material-icons cursor-help text-danger md-20", 565 "aria-hidden": "true", 566 role: "img" 567}, Or = { class: "portuna-table portuna-table-bordered portuna-table-tr-bordered default-margin-top default-margin-bottom" }, kr = { key: 0 }, Ar = { key: 1 }, jr = { key: 1 }, Mr = { class: "text-overflow" }, Nr = { key: 1 }, Pr = { key: 2 }, Fr = ["title"], Ir = { 568 key: 0, 569 title: "Automatischer Pausenabzug" 570}, Lr = { key: 0 }, Rr = { key: 1 }, zr = ["title"], Br = { 571 key: 0, 572 title: "Automatischer Pausenabzug" 573}, Vr = { class: "thick-border-top font-weight-500" }, Hr = ["title"], Ur = { class: "spacer-10 spacer-10-bottom" }, Wr = { 574 key: 0, 575 title: "Automatischer Pausenabzug" 576}, Gr = ["title"], Kr = { class: "spacer-10 spacer-10-bottom" }, qr = { 577 key: 0, 578 title: "Automatischer Pausenabzug" 579}, Jr = { key: 2 }, Yr = { class: "spacer-10 spacer-10-bottom" }, Xr = { class: "spacer-10 spacer-10-bottom" }, Zr = { class: "portuna-table portuna-table-bordered portuna-table-tr-bordered default-margin-top default-margin-bottom" }, Qr = { class: "text-overflow" }, $r = { key: 1 }, ei = ["title"], ti = { 580 key: 0, 581 title: "Automatischer Pausenabzug" 582}, ni = { class: "thick-border-top font-weight-500" }, ri = ["title"], ii = { class: "spacer-10 spacer-10-bottom" }, ai = { 583 key: 0, 584 title: "Automatischer Pausenabzug" 585}, oi = { class: "col-lg-6" }, si = /* @__PURE__ */ B({ 586 __name: "EvaluationView", 587 props: { 588 employee: {}, 589 week: {}, 590 tableOnly: { 591 type: Boolean, 592 default: !1 593 } 594 }, 595 setup(t, { expose: a }) { 596 let o = l(), g = _(), v = t, { employee: x } = he(v), C = Se(), ve = xe(), B = A({ 597 get: () => v.week,
598 set: (e) => { 599 ve.push({ 600 name: "time-tracker-evaluation-view", 601 params: { 602 employee: String(v.employee), 603 week: e 604 } 605 }); 606 } 607 }), V = ze(o.currentUser, x, B), Ae = A(() => u(V.settings.value, v.week)), Fe = A(() => "time-tracker-correction-project-list"), Je = R([]), Ye = _e([ 608 c(), 609 { 610 label: "Zeiterfassung", 611 href: { name: "time-tracker" } 612 }, 613 { label: "Wochenansicht" } 614 ]), Xe = _e({ 615 toolbarButtons: e(), 616 heightMin: 150 617 }), H = R({}), U = R({}), W = R({}), Ze = R(""), Qe = R(0), $e = R([]), G = R(!1), et = R([]), K = R({}), tt = R({}), q = R(!1), nt = R([]), rt = R({}), it = R({}), at = R(!0), ot = R(!0), st = R(!1), ct = R(!1), lt = R(!1), ut = R(!1), dt = R(!0), ft = R(!1), pt = R({}), mt = R(!1), J = R({}), Y = R({}), ht = R(null), gt = R(!1), vt = R(!1), yt = R(!1), bt = _e({ 618 redm: { 619 type: "error", 620 icon: "clear", 621 message: "Die Mindestpausenzeit wurde nicht erreicht!" 622 }, 623 redp: { 624 type: "error", 625 icon: "clear", 626 message: "Eine Pause fand auÃerhalb der Pausenzeiten statt!" 627 }, 628 redl: { 629 type: "error", 630 icon: "clear", 631 message: "Eine Pause hat die maximale Pausenlänge überschritten!" 632 }, 633 work_session_violation: { 634 type: "error", 635 icon: "clear", 636 message: "Fehlende Ruhepause nach einer langen Arbeitssitzung!" 637 }, 638 noBirthday: { 639 type: "warning", 640 icon: "info", 641 message: "Dieser Mitarbeiter besitzt keinen eingetragenen Geburtstag. Der Geburtstag wird zur Berechnung der Mindestpausenzeit sowie bei der Ãberprüfung auf VerstöÃe benötigt!" 642 }, 643 inTolerance: { 644 type: "warning", 645 icon: "dangerous", 646 message: "Eine Pause hat die maximale Pausenlänge überschritten, die Pausenlänge befindet sich allerdings noch in der Toleranz!" 647 } 648 }), xt = R(!1), St = R({}), Ct = R(null), X = R(!1), wt = (e) => e !== "allocatedWorkTime" && e !== "calc" && e !== "raw" && e !== "color", Tt = (e) => { 649 let t = new Date(e).getDay(); 650 return t === 0 || t === 6; 651 }, si = (e) => S() && !!(e.relative_daily_surcharge || e.absolute_daily_surcharge), ci = (e) => { 652 var t, n, r, i; 653 return ((t = (n = e.relative_surcharges) == null ? void 0 : n.int) == null ? 0 : t) + ((r = (i = e.absolute_surcharges) == null ? void 0 : i.int) == null ? 0 : r); 654 }, Z = (e, t) => e[t] === void 0 ? "" : b(e[t].int, { showSeconds: !0 }), li = (e) => { 655 var t; 656 return e.work_time.int + (((t = e.break_time) == null ? void 0 : t.missing) || 0); 657 }, ui = (e) => { 658 var t; 659 return !ft.value || !e.work_time.int || !((t = e.break_time) != null && t.missing) ? !1 : e.work_time.int !== li(e); 660 }, di = (e) => `Die Arbeitszeit wurde von ${b(li(e))} auf ${b(e.work_time.int)} gekürzt, da der automatische Pausenabzug nur auf die überschrittene Arbeitszeit angewendet wird.`, fi = (e) => { 661 var t, n; 662 return !!((t = (n = pt.value) == null ? void 0 : n[e]) == null ? [] : t).length; 663 }, pi = (e) => !!(ut.value && e.break_time.missing), mi = (e, t) =>
663 fi(t) || pi(e), hi = (e, t) => { 664 let n = []; 665 if (fi(t)) { 666 let r = vi(e, t); 667 r && n.push(r); 668 } 669 if (pi(e)) { 670 let r = yi(e, t); 671 r && n.push(r); 672 } 673 return n.length ? `<div class="automatic-break-tooltip"> 674 ${n.join("<hr>")} 675 </div>` : ""; 676 }, gi = (e) => { 677 let t = /* @__PURE__ */ new Map(), n = (e, n, r, i) => { 678 if (n <= e) return; 679 let a = r && i ? `${r}-${i}` : `${e}-${n}`; 680 t.set(a, { 681 begin: e, 682 end: n 683 }); 684 }, r = [...e.data].sort((e, t) => e.begin - t.begin); 685 for (let e = 0; e < r.length - 1; e++) { 686 let t = r[e], i = r[e + 1]; 687 parseInt(t.endType) === 2 && parseInt(i.beginType) === 1 && n(t.end, i.begin, t.endId, i.beginId); 688 } 689 for (let t of e.pause.data) n(t.begin, t.end, t.beginId, t.endId); 690 return Array.from(t.values()).sort((e, t) => e.begin - t.begin).map((e) => be(be({}, e), {}, { credited: !dt.value || e.end - e.begin >= 900 })); 691 }, Q = (e) => { 692 let t = Math.floor(e / 3600), n = Math.floor(e % 3600 / 60); 693 if (e % 60 > 0) return b(e, { showSeconds: !0 }); 694 if (t === 0 && n === 0) return "0 Minuten"; 695 let r = []; 696 return t > 0 && r.push(`${t} ${t === 1 ? "Stunde" : "Stunden"}`), n > 0 && r.push(`${n} ${n === 1 ? "Minute" : "Minuten"}`), r.join(" "); 697 }, _i = (e, t, n, r, i) => `<div class="automatic-break-tooltip-rule is-${e === null ? "inactive" : e ? "fulfilled" : "violated"}"><div class="automatic-break-tooltip-rule-header"><div class="automatic-break-tooltip-rule-title-wrapper"><span class="automatic-break-tooltip-rule-icon">${e === null ? "—" : e ? "✓" : "✕"}</span><strong class="automatic-break-tooltip-rule-title">${t}</strong></div><strong class="automatic-break-tooltip-rule-status">${e === null ? "Nicht geprüft" : e ? r : i}</strong></div><div class="automatic-break-tooltip-rule-detail">${n}</div></div>`, vi = (e, t) => { 698 var n; 699 let r = (n = pt.value[t]) == null ? [] : n; 700 return r.length === 0 ? "" : `<div class="automatic-break-tooltip-title">Feste automatische Pausen</div> 701 <div class="automatic-break-tooltip-break-list">${r.map((n) => { 702 var r, a, o; 703 let s = { 704 begin: te(`${t} ${n.begin}`), 705 end: te(`${t} ${n.end}`) 706 }, c = (r = e.pause.data.map((e) => ee(e.begin, e.end, s.begin, s.end)).find((e) => e !== null && e[0] !== e[1])) == null ? null : r, l = (a = c == null ? void 0 : c[0]) == null ? null : a, u = c && !c[1], d = u || (o = c == null ? void 0 : c[1]) == null ? null : o, f = l !== s.begin, p = !u && d !== s.end, m = l == null ? s.begin : l, h = d == null ? s.end : d, g = h - m, _ = Q(g); 707 return u ? _ = "ist aktuell in der Pause" : f && p ? _ = "außerhalb der Arbeitszeit" : f ? _ = `Arbeitsbeginn ${i("H:i:s", m)} · ${_}` : p && (_ = `Arbeitsende ${i("H:i:s", h)} · ${_}`), `<div class="automatic-break-tooltip-break"><strong class="automatic-break-tooltip-break-icon">—</strong><span><strong>${`<span${f ? " class=\"text-line-through\"" : ""}>${i("H:i", s.begin)}</span>`} – ${`<span${p ? " class=\"text-line-through\"" : ""}>${i("H:i", s.end)}</span>`}</strong> · ${_}</span></div>`; 708 }).join("")}</div> 709 <div class="automatic-break-tooltip-setting">Diese Zeiten werden gemäß den Zeiterfassungseinstellungen automatisch gebucht.</div>`; 710 }, yi = (e, t) => { 711 var n, r, a, o, s; 712 let c = gi(e), l = c.reduce((e, t) => e + (t.credited ? t.end - t.begin : 0), 0), u = (n = e.break_time.credited_break_time) == null ? l : n, d = (r = e.break_time.required_break_time) == null ? e.break_time.mandatory : r, f = (a = e.break_time.continuous_work_threshold) == null ? 0 : a, p = (o = e.break_time.maximum_continuous_work_time) == null ? 0 : o, ee = (s = e.break_time.stretch_break) == null ? 0 : s, m = f > 0 && p > 0, h = m ? ee === 0 : null, g = u >= d, te = Math.max(0, d - u), _ = m ? `Sie haben <strong>${Q(p)}</strong> am Stück gearbeitet.<br>Erlaubt sind höchstens <strong>${Q(f)}</strong>.` : "Diese Regel wird mit der gewählten Einstellung nicht geprüft.", ne = `Ihre angerechnete Pausenzeit beträgt <strong>${Q(u)}</strong>.<br>Benötigt werden <strong>${Q(d)}</strong>.`, re = _i(h, "Arbeitszeit am Stück", _, "In Ordnung", "Zu lang"), v = _i(g, "Gesamte Pausenzeit", ne, "Ausreichend", "Nicht ausreichend"), ie = dt.value ? "Nur Pausen ab 15 Minuten werden angerechnet." : "Gemäß Einstellung werden auch Pausen unter 15 Minuten angerechnet.", ae = ""; 713 for (let e of c) { 714 let t = e.end - e.begin, n = e.credited ? "✓" : "✗
714", r = e.credited ? "credited" : "ignored", a = e.credited ? "angerechnet" : "nicht angerechnet"; 715 ae += `<div class="automatic-break-tooltip-break is-${r}"><strong class="automatic-break-tooltip-break-icon">${n}</strong><span><strong>${i("H:i", e.begin)}–${i("H:i", e.end)}</strong> · ${Q(t)} · ${a}</span></div>`; 716 } 717 ae || (ae = u > 0 ? `<div class="automatic-break-tooltip-empty-break is-credited">✓ Insgesamt angerechnet: <strong>${Q(u)}</strong></div>` : "<div class=\"automatic-break-tooltip-empty-break\">Keine erfasste Pause.</div>"); 718 let y = ""; 719 if (h === !1) { 720 let e = g ? "Da die gesetzliche Mindestpause durch Ihre erfassten Pausen bereits erfüllt ist, wird der Abzug zusätzlich zu Ihrer Pausenzeit vorgenommen." : "Sie wird aber für die gesamte Mindestpausenzeit berücksichtigt."; 721 y += `<div class="automatic-break-tooltip-reason"><strong>Grund:</strong> Sie haben länger als ${Q(f)} am Stück gearbeitet. Die dafür erforderliche Pflichtpause kann nicht mit früheren oder späteren Pausen verrechnet werden. ${e}</div>`; 722 } 723 return g || (y += `<div class="automatic-break-tooltip-reason"><strong>${h === !1 ? "Zusätzlich" : "Grund"}:</strong> Zur gesetzlichen Mindestpause fehlen <strong>${Q(te)}</strong>.</div>`), h === !1 && !g && (y += "<div class=\"automatic-break-tooltip-additional-reason\">Bei mehreren verletzten Regeln wird der höhere Abzug angewendet. Die Abzüge werden nicht addiert.</div>"), ft.value && (y += "<div class=\"automatic-break-tooltip-reason\"><strong>Berechnung:</strong> Laut Einstellung wird nur die Arbeitszeit oberhalb des gesetzlichen Grenzwerts abgezogen.</div>"), y || (y = "<div class=\"automatic-break-tooltip-reason\">Der Abzug ergibt sich aus der konfigurierten automatischen Pausenregel.</div>"), "<div class=\"automatic-break-tooltip-title\">Pausenprüfung</div><strong class=\"automatic-break-tooltip-section-title\">Regeln</strong>" + re + v + `<div class="automatic-break-tooltip-section"><strong class="automatic-break-tooltip-section-title">Erfasste Pausen</strong><div class="automatic-break-tooltip-break-list">${ae}</div><div class="automatic-break-tooltip-setting">${ie}</div></div><div class="automatic-break-tooltip-section"><strong class="automatic-break-tooltip-section-title">Ergebnis</strong><div class="automatic-break-tooltip-result"><div class="automatic-break-tooltip-result-header"><strong>Automatischer Pausenabzug</strong><strong class="automatic-break-tooltip-result-value">${Q(e.break_time.missing)}</strong></div>` + y + "<div class=\"automatic-break-tooltip-source\">Grundlage: §4 ArbZG</div></div></div>"; 724 }, bi = (e, t = !1) => { 725 if (!e || e.length === 0 || t && e.length < 2) return null; 726 let n = [...e].sort((e, t) => e.begin - t.begin), r = "", a = 0; 727 if (t) { 728 for (let e = 0; e < n.length - 1; e++) { 729 let t = n[e].end, o = n[e + 1].begin, s = o - t; 730 s > 0 && (a += s, r += `${i("H:i:s", t)} \u2013 ${i("H:i:s", o)} = ${b(s, { showSeconds: !0 })}<br>`); 731 } 732 if (!r) return null; 733 } else for (let e of n) { 734 let t = e.end ? e.end : Math.floor(Date.now() / 1e3), n = t - e.begin; 735 n > 0 && (a += n, r += `${i("H:i:s", e.begin)} \u2013 ${i("H:i:s", t)} = ${b(n, { showSeconds: !0 })}<br>`); 736 } 737 return `${r}<br><strong>Summe</strong> = ${b(a, { showSeconds: !0 })}`; 738 }, xi = (e) => { 739 if (!e.surcharges.details) return ""; 740 let t = Ue(e.surcharges.details.filter((e) => e.type === 1), !1), n = t.length ? `<strong>Zusätzliche Zeiten</strong><br/>${t}<br/><br/>` : "", r = Ue(e.surcharges.details.filter((e) => e.type === 2)), i = r.length ? `<strong>Zuschläge nach Zeitpunkt</strong><br/>${r}<br/><br/>` : "", a = Ue(e.surcharges.details.filter((e) => e.type & 12)); 741 return `${n} 742 ${i} 743 ${a.length ? `<strong>Projektzuschläge</strong><br/>${a}<br/><br/>` : ""} 744 ${`<strong>Gesamt ${Ge(e.surcharges.details.reduce((e, t) => e + t.calculatedAmount, 0))}</strong><br/><br/>`} 745 ${He()}`; 746 }, Si = (e) => { 747 var t, n, r, i; 748 if (!e.relative_daily_surcharge && !e.absolute_daily_surcharge) return "ohne Projektzeitzuschlag"; 749 let a = { 750 duration: e.time_net_without_surcharges.int, 751 showSeconds: !0 752 }
752, o = [be(be({}, a), {}, { 753 title: "relative Zuschläge", 754 type: 4, 755 calculatedAmount: (t = (n = e.relative_surcharges) == null ? void 0 : n.int) == null ? 0 : t 756 }), be(be({}, a), {}, { 757 title: "pauschale Zuschläge", 758 type: 8, 759 calculatedAmount: (r = (i = e.absolute_surcharges) == null ? void 0 : i.int) == null ? 0 : r 760 })]; 761 o = Ve(o); 762 let s = ""; 763 for (let e of o) s += Be(e) + "<br/>"; 764 return s += "<br/>", s += We(), s; 765 }, Ci = A(() => (e) => e.title === "Stundenkonto Vorwoche" ? "" : e.title === "Saldo (Stundenkonto)" || e.title === "Arbeitszeit" ? "2px solid #2A699E" : "1px solid #707070"), wi = A(() => (e) => e.title === "= Differenz" ? "2px solid #b64c36" : ""), Ti = (e, t, n = !1) => { 766 if (t === "time_tracker_overtime_cut") { 767 let t = {}; 768 n ? t.absenceId = e : t.id = e, C.dispatch("createPopup", { 769 title: "Stundenantrag anzeigen", 770 titleIcon: "access_time", 771 size: "small", 772 component: le(qe), 773 componentProps: t 774 }).then((e) => { 775 e.open(); 776 }); 777 return; 778 } 779 if (t === "vacation") { 780 C.dispatch("createPopup", { 781 title: "Urlaubsantrag", 782 titleIcon: "flight_takeoff", 783 size: "medium", 784 component: le(Re), 785 componentProps: { id: e } 786 }).then((e) => { 787 e.open(); 788 }); 789 return; 790 } 791 if (t === "absence") { 792 new h({ 793 title: "Abwesenheit", 794 titleIcon: "block", 795 size: "small", 796 component: je, 797 componentProps: { 798 id: e, 799 employeeId: v.employee 800 } 801 }).open(); 802 return; 803 } 804 if (t === "credit_request") { 805 C.dispatch("createPopup", { 806 title: "Antrag für Stundengutschrift anzeigen", 807 titleIcon: "access_time", 808 size: "small", 809 component: le(ke), 810 componentProps: { id: e } 811 }).then((e) => { 812 e.open(); 813 }); 814 return; 815 } 816 }, Ei = A(() => f(Ae.value)), Di = A(() => re(H.value, ({ key: e }) => wt(e))), Oi = (e) => !!V.startDate.value && e < V.startDate.value, ki = (e) => { 817 var t; 818 return !!((t = e.break_time) != null && t.work_end_open) || e.data.some((e) => !!e.begin && !e.end); 819 }, Ai = A(() => Object.keys(Di.value).filter((e) => Oi(e))), ji = A(() => Ai.value.length === 0 ? "" : "Die Zeiterfassung beginnt am " + i("d.m.Y", V.startDate.value) + ". Tage vor dem Start der Zeiterfassung werden nicht auf die Wochenarbeitszeit angerechnet und sind mit „Vor Zeiterfassungsstart“ gekennzeichnet."), Mi = A(() => { 820 let e = {}; 821 for (let t of Object.keys(Di.value)) { 822 let n = Di.value[t]; 823 for (let t of [n.data, n.pause.data]) for (let n of t) n.beginSystem && (e[n.beginSystem] = 1), n.endSystem && (e[n.endSystem] = 1); 824 } 825 return Object.keys(e); 826 }), Ni = A(() => [...Object.values(Di.value)].some((e) => e.surcharges.int !== 0)), Pi = A(() => v.tableOnly ? {} : { 827 headline: "Zeiterfassung: Wochenansicht", 828 breadcrumb: Ye 829 }), Fi = A(() => { 830 let e = []; 831 for (let t of Ie) !xt.value && [1, 2].includes(Ie.indexOf(t)) || e.push(t); 832 return e; 833 }), $ = A(() => ot.value), Ii = A(() => at.value), Li = A(() => Ii.value ? "Korrektur beantragen" : "Zeiten eintragen"), Ri = A(() => { 834 let e = Number(H.value.allocatedWorkTime.hours) * 3600 + Number(H.value.allocatedWorkTime.minutes * 60); 835 return H.value.raw === e; 836 }), zi = A(() => { 837 let e = "", t = H.value.raw, n = Qe.value * 3600, r = Number(H.value.allocatedWorkTime.hours) * 3600 + Number(H.value.allocatedWorkTime.minutes * 60), i = J.value.undertime_unrequested_max ? J.value.undertime_unrequested_max * 3600 : J.value.undertime_unrequested_max, a = J != null && J.value.overtime_unrequested_max ? J.value.overtime_unrequested_max * 3600 : J.value.overtime_unrequested_max, o = t - r; 838 return o > a && o >= n && o - n > 60 ? e = (J == null ? void 0 : J.value.overtime_unrequested_max) === null ? "Gemäà Ihren Einstellungen werden Ihnen Ãberstunden unbegrenzt pro Woche auf dem Stundenkonto gutgeschrieben." : `Gemäà Ihren Einstellungen werden Ihnen maximal ${J == null ? void 0 : J.value.overtime_unrequested_max} Ãberstunden pro Woche auf dem Stundenkonto gutgeschrieben.` : t > r ? e = (J == null ? void 0 : J.value.overtime_unrequested_max) === null ? "Ihre Ãberstunden wurden automatisch auf Ihrem Stundenkonto erfasst, da Ihre Einstellungen es erlauben eine automatische Stundengutschrift auf ihrem Stundenkonto zu erhalten." : `Ihre Ãberstunden wurden automatisch auf Ihrem Stundenkonto erfasst, da Ihre Einstellungen es erlauben bis zu maximal ${J == null ? void 0 : J.value.overtime_unrequested_max} Stunden pro Woche eine automatische Stundengutschrift auf ihrem Stundenkonto zu erhalten.` : r - t > i && o <= n ? e = (J == null ? void 0 : J.value.undertime_unrequested_max) === null ? "Ihre Einstellungen erlauben eine unbegrenzte Unterschreitung der wöchentlichen Arbeitszeit." : `Ihre Einstellungen erlauben eine Unterschreitung der wöchentlichen Arbeitszeit nur um ${J == null ? void 0 : J.value.undertime_unrequested_max} Stunden.` : t < r && t - r <= i && (e = (J == null ? void 0 : J.value.undertime_unrequested_max) === null ? "Ihre Minusstunden wurden von Ihrem Stundenkonto abgezogen. Gemäà Ihren Einstellungen dürfen Sie ohne Antrag auf Stundenabbau unbegrenzt Stunden pro Woche abbauen." : `Ihre Minusstunden wurden von Ihrem Stundenkonto abgezogen. Gemäà Ihren Einstellungen dürfen Sie ohne Antrag auf Stundenabbau maximal ${J == null ? void 0 : J.value.undertime_unrequested_max} Stunden pro Woche abbauen.`), e; 839 }), Bi = A(() => (e) => { 840 let t = e.title === "= Differenz", n = e.title === "Saldo (Stundenkonto)", r = e.title === "= Soll"; 841 return t || n || r ? "text-dark font-weight-bolder" : "font-weight-normal"; 842 }), Vi = A(() => (e) => { 843 if (e.title === "Saldo (Stundenkonto)" && e.value) { 844 let [t, n] = e.value.split(":").map(Number); 845 return t * 3600 + n * 60 > J.value.overtime_max * 3600; 846 } 847 return !1; 848 }), Hi = A(() => { 849 let e = H.value.raw, t = Qe.value * 3600, n = Number(H.value.allocatedWorkTime.hours) * 3600 + Number(H.value.allocatedWorkTime.minutes * 60), r = J.value.undertime_unrequested_max ? J.value.undertime_unrequested_max * 3600 : J.value.undertime_unrequested_max, i = J != null && J.value.overtime_unrequested_max ? J.value.overtime_unrequested_max * 3600 : J.value.overtime_unrequested_max, a = e - n; 850 return e === null || n === null || i === null || r === null ? "" : e === n ? "text-success" : a > i && !(e - n <= t) && a - t > 60 || n - e > r && !(e - n >= t) ? "text-danger" : e > n || e < n && a <= r || a > i && a <= t ? "text-info" : "text-warning"; 851 }), Ui = () => (V.dateInformation.value = se(v.week), C.dispatch("getPage", { url: `/employee/time-tracker/evaluation/fetch-view/employee/${v.employee}/week/${v.week}` }).then(({ data: { data: e } }) => { 852 H.value = e.listData, U.value = e.totalWorkTimeWidget, W.value = e.requestedCorrections || {}, $e.value = e.notes, Y.value = e.errorMessage, xt.value = e.timeTrackerCheckViolations, St.value = e.overtime_absences, Je.value = e.accessible_employees_select_options, Ct.value = e.week_entry, G.value = e.project_enabled, et.value = e.project_times, K.value = e.project_times_total, tt.value = e.project_times_date, q.value = e.contact_enabled, nt.value = e.contact_times, rt.value = e.contact_times_total, it.value = e.contact_times_date, at.value = e.mode_clock_enabled, ot.value = e.mode_manual_enabled, V.startDate.value = e.start_date, V.workStart.value = e.work_start, V.employeeEnabledSystems.value = e.systems, V.settings.value = e.settings, ht.value = e.freeze_end, gt.value = e.allow_manual_overt
852ime_freeze, vt.value = e.allowed_edit, yt.value = e.allowed_admin, mt.value = e.allow_work_outside_work_time_current, st.value = e.calculate_non_workdays, ct.value = e.calculate_before_work_start, lt.value = e.calculate_after_work_end, ut.value = e.time_tracker_automatic_break_time_deduction, dt.value = e.time_tracker_automatic_break_time_deduction_only_legal, ft.value = e.time_tracker_automatic_break_time_deduction_excess_time_only, pt.value = e.time_tracker_mandatory_break_times_per_day, J.value = e.settings, Qe.value = e.overtime_requested_hours; 853 }).catch((e) => { 854 console.error(e), oe(e), g.routerGoBack({ name: "time-tracker-evaluation" }); 855 })), Wi = () => (X.value = !0, C.dispatch("getPage", { 856 url: `/employee/time-tracker/evaluation/fetch-view/employee/${v.employee}/week/${v.week}`, 857 setLoading: !1 858 }).then(({ data: { data: e } }) => { 859 H.value = e.listData, U.value = e.totalWorkTimeWidget, W.value = e.requestedCorrections || {}; 860 }).catch((e) => { 861 console.error(e), oe(e), g.routerGoBack({ name: "time-tracker-evaluation" }); 862 }).finally(() => { 863 X.value = !1; 864 })), Gi = () => (X.value = !0, V.dateInformation.value = se(v.week), ae.get(`/employee/time-tracker/evaluation/fetch-view/employee/${v.employee}/week/${v.week}/table/1`).then(({ data: { data: e } }) => { 865 H.value = e.listData, V.employeeEnabledSystems.value = e.systems, Y.value = e.errorMessage, V.settings.value = e.settings; 866 }).catch((e) => { 867 oe(e); 868 }).finally(() => { 869 X.value = !1; 870 })), Ki = (e) => { 871 s(e, 0, v.employee, v.week, n).then((e) => { 872 Ze.value = "", $e.value.unshift(e); 873 }); 874 }, qi = (e, t) => { 875 let n = t.note, r = new h({ 876 title: n ? "Kommentar bearbeiten" : "Kommentar hinzufügen", 877 size: "medium", 878 titleIcon: "subject", 879 component: Et, 880 componentProps: { 881 employee: v.employee, 882 day: e, 883 dayEntry: t, 884 overtimeAbsences: St, 885 requestedCorrections: W, 886 settings: V.settings.value 887 }, 888 events: { saved: (e) => t.note = e } 889 }); 890 return r.open(), r; 891 }, Ji = (e, t) => { 892 if ($.value) { 893 ve.push({ 894 name: "time-tracker-evaluation-edit", 895 params: { 896 employee: String(v.employee), 897 week: v.week 898 } 899 }); 900 return; 901 } 902 Oe(t, e, { "send-request": () => { 903 Ui(), Wi(); 904 } }); 905 }, Yi = (e) => Ae.value[ce(e)], Xi = (e) => { 906 if (!U.value.absence_data || !U.value.absence_data.length) return !1; 907 let t = i("d.m.Y", e), n = U.value.absence_data[t] || []; 908 return Object.values(n).some((e) => e && e.type === "holiday"); 909 }, Zi = () => { 910 C.dispatch("createPopup", { 911 title: "Fixierter Stundenkonto-Wert", 912 titleIcon: "lock", 913 size: "small", 914 component: Ke, 915 componentProps: { 916 freezeEnd: ht.value, 917 text: "Sie können für diese Woche keine Korrekturen mehr beantragen, da für diese Woche die Auswertung geprüft und festgesetzt wurde." 918 } 919 }).then((e) => { 920 e.open(); 921 }); 922 }, Qi = (e) => { 923 if (W.value[0] === void 0 || W.value[0][e] === void 0) return ""; 924 let t = "Für diesen Tag wurde eine Korrektur beantragt:<br>"; 925 for (let [n, r] of Object.values(W.value[0][e])) { 926 [1, 3].includes(parseInt(n.type)) || ([n, r] = [r, n]); 927 let e = n ? i("H:i", n.stamp) : "", a = r ? i("H:i", r.stamp) : "", o = [parseInt(n == null ? void 0 : n.type), parseInt(r == null ? void 0 : r.type)].includes(1) ? "Arbeitszeit" : "Pausenzeit"; 928 t += `<br><strong>Neue ${o}</strong><br>` + (e ? `Beginn: ${e}<br>` : "") + (a ? `Ende: ${a}<br>` : ""); 929 } 930 return t; 931 }, $i = A(() => $.value || Ii.value), ea = () => { 932 v.tableOnly ? Gi() : Ui(); 933 }; 934 ea(); 935 let ta = (e) => !!Yi(e); 936 ge(v, ea, { deep: !0 }); 937 let na = Ee({ 938 emitter: o.emitter, 939 searchStorageScope: Fe 940 }); 941 return a(Object.assign({}, o, na.expose)), (e, n) => { 942 let a = de("router-link"), o = fe("interact"), s = fe("tooltip"), c = fe("sort"); 943 return T(), z(ye(t.tableOnly ? "div" : De), pe({ class: "module-time-tracker evaluation-view" }, Pi.value), me({ 944 default: O(() => [ 945 Y.value.default ? (T(), M("div", Dt, [ 946 n[3] || (n[3] = I("i", { 947 class: "material-icons md-light", 948 "aria-hidden": "true", 949 role: "img" 950 }, "info", -1)), 951 n[4] || (n[4] = N()), 952 I("div", { innerHTML: Y.value.default }, null, 8, Ot) 953 ])) : Y.value.error ? (T(), M("div", kt, [ 954 n[5] || (n[5] = I("i", { 955 class: "material-icons md-light", 956 "aria-hidden": "true", 957 role: "img" 958 }, "clear", -1)), 959 n[6] || (n[6] = N()), 960 I("div", { innerHTML: Y.value.error }, null, 8, At) 961 ])) : j("", !0), 962 n[194] || (n[194] = N()), 963 ji.value ? (T(), M("div", jt, [ 964 n[7] || (n[7] = I("i", { 965 class: "material-icons md-light", 966 "aria-hidden": "true", 967 role: "img" 968 }, "info", -1)), 969 n[8] || (n[8] = N()),
970 I("div", { innerHTML: ji.value }, null, 8, Mt) 971 ])) : j("", !0), 972 n[195] || (n[195] = N()), 973 t.tableOnly ? j("", !0) : (T(), M("div", Nt, [ 974 $.value ? (T(), z(a, { 975 key: 0, 976 to: { 977 name: "time-tracker-evaluation-edit", 978 params: { 979 employee: L(x), 980 week: B.value 981 } 982 }, 983 class: "button button-primary margin-right-15" 984 }, { 985 default: O(() => [...n[9] || (n[9] = [ 986 I("i", { 987 class: "material-icons", 988 "aria-hidden": "true", 989 role: "img" 990 }, "add", -1), 991 N(), 992 I("span", null, "Hinzufügen", -1) 993 ])]), 994 _: 1 995 }, 8, ["to"])) : j("", !0), 996 n[18] || (n[18] = N()), 997 I("a", { 998 href: `/employee/time-tracker/evaluation/generate-week/employee/${L(x)}/week/${B.value}`, 999 target: "_blank", 1000 class: "button button-primary" 1001 }, [...n[10] || (n[10] = [ 1002 I("i", { 1003 class: "material-icons", 1004 "aria-hidden": "true", 1005 role: "img" 1006 }, "picture_as_pdf", -1), 1007 N(), 1008 I("span", null, "PDF erstellen", -1) 1009 ])], 8, Pt), 1010 n[19] || (n[19] = N()), 1011 yt.value && L(ie)() ? D((T(), M("div", Ft, [...n[11] || (n[11] = [ 1012 I("i", { 1013 class: "material-icons", 1014 "aria-hidden": "true", 1015 role: "img" 1016 }, "import_export", -1), 1017 N(), 1018 I("span", null, "Vocus CSV-Export", -1) 1019 ])])), [[o, () => L(Le)(L(C), { 1020 defaultDateType: L(1), 1021 defaultDate: B.value, 1022 defaultEmployees: [L(x)] 1023 })]]) : j("", !0), 1024 n[20] || (n[20] = N()), 1025 n[21] || (n[21] = I("span", { class: "flex-grow" }, null, -1)), 1026 n[22] || (n[22] = N()), 1027 k(ne, { 1028 "close-on-scroll": !1, 1029 position: "bottom", 1030 "wrapper-element": "span" 1031 }, { 1032 default: O(({ toggle: e }) => [D((T(), M("button", It, [...n[12] || (n[12] = [ 1033 I("i", { 1034 class: "material-icons md-16", 1035 "aria-hidden": "true", 1036 role: "img" 1037 }, "info", -1), 1038 N(), 1039 I("span", null, [I("span", { class: "visible-md-inline-upward" }, "Informationen zum "), N("Arbeitsverhältnis")], -1) 1040 ])])), [[o, () => e()]])]), 1041 container: O(() => [I("div", Lt, [k(Pe, { 1042 "employee-id": L(x), 1043 "work-state-data": U.value.work_state_history 1044 }, null, 8, ["employee-id", "work-state-data"])])]), 1045 _: 1 1046 }), 1047 n[23] || (n[23] = N()), 1048 k(ne, { 1049 "close-on-scroll": !1, 1050 position: "bottom", 1051 "wrapper-element": "span" 1052 }, { 1053 default: O(({ toggle: e }) => [D((T(), M("button", Rt, [...n[14] || (n[14] = [I("i", { 1054 class: "material-icons md-16", 1055 "aria-hidden": "true", 1056 role: "img" 1057 }, "info", -1), I("span", null, "Legende", -1)])])), [[o, () => e()]])]), 1058 container: O(() => [I("div", zt, [I("div", Bt, [ 1059 n[15] || (n[15] = I("div", { class: "infobox-headline pointer" }, [I("strong", null, "Legende")], -1)), 1060 n[16] || (n[16] = N()), 1061 I("div", Vt, [(T(!0), M(P, null, w(Fi.value, (e) => (T(), M("div", Ht, [I("i", { 1062 class: E(["material-icons", e.iconClass]), 1063 role: "img", 1064 "aria-hidden": "true" 1065 }, F(e.icon), 3), N(" " + F(e.title), 1)]))), 256))]) 1066 ])])]), 1067 _: 1 1068 }) 1069 ])), 1070 n[196] || (n[196] = N()), 1071 t.tableOnly && (H.value.length === 0 || X.value) ? (T(), z(Ce, { key: 4 })) : j("", !0), 1072 n[197] || (n[197] = N()), 1073 !t.tableOnly || H.value.length !== 0 ? (T(), z(d, { 1074 key: 5, 1075 class: "evaluation-table-box no-padding" 1076 }, { 1077 title: O(() => [...n[24] || (n[24] = [I("i", { 1078 class: "material-icons", 1079 "aria-hidden": "true", 1080 role: "img" 1081 }, "access_time", -1)])]), 1082 additionally: O(() => [ 1083 I("div", Ut, [ 1084 Je.value.length > 1 ? (T(), z(r, { 1085 key: 0, 1086 options: Je.value, 1087 onInput: L(V).goToEmployee, 1088 class: "kool-choiz-transparent no-print text-overflow", 1089 "model-value": L(x), 1090 "inherit-width": !1 1091 }, null, 8, [ 1092 "options", 1093 "onInput", 1094 "model-value" 1095 ])) : j("", !0), 1096 n[25] || (n[25] = N()), 1097 n[26] || (n[26] = I("div", { class: "flex-grow" }, "\xA0", -1)) 1098 ]), 1099 n[36] || (n[36] = N()), 1100 I("div", Wt, [ 1101 $.value ? (T(), M("div", Gt, [...n[27] || (n[27] = [ 1102 I("i", { 1103 class: "material-icons icon-fix-top md-16", 1104 "aria-hidden": "true", 1105 role: "img" 1106 }, "article", -1), 1107 N(), 1108 I("span", null, "Manuelle Erfassung", -1) 1109 ])])) : j("", !0), 1110 n[29] || (n[29] = N()), 1111 Mi.value.length === 1 ? (T(), M("div", Kt, [ 1112 I("i", qt, F(L(y)[Mi.value[0]].icon), 1), 1113 n[28] || (n[28] = N()), 1114 I("span", null, F(L(y)[Mi.value[0]].tooltipCapture), 1) 1115 ])) : j("", !0) 1116 ]), 1117 n[37] || (n[37] = N()), 1118 I("div", Jt, [ 1119 !L(V).isToday.value && L(V).todayLinkParams.value ? (T(), M("div", Yt, [k(a, { to: L(V).todayLinkParams.value }, {
1120 default: O(() => [...n[30] || (n[30] = [ 1121 I("i", { 1122 class: "material-icons md-18", 1123 "aria-hidden": "true", 1124 role: "img" 1125 }, "radio_button_checked", -1), 1126 N(), 1127 I("span", null, "Heute", -1) 1128 ])]), 1129 _: 1 1130 }, 8, ["to"])])) : j("", !0), 1131 n[35] || (n[35] = N()), 1132 I("div", Xt, [ 1133 L(V).previousLinkParams.value ? (T(), z(a, { 1134 key: 0, 1135 to: L(V).previousLinkParams.value, 1136 class: "no-print", 1137 title: "7 Tage zurück" 1138 }, { 1139 default: O(() => [...n[31] || (n[31] = [I("i", { 1140 class: "material-icons", 1141 "aria-hidden": "true", 1142 role: "img" 1143 }, "arrow_left", -1)])]), 1144 _: 1 1145 }, 8, ["to"])) : j("", !0), 1146 n[33] || (n[33] = N()), 1147 k(p, { 1148 modelValue: B.value, 1149 "onUpdate:modelValue": n[0] || (n[0] = (e) => B.value = e), 1150 type: "week", 1151 "plain-text": "" 1152 }, { 1153 default: O(() => [N("\n (KW" + F(L(V).dateInformation.value.week) + ")\n ", 1)]), 1154 _: 1 1155 }, 8, ["modelValue"]), 1156 n[34] || (n[34] = N()), 1157 L(V).nextLinkParams.value ? (T(), z(a, { 1158 key: 1, 1159 to: L(V).nextLinkParams.value, 1160 class: "no-print", 1161 title: "7 Tage weiter" 1162 }, { 1163 default: O(() => [...n[32] || (n[32] = [I("i", { 1164 class: "material-icons", 1165 "aria-hidden": "true", 1166 role: "img" 1167 }, "arrow_right", -1)])]), 1168 _: 1 1169 }, 8, ["to"])) : j("", !0) 1170 ]) 1171 ]) 1172 ]), 1173 default: O(() => [ 1174 n[106] || (n[106] = N()), 1175 n[107] || (n[107] = N()), 1176 X.value ? (T(), z(Ce, { key: 0 })) : (T(), M("table", Zt, [ 1177 I("colgroup", null, [ 1178 n[38] || (n[38] = I("col", { style: { width: "40px" } }, null, -1)), 1179 n[39] || (n[39] = N()), 1180 n[40] || (n[40] = I("col", { style: { width: "12%" } }, null, -1)), 1181 n[41] || (n[41] = N()), 1182 n[42] || (n[42] = I("col", { style: { width: "18%" } }, null, -1)), 1183 n[43] || (n[43] = N()), 1184 n[44] || (n[44] = I("col", { style: { width: "18%" } }, null, -1)), 1185 n[45] || (n[45] = N()), 1186 Ii.value ? (T(), M("col", Qt)) : j("", !0), 1187 n[46] || (n[46] = N()), 1188 Ni.value ? (T(), M("col", $t)) : j("", !0), 1189 n[47] || (n[47] = N()), 1190 G.value || q.value ? (T(), M("col", en)) : j("", !0), 1191 n[48] || (n[48] = N()), 1192 I("col", { style: ue({ width: G.value ? "20%" : "auto" }) }, null, 4), 1193 n[49] || (n[49] = N()), 1194 t.tableOnly ? j("", !0) : (T(), M("col", tn)) 1195 ]), 1196 n[104] || (n[104] = N()), 1197 I("thead", null, [I("tr", null, [ 1198 n[50] || (n[50] = I("td", { class: "no-border-top" }, null, -1)), 1199 n[51] || (n[51] = N()), 1200 n[52] || (n[52] = I("th", null, "Datum", -1)), 1201 n[53] || (n[53] = N()), 1202 n[54] || (n[54] = I("th", null, "Arbeitszeit", -1)), 1203 n[55] || (n[55] = N()), 1204 n[56] || (n[56] = I("th", null, "Pausenzeit", -1)), 1205 n[57] || (n[57] = N()), 1206 Ii.value ? (T(), M("th", nn, "Kernzeit")) : j("", !0), 1207 n[58] || (n[58] = N()), 1208 Ni.value ? (T(), M("th", rn, "Zeitzuschläge")) : j("", !0), 1209 n[59] || (n[59] = N()), 1210 G.value || q.value ? (T(), M("th", an, "Projektzeiten")) : j("", !0), 1211 n[60] || (n[60] = N()), 1212 n[61] || (n[61] = I("th", null, "Kommentar", -1)), 1213 n[62] || (n[62] = N()), 1214 t.tableOnly ? j("", !0) : (T(), M("td", on)) 1215 ])]), 1216 n[105] || (n[105] = N()), 1217 I("tbody", null, [(T(!0), M(P, null, w(Di.value, (e, r) => { 1218 var a; 1219 return T(), M("tr", { class: E(["vertical-align-top", Tt(r) || Xi(r) ? "evaluation-weekend" : ""]) }, [ 1220 n[95] || (n[95] = I("td", null, null, -1)), 1221 n[96] || (n[96] = N()), 1222 I("td", sn, F(L(i)("D, d.m.Y", r)), 1), 1223 n[97] || (n[97] = N()), 1224 I("td", null, [ 1225 Oi(r) ? D((T(), M("span", cn, [...n[63] || (n[63] = [ 1226 I("i", { 1227 class: "material-icons", 1228 "aria-hidden": "true", 1229 role: "img" 1230 }, "remove", -1), 1231 N(), 1232 I("strong", null, "Vor Zeiterfassungsstart", -1) 1233 ])])), [[s]]) : $.value || r <= L(V).today || e.work_time.absence || e.work_time.absence_time ? (T(), M(P, { key: 1 }, [ 1234 e.work_time.string || !$.value || e.data.length !== 0 || e.work_time.absence ? (T(), M("div", ln, [ 1235 e.work_time.string ? D((T(), M("strong", { 1236 key: 0, 1237 innerHTML: e.work_time.string, 1238 class: E({ "text-warning": !ta(r) }) 1239 }, null, 10, un)), [[s, () => bi(e.data)]]) : j("", !0), 1240 n[68] || (n[68] = N()), 1241 ui(e) ? D((T(), M("small", dn, [N("\n (" + F(L(b)(li(e), { showSeconds: !0 })) + ")\n ", 1)])), [[s, di(e)]]) : j("", !0), 1242 n[69] || (n[69] = N()), 1243 e.surcharges && e.surcharges.int ? D((T(), M("small", fn, [
1243N("\n (" + F(L(b)(e.work_time.int - e.surcharges.int, { showSeconds: !0 })) + ")\n ", 1)])), [[s]]) : j("", !0), 1244 n[70] || (n[70] = N()), 1245 e.work_time.has_info_popup ? D((T(), M("span", { 1246 key: 3, 1247 "aria-label": e.work_time.type === "absence" ? "Abwesenheit anzeigen" : "Antrag anzeigen", 1248 class: "display-inline-block padding-left-5 padding-right-5" 1249 }, [...n[64] || (n[64] = [I("i", { 1250 "aria-hidden": "true", 1251 class: "material-icons link-color", 1252 role: "img" 1253 }, "visibility", -1)])], 8, pn)), [[o, () => Ti(e.work_time.id, e.work_time.type, ["time_tracker_overtime_cut", "absence"].includes(e.work_time.type))], [s]]) : j("", !0), 1254 n[71] || (n[71] = N()), 1255 W.value[0] && W.value[0][r] ? D((T(), M("i", mn, [...n[65] || (n[65] = [N("hourglass_empty", -1)])])), [[s, Qi(r)]]) : j("", !0), 1256 n[72] || (n[72] = N()), 1257 n[73] || (n[73] = I("br", null, null, -1)), 1258 n[74] || (n[74] = N()), 1259 St.value[r] ? (T(), M("span", hn, "(" + F(St.value[r].duration) + ")", 1)) : j("", !0), 1260 n[75] || (n[75] = N()), 1261 e.work_time.type === "absence" && e.work_time.absence_time !== 0 ? D((T(), M("span", gn, [...n[66] || (n[66] = [I("img", { 1262 alt: "Wochenarbeitszeit abgezogen", 1263 src: "/img/absences_icon.svg", 1264 style: { "max-width": "20px" } 1265 }, null, -1)])])), [[s]]) : j("", !0), 1266 n[76] || (n[76] = N()), 1267 e.home_office ? D((T(), M("span", _n, [...n[67] || (n[67] = [I("i", { 1268 "aria-hidden": "true", 1269 class: "material-icons text-success font-size-20 margin-left-5 vertical-align-middle", 1270 role: "img" 1271 }, "home", -1)])])), [[s]]) : j("", !0) 1272 ])) : j("", !0), 1273 n[78] || (n[78] = N()), 1274 e.work_time.int && e.work_time.absence ? D((T(), M("div", { 1275 key: 1, 1276 class: E(["font-weight-500", { "text-warning": mt.value && !ta(r) }]) 1277 }, [N(F(L(b)(e.work_time.int)), 1)], 2)), [[s, () => bi(e.data)]]) : !ta(r) && e.data.length && !st.value ? D((T(), M("span", { 1278 key: 2, 1279 class: "text-warning flex", 1280 "aria-label": "Diese Zeiten werden nicht auf Ihre wöchentliche Arbeitszeit gerechnet. Ihre Arbeitstage sind " + Ei.value.days 1281 }, [...n[77] || (n[77] = [I("i", { 1282 class: "material-icons text-warning font-size-20", 1283 "aria-hidden": "true", 1284 role: "img" 1285 }, "priority_high", -1), I("strong", null, "auÃerhalb der Arbeitstage", -1)])], 8, vn)), [[s]]) : $.value && e.data.length === 0 ? (T(), M("span", yn, [B.value >= L(V).currentWeek.value || !Ct.value ? (T(), M("strong", bn, "keine Daten eingetragen")) : j("", !0)])) : j("", !0) 1286 ], 64)) : (T(), M("span", xn, [...n[79] || (n[79] = [I("i", { 1287 class: "material-icons", 1288 "aria-hidden": "true", 1289 role: "img" 1290 }, "remove", -1)])])), 1291 n[80] || (n[80] = N()), 1292 (r <= L(V).today || $.value) && !Oi(r) ? (T(), z(_t, { 1293 key: r + "_workTime", 1294 attendances: e.data, 1295 "requested-corrections": W.value, 1296 "is-manual-mode": $.value, 1297 "has-multiple-systems": L(V).employeeEnabledSystems.value.length > 1, 1298 settings: L(V).settings.value, 1299 "allow-work-outside-work-time": mt.value 1300 }, null, 8, [ 1301 "attendances", 1302 "requested-corrections", 1303 "is-manual-mode", 1304 "has-multiple-systems", 1305 "settings", 1306 "allow-work-outside-work-time" 1307 ])) : j("", !0) 1308 ]), 1309 n[98] || (n[98] = N()), 1310 I("td", null, [ 1311 I("div", { class: E(["vertical-align-middle", { flex: !e.pause.data.length }]) }, [ 1312 r <= L(V).today && !ki(e) ? (T(), M(P, { key: 0 }, [e.work_time.int ? (T(), M("span", Sn, [ 1313 e.break_time.status ? e.break_time.status === "ok" ? (T(), M("strong", wn, [ 1314 n[81] || (n[81] = I("i", { 1315 class: "material-icons", 1316 "aria-hidden": "true", 1317 role: "img" 1318 }, "check", -1)), 1319 n[82] || (n[82] = N()), 1320 ut.value && e.break_time.missing ? D((T(), M("span", Tn, [N(F(L(b)(e.break_time.int)), 1)])), [[s, () => L(b)(e.break_time.int, { showSeconds: !0 })]]) : D((T(), M("span", En, [N(F(L(b)(e.break_time.int)), 1)])), [[s, () => bi(e.data, !0)]]) 1321 ])) : D((T(), M("strong", { 1322 key: 2, 1323 class: E({ 1324 "text-danger": bt[e.break_time.status].type === "error", 1325 "text-warning": bt[e.break_time.status].type === "warning" 1326 }) 1327 }, [ 1328 I("i", Dn, F(bt[e.break_time.status].icon), 1), 1329 n[83] || (n[83] = N()), 1330 D((T(), M("span", On, [N(F(L(b)(e.break_time.int)), 1)])), [[s, () => bi(e.data, !0)]]) 1331 ], 2)), [[s, bt[e.break_time.status].message]]) : D((T(), M("strong", Cn, [N(F(L(b)(e.break_time.int)), 1)])), [[s, () => bi(e.data, !0)]]), 1332 n[85] || (n[85] = N()), 1333 mi(e, r) ? D((T(), M("i", kn, [...n[84] || (n[84] = [N("info", -1)])])), [[s, { 1334 text: () => hi(e, r), 1335 css: { maxWidth: "500px" } 1336 }]]) : j("", !0)
1337 ])) : j("", !0)], 64)) : Ii.value || ki(e) ? (T(), M("span", An, [...n[86] || (n[86] = [I("i", { 1338 class: "material-icons", 1339 "aria-hidden": "true", 1340 role: "img" 1341 }, "remove", -1)])])) : j("", !0), 1342 n[87] || (n[87] = N()), 1343 (r <= L(V).today || $.value) && !ki(e) ? (T(), z(_t, { 1344 key: r + "_breakTime", 1345 attendances: e.pause.data, 1346 "requested-corrections": W.value, 1347 "is-break": "", 1348 "is-manual-mode": $.value, 1349 "has-multiple-systems": L(V).employeeEnabledSystems.length > 1, 1350 date: r, 1351 settings: L(V).settings.value, 1352 "allow-work-outside-work-time": mt.value 1353 }, null, 8, [ 1354 "attendances", 1355 "requested-corrections", 1356 "is-manual-mode", 1357 "has-multiple-systems", 1358 "date", 1359 "settings", 1360 "allow-work-outside-work-time" 1361 ])) : j("", !0) 1362 ], 2), 1363 n[89] || (n[89] = N()), 1364 ut.value && e.break_time.missing && !ki(e) ? (T(), M("div", jn, [I("strong", null, [e.break_time.missing === e.break_time.int ? j("", !0) : (T(), M("span", Mn, F(L(b)(e.break_time.missing)) + "\xA0", 1)), n[88] || (n[88] = N("automatisch abgezogen", -1))])])) : j("", !0) 1365 ]), 1366 n[99] || (n[99] = N()), 1367 Ii.value ? (T(), M("td", Nn, [r <= L(V).today ? (T(), M(P, { key: 0 }, [e.work_time.int ? (T(), M("span", Pn, [e.core_time ? (T(), M("i", Fn, "done")) : (T(), M("i", In, "clear"))])) : j("", !0)], 64)) : Ii.value ? (T(), M("span", Ln, [...n[90] || (n[90] = [I("i", { 1368 class: "material-icons", 1369 "aria-hidden": "true", 1370 role: "img" 1371 }, "remove", -1)])])) : j("", !0)])) : j("", !0), 1372 n[100] || (n[100] = N()), 1373 Ni.value ? (T(), M("td", Rn, [L(S)() ? (T(), M(P, { key: 0 }, [ 1374 I("span", null, F(L(b)(e.surcharges.int, { showSeconds: !0 })), 1), 1375 n[92] || (n[92] = N()), 1376 D((T(), M("i", zn, [...n[91] || (n[91] = [N("\n info\n ", -1)])])), [[s, () => xi(e)]]) 1377 ], 64)) : D((T(), M("span", Bn, [N(F(L(b)(e.surcharges.int, { showSeconds: !0 })), 1)])), [[s, e.surcharges.info]])])) : j("", !0), 1378 n[101] || (n[101] = N()), 1379 G.value || q.value ? (T(), M("td", Vn, [r <= L(V).today || $.value ? (T(), z(_t, { 1380 key: r + "_projectTimes", 1381 attendances: (a = tt.value[r]) == null ? [] : a, 1382 "requested-corrections": W.value, 1383 "is-project": G.value, 1384 "is-contact": q.value, 1385 "is-manual-mode": $.value, 1386 "has-multiple-systems": L(V).employeeEnabledSystems.value.length > 1, 1387 settings: L(V).settings, 1388 "allow-work-outside-work-time": mt.value 1389 }, null, 8, [ 1390 "attendances", 1391 "requested-corrections", 1392 "is-project", 1393 "is-contact", 1394 "is-manual-mode", 1395 "has-multiple-systems", 1396 "settings", 1397 "allow-work-outside-work-time" 1398 ])) : j("", !0)])) : j("", !0), 1399 n[102] || (n[102] = N()), 1400 I("td", null, [e.note ? (T(), M("div", { 1401 key: 0, 1402 innerHTML: e.note.note, 1403 class: "message-content fr-view" 1404 }, null, 8, Hn)) : j("", !0)]), 1405 n[103] || (n[103] = N()), 1406 t.tableOnly ? j("", !0) : (T(), M("td", Un, [ 1407 D((T(), M("span", { 1408 "aria-label": e.note ? "Kommentar bearbeiten" : "Kommentar hinzufügen", 1409 class: "icon-interact" 1410 }, [I("i", { 1411 title: e.note ? "Kommentar bearbeiten" : "Kommentar hinzufügen", 1412 class: "material-icons text-info font-size-16", 1413 "aria-hidden": "true", 1414 role: "img" 1415 }, "subject", 8, Gn)], 8, Wn)), [[o, () => qi(r, e)]]), 1416 n[94] || (n[94] = N()), 1417 $i.value ? (T(), M(P, { key: 0 }, [!ht.value && e.editable && (r <= L(V).today || $.value || (G.value || q.value) && r === L(V).today) ? D((T(), M("span", { 1418 key: 0, 1419 "aria-label": Li.value, 1420 class: "icon-interact" 1421 }, [mt.value && !ta(r) ? (T(), M("i", { 1422 key: 0, 1423 title: Li.value, 1424 class: "material-icons text-warning font-size-16", 1425 "aria-hidden": "true", 1426 role: "img" 1427 }, "history_toggle_off", 8, qn)) : (T(), M("i", { 1428 key: 1, 1429 title: Li.value, 1430 class: E(["material-icons font-size-16", e.data.length ? "text-warning" : "color-primary"]), 1431 "aria-hidden": "true", 1432 role: "img" 1433 }, "edit", 10, Jn))], 8, Kn)), [[o, () => Ji(r, L(x))]]) : e.message ? (T(), M("i", { 1434 key: 1, 1435 title: e.message, 1436 class: "material-icons font-size-16", 1437 "aria-hidden": "true", 1438 role: "img" 1439 }, "edit", 8, Yn)) : r > L(V).today ? (T(), M("i", Xn, "hourglass_empty")) : ht.value && B.value <= ht.value.date ? D((T(), M("i", Zn, [...n[93] || (n[93] = [N("edit", -1)])])), [[o, () => Zi()], [s, "Der Wert des Stundenkontos wurde für diese Woche festgesetzt, um das Stundenkonto des Mitarbeiter
1439s vor Ãnderungen zu schützen. Die Auswertung für diese Woche kann daher nicht verändert werden."]]) : j("", !0)], 64)) : !$i.value && e.data.length ? (T(), M("i", Qn, "edit")) : j("", !0) 1440 ])) 1441 ], 2); 1442 }), 256))]) 1443 ])) 1444 ]), 1445 _: 1 1446 })) : j("", !0), 1447 n[198] || (n[198] = N()), 1448 t.tableOnly ? j("", !0) : (T(), M("div", $n, [ 1449 I("div", er, [ 1450 k(d, { 1451 class: "no-padding", 1452 title: "Wochenzeit und Stundenkonto", 1453 "title-icon": "access_time" 1454 }, { 1455 default: O(() => [X.value ? (T(), z(Ce, { key: 0 })) : (T(), M("table", tr, [I("tbody", null, [ 1456 I("tr", null, [ 1457 n[108] || (n[108] = I("td", null, [I("strong", null, "Wochenarbeitszeit:")], -1)), 1458 n[109] || (n[109] = N()), 1459 I("td", nr, [I("strong", null, F(U.value.weekly_time), 1)]) 1460 ]), 1461 n[141] || (n[141] = N()), 1462 U.value.reduction_data ? (T(), M("tr", rr, [ 1463 I("td", null, [I("strong", null, [I("i", ir, F(U.value.reduction_data.icon), 1), N(" " + F(U.value.reduction_data.title), 1)])]), 1464 n[110] || (n[110] = N()), 1465 I("td", ar, [U.value.reduction_data.value > 0 ? (T(), M("strong", or, "+" + F(L(b)(U.value.reduction_data.value)), 1)) : U.value.reduction_data.value < 0 ? (T(), M("strong", sr, F(L(b)(U.value.reduction_data.value)), 1)) : j("", !0)]) 1466 ])) : j("", !0), 1467 n[142] || (n[142] = N()), 1468 (T(!0), M(P, null, w(U.value.absence_data, (e, t) => (T(), M(P, null, [e.length === 1 ? (T(), M("tr", cr, [ 1469 I("td", null, [I("strong", null, [ 1470 N(F(t) + "\n (", 1), 1471 I("i", lr, F(e[0].icon), 1), 1472 N(" " + F(e[0].title) + " ", 1), 1473 e[0].type === "vacation" && e[0].ids && e[0].ids.length === 1 ? D((T(), M("span", ur, [...n[111] || (n[111] = [I("i", { 1474 "aria-hidden": "true", 1475 class: "material-icons link-color", 1476 role: "img" 1477 }, "visibility", -1)])])), [[o, () => Ti(e[0].ids[0], "vacation")], [s]]) : j("", !0), 1478 n[113] || (n[113] = N()), 1479 e[0].type === "absence" && e[0].ids && e[0].ids.length === 1 ? D((T(), M("span", dr, [...n[112] || (n[112] = [I("i", { 1480 "aria-hidden": "true", 1481 class: "material-icons link-color", 1482 role: "img" 1483 }, "visibility", -1)])])), [[o, () => Ti(e[0].ids[0], "absence")], [s]]) : j("", !0), 1484 n[114] || (n[114] = N(")\n ", -1)) 1485 ])]), 1486 n[115] || (n[115] = N()), 1487 I("td", fr, [D((T(), M("strong", null, [N(F(L(b)(e[0].value)), 1)])), [[s, e[0].tooltip || null]])]) 1488 ])) : (T(), M(P, { key: 1 }, [ 1489 I("tr", null, [I("td", pr, [I("strong", null, F(t), 1)])]), 1490 n[119] || (n[119] = N()), 1491 (T(!0), M(P, null, w(e, (e) => (T(), M("tr", null, [ 1492 I("td", mr, [I("strong", null, [ 1493 n[117] || (n[117] = N("\n â ", -1)), 1494 I("i", hr, F(e.icon), 1), 1495 N(" " + F(e.title) + " ", 1), 1496 e.type === "vacation" && e.ids && e.ids.length === 1 ? D((T(), M("span", gr, [...n[116] || (n[116] = [I("i", { 1497 "aria-hidden": "true", 1498 class: "material-icons link-color", 1499 role: "img" 1500 }, "visibility", -1)])])), [[o, () => Ti(e.ids[0], "vacation")], [s]]) : j("", !0) 1501 ])]), 1502 n[118] || (n[118] = N()), 1503 I("td", _r, [D((T(), M("strong", null, [N(F(L(b)(e.value)), 1)])), [[s, e.tooltip || null]])]) 1504 ]))), 256)) 1505 ], 64))], 64))), 256)), 1506 n[143] || (n[143] = N()), 1507 (T(!0), M(P, null, w(U.value.work_data, (t) => (T(), M("tr", null, [t.overtime_ids ? (T(), M("td", { 1508 key: 0, 1509 style: ue({ 1510 borderBottom: wi.value(t), 1511 borderTop: Ci.value(t) 1512 }), 1513 colspan: "2" 1514 }, [ 1515 I("strong", { class: E(Bi.value(t)) }, F(t.title), 3), 1516 n[122] || (n[122] = N()), 1517 t.settingsToolTip ? D((T(), M("i", vr, [...n[120] || (n[120] = [N("\n settings\n ", -1)])])), [[s, t.settingsToolTip]]) : j("", !0), 1518 N("\n - " + F(t.
1518is_assigned ? "angeordnet" : "genehmigter Antrag") + " ", 1), 1519 t.overtime_ids.length === 1 ? D((T(), M("span", { 1520 key: 1, 1521 "aria-label": t.is_assigned ? "Angeordneten Stundenabbau anzeigen" : "Antrag anzeigen", 1522 class: "inline-block padding-right-5" 1523 }, [...n[121] || (n[121] = [I("i", { 1524 "aria-hidden": "true", 1525 class: "material-icons link-color", 1526 role: "img" 1527 }, "visibility", -1)])], 8, yr)), [[o, () => Ti(t.overtime_ids[0], "time_tracker_overtime_cut")], [s]]) : j("", !0), 1528 n[123] || (n[123] = N()), 1529 n[124] || (n[124] = I("span", null, "bis zu:", -1)), 1530 n[125] || (n[125] = N()), 1531 I("strong", null, [(T(), z(ye(t.href ? "router-link" : "span"), pe({ ref_for: !0 }, { to: t.href ? t.href : "" }), { 1532 default: O(() => [N(F(t.value) + " ", 1), t.icon ? (T(), M("i", br, F(t.icon), 1)) : j("", !0)]), 1533 _: 2 1534 }, 1040))]) 1535 ], 4)) : (T(), M(P, { key: 1 }, [ 1536 I("td", { style: ue({ 1537 borderBottom: wi.value(t), 1538 borderTop: Ci.value(t) 1539 }) }, [ 1540 I("strong", { class: E(Bi.value(t)) }, F(t.title), 3), 1541 n[130] || (n[130] = N()), 1542 t.settingsToolTip ? (T(), z(a, { 1543 key: 0, 1544 to: { 1545 name: "time-tracker-settings-edit", 1546 params: { 1547 type: 2, 1548 entity: 0, 1549 employee: L(x) 1550 } 1551 } 1552 }, { 1553 default: O(() => [D((T(), M("i", xr, [...n[126] || (n[126] = [N("\n settings\n ", -1)])])), [[s, t.settingsToolTip]])]), 1554 _: 2 1555 }, 1032, ["to"])) : j("", !0), 1556 n[131] || (n[131] = N()), 1557 t.infoTooltip ? D((T(), M("i", Sr, [...n[127] || (n[127] = [N("\n info\n ", -1)])])), [[s, { 1558 text: t.infoTooltip, 1559 css: { maxWidth: "600px" } 1560 }]]) : j("", !0), 1561 n[132] || (n[132] = N()), 1562 t.type === "credit_edited" ? D((T(), M("span", Cr, [...n[128] || (n[128] = [I("i", { 1563 "aria-hidden": "true", 1564 class: "material-icons link-color", 1565 role: "img" 1566 }, "info", -1)])])), [[s, "Von " + L(m)(t.creator) + " am " + L(i)("d.m.Y, H:i", t.created) + " Uhr."]]) : j("", !0), 1567 n[133] || (n[133] = N()), 1568 t.type === "credit_request" && t.id ? D((T(), M("span", wr, [...n[129] || (n[129] = [I("i", { 1569 "aria-hidden": "true", 1570 class: "material-icons link-color", 1571 role: "img" 1572 }, "visibility", -1)])])), [[o, () => Ti(t.id, t.type)], [s]]) : j("", !0), 1573 n[134] || (n[134] = N()), 1574 t.lastWeekAccount ? (T(), M("span", Tr, "\n Vorwoche: " + F(t.lastWeekAccount), 1)) : j("", !0) 1575 ], 4), 1576 n[140] || (n[140] = N()), 1577 I("td", { 1578 class: "text-center", 1579 style: ue({ 1580 borderBottom: wi.value(t), 1581 borderTop: Ci.value(t) 1582 }) 1583 }, [I("strong", { class: E(Bi.value(t)) }, [(T(), z(ye(t.href ? "router-link" : "div"), pe({ ref_for: !0 }, { to: t.href ? t.href : "" }), { 1584 default: O(() => [ 1585 I("span", { class: E(t.title === "Arbeitszeit" || t.title === "Differenz" ? Hi.value : t.color) }, F(t.value), 3), 1586 n[137] || (n[137] = N()), 1587 !Ri.value && t.title === "Arbeitszeit" && B.value !== e.currentWeek && (J.value.overtime_unrequested_max !== null || J.value.undertime_unrequested_max !== null) ? D((T(), M("i", { 1588 key: 0, 1589 class: E(["material-icons cursor-help md-20", Hi.value]), 1590 "aria-hidden": "true", 1591 role: "img" 1592 }, [...n[135] || (n[135] = [N("info", -1)])], 2)), [[s, zi.value]]) : j("", !0), 1593 n[138] || (n[138] = N()), 1594 t.icon ? (T(), M("i", Er, F(t.icon), 1)) : j("", !0), 1595 n[139] || (n[139] = N()), 1596 t.title === "Saldo (Stundenkonto)" && Vi.value(t) && J.value.overtime_max !== null ? D((T(), M("i", Dr, [...n[136] || (n[136] = [N("access_time_filled", -1)])])), [[s, "Der zulässige Höchstwert für Ãberstunden beträgt " + J.value.overtime_max + " Stunden. Nur bis zu diesem Wert werden Ihnen Ãberstunden auf dem Stundenkonto gutgeschrieben."]]) : j("", !0) 1597 ]), 1598 _: 2 1599 }, 1040))], 2)], 4) 1600 ], 64))]))), 256)) 1601 ])]))]), 1602 _: 1 1603 }), 1604 n[191] || (n[191] = N()), 1605 G.value ? (T(), z(we, pe({ key: 0 }, L(na).properties, { 1606 entries: et.value, 1607 "show-pager": !1, 1608 "show-entry-count": !1 1609 }), { 1610 default: O(({ listEntries: e }) => [I("table", Or, [ 1611 I("colgroup", null, [ 1612 n[144] || (n[144] = I("col", { style: { width: "45px" } }, null, -1)), 1613 n[145] || (n[145] = N()), 1614 n[146] || (n[146] = I("col", null, null, -1)), 1615 n[147] || (n[147] = N()), 1616 n[148] || (n[148] = I("col", null, null, -1)), 1617 n[149] || (n[149] = N()), 1618 L(S)() ? (T(), M("col", kr)) : j("", !0), 1619 n[150] || (n[150] = N()), 1620 L(S)() ? (T(), M("col", Ar)) : j("", !0) 1621 ]), 1622 n[174] || (n[174] = N()), 1623 I("thead", null, [I("tr", null, [ 1624 n[157] || (n[157] = I("th", { class: "text-center background-dark" }, [I("i", { 1625 class: "material-icons md-20 table-icon contrast-primary-light", 1626 "aria-hidden": "true", 1627 role: "img" 1628 }, "work_history")], -1)), 1629 n[158] || (n[158] = N()), 1630 k(Me, { 1631 "sort-field": "title", 1632 modelValue: L(na).model.title,
1633 "onUpdate:modelValue": n[1] || (n[1] = (e) => L(na).model.title = e), 1634 text: "Projekt" 1635 }, null, 8, ["modelValue"]), 1636 n[159] || (n[159] = N()), 1637 L(S)() ? (T(), M(P, { key: 0 }, [ 1638 D((T(), M("th", null, [...n[151] || (n[151] = [N("Arbeitszeit", -1)])])), [[c, "time_gross_sort"]]), 1639 n[154] || (n[154] = N()), 1640 D((T(), M("th", null, [...n[152] || (n[152] = [N("Zeitzuschläge", -1)])])), [[c, "surcharges_sort"]]), 1641 n[155] || (n[155] = N()), 1642 D((T(), M("th", null, [...n[153] || (n[153] = [N("Gesamt", -1)])])), [[c, "time_net_sort"]]) 1643 ], 64)) : D((T(), M("th", jr, [...n[156] || (n[156] = [N("Zeit", -1)])])), [[c, "time_gross_sort"]]) 1644 ])]), 1645 n[175] || (n[175] = N()), 1646 I("tbody", null, [ 1647 (T(!0), M(P, null, w(e, (e) => (T(), M("tr", { class: E(["vertical-align-top", { "text-danger thick-border-top thick-border-bottom": !e.id }]) }, [ 1648 n[164] || (n[164] = I("td", null, null, -1)), 1649 n[165] || (n[165] = N()), 1650 I("td", Mr, [ 1651 e.id && e.id !== L(-1) ? (T(), z(a, { 1652 key: 0, 1653 to: { 1654 name: "time-tracker-project-view", 1655 params: { id: e.id } 1656 } 1657 }, { 1658 default: O(() => [N(F(e.title), 1)]), 1659 _: 2 1660 }, 1032, ["to"])) : (T(), M("span", Nr, F(e.title), 1)), 1661 n[160] || (n[160] = N()), 1662 e.cost_center ? (T(), M("span", Pr, "(" + F(e.cost_center) + ")", 1)) : j("", !0) 1663 ]), 1664 n[166] || (n[166] = N()), 1665 L(S)() ? (T(), M(P, { key: 0 }, [ 1666 I("td", { title: K.value.break.int ? Z(e, "time_net") + " - " + Z(e, "break") + " Pause" : null }, [N(F(Z(e, "time_net_without_surcharges")) + " ", 1), e.break.int ? (T(), M("small", Ir, "\n (abzgl. " + F(Z(e, "break")) + " Pause)\n ", 1)) : j("", !0)], 8, Fr), 1667 n[162] || (n[162] = N()), 1668 I("td", null, [D((T(), M("span", null, [si(e) ? (T(), M("span", Lr, F(L(b)(ci(e), { 1669 showSeconds: !0, 1670 showPositiveSign: !0 1671 })), 1)) : (T(), M("span", Rr, [...n[161] || (n[161] = [I("i", { 1672 class: "material-icons", 1673 "aria-hidden": "true", 1674 role: "img" 1675 }, "remove", -1)])]))])), [[s, Si(e)]])]), 1676 n[163] || (n[163] = N()), 1677 I("td", null, F(Z(e, "time_net")), 1) 1678 ], 64)) : (T(), M("td", { 1679 key: 1, 1680 title: K.value.break.int ? Z(e, "time_net") + " - " + Z(e, "break") + " Pause" : null 1681 }, [N(F(Z(e, "time_gross")) + " ", 1), e.break.int ? (T(), M("small", Br, "\n (abzgl. " + F(Z(e, "break")) + " Pause)\n ", 1)) : j("", !0)], 8, zr)) 1682 ], 2))), 256)), 1683 n[173] || (n[173] = N()), 1684 I("tr", Vr, [ 1685 n[167] || (n[167] = I("td", null, null, -1)), 1686 n[168] || (n[168] = N()), 1687 n[169] || (n[169] = I("td", null, [I("div", { class: "spacer-10 spacer-10-bottom" }, "\n Summe Projektzeiten\n ")], -1)), 1688 n[170] || (n[170] = N()), 1689 L(S)() ? (T(), M("td", { 1690 key: 0, 1691 title: K.value.break.int ? Z(K.value, "time_net") + " - " + Z(K.value, "break") + " Pause" : null 1692 }, [I("div", Ur, [N(F(L(b)(K.value.time_gross.int - ci(K.value), { showSeconds: !0 })) + " ", 1), K.value.break.int ? (T(), M("small", Wr, "\n (abzgl. " + F(Z(K.value, "break")) + " Pause)\n ", 1)) : j("", !0)])], 8, Hr)) : (T(), M("td", { 1693 key: 1, 1694 title: K.value.break.int ? Z(K.value, "time_net") + " - " + Z(K.value, "break") + " Pause" : null 1695 }, [I("div", Kr, [N(F(Z(K.value, "time_gross")) + " ", 1), K.value.break.int ? (T(), M("small", qr, "\n (abzgl. " + F(Z(K.value, "break")) + " Pause)\n ", 1)) : j("", !0)])], 8, Gr)), 1696 n[171] || (n[171] = N()), 1697 L(S)() ? (T(), M("td", Jr, [I("div", Yr, F(L(b)(ci(K.value), { 1698 showSeconds: !0, 1699 showPositiveSign: !0 1700 })), 1)])) : j("", !0), 1701 n[172] || (n[172] = N()), 1702 I("td", null, [I("div", Xr, F(Z(K.value, "time_net")), 1)]) 1703 ]) 1704 ]) 1705 ])]), 1706 _: 1 1707 }, 16, ["entries"])) : j("", !0), 1708 n[192] || (n[192] = N()), 1709 q.value ? (T(), z(we, pe({ key: 1 }, L(na).properties, { 1710 entries: nt.value, 1711 "show-pager": !1, 1712 "show-entry-count": !1 1713 }), { 1714 default: O(({ listEntries: e }) => [I("table", Zr, [ 1715 n[188] || (n[188] = I("colgroup", null, [ 1716 I("col", { style: { width: "45px" } }), 1717 N(), 1718 I("col"), 1719 N(), 1720 I("col") 1721 ], -1)), 1722 n[189] || (n[189] = N()), 1723 I("thead", null, [I("tr", null, [ 1724 n[177] || (n[177] = I("th", { class: "text-center background-dark" }, [I("i", { 1725 class: "material-icons md-20 table-icon contrast-primary-light", 1726 "aria-hidden": "true", 1727 role: "img" 1728 }, "work_history")], -1)), 1729 n[178] || (n[178] = N()), 1730 k(Me, { 1731 "sort-field": "title", 1732 modelValue: L(na).model.title, 1733 "onUpdate:modelValue": n[2] || (n[2] = (e) => L(na).model.title = e), 1734 text: "Kontakt" 1735 }, null, 8, ["modelValue"]), 1736 n[179] || (n[179] = N()), 1737 D((T(), M("th", null, [...n[176] || (n[176] = [N("Zeit", -1)])])), [[c, "time_gross_
1737sort"]]) 1738 ])]), 1739 n[190] || (n[190] = N()), 1740 I("tbody", null, [ 1741 (T(!0), M(P, null, w(e, (e) => (T(), M("tr", { class: E(["vertical-align-top", { "text-danger thick-border-top thick-border-bottom": !e.id }]) }, [ 1742 n[180] || (n[180] = I("td", null, null, -1)), 1743 n[181] || (n[181] = N()), 1744 I("td", Qr, [e.id && !e.is_deleted ? (T(), z(a, { 1745 key: 0, 1746 to: { 1747 name: "time-tracker-project-view", 1748 params: { id: e.id } 1749 } 1750 }, { 1751 default: O(() => [N(F(e.title), 1)]), 1752 _: 2 1753 }, 1032, ["to"])) : (T(), M("span", $r, F(e.title), 1))]), 1754 n[182] || (n[182] = N()), 1755 I("td", { title: rt.value.break.int ? L(b)(e.time_net.int) + " - " + e.break.string + " Pause" : null }, [N(F(e.time_gross.string) + " Stunden\n ", 1), e.break.int ? (T(), M("small", ti, "(abzgl. " + F(e.break.string) + " Pause)", 1)) : j("", !0)], 8, ei) 1756 ], 2))), 256)), 1757 n[187] || (n[187] = N()), 1758 I("tr", ni, [ 1759 n[183] || (n[183] = I("td", null, null, -1)), 1760 n[184] || (n[184] = N()), 1761 n[185] || (n[185] = I("td", null, [I("div", { class: "spacer-10 spacer-10-bottom" }, "\n Summe Kontakt Zeiten\n ")], -1)), 1762 n[186] || (n[186] = N()), 1763 I("td", { title: rt.value.break.int ? L(b)(K.value.time_net.int) + " - " + K.value.break.string + " Pause" : null }, [I("div", ii, [N(F(rt.value.time_gross.string) + " Stunden\n ", 1), K.value.break.int ? (T(), M("small", ai, "(abzgl. " + F(K.value.break.string) + " Pause)", 1)) : j("", !0)])], 8, ri) 1764 ]) 1765 ]) 1766 ])]), 1767 _: 1 1768 }, 16, ["entries"])) : j("", !0) 1769 ]), 1770 n[193] || (n[193] = N()), 1771 I("div", oi, [k(d, { 1772 id: "notes-box", 1773 title: "Notizen", 1774 "title-icon": "receipt", 1775 class: "shaded" 1776 }, { 1777 default: O(() => [k(Ne, { 1778 notes: $e.value, 1779 "editor-config": Xe, 1780 "add-note-callback": Ki, 1781 "hide-empty": "" 1782 }, null, 8, ["notes", "editor-config"])]), 1783 _: 1 1784 })]) 1785 ])) 1786 ]), 1787 _: 2 1788 }, [!t.tableOnly && $.value && Ct.value && Ct.value.id ? { 1789 name: "sidebar", 1790 fn: O(() => [k(d, { 1791 title: "Weitere Informationen", 1792 "title-icon": "info", 1793 "title-type": "light", 1794 class: "spacer-30" 1795 }, { 1796 default: O(() => [ 1797 n[199] || (n[199] = I("strong", { class: "color-contrast-primary-light" }, "Zuletzt bearbeitet", -1)), 1798 n[200] || (n[200] = N()), 1799 k(Te, { 1800 history: Ct.value, 1801 class: "spacer-15" 1802 }, null, 8, ["history"]) 1803 ]), 1804 _: 1 1805 })]), 1806 key: "0" 1807 } : void 0]), 1040); 1808 }; 1809 } 1810}); 1811//#endregion 1812export { si as default }; 1813 1814//# sourceMappingURL=EvaluationView_C7lxYl-s.min.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.