PageSourceSearch

https://intranet.westliches-weserbergland.de/dist/js/EvaluationEdit_l9C-ltKJ.min.js

js westliches-weserbergland.de collected 2026-10-02 11:01:48 UTC 20,011 bytes, 448 lines download raw bytes

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] = "5cc72df5-0cc5-4f9c-b928-b96c542c60ae", e._sentryDebugIdIdentifier = "sentry-dbid-5cc72df5-0cc5-4f9c-b928-b96c542c60ae");
7	} catch (e) {}
8})();
9import { $a as e, Ba as t, Bo as n, Gr as r, Io as i, Jc as a, Li as o, On as s, Ri as ee, Sn as c, Wi as te, Za as ne, ca as re, dl as ie, eo as ae, fs as oe, mc as se, qa as l, t as ce, vo as le, yo as ue } from "./topMessageHandler_CaWydTPF.min.js";
10import { F as de, N as u, Ot as d, R as f, X as p, Y as m, _ as h, c as g, d as _, f as v, g as y, i as b, jt as x, l as S, lt as C, nt as w, ot as fe, q as T, tt as pe, u as E, y as D } from "./runtime-core.esm-bundler_DscPLG0X.min.js";
11import { a as me, o as he } from "./vue-router_D9yl1vCo.min.js";
12import { r as ge } from "./vuex.esm-bundler_ByHC_Vqx.min.js";
13import { s as _e } from "./addresses_BKkK47Xf.min.js";
14import { t as ve } from "./FormSubmitRow_DhElQURt.min.js";
15import { t as O } from "./FieldsetCloneable_Csfbfkgj.min.js";
16import { t as ye } from "./AppContent_DtiJZ3PY.min.js";
17import { t as be } from "./FormTextEditor_B3Njopg2.min.js";
18import { t as xe } from "./evaluationTable_CRzg8ymu.min.js";
19//#region src/views/time-tracker/evaluation/EvaluationEdit.vue?vue&type=script&setup=true&lang.ts
20var Se = { class: "row" }, Ce = { class: "col-lg-9" }, we = { class: "flex flex-vertical-middle flex--item-left" }, Te = { class: "flex flex-vertical-middle flex--item-right" }, Ee = {
21	key: 0,
22	class: "evaluation-week-range no-print"
23}, De = { class: "evaluation-week-range" }, Oe = {
24	key: 0,
25	class: "no-print",
26	title: "7 Tage zurück"
27}, ke = { class: "text-vertical-middle" }, Ae = { class: "screen-reader-only" }, je = { "aria-hidden": "true" }, Me = {
28	key: 1,
29	class: "no-print",
30	title: "7 Tage weiter"
31}, Ne = { key: 0 }, Pe = {
32	key: 1,
33	class: "portuna-table portuna-table-bordered portuna-box-table-status-messages evaluation-box-table spacer-15"
34}, Fe = { class: "vertical-align-top" }, Ie = { key: 0 }, Le = { class: "flex flex-vertical-middle margin-bottom-5" }, Re = { class: "flex" }, ze = { class: "flex" }, Be = {
35	key: 0,
36	class: "flex-no-shrink"
37}, Ve = { "aria-label": "Hinzufügen" }, He = { "aria-label": "Löschen" }, Ue = {
38	"aria-hidden": "true",
39	class: "text-danger material-icons pointer font-size-16",
40	tabindex: "-1"
41}, We = { class: "flex flex-vertical-middle margin-bottom-5" }, Ge = { class: "flex" }, Ke = { class: "flex" }, qe = {
42	key: 0,
43	class: "flex-no-shrink"
44}, Je = {
45	class: "text-danger material-icons pointer font-size-16",
46	tabindex: "-1",
47	"aria-hidden": "true"
48}, Ye = ["onUpdate:modelValue", "name"], Xe = { key: 0 }, Ze = {
49	key: 0,
50	colspan: "5"
51}, Qe = {
52	key: 0,
53	class: "status-messages"
54}, $e = { class: "info margin-10" }, et = {
55	key: 1,
56	class: "info margin-10"
57}, tt = { key: 1 }, nt = { colspan: "5" }, rt = {
58	key: 0,
59	class: "status-messages"
60}, it = { class: "info margin-5" }, at = {
61	key: 1,
62	class: "info margin-10"
63}, k = /* @__PURE__ */ D({
64	__name: "EvaluationEdit",
65	props: {
66		employee: {},
67		week: {},
68		tableOnly: {
69			type: Boolean,
70			default: !1
71		}
72	},
73	setup(D, { expose: k }) {
74		let A = a(), ot = A.currentUser, j = D, { employee: M, week: N } = fe(j), st = re(), P = ge(), ct = he(), lt = me(), F = xe(A.currentUser, M, N), ut = g(() => [
75			r(),
76			{
77				label: "Zeiterfassung",
78				href: { name: "time-tracker" }
79			},
80			{
81				label: "Wochenansicht",
82				href: {
83					name: "time-tracker-evaluation-view",
84					params: {
85						employee: j.employee,
86						week: j.week
87					}
88				}
89			},
90			{ label: "Zeiten eintragen" }
91		]), I = g(() => o(F.settings.value, j.week)), L = g(() => `/employee/time-tracker/evaluation/fetch-edit/employee/${j.employee}/week/${j.week}`), R = w(), z = w([]), dt = pe({
92			toolbarButtons: {},
93			heightMin: 45
94		}), B = w({}), ft = w(""), pt = w(!1), V = w(!1), H = w(!1), U = w(!1), W = w(!1), G = w(0), mt = () => {
95			F.hasChanges.value = !0;
96		}, K = (e) => ![
97			"allocatedWorkTime",
98			"calc",
99			"raw",
100			"color",
101			"projectTimes"
102		].includes(e), ht = g(() => oe(B.value, ({ key: e }) => K(e))), q = g(() => `Zeiten können maximal ${G.value} Tage rückwirkend eingetragen werden. Wenden Sie sich an Ihren Administrator`), J = g(() => ee(I.value)), Y = () =>
102 (F.dateInformation.value = le(j.week), P.dispatch("getPage", { url: L.value }).then(({ data: { data: e } }) => {
103			B.value = e.days, pt.value = e.is_edit_limited, ft.value = e.earliest_editable_day, z.value = e.accessible_employees_select_options, G.value = e.limit_days, F.settings.value = e.settings, F.startDate.value = e.start_date, F.workStart.value = e.work_start, V.value = e.calculate_non_workdays, H.value = e.calculate_before_work_start, U.value = e.calculate_after_work_end, W.value = e.allow_work_outside_work_time_current;
104			for (let e of Object.keys(B.value)) K(e) && (B.value[e].note || (B.value[e].note = { note: "" }));
105			window.setTimeout(() => {
106				F.hasChanges.value = !1;
107			}, 500);
108		}).catch((e) => {
109			console.error(e), se(e), st.routerGoBack({ name: "time-tracker-evaluation" });
110		})), gt = (t) => {
111			let r = t.name;
112			ne(L.value, {}, ae(e(R.value))).then(() => {
113				if (ce.success("Die Zeiten wurden erfolgreich gespeichert."), j.employee === ot.value.employeeId) {
114					let e = /* @__PURE__ */ new Date();
115					i(e), j.week === n("Y-m-d", e) && P.dispatch("timeTracker/refresh");
116				}
117				let e = r === "action_apply" && "edit" || "view";
118				e === "edit" ? F.hasChanges.value = !1 : e === "view" && ct.push({
119					name: "time-tracker-evaluation-view",
120					params: lt.params
121				});
122			});
123		}, X = (e) => {
124			for (let t of B.value[e].data) if (t.begin_time) return !0;
125			return !1;
126		}, Z = (e) => I.value[ue(e)];
127		Y();
128		let Q = (e) => {
129			var t, n;
130			let r = (t = Z(e)) == null ? void 0 : t.start, i = (n = Z(e)) == null ? void 0 : n.end;
131			if (!r || !i || H.value && U.value) return !1;
132			for (let t of B.value[e].data) if (!H.value && t.begin_time < r || !U.value && t.end_time && i < t.end_time) return !0;
133			return !1;
134		}, $ = (e) => !!Z(e);
135		return T(B, mt, { deep: !0 }), T(() => j, Y, { deep: !0 }), k(Object.assign({}, A)), (e, r) => {
136			let i = f("interact"), a = f("tooltip");
137			return u(), E(ye, {
138				headline: "Zeiterfassung: Zeiten eintragen",
139				breadcrumb: ut.value,
140				class: "module-time-tracker evaluation-edit"
141			}, {
142				default: m(() => [S("form", {
143					ref_key: "form",
144					ref: R
145				}, [S("div", Se, [
146					S("div", Ce, [h(s, {
147						title: "Daten erstellen",
148						"title-icon": "event"
149					}, {
150						default: m(() => [
151							h(s, { class: "evaluation-table-box no-padding" }, {
152								title: m(() => [...r[0] || (r[0] = [S("i", {
153									class: "material-icons",
154									"aria-hidden": "true",
155									role: "img"
156								}, "access_time", -1)])]),
157								additionally: m(() => [
158									S("div", we, [
159										z.value.length > 1 ? (u(), E(t, {
160											key: 0,
161											options: z.value,
162											onInput: C(F).goToEmployee,
163											class: "kool-choiz-transparent no-print text-overflow",
164											"model-value": C(M),
165											"inherit-width": !1
166										}, null, 8, [
167											"options",
168											"onInput",
169											"model-value"
170										])) : _("", !0),
171										r[1] || (r[1] = y()),
172										r[2] || (r[2] = S("div", { class: "flex-grow" }, "\xA0", -1))
173									]),
174									r[10] || (r[10] = y()),
175									S("div", Te, [
176										!C(F).isToday.value && C(F).todayLinkParams.value ? (u(), v("div", Ee, [p((u(), v("a", null, [...r[3] || (r[3] = [
177											S("i", {
178												class: "material-icons md-18",
179												"aria-hidden": "true",
180												role: "img"
181											}, "radio_button_checked", -1),
182											y(),
183											S("span", null, "Heute", -1)
184										])])), [[i, () => C(F).goToWeek(C(F).todayLinkParams.value)]])])) : _("", !0),
185										r[9] || (r[9] = y()),
186										S("div", De, [
187											C(F).previousLinkParams.value ? p((u(), v("a", Oe, [...r[4] || (r[4] = [S("i", {
188												class: "material-icons",
189												"aria-hidden": "true",
190												role: "img"
191											}, "arrow_left", -1)])])), [[i, () => C(F).goToWeek(C(F).previousLinkParams.value)]]) : _("", !0),
192											r[7] || (r[7] = y()),
193											S("span", ke, [
194												S("span", Ae, x(C(F).screenReaderRange.value), 1),
195												r[5] || (r[5] = y()),
196												S("span", je, x(C(F).range.value) + "\n                                                (KW" + x(C(F).dateInformation.value.week) + ")\n                                            ", 1)
197											]),
198											r[8] || (r[8] = y()),
199											C(F).nextLinkParams.value ? p((u(), v("a", Me, [...r[6] || (r[6] = [S("i", {
200												class: "material-icons",
201												"aria-hidden": "true",
202												role: "img"
203											}, "arrow_right", -1)])])), [[i, () => C(F).goToWeek(C(F).nextLinkParams.value)]]) : _("", !0)
204										])
205									])
206								]),
207								default: m(() => [
208									r[40] || (r[40] = y()),
209									r[41] || (r[41] = y()),
210									Object.keys(B.value).length === 0 ? (u(), v("div", Ne, [h(_e)])) : Object.keys(B.value).length === 0 ? _("", !0) : (u(), v("table", Pe, [
211										r[36] || (r[36] = S("colgroup", null, [
212											S("col", { style: { width: "45px" } }),
213											y(),
214											S("col", { style: { width: "17%" } }),
215											y(),
216											S("col"),
217											y(),
218											S("col"),
219											y(),
220											S("col", { style: { width: "20%" } })
221										], -1)),
222										r[37] || (r[37] = y()),
223										r[38] || (r[38] = S("thead", null, [S("tr", null, [
224											S("th", { class: "th-placeholder" }, "Platzhalter"),
225											y(),
226											S("th", null, "Datum"),
227											y(),
228											S("th", null, "Anwesenheit"),
229											y(),
230											S("th", null, "Pausen"),
231											y(),
232											S("th", null, "Kommentar")
233										])], -1)),
234										r[39] || (r[39] = y()),
235										S("tbody", null, [(u(!0), v(b, null, de(ht.value, (e, t) => (u(), v(b, null, [
236											S("tr", Fe, [
237												r[26] || (r[26] = S("td", null, null, -1)),
238												r[27] || (r[27] = y()),
239												S("td", null, [
240													y(x(C(n)("D, d.m.Y", t)) + " ", 1),
241													W.value && !V.value && !$(t) ? p((u(), v("div", Ie, [...r[11] || (r[11] = [y("\n                                                kein eingestellter Arbeitstag", -1), S("i", {
242														"aria-hidden": "true",
243														class: "material-icons md-18 padding-left-5",
244														role: "img"
245													}, "info", -1)])])), [[a, "Bitte beachten Sie, dass Zeiten, die außerhalb der erlaubten Arbeitstagen liegen, nicht als Arbeitszeit für die Woche gewertet werden. Diese sind entsprechend in den Auswertungen gekennzeichnet."]]) : _("", !0),
246													r[12] || (r[12] = y()),
247													B.value[t].work_time.absence_time ? (u(), v(b, { key: 1 }, [y(" (" + x(C(te)(B.value[t].work_time.absence_time)) + " abwesend)", 1)], 64)) : _("", !0)
248												]),
249												r[28] || (r[28] = y()),
250												S("td", null, [h(O, {
251													modelValue: B.value[t].data,
252													"onUpdate:modelValue": (e) => B.value[t].data = e
253												}, {
254													render: m(({ values: n, $index: a, manage: o }) => [S("div", Le, [
255														S("div", null, [
256															S("div", Re, [
257																h(c, {
258																	modelValue: n.begin_time,
259																	"onUpdate:modelValue": (e) => n.begin_time = e,
260																	name: `${t}[work][${a}][begin_time]`,
261																	type: "time",
262																	height: "flat",
263																	class: "margin-right-5",
264																	disabled: !e.editable,
265																	title: e.editable ? q.value : ""
266																}, null, 8, [
267																	"modelValue",
268																	"onUpdate:modelValue",
269																	"name",
270																	"disabled",
271																	"title"
272																]),
273																r[13] || (r[13] = y()),
274																h(c, {
275																	modelValue: n.end_time,
276																	"onUpdate:modelValue": (e) => n.end_time = e,
277																	name: `${t}[work][${a}][end_time]`,
278																	type: "time",
279																	height: "flat",
280																	disabled: !e.editable,
281																	title: e.editable ? q.value : ""
282																}, null, 8, [
283																	"modelValue",
284																	"onUpdate:modelValue",
285																	"name",
286																	"disabled",
287																	"title"
288																])
289															]),
290															r[14] || (r[14] = y()),
291															S("div", ze, [(u(), E(l, {
292																name: [`${t}.work.${a}.begin_time`, `${t}.work.${a}.end_time`],
293																key: `${t}_work_${a}`,
294																class: "flex-grow"
295															}, null, 8, ["name"]))])
296														]),
297														r[18] || (r[18] = y()),
298														e.editable ? (u(), v("div", Be, [
299															S("span", Ve, [p((u(), v("i", {
300																class: d([{ "hidden-icon": a !== B.value[t].data.length - 1 }, "color-primary material-icons pointer font-size-16"]),
301																"aria-hidden": "true",
302																tabindex: "-1"
303															}, [...r[15] || (r[15] = [y("add", -1)])], 2)), [[i, () => o.add(a)]])]),
304															r[17] || (r[17] = y()),
305															S("span", He, [p((u(), v("i", Ue, [...r[16] || (r[16] = [y("delete", -1)])])), [[i, () => o.delete(a)]])])
306														])) : _("", !0)
307													])]),
308													_: 2
309												}, 1032, ["modelValue", "onUpdate:modelValue"])]),
310												r[29] || (r[29] = y()),
311												S("td", null, [h(O, {
312													modelValue: B.value[t].pause.data,
313													"onUpdate:modelValue": (e) => B.value[t].pause.data = e
314												}, {
315													render: m(({ values: n, $index: a, manage: o }) => [S("div", We, [
316														S("div", null, [
317															S("div", Ge, [
318																h(c, {
319																	modelValue: n.begin_time,
320																	"onUpdate:modelValue": (e) => n.begin_time = e,
321																	name: `${t}[pause][${a}][begin_time]`,
322																	type: "time",
323																	height: "flat",
324																	disabled: !X(t) || !e.editable,
325																	class: "margin-right-5",
326																	title: e.editable ? "" : q.value
327																}, null, 8, [
328																	"modelValue",
329																	"onUpdate:modelValue",
330																	"name",
331																	"disabled",
332																	"title"
333																]),
334																r[19] || (r[19] = y()),
335																h(c, {
336																	modelValue: n.end_time,
337																	"onUpdate:modelValue": (e) => n.end_time = e,
338																	name: `${t}[pause][${a}][end_time]`,
339																	type: "time",
340																	height: "flat",
341																	disabled: !X(t) || !e.editable,
342																	title: e.editable ? "" : q.value
343																}, null, 8, [
344																	"modelValue",
345																	"onUpdate:modelValue",
346																	"name",
347																	"disabled",
348																	"title"
349																])
350															]),
351															r[20] || (r[20] = y()),
352															S("div", Ke, [(u(), E(l, {
353																name: [`${t}.pause.${a}.begin_time`, `${t}.pause.${a}.end_time`],
354																key: `${t}_pause_${a}`,
355																class: "flex-grow"
356															}, null, 8, ["name"]))])
357														]),
358														r[24] || (r[24] = y()),
359														e.editable ? (u(), v("div", qe, [
360															p((u(), v("i", {
361																class: d(["color-primary material-icons pointer font-size-16", { "hidden-icon": a !== B.value[t].pause.data.length - 1 }]),
362																tabindex: "-1",
363																"aria-hidden": "true"
364															}, [...r[21] || (r[21] = [y("add", -1)])], 2)), [[i, () => o.add(a)]]),
365															r[23] || (r[23] = y()),
366															p((u(), v("i", Je, [...r[22] || (r[22] = [y("delete", -1)])])), [[i, () => o.delete(a)]])
367														])) : _("", !0)
368													])]),
369													_: 2
370												}, 1032, ["modelValue", "onUpdate:modelValue"])]),
371												r[30] || (r[30] = y()),
372												S("td", null, [
373													B.value[t] ? p((u(), v("input", {
374														key: 0,
375														"onUpdate:modelValue": (e) => B.value[t].note.id = e,
376														name: `${t}[note][id]`,
377														type: "hidden"
378													}, null, 8, Ye)), [[ie, B.value[t].note.id]]) : _("", !0),
379													r[25] || (r[25] = y()),
380													B.value[t] ? (u(), E(be, {
381														key: 1,
382														modelValue: B.value[t].note.note,
383														"onUpdate:modelValue": (e) => B.value[t].note.note = e,
384														id: `note-${t}`,
385														name: `${t}[note][note]`,
386														config: dt,
387														placeholder: "Kommentar schreiben"
388													}, null, 8, [
389														"modelValue",
390														"onUpdate:modelValue",
391														"id",
392														"name",
393														"config"
394													])) : _("", !0)
395												])
396											]),
397											r[35] || (r[35] = y()),
398											W.value ? (u(), v("tr", Xe, [!H.value || !U.value || !V.value ? (u(), v("td", Ze, [!V.value && !$(t) ? (u(), v("div", Qe, [S("div", $e, [r[31] || (r[31] = S("i", {
399												"aria-hidden": "true",
400												class: "material-icons md-light",
401												role: "img"
402											}, "info", -1)), y("Ihr hinterlegten Arbeitstage sind " + x(J.value.days) + ". Sie können Werte eintragen, aber diese werden nicht auf Ihre wöchentliche Arbeitszeit angerechnet.\n                                                ", 1)])])) : $(t) && Q(t) ? (u(), v("div", et, [r[32] || (r[32] = S("i", {
403												"aria-hidden": "true",
404												class: "material-icons md-light",
405												role: "img"
406											}, "info", -1)), y("\n                                                Sie können Werte für " + x(C(n)("D, d.m.Y", t)) + " eintragen, aber diese werden nicht auf Ihre wöchentliche Arbeitszeit angerechnet, da Ihre eingestellten Arbeitszeitraum von " + x(J.value.times) + " ist.\n                                            ", 1)])) : _("", !0)])) : _("", !0)])) : C(F).isManual.value ? (u(), v("tr", tt, [S("td", nt, [!$(t) && !V.value ? (u(), v("div", rt, [S("div", it, [r[33] || (r[33] = S("i", {
407												"aria-hidden": "true",
408												class: "material-icons md-light",
409												role: "img"
410											}, "info", -1)), y("Sie können keine Arbeitszeiten eintragen, weil Sie nicht außerhalb der Arbeitstage arbeiten dürfen. Ihre hinterlegten Arbeitstage sind " + x(J.value.days), 1
410)])])) : $(t) && Q(t) ? (u(), v("div", at, [r[34] || (r[34] = S("i", {
411												"aria-hidden": "true",
412												class: "material-icons md-light",
413												role: "img"
414											}, "info", -1)), y("\n                                                Bitte beachten Sie, dass die Arbeitszeiten außerhalb Ihres eingestellten Arbeitszeitraums nicht gespeichert werden können. Ihr eingestellter Arbeitszeitraum ist " + x(J.value.times), 1)])) : _("", !0)])])) : _("", !0)
415										], 64))), 256))])
416									]))
417								]),
418								_: 1
419							}),
420							r[42] || (r[42] = y()),
421							r[43] || (r[43] = S("hr", { class: "form-spacer" }, null, -1)),
422							r[44] || (r[44] = y()),
423							h(ve, {
424								onSubmit: gt,
425								"show-action-save-options": !1,
426								"redirect-on-cancel": {
427									name: "time-tracker-evaluation-view",
428									params: {
429										employee: C(M),
430										week: C(N)
431									}
432								}
433							}, null, 8, ["redirect-on-cancel"])
434						]),
435						_: 1
436					})]),
437					r[45] || (r[45] = y()),
438					r[46] || (r[46] = S("div", { class: "col-lg-3" }, null, -1))
439				])], 512)]),
440				_: 1
441			}, 8, ["breadcrumb"]);
442		};
443	}
444});
445//#endregion
446export { k as default };
447
448//# sourceMappingURL=EvaluationEdit_l9C-ltKJ.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.