feat: refine quick wins workflow and calendar layout
This commit is contained in:
@@ -7,6 +7,12 @@
|
||||
const quickTaskDialog = document.getElementById("quickTaskDialog");
|
||||
const quickTaskOpen = document.getElementById("quickTaskOpen");
|
||||
const quickTaskClose = document.getElementById("quickTaskClose");
|
||||
const quickWinsSubmit = document.getElementById("quickWinsSubmit");
|
||||
const quickWinInputs = document.querySelectorAll("[data-quick-win-input]");
|
||||
const quickWinCustomToggle = document.querySelector("[data-quick-win-custom-toggle]");
|
||||
const quickWinCustomFields = document.getElementById("quickWinCustomFields");
|
||||
const quickWinTitle = document.getElementById("quick-title");
|
||||
const quickWinEffort = document.getElementById("quick-effort");
|
||||
|
||||
document.querySelectorAll("[data-complete-action]").forEach((button) => {
|
||||
button.addEventListener("click", () => {
|
||||
@@ -39,6 +45,48 @@
|
||||
quickTaskClose.addEventListener("click", () => quickTaskDialog.close());
|
||||
}
|
||||
|
||||
function updateQuickWinsState() {
|
||||
const selectedPresetCount = [...quickWinInputs].filter((input) => input.checked).length;
|
||||
const customSelected = quickWinCustomToggle?.checked === true;
|
||||
const totalCount = selectedPresetCount + (customSelected ? 1 : 0);
|
||||
|
||||
if (quickWinCustomFields) {
|
||||
quickWinCustomFields.hidden = !customSelected;
|
||||
}
|
||||
|
||||
if (quickWinTitle) {
|
||||
quickWinTitle.disabled = !customSelected;
|
||||
quickWinTitle.required = customSelected;
|
||||
}
|
||||
|
||||
if (quickWinEffort) {
|
||||
quickWinEffort.disabled = !customSelected;
|
||||
quickWinEffort.required = customSelected;
|
||||
}
|
||||
|
||||
if (quickWinsSubmit) {
|
||||
quickWinsSubmit.disabled = totalCount === 0;
|
||||
quickWinsSubmit.textContent = totalCount <= 1 ? "Quick-Win sichern" : "Quick Wins sichern";
|
||||
}
|
||||
}
|
||||
|
||||
quickWinInputs.forEach((input) => input.addEventListener("change", updateQuickWinsState));
|
||||
if (quickWinCustomToggle) {
|
||||
quickWinCustomToggle.addEventListener("change", updateQuickWinsState);
|
||||
}
|
||||
updateQuickWinsState();
|
||||
|
||||
if (quickTaskDialog) {
|
||||
quickTaskDialog.addEventListener("close", () => {
|
||||
const quickWinsForm = document.getElementById("quickWinsForm");
|
||||
if (!quickWinsForm) {
|
||||
return;
|
||||
}
|
||||
quickWinsForm.reset();
|
||||
updateQuickWinsState();
|
||||
});
|
||||
}
|
||||
|
||||
const pushButton = document.getElementById("pushToggle");
|
||||
const pushHint = document.getElementById("pushHint");
|
||||
const vapidKey = document.body.dataset.pushKey;
|
||||
|
||||
Reference in New Issue
Block a user