{% set info = get_global_parameters() %}
| Employé | {% for i, date in dates %}{{ date|jour_abbr }} | {# Ajoute une colonne total après la fin d'une semaine #} {% set nextDate = dates[i + 1] ?? null %} {% if nextDate and (nextDate|date('Y-W') != date|date('Y-W')) %}Total | {% endif %} {% endfor %} {# Dernière colonne Total si le mois ne finit pas un dimanche #} {% if dates|last and (dates|last|date('w') != 0) %}Total | {% endif %}|
|---|---|---|---|---|
|
{% if emp.image is not null %}
{{ emp.prenom }} {{ emp.nom }}{{ emp.role }} |
{% for i, date in dates %}
{% set slot = planning[emp.id][date] ?? null %}
{% set weekId = date|date('Y-W') %}
{% set isLocked = weekId in lockedWeeks %}
{% set isPast = date < "now"|date("Y-m-d") %}
{% if info.parametres.planningDelai is defined and info.parametres.planningDelai == '1' %}
{% set nowPlus7 = "now"|date_modify("+7 days") %}
{% set isPast = (date|date('U')) < ("now"|date_modify("+7 days")|date('U')) %}
{% endif %}
{% if slot %}
{% if slot.type == "travail" %}
{{ slot.start }} {{ slot.end }} {% else %} {% if slot.typeOff == "formation" %} {{ slot.typeOff |capitalize | slice (0,5)}} {% elseif slot.typeOff == "Congés payés" %} {{ slot.typeOff |capitalize | slice (0,5)}} {% else %} {{ slot.typeOff |capitalize | slice (0,5) }} {% endif %} {% endif %} {% if isLocked %} {% endif %} |
{% else %}
{% set blocked = blockedDays[emp.id][date|date('Y-m-d')] is defined %}
{% if blocked %}
|
{% endif %}
{# Après chaque fin de semaine, ajoute le total #}
{% set nextDate = dates[i + 1] ?? null %}
{% if nextDate and (nextDate|date('Y-W') != weekId) %}
{{ weekTotals[emp.id][weekId]|default(0)|number_format(2, ',', ' ') }} h {% if loop.parent.loop.index0 == 0 %} {% if isLocked %} {% else %} {% endif %} {% endif %} |
{% endif %}
{% endfor %}
{# Dernière colonne Total si le mois ne finit pas un dimanche #}
{% set lastWeekId = dates|last|date('Y-W') %}
{% if dates|last and (dates|last|date('w') != 0) %}
{{ weekTotals[emp.id][lastWeekId]|default(0)|number_format(2, ',', ' ') }} h | {% endif %}