{% set infotext = {
'green': "The last entry is a passing balance check.",
'red': "The last entry is a failing balance check.",
'yellow': "The last entry is not a balance check.",
} %}
{% macro indicator(account) %}
{% set status=ledger.account_uptodate_status(account) %}
{% if status %}
{% endif %}
{% endmacro %}
{% macro last_account_activity(account_name) %}
{% set last_entry = ledger.last_entry(account_name) %}
{% set last_account_activity = (datetime.date.today() - last_entry.date).days if last_entry else 0 %}
{% if last_account_activity > ledger.fava_options['uptodate-indicator-grey-lookback-days'] %}
{% endif %}
{% endmacro %}
{% macro balance_directive(account) %}
{% for position in (ledger.all_root_account|get_or_create(account)).balance %}
{{ datetime.date.today() }} balance {{ account.ljust(28) }} {% with num=position.units.number|string %}{{ num.rjust(15) }}{% endwith %} {{ position.units.currency }}
{% endfor %}
{% endmacro %}
{% macro account_name(account_name, last_segment=False) %}
{{ account_name|last_segment if last_segment else account_name }}
{% if account_name and account_name|uptodate_eligible %}
{{ indicator(account_name) }}
{{ last_account_activity(account_name) }}
{% endif %}
{% endmacro %}
{% macro account_name_header(account_name) %}
{% set levels = account_name|account_level %}
{% for level in range(0, levels) %}
{% set subaccount_name = account_name.rsplit(':', maxsplit=levels-loop.index)[0] %}
{% set subaccount_part = account_name.split(':')[level] %}
{%- if loop.last -%}
{{ subaccount_part }}
{%- else -%}
{{ subaccount_part }}:
{%- endif -%}
{% endfor %}
{% if account_name and account_name|uptodate_eligible %}
{{ indicator(account_name) }}
{{ last_account_activity(account_name) }}
{% endif %}
{% set last_entry = ledger.last_entry(account_name) %}
{% if last_entry %}
(Last entry: {{ last_entry.date }})
{% endif %}
{% endmacro %}