{% extends 'base.html' %} {% block content %}

{{ t('expenses.list') }}

{{ selected_year }}-{{ '%02d'|format(selected_month) }}
{{ t('common.previous') }}
{{ t('common.next') }}
{{ t('expenses.filtered_total') }}
{{ '%.2f'|format(month_total) }}
{{ expenses|length }} {{ t('expenses.results') }}
{{ t('expenses.active_sort') }}
{{ dict(sort_options).get(filters.sort_by, t('expenses.date')) }}
{{ t('expenses.' ~ filters.sort_dir) if filters.sort_dir in ['asc', 'desc'] else filters.sort_dir }}
{{ t('expenses.grouping') }}
{{ t('expenses.group_' ~ filters.group_by) if filters.group_by in ['category','payment_method','status','none'] else filters.group_by }}
{{ grouped_expenses|length }} {{ t('expenses.sections') }}
{{ t('expenses.categories_count') }}
{{ categories|length }}
{{ t('expenses.month_view') }}
{{ t('common.reset') }}
{% if budgets %}
{{ t('budgets.title') }}: {% for budget in budgets %}{{ budget.category.localized_name(current_language) }} {{ budget.amount }}{% if not loop.last %}, {% endif %}{% endfor %}
{% endif %} {% if expenses %}
{% for group in grouped_expenses %}
{{ group['label'] }}
{{ group['items']|length }} {{ t('expenses.results') }}
{{ t('expenses.filtered_total') }}
{{ '%.2f'|format(group['total']) }}
{% for expense in group['items'] %}
{% if expense.preview_filename %} preview {% else %} {% endif %}
{{ expense.title }} {{ expense.category.localized_name(current_language) if expense.category else t('common.uncategorized') }} {{ expense.purchase_date }}
{% if expense.vendor %}{{ expense.vendor }}{% endif %} {% if expense.payment_method %}{{ t('expenses.payment_' ~ expense.payment_method) if expense.payment_method in ['card','cash','transfer','blik'] else expense.payment_method }}{% endif %} {% if expense.tags %}{{ expense.tags }}{% endif %} {% if expense.status %}{{ t('expenses.status_' ~ expense.status) if expense.status in ['new','needs_review','confirmed'] else expense.status }}{% endif %}
{% if expense.description %}
{{ expense.description }}
{% endif %}
{{ expense.amount }} {{ expense.currency }}
{% if expense.all_previews %} {% for preview_name in expense.all_previews[:3] %} {% endfor %} {% endif %} {{ t('expenses.edit') }}
{{ csrf_token() if csrf_token else '' }}
{% endfor %}
{% endfor %}
{% else %}
{{ t('expenses.empty') }}
{% endif %} {% endblock %}