@vite(['resources/css/app.css', 'resources/js/app.js']) @include('admin.partials.nav')

CoreLife training programmes

Manage public courses that appear on the CoreLife Training landing page. Each course links to a senangPay product form.

+ New course
@if (session('status'))
{{ session('status') }}
@endif @if ($courses->isEmpty())
No courses yet. Click New course to add your first programme.
@else
@foreach ($courses as $course) @endforeach
Order Programme / run Dates Venue Price Registrations / Seats Status Actions
{{ $course->display_order }}
{{ $course->programme->name ?? $course->name }}
@if ($course->programme && $course->programme->category) {{ $course->programme->category }} @elseif ($course->category) {{ $course->category }} @else   @endif
Run slug: {{ $course->slug }}
@if ($course->start_date) {{ $course->start_date->format('d M Y') }} @if ($course->end_date && $course->end_date->isAfter($course->start_date)) – {{ $course->end_date->format('d M Y') }} @endif @else @endif {{ $course->location ?? '–' }} @if (! is_null($course->price)) RM {{ number_format($course->price, 2) }} @else @endif @php $totalRegistrations = (int) ($course->total_registrations_count ?? 0); $paidRegistrations = (int) ($course->paid_registrations_count ?? 0); $paidParticipants = (int) ($course->paid_participants_sum ?? 0); $seatCapacity = $course->seat_capacity; @endphp
@if ($seatCapacity !== null)
{{ $paidParticipants }} of {{ $seatCapacity }} seats filled
{{ max($seatCapacity - $paidParticipants, 0) }} seats remaining
@elseif ($totalRegistrations === 0)
No registrations yet
@else
{{ $paidParticipants }} paid participant{{ $paidParticipants === 1 ? '' : 's' }}
@endif @if ($totalRegistrations > 0)
{{ $paidRegistrations }} paid / {{ $totalRegistrations }} total registrations
@endif
@if ($course->is_active) Active @else Hidden @endif
Edit
@csrf @method('DELETE')
@endif
@include('admin.partials.footer')