26 lines
5.2 KiB
Cheetah
26 lines
5.2 KiB
Cheetah
{{define "task_template_fields"}}
|
|
{{$form := .Form}}
|
|
<input type='hidden' name='csrf_token' value='{{.CSRFToken}}'>
|
|
<label for='template-title'>Name</label><input id='template-title' name='title' value='{{$form.Title}}'>{{with index $form.Errors "title"}}<p class='field-error'>{{.}}</p>{{end}}
|
|
<label for='template-description'>Beschreibung</label><textarea id='template-description' name='description'>{{$form.Description}}</textarea>
|
|
{{if and $form.Origin (not (eqString $form.Origin "manual"))}}<p class='muted'>Automatisch aus den Saisonangaben der Art abgeleitet.</p><input type='hidden' name='trigger_type' value='{{$form.TriggerType}}'>{{end}}
|
|
<label for='template-trigger-type'>Typ</label><select id='template-trigger-type' name='trigger_type' data-template-trigger {{if and $form.Origin (not (eqString $form.Origin "manual"))}}disabled{{end}}><option value='month_of_year' {{if eqString $form.TriggerType "month_of_year"}}selected{{end}}>Datum</option><option value='relative_to_planting' {{if eqString $form.TriggerType "relative_to_planting"}}selected{{end}}>Nach Pflanzdatum</option><option value='relative_to_species_planting' {{if eqString $form.TriggerType "relative_to_species_planting"}}selected{{end}}>Nach Pflanzsaison</option><option value='relative_to_harvest' {{if eqString $form.TriggerType "relative_to_harvest"}}selected{{end}}>Nach Ernte</option><option value='relative_to_sowing' {{if eqString $form.TriggerType "relative_to_sowing"}}selected{{end}}>Nach Aussaat</option></select>
|
|
<fieldset data-trigger-fields='month_of_year' {{if not (eqString $form.TriggerType "month_of_year")}}hidden disabled{{end}}><legend>Ab</legend><div class='form-grid'><label>Tag<input type='number' min='1' max='31' name='day_from' value='{{$form.DayFrom}}'></label><label>Monat<select name='month_from'><option value='0'>Bitte wählen</option>{{range months}}<option value='{{.Value}}' {{if eqInt $form.MonthFrom .Value}}selected{{end}}>{{.Label}}</option>{{end}}</select></label></div>{{with index $form.Errors "date"}}<p class='field-error'>{{.}}</p>{{end}}</fieldset>
|
|
<fieldset data-trigger-fields='relative' {{if eqString $form.TriggerType "month_of_year"}}hidden disabled{{end}}><legend>Nach</legend><div class='form-grid'><label>Dauer<input type='number' min='0' name='trigger_offset' value='{{$form.TriggerOffset}}'></label><label>Einheit<select name='trigger_offset_unit'><option value='day' {{if eqString $form.TriggerOffsetUnit "day"}}selected{{end}}>Tage</option><option value='week' {{if eqString $form.TriggerOffsetUnit "week"}}selected{{end}}>Wochen</option><option value='month' {{if eqString $form.TriggerOffsetUnit "month"}}selected{{end}}>Monate</option></select></label></div></fieldset>
|
|
<fieldset><legend>Bis in</legend><div class='form-grid'><label>Dauer<input type='number' min='0' name='duration' value='{{$form.Duration}}'></label><label>Einheit<select name='duration_unit'><option value='day' {{if eqString $form.DurationUnit "day"}}selected{{end}}>Tage</option><option value='week' {{if eqString $form.DurationUnit "week"}}selected{{end}}>Wochen</option><option value='month' {{if eqString $form.DurationUnit "month"}}selected{{end}}>Monate</option></select></label></div>{{with index $form.Errors "duration"}}<p class='field-error'>{{.}}</p>{{end}}</fieldset>
|
|
<fieldset><legend>Wiederholung</legend><div class='form-grid'><label>Alle<input type='number' min='1' name='recurrence_interval' value='{{$form.RecurrenceInterval}}'></label><label>Einheit<select name='recurrence'><option value='' {{if eqString $form.Recurrence ""}}selected{{end}}>Keine Wiederholung</option><option value='daily' {{if eqString $form.Recurrence "daily"}}selected{{end}}>Tage</option><option value='weekly' {{if eqString $form.Recurrence "weekly"}}selected{{end}}>Wochen</option><option value='monthly' {{if eqString $form.Recurrence "monthly"}}selected{{end}}>Monate</option><option value='yearly' {{if eqString $form.Recurrence "yearly"}}selected{{end}}>Jahre</option></select></label></div><p class='muted'>Die nächste Aufgabe wird erst beim Erledigen angelegt.</p>{{with index $form.Errors "recurrence_interval"}}<p class='field-error'>{{.}}</p>{{end}}</fieldset>
|
|
<label for='template-priority'>Priorität</label><select id='template-priority' name='priority'>{{range .TaskPriorities}}<option value='{{.Value}}' {{if eqInt $form.Priority .Value}}selected{{end}}>{{.Name}}</option>{{end}}</select>
|
|
<label class='checkbox'><input type='checkbox' name='active' value='true' {{if $form.Active}}checked{{end}}> Aktiv</label>
|
|
{{end}}
|
|
|
|
{{define "task_template_dialog"}}
|
|
{{$species := index .Species 0}}
|
|
<dialog class='task-template-dialog'>
|
|
{{$action := pathWithQuery (webPath "task-template.new" .Garden.ID) "species_id" .SpeciesID}}{{if .TemplateID}}{{$action = pathWithQuery (webPath "task-template.edit" .Garden.ID .TemplateID) "species_id" .SpeciesID}}{{end}}<form action='{{$action}}' method='POST' hx-post='{{$action}}' hx-target='#task-template-dialog-host' hx-swap='innerHTML'>
|
|
<p class='eyebrow'>{{$species.CommonName}}</p><h3>{{if .TemplateID}}Aufgabe bearbeiten{{else}}Aufgabe anlegen{{end}}</h3>
|
|
{{template "task_template_fields" .}}
|
|
<div class='actions'><button type='submit'>Speichern</button><button type='button' class='secondary' data-close-dialog>Abbrechen</button></div>
|
|
</form>
|
|
</dialog>
|
|
{{end}}
|