{% set links = { 'draft': { current_route: 'app_project_details', url: url('app_project_details', {acronym: project.acronym}) }, 'planning': { current_route: 'app_project_planning', url: url('app_project_planning', {acronym: project.acronym}) }, 'in_execution': { current_route: 'app_project_dashboard', url: url('app_project_dashboard', {acronym: project.acronym}) } } %} {% set icons = { 'draft': {'icon': 'mdi-lightbulb-outline'}, 'planning': {'icon': 'mdi-calendar-clock'}, 'planned': {'icon': 'mdi-calendar-check'}, 'in_execution': {'icon': 'mdi-progress-wrench'}, 'completed': {'icon': 'mdi-check-circle-outline'}, 'on_hold': {'icon': 'mdi-pause-circle-outline'}, 'closed': {'icon': 'mdi-archive-outline'} } %} {% for place, evaluation in results %} {% set current = icons[place]|default({'icon': 'mdi-alert-circle-outline', 'class': 'text-danger'}) %}
  • {% set isActive = (project.status == 'draft' and place == 'draft') or (project.status == 'planning' and (place == 'draft' or place == 'planning')) or (project.status == 'planned' and (place == 'draft' or place == 'planning' or place == 'planned')) or ((project.status == 'in_execution') and (place in ['draft', 'planning', 'planned', 'in_execution'])) or ((project.status == 'completed') and (place in ['draft', 'planning', 'planned', 'in_execution', 'completed'])) or ((project.status == 'on_hold') and (place in ['draft', 'planning', 'planned', 'in_execution', 'on_hold'])) or ((project.status == 'closed') and (place in ['draft', 'planning', 'planned', 'in_execution', 'closed'])) %}
    {% if evaluation is not empty %} {% set progress = evaluation.total_weight | default(0) %} {{ place|trans }} — ({{ progress }}%) {% set peity_color = progress == 100 ? '#10c469' : '#ffc107' %} {{ progress }}/100 {% elseif place == 'in_execution' %} {% set progress = project.progress | default(0) | round %} {{ place|trans }} — ({{ progress }}%) {% set peity_color = progress == 100 ? '#10c469' : '#ffc107' %} {{ progress }}/100 {% else %} {{ place|trans }} {% endif %} {{ (step == place) or (step in ['followup', 'kanban', 'dashboard'] and place == 'in_execution') ? '' : '' }}
    {% if evaluation is not empty %}
    Détails des évaluations
      {% for elem in evaluation.details %}
    • {{ elem.metric }} {% if elem.completed %} {% else %} {% endif %}
    • {% endfor %}
    {% elseif place == 'in_execution' %}
    Interfaces de pilotage
      Tableau de bord Tableau Kanban Suivi et évaluation Budget Tacking
    {% endif %}
  • {% endfor %}