{% set byPartner = financing.byPartner ?? [] %} {% set timeSeries = financing.timeSeries ?? {} %} {% set alerts = financing.alerts ?? [] %} {% set currency = program.currency ?? 'XOF' %} {% set _allocated = program.totalBudget|default(0) %} {# ══════════════════════════════════════════════════════════════ BLOC 1 — Alertes budgétaires ══════════════════════════════════════════════════════════════ #} {% if alerts is not empty %} {% set dangerCount = alerts|filter(a => a.level == 'danger')|length %} {% set warnCount = alerts|filter(a => a.level == 'warning')|length %} {% set bgMap = {danger: 'bg-danger-subtle', warning: 'bg-warning-subtle', info: 'bg-success-subtle'} %} {% set textMap = {danger: 'text-danger', warning: 'text-warning', info: 'text-success'} %} {% set collapseId = 'budgetAlertsCollapse_' ~ (program.id ?? 'global') %}
| Bailleur | Alloué | Engagé | Décaissé | Taux engagement | Taux décaissement | Lignes |
|---|---|---|---|---|---|---|
|
{{ row.partner }}
{% if row.fundingType %}
{{ row.fundingType }}
{% endif %}
{{ row.share }}% du total
|
{# Montants #}
{{ row.allocated|minify_budget }} {{ row.currency }}
|
{{ row.committed|minify_budget }} {{ row.currency }}
|
{{ row.disbursed|minify_budget }} {{ row.currency }}
|
{# Progress - Engagement #}
{# Progress - Décaissement #} | {# Lignes #} | {{ row.linesCount }} |
| Total | {{ _allocated|minify_budget }} {{ program.currency }} | {{ program.getTotalCommittedBudget|minify_budget }} {{ program.currency }} | {{ program.totalDisbursedBudget|minify_budget }} {{ program.currency }} | |||