{% extends "base.html" %} {% import "macros.html" as m %} {% block title %}Tasks{% endblock %} {% block content %}

Tasks ({{ rows | length }})

Every task for a company or one of its people. A company's next step is its open task due first.{% if type_names() %} Filter by type to see one kind of work.{% endif %}

All dates {% for c in chips %}{{ c.label }} {{ c.count }}{% endfor %} Next steps only {{ next_count }}

{{ m.filter_form('task-filters', '/tasks', active, None, sort, dir) }} {% for w in when %}{% endfor %} {% if nexts %}{% endif %}
{% for col in filter_columns %}{% endfor %}{% for col in filter_columns %}{% endfor %} {% for r in rows %} {% if filter_columns | selectattr('key', 'equalto', 'type') | list %}{% endif %} {% else %} {% endfor %}
{{ col.label }} {{ m.sort_links(col, sort, dir, sort_url) }}
{{ m.filter_control(col, active, 'task-filters') }}
{{ fmt_date(r.due) if r.due else 'no date' }} {{ r.text or '(no text)' }}{% if r.is_next %} next step{% endif %}{{ m.type_chip(r.type) }}{{ r.who }} {{ r.company_name }} {{ r.stage }} {{ r.status }} {{ fmt_date(r.done_on) if r.done_on else '' }} {{ m.todo_edit(r.company, r.todo, r.todo.index, r.contact.slug if r.contact else '', back=here) }}{{ m.todo_actions(r.company, r.todo, back=here) }}
No tasks match.

Add a task

{% if form_error %}{% endif %}
{% if type_names() %}{% endif %}
{% endblock %}