{% extends "base.html" %} {% block title %}Calendar{% endblock %} {% block content %}

Calendar

Every task in one list, with filters, is on the Tasks page{% if due_now %}: {{ due_now }} due today or earlier{% endif %}.

Meetings this week ({{ upcoming | length }})

{% for e in upcoming %} {% else %} {% endfor %}
whenmeetingcompanywith
{{ e.start.strftime('%a %d %b') }}{% if not e.all_day %} {{ e.start.strftime('%H:%M') }}–{{ e.end.strftime('%H:%M') }}{% endif %} {{ e.title or '(no title)' }}{% if e.location %} {{ e.location }}{% endif %} {% for m in e.companies %}{{ m.company.name }}{% if not loop.last %}, {% endif %}{% endfor %} {{ e.attendees | join(', ') }}
Brief {% for m in e.companies %}
{{ m.company.name }} {{ m.company.stage }} · {{ m.company.days_in_stage(today) }}d in stage{% if m.company.value_eur_month is not none %} · {{ m.company.value_eur_month }} EUR/month{% endif %}
{% if m.company.product_oneliner %}
{{ m.company.product_oneliner }}
{% endif %} {% if m.company.next_step_open %}
next: {{ m.company.next_step or '(no text)' }}{% if m.company.next_step_due %}, due {{ fmt_date(m.company.next_step_due) }}{% endif %}
{% endif %} {% if m.company.contacts %}
{% for c in m.company.contacts.values() %}{{ c.name }}{% if c.title %} ({{ c.title }}){% endif %}{% if not loop.last %}, {% endif %}{% endfor %}
{% endif %}
    {% for it in m.interactions %}
  • {{ fmt_date(it.date) }} {{ it.channel }} {{ it.direction }} ({{ it.contact_label }}){% if it.subject or it.body %} {{ it.subject or preview(it.body) }}{% endif %}
  • {% else %}
  • No interactions logged yet.
  • {% endfor %}
{% endfor %}
No meetings with known companies in the next 7 days{% if not calendar_last_run %} (no meeting import has run yet){% endif %}.
← {{ prev_month.strftime('%b %Y') }}

{{ first.strftime('%B %Y') }}

{{ next_month.strftime('%b %Y') }} → {% if first != today.replace(day=1) %}this month{% endif %}
{% for name in ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] %}{% endfor %} {% for week in weeks %} {% for cell in week %} {% endfor %} {% endfor %}
{{ name }}
{{ cell.date.day }}
{% for r in cell.rows %}
{{ r.who }}: {{ r.text or '(no text)' }}
{% endfor %}

Silent for {{ silent_threshold }}+ days, not closed ({{ silent | length }})

{% for c in silent %} {% else %} {% endfor %}
companystagelast touchsilent
{{ c.name }} {{ c.stage }} {{ c.last_touch_summary }} {{ c.silent_days(today) }}d log interaction
Nobody is going quiet.
{% endblock %}