@php $record = $getRecord(); // Format dates for display $created_at = $record->created_at ? \Carbon\Carbon::parse($record->created_at)->format('M d, Y') : 'N/A'; // Get frequency name from DosingIntervalType if available $frequencyName = 'N/A'; if (isset($record->frequency)) { if ($record->frequency == 10 && !empty($record->frequency_other)) { $frequencyName = $record->frequency_other; } else { try { $intervalType = \App\Models\DosingIntervalType::find($record->frequency); $frequencyName = $intervalType ? $intervalType->name : 'N/A'; } catch (\Exception $e) { $frequencyName = 'Error'; } } } // Get symptoms and their pain levels $symptomPainLevels = $record->symptomPainLevels()->with('symptom')->get(); $additionalSymptoms = $record->additionalSymptoms ?? collect([]); // Check timer status $timerRunning = $record->timer_started_at && !$record->timer_ended_at; // Check if episode is locked $isLocked = (bool) $record->is_locked; @endphp
{{-- Header with date and status --}}
{{-- Timer status indicator - will be updated by Livewire events --}}
{{ $created_at }}
{{-- Status message will be added by Livewire when episode is locked --}}
@if($isLocked) • Episode duration recorded @endif
{{-- Episode details --}}
{{-- Symptoms with pain levels --}} @if($symptomPainLevels->count() > 0)
Symptoms
@foreach($symptomPainLevels as $painLevel) @livewire('pain-level-slider-component', [ 'episodeId' => $record->id, 'symptomId' => $painLevel->symptom_id, 'painLevel' => $painLevel->pain_level, 'symptomName' => $painLevel->symptom->name, 'type' => 'symptom' ], key('symptom-'.$record->id.'-'.$painLevel->symptom_id)) @endforeach
@endif {{-- Additional symptoms --}} @if($additionalSymptoms->count() > 0)
Additional Symptoms
@foreach($additionalSymptoms as $additionalSymptom) @livewire('pain-level-slider-component', [ 'episodeId' => $record->id, 'additionalSymptomId' => $additionalSymptom->id, 'painLevel' => $additionalSymptom->pain_level, 'symptomName' => $additionalSymptom->symptom_name, 'type' => 'additional' ], key('additional-'.$record->id.'-'.$additionalSymptom->id)) @endforeach
@endif {{-- Episode Timer - Livewire Component --}}
@livewire('episode-timer-component', ['episodeId' => $record->id], key('timer-'.$record->id))
{{-- Medication info if available --}} @if(!empty($record->medicine))
Medication
Medicine: @if($record->medicine === 'other') {{ $record->medicine_other }} @else @php // Look up the medicine name if it's an ID $medicineName = $record->medicine; if (is_numeric($record->medicine)) { $medication = \App\Models\Medication::find($record->medicine); $medicineName = $medication ? $medication->medicine : $record->medicine; } @endphp {{ $medicineName }} @endif
@if(!empty($record->dosage))
Dosage: {{ $record->dosage }} @if($record->dosage_unit == 'other') {{ $record->dosage_unit_other }} @else {{ $record->dosage_unit }} @endif
@endif
Frequency: {{ $frequencyName }}
@if(!empty($record->route_administration))
Route: @if($record->route_administration == 'other') {{ $record->route_administration_other }} @else {{ ucfirst($record->route_administration) }} @endif
@endif @php $times = []; for ($i = 1; $i <= 6; $i++) { $timeField = 'time_' . $i; if (!empty($record->$timeField)) { $times[] = \Carbon\Carbon::parse($record->$timeField)->format('h:i A'); } } @endphp @if(!empty($times))
Times: {{ implode(', ', $times) }}
@endif
@endif {{-- Notes if available --}} @if(!empty($record->note))
Notes

{{ $record->note }}

@endif
{{-- Livewire Event Listeners for Header Updates --}}