@php $currentSchedule = collect($scheduleDayLabels) ->mapWithKeys(function ($label, $key) use ($contract) { $schedule = $contract->weekly_schedule[$key] ?? ['enabled' => false, 'start' => null, 'end' => null]; return [$key => array_merge($schedule, old("weekly_schedule.$key", []))]; }) ->all(); $isParentView = $isParentView ?? false; $isLinkedParentContract = $contract->child?->employer?->linked_parent_user_id !== null || $contract->child?->employer?->user?->isParent(); $isWaitingForParentCompletion = ! $isParentView && $isLinkedParentContract && $contract->status === 'draft'; $readonly = ! $contract->isEditable() || ($isParentView && $contract->status !== 'draft') || $isWaitingForParentCompletion; $canCreateAmendment = $contract->status === 'active' && ! $contract->hasPendingAmendment(); $lockedForParentWithAssistant = $isParentView && $contract->assistant() !== null; $creatorLabel = match (true) { $contract->createdBy === null => null, $contract->createdBy->isParent() => 'Créé par le parent employeur', $contract->createdBy->isNounou() => "Créé par l'assistante maternelle", default => null, }; $statusBadgeModifier = match ($contract->status) { 'draft' => ' contract-status-badge--draft', 'to_sign' => ' contract-status-badge--to-sign', 'cancelled' => ' contract-status-badge--cancelled', 'ended', 'superseded' => ' contract-status-badge--ended', default => '', }; $minimumDurationRaw = (string) old('minimum_duration', $contract->minimum_duration); preg_match('/\d+/', $minimumDurationRaw, $minimumDurationMatch); $minimumDurationValue = $minimumDurationMatch[0] ?? 3; $minimumDurationUnit = match (true) { str_contains($minimumDurationRaw, 'sem') => 'week', str_contains($minimumDurationRaw, 'jour') => 'day', default => 'month', }; @endphp

Contrat de garde de {{ $contract->child->display_name }}

@if ($creatorLabel)

{{ $creatorLabel }}

@endif @if (($isParentView ?? false) && $contract->source_template_id !== null && $contract->status === 'draft')

Je complète le cadre, mon planning de garde et les semaines travaillées avant validation.

@endif
@unless ($readonly)
Complétion
Formulaire complet
@endunless
@if (! $isParentView && $contract->status === 'to_sign')
Si je modifie ce projet de contrat, mes changements sont d’abord vérifiés par le parent employeur, puis le contrat me revient pour validation.
@endif @if ($isParentView && $contract->status === 'draft' && $assistantChangeSummary !== [])
Mon assistante maternelle a modifié le contrat

Je vérifie ses changements, signalés dans le formulaire, puis je lui renvoie mon contrat pour validation.

    @foreach ($assistantChangeSummary as $change)
  • {{ $change['label'] }} @if ($change['new'] === 'Modifié') Modifié @else {{ $change['old'] }} {{ $change['new'] }} @endif
  • @endforeach
@endif @php($activeTermination = $activeTermination ?? null) @php($viewerIsInitiator = $activeTermination && $activeTermination->initiated_by_user_id === auth()->id()) {{-- Tant qu'elle n'est pas transmise, la fin de contrat reste un brouillon privé : seule la partie qui l'a initiée le voit. --}} @if ($activeTermination && ! $activeTermination->isCancelled() && ($activeTermination->isSubmitted() || $viewerIsInitiator))
! $activeTermination->isSubmitted() && $viewerIsInitiator])> @if ($activeTermination->isAcknowledged()) Fin de contrat en cours

La fin de contrat ({{ $activeTermination->reasonEnum()?->label() ?? 'motif à préciser' }}) a été confirmée par les deux parties. Dernier jour prévu : {{ optional($activeTermination->contract_end_date)->translatedFormat('d/m/Y') ?? 'à préciser' }}.

@elseif ($activeTermination->isAwaitingAcknowledgement() && ! $viewerIsInitiator) Une fin de contrat vous a été transmise

{{ $activeTermination->initiator?->first_name ?? "L'autre partie" }} a préparé la fin de ce contrat ({{ $activeTermination->reasonEnum()?->label() }}). Merci d'en confirmer la bonne réception.

