MIF_E31212365/app/Http/Controllers/User/DashboardController.php

59 lines
1.5 KiB
PHP

<?php
namespace App\Http\Controllers\User;
use App\Http\Controllers\Controller;
use App\Models\Likes;
use App\Models\Materi;
use App\Models\Module;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Inertia\Inertia;
class DashboardController extends Controller
{
public function index()
{
$data = Module::with(['materi'])->where('kategori_id', Auth::user()->kategori_id)->get();
return Inertia::render('User/Dashboard', [
'data' => $data
]);
}
public function module($id)
{
$data = Materi::where('module_id', $id)->get();
$module = Module::where('id', $id)->first();
return Inertia::render('User/Materi', [
'data' => $data,
'module' => $module
]);
}
public function materi($id)
{
$data = Materi::findOrFail($id);
$materiSelanjutnya = Materi::where('module_id', $data->module_id)->orderBy('created_at', 'ASC')->get();
// ambil data selanjutnya setelah materi yang sedang dibuka
$materiSelanjutnya = $materiSelanjutnya->where('id', '>', $id)->first();
$like = Likes::where('materi_id', $id)->where('user_id', Auth::id())->first();
$isLike = false;
if ($like) {
$isLike = true;
}
return Inertia::render('User/Module', [
'data' => $data,
'materi_selanjutnya' => $materiSelanjutnya,
'isLike' => $isLike,
'idUser' => Auth::user()->id
]);
}
}