@php $pciIvEdit = canField('pc-forms', 'project_brief_descriptions', 'edit'); $pciIvSrc = $pcForm ?? null; $pciIvFill = $pciCrudDraftFill ?? []; $pciIvDateVal = static function ($val): string { if ($val === '' || $val === null) { return ''; } if (preg_match('/^\d{4}-\d{2}-\d{2}$/', (string) $val)) { return (string) $val; } try { return \Illuminate\Support\Carbon::parse($val)->format('Y-m-d'); } catch (\Throwable $e) { return ''; } }; $pciIvForums = old('pc_iv_approval_forums'); if (! is_array($pciIvForums)) { $pciIvForums = $pciIvSrc?->pc_iv_approval_forums ?? ($pciIvFill['pc_iv_approval_forums'] ?? []); if (! is_array($pciIvForums)) { $pciIvForums = []; } } $pciIvMatrix = old('pc_iv_implementation_period_matrix'); if (! is_array($pciIvMatrix)) { $pciIvMatrix = $pciIvSrc?->pc_iv_implementation_period_matrix ?? ($pciIvFill['pc_iv_implementation_period_matrix'] ?? []); if (! is_array($pciIvMatrix)) { $pciIvMatrix = []; } } $pciIvMatrixPci = is_array($pciIvMatrix['pci'] ?? null) ? $pciIvMatrix['pci'] : []; $pciIvMatrixActual = is_array($pciIvMatrix['actual'] ?? null) ? $pciIvMatrix['actual'] : []; $pciIvExtensions = old('pc_iv_authorized_extensions'); if (! is_array($pciIvExtensions)) { $pciIvExtensions = $pciIvSrc?->pc_iv_authorized_extensions ?? ($pciIvFill['pc_iv_authorized_extensions'] ?? []); if (! is_array($pciIvExtensions)) { $pciIvExtensions = []; } } $pciIvExtensions = array_values($pciIvExtensions); if ($pciIvExtensions === []) { $pciIvExtensions = [['extension_date' => '', 'description' => '']]; } $pciIvAttMap = $existingAttachmentsMap ?? []; $pciIvForumAttRows = []; $pciIvForumAnnRows = []; if (! empty($pciIvAttMap['pc_iv_forum_decision_attachments[]']) && is_array($pciIvAttMap['pc_iv_forum_decision_attachments[]'])) { foreach ($pciIvAttMap['pc_iv_forum_decision_attachments[]'] as $f) { if (empty($f['path'])) { continue; } $pciIvForumAttRows[] = ['path' => $f['path'], 'title' => $f['name'] ?? basename((string) $f['path'])]; } } if (! empty($pciIvAttMap['pc_iv_forum_decision_annexures[]']) && is_array($pciIvAttMap['pc_iv_forum_decision_annexures[]'])) { foreach ($pciIvAttMap['pc_iv_forum_decision_annexures[]'] as $f) { if (empty($f['path'])) { continue; } $pciIvForumAnnRows[] = ['path' => $f['path'], 'title' => $f['name'] ?? basename((string) $f['path'])]; } } $pciIvLifecycleWizardStep = (int) ($pciIvLifecycleWizardStep ?? 4); $pciIvLifecycleStepTitle = $pciIvLifecycleStepTitle ?? '4. Date of Approval & Implementation Period'; $pciIvForumOptions = [ 'DDWP' => 'DDWP', 'CDWP' => 'CDWP', 'ECNEC' => 'ECNEC', 'PDWP' => 'PDWP', 'Other' => 'Other', ]; $pciIvOriginalForumVal = trim((string) ($pciIvForums['original_forum'] ?? '')); $pciIvApprovingForumVal = trim((string) ($pciIvForums['approving_forum'] ?? '')); if ($pciIvApprovingForumVal === '' && $pciIvOriginalForumVal !== '') { $pciIvApprovingForumVal = $pciIvOriginalForumVal; } foreach ([$pciIvOriginalForumVal, $pciIvApprovingForumVal, trim((string) ($pciIvForums['revised_forum'] ?? ''))] as $extraForum) { if ($extraForum !== '' && ! array_key_exists($extraForum, $pciIvForumOptions)) { $pciIvForumOptions = [$extraForum => $extraForum] + $pciIvForumOptions; } } @endphp
{{-- Date of Administrative Approval & Approving Competent Forum (collapsible) --}}

From BPMS scheme approval date.

@if(!$pciIvEdit && $pciIvApprovingForumVal !== '') @endif
@if(!$pciIvEdit && $pciIvOriginalForumVal !== '') @endif

Note: Mandatory to enclose copies of the official forum decision notifications.

@if(!$pciIvEdit && trim((string) ($pciIvForums['revised_forum'] ?? '')) !== '') @endif
Forum Decision Attachments
@include('pc-forms.partials.pci-textarea-map-files', [ 'filesEdit' => $pciIvEdit, 'attachmentRows' => $pciIvForumAttRows, 'annexureRows' => $pciIvForumAnnRows, 'attFieldName' => 'pc_iv_forum_decision_attachments[]', 'annFieldName' => 'pc_iv_forum_decision_annexures[]', 'uid' => 'pci-pc-iv-forum-decisions', 'pcForm' => $pcForm ?? null, ])
{{-- Implementation Period Matrix (collapsible) --}}
Timeline Classification Date of Commencement Date of Completion Total Duration (Months)
As Per Approved PC-I
Actual Executed Realization
{{-- Authorized extensions (collapsible) --}}
@foreach($pciIvExtensions as $extIdx => $extRow)
@if($pciIvEdit)
@if($extIdx === 0) @else @endif
@endif
@endforeach