This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
{% extends "base.html" %}
|
||||
{% from "ui/card.html" import card %}
|
||||
{% from "ui/button.html" import button, link_button %}
|
||||
{% from "ui/form_field.html" import input_field, select_field, textarea_field %}
|
||||
{% from "ui/page_header.html" import page_header %}
|
||||
{% block title %}Mehrfacheingabe{% endblock %}
|
||||
{% block content %}
|
||||
{{ page_header('Mehrere Tage / Wochen bearbeiten', 'Zeitraum und Wochentage auswählen, dann Zeiten gesammelt für alle passenden Tage setzen.') }}
|
||||
{% call card('form-card full-width') %}
|
||||
<form method="post"
|
||||
action="/bulk-entry"
|
||||
class="stack"
|
||||
data-component="break-rules-form"
|
||||
data-auto-break-enabled="{{ 'true' if user.automatic_break_rules_enabled else 'false' }}">
|
||||
<input type="hidden" name="csrf_token" value="{{ csrf_token }}" />
|
||||
<input type="hidden" name="break_mode" value="{{ break_mode }}" data-break-mode />
|
||||
<div class="inline-grid">
|
||||
{{ input_field('Von', 'from_date', type='date', value=from_date, required=true) }}
|
||||
{{ input_field('Bis', 'to_date', type='date', value=to_date, required=true) }}
|
||||
</div>
|
||||
<fieldset class="weekday-fieldset">
|
||||
<legend>Wochentage</legend>
|
||||
<div class="weekday-grid">
|
||||
{% for option in weekday_options %}
|
||||
<label class="checkbox-row">
|
||||
<input type="checkbox"
|
||||
name="weekdays_values"
|
||||
value="{{ option.value }}"
|
||||
{% if option.value in weekdays_selected %}checked{% endif %} />
|
||||
<span>{{ option.label }}</span>
|
||||
</label>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="inline-grid">
|
||||
{{ input_field('Beginn', 'start_time', type='time', value=start_time, required=true, attrs='data-break-input=\"start\"') }}
|
||||
{{ input_field('Ende', 'end_time', type='time', value=end_time, required=true, attrs='data-break-input=\"end\"') }}
|
||||
</div>
|
||||
<div class="inline-grid">
|
||||
{{ input_field('Pause (Minuten)', 'break_minutes', type='number', value=break_minutes, required=true, attrs='min="0" step="1" data-break-input=\"minutes\"') }}
|
||||
{{ select_field('Modus', 'mode', [
|
||||
{'value': 'only_missing', 'label': 'Nur leere Tage anlegen'},
|
||||
{'value': 'upsert', 'label': 'Bestehende Einträge aktualisieren + fehlende anlegen'}
|
||||
], bulk_mode, required=true) }}
|
||||
</div>
|
||||
{% if user.automatic_break_rules_enabled %}
|
||||
<div class="form-field form-field--hint stack-xs" data-component="break-rules-status">
|
||||
<p class="muted" data-break-status>
|
||||
{% if break_mode == 'manual' %}
|
||||
Pause manuell gesetzt. Gesetzliche Mindestpause wird nicht automatisch überschrieben.
|
||||
{% else %}
|
||||
Gesetzliche Mindestpause nach deutschem Arbeitsrecht wird automatisch vorgeschlagen.
|
||||
{% endif %}
|
||||
</p>
|
||||
<button type="button" class="button ghost" data-action="break-reset-auto">Automatische Pause erneut anwenden</button>
|
||||
</div>
|
||||
{% endif %}
|
||||
{{ textarea_field('Notiz (optional)', 'notes', notes, 3) }}
|
||||
<div class="nav-row">
|
||||
{{ button('Mehrfacheingabe speichern', type='submit') }}
|
||||
{{ link_button('Zurück', '/dashboard', 'ghost') }}
|
||||
</div>
|
||||
</form>
|
||||
{% endcall %}
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user