{% 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=api.account_uptodate_status(account) %} {% if status %} {% endif %} {% endmacro %} {% macro last_account_activity(account_name) %} {% set last_entry = api.last_entry(account_name) %} {% set last_account_activity = (datetime.date.today() - last_entry.date).days if last_entry else 0 %} {% if last_account_activity > config['uptodate-indicator-grey-lookback-days'] %} {% endif %} {% endmacro %} {% macro balance_directive(account) %} {% for position in (api.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 = api.last_entry(account_name) %} {% if last_entry %} (Last entry: {{ last_entry.date }}) {% endif %} {% endmacro %}