release nouri 0.6.0 polish backup and pwa
This commit is contained in:
@@ -4,8 +4,8 @@
|
||||
<section class="page-intro">
|
||||
<div>
|
||||
<p class="eyebrow">Optionen</p>
|
||||
<h1>Ruhige Einstellungen für Alltag, Einkauf und Erinnerungen</h1>
|
||||
<p class="lead">Hier lässt sich festlegen, wann Einkäufe vorbereitet werden, welche Hinweise hilfreich sind und ob Nouri sich wie eine App auf dem Home-Bildschirm verhalten soll.</p>
|
||||
<h1>Ruhige Einstellungen für Alltag, Sicherung und iPhone-Nutzung</h1>
|
||||
<p class="lead">Hier lässt sich festlegen, wann Einkäufe vorbereitet werden, welche Hinweise hilfreich sind und wie Nouri sich auf dem Home-Bildschirm oder beim Backup verhalten soll.</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@@ -33,23 +33,29 @@
|
||||
Erinnerung ungefähr um
|
||||
<input type="time" name="shopping_reminder_time" value="{{ household_settings.shopping_reminder_time }}">
|
||||
</label>
|
||||
<button type="submit">Speichern</button>
|
||||
<div class="form-actions">
|
||||
<button type="submit">Speichern</button>
|
||||
</div>
|
||||
</form>
|
||||
</article>
|
||||
|
||||
<article class="panel">
|
||||
<div class="panel-head">
|
||||
<h2>Home-Bildschirm & Push</h2>
|
||||
<h2>Für den Homescreen</h2>
|
||||
</div>
|
||||
<div class="stack-sections">
|
||||
<div class="pwa-card">
|
||||
<strong>Als Web-App nutzen</strong>
|
||||
<p class="muted">Auf dem iPhone kannst du Nouri über Teilen → Zum Home-Bildschirm hinzufügen. Danach wirkt die App deutlich app-näher.</p>
|
||||
<strong>Auf dem iPhone installieren</strong>
|
||||
<p class="muted">Öffne Nouri in Safari, tippe auf Teilen und dann auf <em>Zum Home-Bildschirm</em>. Danach startet Nouri deutlich app-näher und ruhiger.</p>
|
||||
</div>
|
||||
<div class="pwa-card">
|
||||
<strong>Offline etwas stabiler</strong>
|
||||
<p class="muted">Die wichtigsten Oberflächen und Brand-Dateien bleiben lokal greifbar. Wenn das Netz kurz weg ist, wirkt die App dadurch stabiler und klarer.</p>
|
||||
</div>
|
||||
<div class="pwa-card">
|
||||
<strong>Push-Mitteilungen</strong>
|
||||
{% if push_ready %}
|
||||
<p class="muted">Push ist vorbereitet. Du kannst es auf diesem Gerät freigeben und später testweise prüfen.</p>
|
||||
<p class="muted">Push ist vorbereitet. Wenn du möchtest, kannst du es auf diesem Gerät freigeben und mit einer Test-Mitteilung prüfen.</p>
|
||||
<div class="row-actions">
|
||||
<button class="secondary" type="button" data-push-enable>Push erlauben</button>
|
||||
<button class="ghost-button" type="button" data-push-disable>Push beenden</button>
|
||||
@@ -61,7 +67,10 @@
|
||||
</form>
|
||||
<small class="helper-text">{{ push_subscription_count }} aktives Gerät{% if push_subscription_count != 1 %}e{% endif %}</small>
|
||||
{% else %}
|
||||
<p class="muted">Push wird sichtbar, sobald VAPID-Schlüssel für die App gesetzt sind.</p>
|
||||
<p class="muted">Push wird sichtbar, sobald VAPID-Schlüssel für diese App gesetzt sind.</p>
|
||||
{% if push_public_key_value %}
|
||||
<small class="helper-text">Öffentlicher Schlüssel erkannt, privater Schlüssel fehlt noch.</small>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
@@ -122,4 +131,45 @@
|
||||
</div>
|
||||
</form>
|
||||
</section>
|
||||
|
||||
{% if is_admin() %}
|
||||
<section class="two-column">
|
||||
<article class="panel">
|
||||
<div class="panel-head">
|
||||
<h2>Backup exportieren</h2>
|
||||
</div>
|
||||
<div class="stack-sections">
|
||||
<div class="pwa-card">
|
||||
<strong>Komplettes App-Backup</strong>
|
||||
<p class="muted">Das ZIP enthält Nutzer, Einstellungen, Lebensmittel, Mahlzeiten, Vorlagen, Planungen, Einkaufsdaten und hochgeladene Bilder.</p>
|
||||
<a class="button" href="{{ url_for('main.backup_export') }}">Backup herunterladen</a>
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<article class="panel">
|
||||
<div class="panel-head">
|
||||
<h2>Backup wiederherstellen</h2>
|
||||
</div>
|
||||
<form method="post" action="{{ url_for('main.backup_restore') }}" class="stack-form" enctype="multipart/form-data">
|
||||
{{ csrf_input() }}
|
||||
<div class="restore-warning">
|
||||
<strong>Nur bewusst verwenden</strong>
|
||||
<p class="muted">Die Wiederherstellung ersetzt den aktuellen Datenstand dieses Haushalts. Vorher am besten selbst noch ein frisches Backup herunterladen.</p>
|
||||
</div>
|
||||
<label>
|
||||
Backup-Datei
|
||||
<input type="file" name="backup_file" accept=".zip" required>
|
||||
</label>
|
||||
<label>
|
||||
Zur Bestätigung bitte {{ restore_confirmation_text }} eintragen
|
||||
<input type="text" name="restore_confirmation" placeholder="{{ restore_confirmation_text }}" required>
|
||||
</label>
|
||||
<div class="form-actions">
|
||||
<button type="submit">Backup wiederherstellen</button>
|
||||
</div>
|
||||
</form>
|
||||
</article>
|
||||
</section>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
Reference in New Issue
Block a user