Initial commit - lms-v2 + CLAUDE.md

This commit is contained in:
Iwit
2026-05-30 22:15:16 +07:00
commit 5811409e2d
183 changed files with 23225 additions and 0 deletions
@@ -0,0 +1,34 @@
<?php
namespace App\Http\Controllers\Cbt;
use App\Http\Controllers\Controller;
use App\Models\Exam;
use App\Models\ExamResult;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
class ExamSessionController extends Controller
{
/**
* Menampilkan halaman persiapan/ruang ujian
*/
public function show(Exam $exam)
{
$user = Auth::user();
// 1. Validasi: Cek apakah user sudah pernah lulus ujian ini
$existingResult = ExamResult::where('user_id', $user->id)
->where('exam_id', $exam->id)
->orderBy('created_at', 'desc')
->first();
if ($existingResult && $existingResult->is_passed) {
return redirect()->route('cbt.dashboard')
->with('error', 'Anda sudah pernah lulus ujian ini. Tidak perlu mengulang.');
}
// 2. Jika aman, arahkan ke View Ruang Ujian yang memuat komponen Livewire
return view('pages.cbt.exam-room', compact('exam'));
}
}