@extends("admin.layouts.app") @section("title", __("admin.updates.title")) @section("content") @php $describe = function (array $issue): string { $params = array_map(fn ($v) => is_array($v) ? implode(', ', $v) : (string) $v, $issue['params'] ?? []); return __('admin.updates.issue.'.$issue['code'], $params); }; $when = fn (?string $iso) => $iso ? \Illuminate\Support\Carbon::parse($iso)->timezone(config('app.timezone'))->format(date_fmt().' H:i') : ''; $release = $latest['latest'] ?? null; // Picked up (no request left, nothing running) but still "queued" minutes later: the process that took it ended // without a word (killed, out of memory, a fatal error). Said so, and the buttons are back, instead of waiting for ever. $lost = $request === null && ! $running && ($status['state'] ?? '') === 'queued' && ! empty($status['updated_at']) && \Illuminate\Support\Carbon::parse($status['updated_at'])->lt(now()->subMinutes(5)); $active = ! $lost && (($request !== null) || $running || in_array($status['state'] ?? '', ['queued', 'preparing', 'applying', 'rolling_back'], true)); $late = $request && \Illuminate\Support\Carbon::parse($request['requested_at'])->lt(now()->subMinutes(2)); $blockingCodes = array_column($report['blocking'] ?? [], 'code'); $onlyMajor = $blockingCodes === ['major_version']; @endphp
{{ __('admin.updates.cli_hint_short') }} php artisan pnlcs:update
{{ __('admin.updates.apply_hint') }}
{{ __('admin.updates.files_summary', ['write' => $report['plan']['write'] ?? 0, 'delete' => $report['plan']['delete'] ?? 0]) }}
@foreach(['merged' => 'merged_files', 'kept' => 'kept_files'] as $key => $label) @if(! empty($report['plan'][$key])){{ __('admin.updates.conflicts_hint', ['path' => 'storage/app/pnlcs-update/set-aside']) }}
@endif| {{ __('admin.updates.col_date') }} | {{ __('admin.updates.col_from') }} | {{ __('admin.updates.col_to') }} | {{ __('admin.updates.col_by') }} | {{ __('admin.updates.col_result') }} |
|---|---|---|---|---|
| {{ $when($entry['at'] ?? null) }} | {{ $entry['from'] ?? '' }} | {{ $entry['to'] ?? '' }} | {{ $entry['by'] ?? '' }} | {{ __('admin.updates.history_result.'.($entry['result'] ?? 'failed')) }} |