94 lines
4.5 KiB
HTML
94 lines
4.5 KiB
HTML
{% extends "base.html" %}
|
|
{% block title %}{% if template %}Tagesvorlage bearbeiten{% else %}Neue Tagesvorlage{% endif %} | Nouri{% endblock %}
|
|
{% block content %}
|
|
<section class="page-intro">
|
|
<div>
|
|
<p class="eyebrow">Tagesvorlage</p>
|
|
<h1>{% if template %}{{ template.name }} bearbeiten{% else %}Tagesvorlage anlegen{% endif %}</h1>
|
|
<p class="lead">Gib der Vorlage einen Namen, den du später schnell wiedererkennst. Die Einträge bleiben bewusst einfach und alltagsnah.</p>
|
|
</div>
|
|
{% if source_date %}
|
|
<span class="status-pill">Aus {{ source_date.strftime('%d.%m.%Y') }}</span>
|
|
{% endif %}
|
|
</section>
|
|
|
|
<section class="panel form-panel">
|
|
<form method="post" class="stack-form">
|
|
{{ csrf_input() }}
|
|
<label>
|
|
Name der Vorlage
|
|
<input type="text" name="name" value="{{ form_data.name }}" placeholder="{{ name_suggestions[0] }}" required>
|
|
<small class="helper-text">Zum Beispiel: Ruhiger Tag, Einfacher Bürotag oder ein ganz eigener Name.</small>
|
|
</label>
|
|
|
|
<label>
|
|
Beschreibung
|
|
<textarea name="description" rows="3" placeholder="Optional, wenn eine kleine Erinnerung hilfreich ist.">{{ form_data.description }}</textarea>
|
|
</label>
|
|
|
|
<label>
|
|
Sichtbarkeit
|
|
<select name="visibility">
|
|
{% for value, label in visibility_options %}
|
|
<option value="{{ value }}" {% if form_data.visibility == value %}selected{% endif %}>{{ label }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
<small class="helper-text">{{ visibility_descriptions[form_data.visibility] }}</small>
|
|
</label>
|
|
|
|
<div class="chip-row">
|
|
{% for suggestion in name_suggestions %}
|
|
<span class="chip status-soft">{{ suggestion }}</span>
|
|
{% endfor %}
|
|
</div>
|
|
|
|
<div class="stack-sections">
|
|
{% for section in daypart_sections %}
|
|
<fieldset>
|
|
<legend>{{ section.daypart.name }}</legend>
|
|
<div class="template-search-row">
|
|
<label class="wide">
|
|
Einträge filtern
|
|
<input
|
|
type="text"
|
|
placeholder="Nach Namen suchen"
|
|
data-filter-input
|
|
data-filter-target="#day-template-list-{{ section.daypart.id }}"
|
|
>
|
|
</label>
|
|
</div>
|
|
|
|
{% if section.quick_items %}
|
|
<div class="quick-add-row">
|
|
{% for item in section.quick_items %}
|
|
<label class="quick-select-card" data-filter-label="{{ item.name|lower }} {{ item.category|default('', true)|lower }}">
|
|
<input type="checkbox" name="daypart_{{ section.daypart.id }}_item_ids" value="{{ item.id }}" {% if item.id in section.selected_ids %}checked{% endif %}>
|
|
<span>
|
|
<strong>{{ item.name }}</strong>
|
|
<small>{{ item_kind_labels[item.kind] }} · {{ item.visibility_label }} · {{ item.for_label }}</small>
|
|
</span>
|
|
</label>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
|
|
<div class="checkbox-grid template-checkbox-grid" id="day-template-list-{{ section.daypart.id }}">
|
|
{% for item in section.list_items %}
|
|
<label class="check-option" data-filter-label="{{ item.name|lower }} {{ item.category|default('', true)|lower }}">
|
|
<input type="checkbox" name="daypart_{{ section.daypart.id }}_item_ids" value="{{ item.id }}" {% if item.id in section.selected_ids %}checked{% endif %}>
|
|
<span>{{ item.name }} · {{ item.visibility_label }} · {{ item.for_label }}</span>
|
|
</label>
|
|
{% endfor %}
|
|
</div>
|
|
</fieldset>
|
|
{% endfor %}
|
|
</div>
|
|
|
|
<div class="form-actions">
|
|
<button type="submit">Speichern</button>
|
|
<a class="ghost-button" href="{{ url_for('main.template_library') }}">Zurück</a>
|
|
</div>
|
|
</form>
|
|
</section>
|
|
{% endblock %}
|