@extends('layouts.app') @section('title', 'Confirm Rollback') @section('contents') @php $log = $log ?? []; $preview = $preview ?? []; $formSummary = $form_summary ?? []; $allowed = ! empty($preview['allowed']); $fields = $preview['fields_to_restore'] ?? []; @endphp
@if (session('error'))
{{ session('error') }}
@endif

Rollback summary

Recovery: {{ $log['recovery_type'] ?? '—' }} · performed {{ $log['performed_at'] ?? '—' }} · reason: {{ $log['reason'] ?: '—' }}

Current form (live)
Actor: {{ $formSummary['current_actor_id'] ?? '—' }} · Stage: {{ $formSummary['workflow_stage'] ?? '—' }} · Created By: {{ $formSummary['created_by'] ?? '—' }} · State: {{ $formSummary['state'] ?? '—' }}
Fields that will be restored
@if (empty($fields))

No restorable field differences.

@else
@foreach ($fields as $field => $pair) @endforeach
Field Current (after recovery) Restore to (before recovery)
{{ $field }} {{ is_array($pair['from'] ?? null) ? json_encode($pair['from']) : (($pair['from'] === null || $pair['from'] === '') ? 'NULL' : $pair['from']) }} {{ is_array($pair['to'] ?? null) ? json_encode($pair['to']) : (($pair['to'] === null || $pair['to'] === '') ? 'NULL' : $pair['to']) }}
@endif
Rollback restores only the fields listed above. It never deletes forwards, reviews, meetings, documents, attachments, or signatures.
@if (! $allowed)
Rollback blocked.
{{ $preview['reason'] ?? 'Not allowed.' }}
@else
@csrf
@endif
@endsection