Consulter le détail
@csrf @method('patch')
@elseif ($activeTermination->isAwaitingAcknowledgement()) Fin de contrat transmise

En attente de la confirmation de bonne réception par l'autre partie.

Consulter le détail
@csrf @method('patch')
@elseif ($viewerIsInitiator) Brouillon de fin de contrat

Vous avez commencé à préparer la fin de ce contrat. Elle n'est pas encore transmise à l'autre partie.

@endif @if ($activeTermination->isSubmitted())

Documents de fin de contrat

Certificat de travail Validez la date de fin effective avant de générer le PDF.

Calculée : · écart de jour(s) .

Salariée
Emploi occupéAssistant(e) maternel(le)
Entrée
Sortie
Reçu pour solde de tout compte Validez le montant net versé et sa transcription en lettres.

Écart de € avec le montant calculé.

dispose de 6 mois pour contester ce reçu après l'avoir signé. Remettez-le en deux exemplaires, chacun daté et signé.
@if ($isParentView ?? false)

Attestation employeur France Travail — je ne peux pas la générer à votre place : seul le particulier employeur peut la remplir, directement depuis :

  • Mon compte Pajemploi — une fois ma dernière déclaration faite, l'outil de fin de contrat propose de générer les documents automatiquement.
  • France Travail — je peux aussi la compléter en ligne puis la remettre à {{ $contract->assistant()?->first_name ?? "l'assistante maternelle" }} (mon identifiant Pajemploi me sera demandé).

Je pense à garder un exemplaire de chaque document remis.

@else

L'attestation employeur (nécessaire pour l'allocation chômage) est à demander à votre employeur : seul·e le/la particulier·ère employeur·se peut la générer, via Pajemploi ou France Travail.

@endif
@endif
@endif
@csrf @method('patch') @include('contracts._form', [ 'record' => $contract, 'readonly' => $readonly, 'lockChild' => (! $isParentView && $isLinkedParentContract) || ! $contract->isChildChangeable(), 'canEditContractFrame' => ! $readonly, 'canEditCareLocation' => ! $readonly && ! $lockedForParentWithAssistant, 'canEditCompensation' => ! $readonly && ! $lockedForParentWithAssistant, 'canEditRest' => ! $readonly && ! $lockedForParentWithAssistant, 'canEditSchedule' => ! $readonly, 'canEditScheduleNotice' => ! $readonly && ! $lockedForParentWithAssistant, 'canEditWeeks' => ! $readonly, 'hideContractFrameForLinkedParentFlow' => false, 'assistantCard' => $assistantCard, 'canChangeAssistant' => $canChangeAssistant, 'knownAssistants' => $knownAssistants, 'knownAssistantConditions' => $knownAssistantConditions, 'assistantFieldsRequired' => ! ($isParentView && $assistantCard === null), ])
@if ($errors->any())
Je dois corriger quelques informations.
    @foreach ($errors->all() as $error)
  • {{ $error }}
  • @endforeach
@endif {{ $contract->statusLabel() }} @if ($isWaitingForParentCompletion)

J'attends que le parent employeur complète ce brouillon et me le renvoie pour validation.

@elseif ($readonly)

Je ne peux plus modifier ce contrat.

@else

Je complète la date de début pour générer le contrat.

@endif
@if ($contract->isAmendment()) Consulter le contrat initial @endif @if ($contract->amendments()->exists()) Consulter les avenants @endif @if ($contract->status === 'active') Gérer la fin du contrat @endif Je dois enregistrer mes modifications{{ ! $isParentView && $contract->status === 'to_sign' ? ' avec « Soumettre les changements »' : '' }} avant de télécharger le PDF mis à jour. @if ($canCreateAmendment) @endif @if ($isParentView && $contract->status === 'draft' && $assistantCard !== null) @endif @if (! ($isParentView ?? false) && $contract->status === 'to_sign') @endif @if (! $readonly && ! (! ($isParentView ?? false) && $contract->status === 'to_sign')) @endif
@if (! ($isParentView ?? false) && $contract->status === 'to_sign')
@csrf @method('patch')
@csrf @method('patch')
@endif
@csrf