@php use Illuminate\Support\Facades\Auth;use Illuminate\Support\Facades\Route; $user = Auth::user(); $user_id = $user->id; $evalPrefix = ($isPanelChair || $isAdvisory) ? 'panel' : 'evaluator'; $routeParams = ['call' => $proposal->call, 'panel'=>$proposal->panel ?? null, 'proposal' => $proposal]; $tabsConfig = [ 'basic-info' => ['icon' => 'fas fa-info-circle', 'label' => 'Basic Info', 'show' => true], 'consortium' => ['icon' => 'fas fa-user-friends', 'label' => 'Consortium', 'show' => isset($proposal->consortium)], 'personal' => ['icon' => 'fas fa-user', 'label' => 'Personal Info', 'show' => isset($proposal->individualInfo)], 'budget' => ['icon' => 'fas fa-credit-card', 'label' => 'Budget', 'show' => isset($proposal->budget)], 'files' => ['icon' => 'fas fa-folder-open', 'label' => 'Files', 'show' => true], 'individual-evaluations' => ['icon' => 'fas fa-users', 'label' => 'Individual Evaluations', 'show' => $isPanelChair], 'evaluation' => ['icon' => 'fas fa-ranking-star', 'label' => 'Evaluation', 'show' => true], ]; $proposalTabs = [ 'basic-info' => 'view-proposal', 'files' => "{$evalPrefix}.proposal.files", 'evaluation' => "{$evalPrefix}.proposal.evaluation", 'individual-evaluations' => 'panel.proposal.individual-evaluations', ]; // Resolve which tab is currently active from the route name. // Falls back to basic-info on the default route or anything unknown. $currentTab = array_search(Route::currentRouteName(), $proposalTabs, true) ?: 'basic-info'; @endphp
@foreach($tabsConfig as $key => $cfg) @continue(!$cfg['show']) @php $routeName = $proposalTabs[$key]; $href = Route::has($routeName) ? route($routeName, $routeParams) : '#'; $isActive = $currentTab === $key; @endphp
{{ $cfg['label'] }}
@endforeach