modified: app.py

modified:   db.py
	modified:   routes/journal_routes.py
	modified:   static/css/style.css
	modified:   static/js/main.js
	modified:   templates/base.html
	modified:   templates/day.html
	modified:   templates/future.html
	modified:   templates/index.html
	new file:   templates/monat.html
	modified:   templates/week.html
This commit is contained in:
SimolZimol
2026-08-02 21:12:17 +02:00
parent 9ab350ac02
commit 428dccc5b0
11 changed files with 632 additions and 106 deletions

82
templates/monat.html Normal file
View File

@@ -0,0 +1,82 @@
{% extends "base.html" %}
{% block title %}Monatsübersicht Bullet Journal{% endblock %}
{% block content %}
<div class="page-head">
<div>
<h1>Monatsübersicht</h1>
<p class="muted">
<a href="{{ url_for('journal.month', month=prev_month.strftime('%Y-%m')) }}" class="btn btn-small">← Voriger</a>
{{ first.strftime('%B %Y') }}
<a href="{{ url_for('journal.month', month=next_month.strftime('%Y-%m')) }}" class="btn btn-small">Nächster →</a>
</p>
</div>
<div class="page-actions">
<a href="{{ url_for('journal.export_month', month=first.strftime('%Y-%m')) }}" class="btn btn-small">⬇ CSV</a>
<button class="btn btn-small" onclick="window.print()">🖨 Drucken/PDF</button>
</div>
</div>
<section class="card">
<h2>{{ first.strftime('%B %Y') }}</h2>
<div class="month-grid">
<div class="month-grid-head">
{% for wd in weekdays %}<span>{{ wd[:2] }}</span>{% endfor %}
</div>
{% for week in weeks %}
<div class="month-grid-row">
{% for cell in week %}
<div class="month-cell {{ '' if cell.in_month else 'outside' }} {{ 'today' if cell.today else '' }}"
{% if cell.in_month %}onclick="location.href='{{ url_for('journal.day', date_str=cell.date.strftime('%Y-%m-%d')) }}'"{% endif %}>
<span class="month-daynum">{{ cell.date.day }}</span>
{% for n in cell.notes[:4] %}
<div class="month-note {{ 'is-done' if n.status == 'done' else '' }}" title="{{ n.note_text }}">
<span class="bullet bullet-{{ n.bullet_type }}">{{ n.bullet_type }}</span>
<span class="month-note-text">{{ n.note_text|truncate(22) }}</span>
</div>
{% endfor %}
{% if cell.notes|length > 4 %}
<div class="month-more">+{{ cell.notes|length - 4 }} weitere</div>
{% endif %}
</div>
{% endfor %}
</div>
{% endfor %}
</div>
</section>
<section class="card">
<h2>Alle Einträge des Monats</h2>
{% if all_notes %}
<ul class="note-list">
{% for n in all_notes %}
{% if n.status != 'moved' %}
<li class="note-item {{ 'is-done' if n.status == 'done' else '' }}">
<span class="bullet bullet-{{ n.bullet_type }}">{{ n.bullet_type }}</span>
<span class="note-text">{{ n.note_text|linkify }}</span>
{% if n.refs|refs %}
<span class="refs">
{% for r in n.refs|refs %}
<a class="ref" href="{{ ref_href(r.type, r.value) }}" target="_blank" rel="noopener">
{{ ref_type_label(r.type) }} {{ r.value }}
</a>
{% endfor %}
</span>
{% endif %}
<span class="note-date">{{ n.note_date.strftime('%d.%m.') }}</span>
<span class="priority-badge priority-{{ n.priority }}">{{ ['Niedrig','Mittel','Hoch'][n.priority] if n.priority <= 2 else n.priority }}</span>
<span class="mini-actions no-print">
<form method="post" action="{{ url_for('journal.mark_done', note_id=n.id) }}" class="inline">
<button class="btn btn-small {{ 'btn-success' if n.status != 'done' else '' }}">
{{ 'Erledigt' if n.status != 'done' else 'Öffnen' }}
</button>
</form>
</span>
</li>
{% endif %}
{% endfor %}
</ul>
{% else %}
<p class="muted">Keine Einträge in diesem Monat.</p>
{% endif %}
</section>
{% endblock %}