@extends('layouts.app')
@section('titre', 'Jours fériés')
@section('contenu')
Jours fériés — calendrier personnalisable
Fériés nationaux (France) + locaux (La Réunion : 20 décembre, Fèt Kaf) générés automatiquement, puis personnalisables. Un férié marqué « travaillé » reste un jour de production.
{{-- Calendrier annuel : visualisation des jours fériés (sans JS, compatible CSP) --}}
@php
$parDate = $feries->keyBy(fn ($f) => $f->date->format('Y-m-d'));
$badges = ['national' => 'nat', 'reunion' => 'reu', 'local' => 'loc'];
$joursSem = ['L', 'M', 'M', 'J', 'V', 'S', 'D'];
@endphp
Calendrier {{ $annee }}
National
La Réunion
Personnalisé
Férié travaillé (jour de production)
@for ($mois = 1; $mois <= 12; $mois++)
@php
$premier = \Carbon\Carbon::create($annee, $mois, 1);
$nbJours = $premier->daysInMonth;
$decalage = $premier->dayOfWeekIso - 1; // lundi = 0
@endphp
{{ ucfirst($premier->translatedFormat('F')) }}
@foreach ($joursSem as $js)
{{ $js }}
@endforeach
@for ($v = 0; $v < $decalage; $v++)
@endfor
@for ($j = 1; $j <= $nbJours; $j++)
@php
$date = \Carbon\Carbon::create($annee, $mois, $j);
$ferie = $parDate[$date->format('Y-m-d')] ?? null;
$weekend = $date->isWeekend();
@endphp
@if ($ferie)
{{ $j }}
@else
{{ $j }}
@endif
@endfor
@endfor
| Date | Libellé | Source | Travaillé | | |
@forelse($feries as $f)
|
|
@empty
| Aucun jour férié pour {{ $annee }} — utiliser le bouton « Générer ». |
@endforelse
Ajouter un jour férié / fermeture personnalisé(e)
@endsection