Files
nouri-App/nouri/templates/dashboard.html
T

114 lines
4.6 KiB
HTML

{% extends "base.html" %}
{% block title %}Heute | Nouri{% endblock %}
{% block content %}
<section class="hero">
<div>
<p class="eyebrow">Heute</p>
<h1>Ein ruhiger Blick auf euren Alltag</h1>
<p class="lead">Du siehst schnell, was zuhause da ist, was schon geplant wurde und was gemeinsam oder persönlich vorbereitet ist.</p>
</div>
<div class="hero-actions">
<a class="button" href="{{ url_for('main.planner_day', date=today.isoformat()) }}">Heutigen Tagesplan öffnen</a>
<a class="button secondary" href="{{ url_for('main.item_create', kind='meal') }}">Mahlzeitenidee anlegen</a>
</div>
</section>
<section class="stats-grid">
<article class="stat-card">
<span>Zuhause</span>
<strong>{{ home_count }}</strong>
<small>sichtbare Einträge</small>
</article>
<article class="stat-card">
<span>Einkaufsliste</span>
<strong>{{ shopping_count }}</strong>
<small>offene Besorgungen</small>
</article>
<article class="stat-card">
<span>Archiv</span>
<strong>{{ archive_count }}</strong>
<small>wiederverwendbare Erinnerungen</small>
</article>
</section>
<section class="two-column">
<article class="panel">
<div class="panel-head">
<h2>Heute im Plan</h2>
<a href="{{ url_for('main.planner_day', date=today.isoformat()) }}">Zum Tagesplan</a>
</div>
{% if today_entries %}
<ul class="simple-list">
{% for entry in today_entries %}
<li class="stacked-mobile">
<div>
<strong>{{ entry.daypart_name }}</strong>
<span>{{ entry.item_name }}</span>
<div class="chip-row">
<span class="chip">{{ entry.visibility_label }}</span>
<span class="chip status-soft">{{ entry.owner_label }}</span>
</div>
</div>
{% if entry.availability_state == 'home' %}
<span class="status-pill status-home">zuhause</span>
{% endif %}
</li>
{% endfor %}
</ul>
{% else %}
<p class="empty-state">Für heute ist noch nichts fest eingeplant. Ein kleiner Anfang reicht völlig.</p>
{% endif %}
</article>
<article class="panel">
<div class="panel-head">
<h2>Kurz griffbereit</h2>
<a href="{{ url_for('main.home_view') }}">Alles unter Zuhause</a>
</div>
{% if home_items %}
<div class="mini-card-grid">
{% for item in home_items %}
<article class="mini-card">
<div class="mini-card-body">
<strong>{{ item.name }}</strong>
<small>{{ item_kind_labels[item.kind] }} · {{ item.visibility_label }}</small>
<small>{{ item.owner_label }}</small>
{% if item.dayparts %}
<div class="chip-row">
{% for daypart in item.dayparts %}
<span class="chip">{{ daypart }}</span>
{% endfor %}
</div>
{% endif %}
</div>
</article>
{% endfor %}
</div>
{% else %}
<p class="empty-state">Sobald etwas eingekauft oder manuell auf Zuhause gesetzt wurde, erscheint es hier.</p>
{% endif %}
</article>
</section>
<section class="panel">
<div class="panel-head">
<h2>Nächste Tage</h2>
<a href="{{ url_for('main.planner') }}">Wochenansicht öffnen</a>
</div>
<div class="week-mini-grid">
{% for card in week_cards %}
<a class="week-mini-card" href="{{ url_for('main.planner_day', date=card.date.isoformat()) }}">
<strong>{{ weekday_short_name(card.date) }} {{ card.date.strftime('%d.%m.') }}</strong>
{% if card.filled_dayparts %}
<span>{{ card.planned_count }} Einträge</span>
<small>{{ card.filled_dayparts | map(attribute='name') | join(', ') }}</small>
{% else %}
<span>Noch frei</span>
<small>sanfter Einstieg für den Tag</small>
{% endif %}
</a>
{% endfor %}
</div>
</section>
{% endblock %}