@php $unitData = $this->getUnitData(); $reviewQueue = $this->getReviewQueue(); $stats = $this->getStats(); @endphp @if($unitData) @php $unit = $unitData['unit']; @endphp {{-- Header --}}
{{-- Unit Info --}}

@if($unitData['is_active']) @lang('app.Active Now') @elseif($unitData['is_upcoming']) @lang('app.Upcoming') @else @lang('app.Past') @endif {{ __('app.Portfolio Review - :unit', ['unit' => $unit->short_name]) }}

{{ $unit->start_date->translatedFormat('M j') }} - {{ $unit->end_date->translatedFormat('M j, Y') }}

{{-- Stats Cards --}}
{{-- Total Submissions --}}
{{ $stats['total'] }}
@lang('app.Total Submissions')
{{-- Pending Review --}}
{{ $stats['pending'] }}
@lang('app.Pending Review')
{{-- Reviewed --}}
{{ $stats['reviewed'] }}
@lang('app.Reviewed')
{{-- My Students --}}
{{ $stats['my_students'] }}
@lang('app.My Students')
{{-- Controls Bar --}}
{{-- Filter Status --}}
{{-- Sort By --}}
{{-- Show Names Toggle --}}
{{-- Queue Mode Button --}} @if(count($reviewQueue) > 0) {{ __('app.Start Review Queue (:count)', ['count' => count($reviewQueue)]) }} @endif
{{-- Review Queue List --}} @if(count($reviewQueue) > 0)
@foreach($reviewQueue as $item)
{{-- Item Header --}}
{{-- Student Avatar --}} {{--
@if($showStudentNames)
{{ $item['student_initials'] }}
@else
{{ $item['student_initials'] }}
@endif
--}} {{-- Student & Challenge Info --}}
@if($showStudentNames) {{ $item['student_name'] }} @else @endif
@if($item['is_my_student']) @lang('app.My Student') @endif
{{ $item['challenge_name'] }} · {{ $item['teacher_name'] }}
{{-- Status Badge --}}
@if($item['has_feedback']) @lang('app.Reviewed') @else @lang('app.Pending') @endif
{{-- Item Content --}}
{{-- Observable Behavior --}}
@lang('app.Observable Behavior')
{{ $item['observable_behavior']['title'] }}
@lang('app.Learning Outcome'): {{ $item['observable_behavior']['learning_outcome'] }}
{{-- Portfolio Entries --}}
@lang('app.Portfolio Entries') ({{ $item['portfolio_count'] }})
@foreach($item['portfolio_entries'] as $entry)
{{-- Entry Type Icon --}}
@if($entry['type'] === 'text') @else @endif
{{-- Entry Content --}}
@if($entry['type'] === 'text')
{{ $entry['content'] }}
@else @endif
@lang('app.Submitted') {{ $entry['created_at_human'] }}
@endforeach
{{-- Existing Feedback Display --}} @if($item['has_feedback'])
{{ $item['feedback']['rating'] === 'needs_improvement' ? __('app.Needs Improvement') : __('app.Already Excellent') }} · @lang('app.by') {{ $item['feedback']['teacher_name'] }}
{{ $item['feedback']['comment'] }}
{{ $item['feedback']['created_at_human'] }}
@endif {{-- Action Buttons --}}
{{-- View Portfolio Button --}} @lang('app.View Portfolio') ({{ $item['portfolio_count'] }}) {{-- Give Feedback Button --}} {{ $item['has_feedback'] ? 'Edit Feedback' : 'Give Feedback' }}
{{-- View Portfolio Modal --}} @lang('app.Portfolio Submission')
@lang('app.Student')
@if($showStudentNames) {{ $item['student_name'] }} @else @endif
@lang('app.Challenge')
{{ $item['challenge_name'] }}
@lang('app.Observable Behavior')
{{ $item['observable_behavior']['title'] }}
@lang('app.Learning Outcome'): {{ $item['observable_behavior']['learning_outcome'] }}

@lang('app.Portfolio Entries') ({{ $item['portfolio_count'] }})

@foreach($item['portfolio_entries'] as $entryIndex => $entry)
@if($entry['type'] === 'text') @else @endif
{{ __('app.Entry #:number', ['number' => $entryIndex + 1]) }} {{ $entry['created_at_human'] }}
@if($entry['type'] === 'text')
{{ $entry['content'] }}
@else @lang('app.Download File') @endif
@endforeach
@if($item['has_feedback'])

@lang('app.Your Feedback')

{{ $item['feedback']['rating'] === 'needs_improvement' ? __('app.Needs Improvement') : __('app.Already Excellent') }} · {{ $item['feedback']['created_at_human'] }}
{{ $item['feedback']['comment'] }}
@endif
{{ $item['has_feedback'] ? 'Edit Feedback' : 'Give Feedback' }} @lang('app.Close')
{{-- Feedback Modal --}} @lang('app.Give Feedback')
@lang('app.Student'): @if($showStudentNames) {{ $item['student_name'] }} @else @endif
@lang('app.Challenge'): {{ $item['challenge_short_name'] }}
@lang('app.Observable Behavior'):
{{ $item['observable_behavior']['title'] }}
{{-- Rating Selection --}}
{{-- Needs Improvement Option --}} {{-- Already Excellent Option --}}
{{-- Comment Field --}}
@lang('app.Provide between 1-2 sentences of constructive feedback.')
@if($comment)
{{ __('app.:count characters', ['count' => strlen($comment)]) }}
@endif
@if($currentReviewIndex !== null) {{ __('app.Item :current of :total', ['current' => $currentReviewIndex + 1, 'total' => count($reviewQueue)]) }} @endif
@lang('app.Cancel') @lang('app.Save Feedback') @if($currentReviewIndex !== null && $currentReviewIndex < count($reviewQueue) - 1) @lang('app.Save & Next') @endif
@endforeach
@else {{-- Empty State --}}

@lang('app.No Portfolio Entries')

@if($filterStatus === 'pending') @lang('app.There are no pending portfolio entries to review at this time.') @elseif($filterStatus === 'reviewed') @lang('app.There are no reviewed portfolio entries yet.') @else @lang('app.There are no portfolio entries for this unit yet.') @endif

@endif
@else {{-- No Unit Available --}}

@lang('app.No Unit Available')

@lang('app.There are no units available for review at this time.')

@endif