Grotti 3.6.0: Lauf-Identität nach Filament-Pause, robustere Queue, Projekte/Aufträge list-first und API-Polish.
This commit is contained in:
1 parent
d1eb87ba25
commit
2b1e36634a
53 files changed
+4254
-636
No files matched your search
@@ -524,8 +524,13 @@ async function loadAkte(spoolId) {
|
||||
const charge = run.chargen_nr
|
||||
? '<a class="tag akte-charge" href="' + href + '">' + escapeHtml(run.chargen_nr) + "</a>"
|
||||
: '<span class="akte-charge tiny">—</span>';
|
||||
const file = '<a class="akte-file" href="' + href + '" title="' + escapeHtml((run.filename || "").split("/").pop() || "") + '">'
|
||||
+ escapeHtml(akteFile(run.filename)) + "</a>";
|
||||
const fileName = akteFile(run.filename);
|
||||
const file = run.file_id
|
||||
? '<a class="akte-file" href="/dateien?file=' + encodeURIComponent(run.file_id) + '" title="' + escapeHtml((run.filename || "").split("/").pop() || "") + '">'
|
||||
+ escapeHtml(fileName) + "</a>"
|
||||
+ ' <a class="tiny" href="' + href + '">Lauf</a>'
|
||||
: '<a class="akte-file" href="' + href + '" title="' + escapeHtml((run.filename || "").split("/").pop() || "") + '">'
|
||||
+ escapeHtml(fileName) + "</a>";
|
||||
const gramsTxt = grams(run.spool_weight_g) + (run.spool_is_estimate ? " ≈" : "");
|
||||
return '<div class="akte-run">'
|
||||
+ '<span class="akte-when tiny">' + escapeHtml(akteWhen(run.started_at)) + "</span>"
|
||||
@@ -1115,11 +1120,24 @@ load().then(() => {
|
||||
closeSpoolPanel();
|
||||
closeSortenPanel();
|
||||
const params = new URLSearchParams(location.search);
|
||||
const spoolId = params.get("spool");
|
||||
const spoolId = params.get("spule") || params.get("spool");
|
||||
const hostHint = params.get("host") || "";
|
||||
const slotHint = params.get("slot") || "";
|
||||
if (spoolId) {
|
||||
const spool = spools.find((row) => String(row.id) === spoolId);
|
||||
if (spool) fill(spool);
|
||||
else openByCode(spoolId);
|
||||
if (spool) {
|
||||
fill(spool);
|
||||
focusById("spool-id") || document.getElementById("spool-name")?.scrollIntoView({ behavior: "smooth", block: "center" });
|
||||
} else openByCode(spoolId);
|
||||
} else if (hostHint) {
|
||||
document.getElementById("spool-panel")?.removeAttribute("hidden");
|
||||
document.getElementById("spool-new")?.click?.();
|
||||
const hostField = document.getElementById("spool-printer");
|
||||
if (hostField) hostField.value = hostHint;
|
||||
const slotField = document.getElementById("spool-slot");
|
||||
if (slotField && slotHint) slotField.value = String(slotHint);
|
||||
document.getElementById("spool-name")?.scrollIntoView({ behavior: "smooth", block: "center" });
|
||||
toast("Drucker und Platz vorausgefüllt — Rolle wählen und speichern.");
|
||||
}
|
||||
}).catch((error) => showNote("spool-note", error));
|
||||
</script>
|
||||
|
||||
Reference in new issue
Block a user