feat: add quick task completion action

This commit is contained in:
2026-04-13 10:28:33 +02:00
parent bfcf2b6930
commit 42d4f8ec8e
2 changed files with 9 additions and 3 deletions

View File

@@ -112,7 +112,7 @@ def quick_create():
form = QuickTaskForm(prefix="quick") form = QuickTaskForm(prefix="quick")
config = get_quick_task_config() config = get_quick_task_config()
form.effort.choices = [ form.effort.choices = [
(key, f"{values['label']} · {values['points']} Punkte") (key, values["label"])
for key, values in config.items() for key, values in config.items()
] ]
@@ -122,8 +122,13 @@ def quick_create():
flash(error, "error") flash(error, "error")
return redirect(request.referrer or url_for("tasks.my_tasks")) return redirect(request.referrer or url_for("tasks.my_tasks"))
quick_action = request.form.get("quick_action", "save")
task = create_quick_task(form.title.data, form.effort.data, current_user) task = create_quick_task(form.title.data, form.effort.data, current_user)
flash(f"Schnellaufgabe „{task.title}“ wurde für dich angelegt.", "success") if quick_action == "complete":
complete_task(task, current_user.id)
flash(f"Schnellaufgabe „{task.title}“ wurde direkt als erledigt gespeichert.", "success")
else:
flash(f"Schnellaufgabe „{task.title}“ wurde für dich angelegt.", "success")
return redirect(request.referrer or url_for("tasks.my_tasks")) return redirect(request.referrer or url_for("tasks.my_tasks"))

View File

@@ -129,7 +129,8 @@
{{ quick_task_form.effort() }} {{ quick_task_form.effort() }}
</div> </div>
<div class="dialog-actions"> <div class="dialog-actions">
{{ quick_task_form.submit(class_='button') }} <button type="submit" class="button" name="quick_action" value="save">Aufgabe speichern</button>
<button type="submit" class="button button--secondary" name="quick_action" value="complete">Aufgabe als erledigt speichern</button>
<button type="button" class="button button--ghost" id="quickTaskClose">Abbrechen</button> <button type="button" class="button button--ghost" id="quickTaskClose">Abbrechen</button>
</div> </div>
</form> </form>