From bfb9fa8dc526afb16e1fa9c98e6baad42b7332fc Mon Sep 17 00:00:00 2001 From: Pringgosutono Date: Fri, 21 Nov 2025 13:52:46 +0700 Subject: [PATCH] media menu --- app/Http/Controllers/MediaController.php | 86 +++++ resources/views/menu_v1/media.blade.php | 434 ++++++++++++++++++++++ resources/views/template/navbar.blade.php | 7 + routes/web.php | 6 + 4 files changed, 533 insertions(+) create mode 100644 app/Http/Controllers/MediaController.php create mode 100644 resources/views/menu_v1/media.blade.php diff --git a/app/Http/Controllers/MediaController.php b/app/Http/Controllers/MediaController.php new file mode 100644 index 0000000..1a9a1ff --- /dev/null +++ b/app/Http/Controllers/MediaController.php @@ -0,0 +1,86 @@ + "Media", + "action" => "View", + "desc" => "Open Media menu", + ]; + UserLogs::insert(Auth::user()->id, $log); + return view("menu_v1.media", $data); + } + + /** + * API + */ + + public function api_get_media(Request $req) + { + $a = $req->a; + try { + switch ($a) { + case 'listVehicle': + $list = Vehicles::listVehicles($req->auth, []); + + $apiResp = Responses::success("success list media"); + $apiResp["count"] = count($list); + $apiResp["data"] = $list; + return new Response($apiResp, $apiResp["meta"]["code"]); + break; + case 'listMedia': + $vhcId = $req->vhcId; + $tgl0 = $req->tgl0 * 1000 ; + $tgl1 = $req->tgl1 * 1000 ; + $camera = $req->camera; + + $list = DB::select("SELECT * + FROM t_camera + WHERE + vhc_id = ? + and cam = IFNULL(?, cam) + ORDER BY crt_d desc + ", [$vhcId, $camera]); + + $apiResp = Responses::success("success list media"); + $apiResp["count"] = count($list); + $apiResp["data"] = $list; + return new Response($apiResp, $apiResp["meta"]["code"]); + break; + default: + $apiResp = Responses::error("invalid action"); + return new Response($apiResp, $apiResp["meta"]["code"]); + break; + } + } catch (\Exception $e) { + $apiResp = Responses::error($e->getMessage()); + return new Response($apiResp, $apiResp["meta"]["code"]); + } + } + +} diff --git a/resources/views/menu_v1/media.blade.php b/resources/views/menu_v1/media.blade.php new file mode 100644 index 0000000..85c93fd --- /dev/null +++ b/resources/views/menu_v1/media.blade.php @@ -0,0 +1,434 @@ +@extends('app.app') + +@section('title') + Conf Pools +@endsection + +@section('customcss') + @endsection + +@section('content') +
+
+ +
+ {{-- media content --}} +
+
Media Content
+
+
+
+ + + + +
+
+
+
+ + + +
+
+
+
+ + +
+
+
+ +
+
+
+ {{-- media list --}} + +
+ +
+
+
+
+
+ + + + +@endsection + +@section('customjs') + +@endsection diff --git a/resources/views/template/navbar.blade.php b/resources/views/template/navbar.blade.php index 4edcc6e..133e7f2 100755 --- a/resources/views/template/navbar.blade.php +++ b/resources/views/template/navbar.blade.php @@ -21,6 +21,13 @@ @endcan + @can('media.view') + + @endcan @can('zone.view')