Files
garmin-coach-to-cal-sync/templates/schedule.html
2026-06-16 15:14:37 +02:00

48 lines
1.7 KiB
HTML

{% extends "base.html" %}
{% block content %}
<section class="page-head">
<div>
<p class="eyebrow">Change detection</p>
<h1>Schedule</h1>
</div>
<form method="post" action="/schedule/restore">
<button type="submit" class="secondary">Restore defaults</button>
</form>
</section>
{% if error %}<p class="alert">{{ error }}</p>{% endif %}
{% if message %}<p class="notice">{{ message }}</p>{% endif %}
<section class="panel form-panel">
<header>
<h2>Sync Cadence</h2>
</header>
<form method="post" action="/schedule" class="stack">
<label class="checkbox">
<input type="checkbox" name="enabled" {% if schedule.enabled %}checked{% endif %}>
Sync enabled
</label>
<div class="grid-form">
<label>Interval minutes
<input name="interval_minutes" type="number" min="5" max="1440" value="{{ schedule.interval_minutes }}" required>
</label>
<label>Active window
<input name="active_window" pattern="^([01][0-9]|2[0-3]):[0-5][0-9]-([01][0-9]|2[0-3]):[0-5][0-9]$" value="{{ schedule.active_window }}" required>
</label>
<label>Days ahead
<input name="days_ahead" type="number" min="0" max="14" value="{{ schedule.days_ahead }}" required>
</label>
</div>
<label>Fixed check times
<textarea name="fixed_times" rows="3" required>{{ schedule.fixed_times | join(",") }}</textarea>
</label>
<button type="submit">Save schedule</button>
</form>
</section>
<section class="panel">
<header><h2>Default Behavior</h2></header>
<p class="muted">All scheduled runs are change-detection runs. They create a missing clone, skip a current clone, and replace only when the Coach source hash changes.</p>
</section>
{% endblock %}