diff --git a/app/Http/Controllers/Data/SpatialPlanningController.php b/app/Http/Controllers/Data/SpatialPlanningController.php index 09c8b9b..8f62ac4 100644 --- a/app/Http/Controllers/Data/SpatialPlanningController.php +++ b/app/Http/Controllers/Data/SpatialPlanningController.php @@ -5,8 +5,6 @@ namespace App\Http\Controllers\Data; use App\Http\Controllers\Controller; use App\Models\SpatialPlanning; use Illuminate\Http\Request; -use Illuminate\Support\Facades\DB; -use Illuminate\Support\Facades\Auth; class SpatialPlanningController extends Controller { @@ -15,42 +13,31 @@ class SpatialPlanningController extends Controller */ public function index(Request $request) { - $menuId = $request->query('menu_id'); - $user = Auth::user(); - $userId = $user->id; + $menuId = $request->query('menu_id', 0); + $permissions = $this->permissions[$menuId] ?? []; // Avoid undefined index error - // Ambil role_id yang dimiliki user - $roleIds = DB::table('user_role') - ->where('user_id', $userId) - ->pluck('role_id'); + $creator = $permissions['allow_create'] ?? 0; + $updater = $permissions['allow_update'] ?? 0; + $destroyer = $permissions['allow_destroy'] ?? 0; - // Ambil data akses berdasarkan role_id dan menu_id - $roleAccess = DB::table('role_menu') - ->whereIn('role_id', $roleIds) - ->where('menu_id', $menuId) - ->first(); - - // Pastikan roleAccess tidak null sebelum mengakses properti - $creator = $roleAccess->allow_create ?? 0; - $updater = $roleAccess->allow_update ?? 0; - $destroyer = $roleAccess->allow_destroy ?? 0; - - return view('data.spatialPlannings.index', compact('creator', 'updater', 'destroyer')); + return view('data.spatialPlannings.index', compact('creator', 'updater', 'destroyer','menuId')); } /** * show the form for creating a new resource. */ - public function bulkCreate() + public function bulkCreate(Request $request) { - return view('data.spatialPlannings.form-upload'); + $menuId = $request->query('menu_id', 0); + return view('data.spatialPlannings.form-upload', compact('menuId')); } /** * Show the form for creating a new resource. */ - public function create() + public function create(Request $request) { + $menuId = $request->query('menu_id', 0); $title = 'Rencana Tata Ruang'; $subtitle = "Create Data"; @@ -61,30 +48,15 @@ class SpatialPlanningController extends Controller $fieldTypes = $this->getFieldTypes(); $apiUrl = url('/api/spatial-plannings'); - return view('data.spatialPlannings.form', compact('title', 'subtitle', 'fields', 'fieldTypes', 'apiUrl', 'dropdownOptions')); - } - - /** - * Store a newly created resource in storage. - */ - public function store(Request $request) - { - // - } - - /** - * Display the specified resource. - */ - public function show(string $id) - { - // + return view('data.spatialPlannings.form', compact('title', 'subtitle', 'fields', 'fieldTypes', 'apiUrl', 'dropdownOptions','menuId')); } /** * Show the form for editing the specified resource. */ - public function edit(string $id) + public function edit(Request $request,string $id) { + $menuId = $request->query('menu_id', 0); $title = 'Rencana Tata Ruang'; $subtitle = 'Update Data'; @@ -100,23 +72,7 @@ class SpatialPlanningController extends Controller $fieldTypes = $this->getFieldTypes(); $apiUrl = url('/api/spatial-plannings'); - return view('data.spatialPlannings.form', compact('title', 'subtitle', 'modelInstance', 'fields', 'fieldTypes', 'apiUrl', 'dropdownOptions')); - } - - /** - * Update the specified resource in storage. - */ - public function update(Request $request, string $id) - { - // - } - - /** - * Remove the specified resource from storage. - */ - public function destroy(string $id) - { - // + return view('data.spatialPlannings.form', compact('title', 'subtitle', 'modelInstance', 'fields', 'fieldTypes', 'apiUrl', 'dropdownOptions','menuId')); } private function getFields() diff --git a/resources/js/data/spatialPlannings/data-spatialPlannings.js b/resources/js/data/spatialPlannings/data-spatialPlannings.js index cba1aa2..b56bae4 100644 --- a/resources/js/data/spatialPlannings/data-spatialPlannings.js +++ b/resources/js/data/spatialPlannings/data-spatialPlannings.js @@ -8,6 +8,7 @@ import GeneralTable from "../../table-generator.js"; const tableElement = document.getElementById("spatial-planning-data-table"); const canUpdate = tableElement.getAttribute("data-updater") === "1"; const canDelete = tableElement.getAttribute("data-destroyer") === "1"; +let menuId = document.getElementById("menuId").value; const dataSpatialPlanningColumns = [ "No", @@ -23,7 +24,7 @@ const dataSpatialPlanningColumns = [ widht: "120px", formatter: function (cell, row) { const id = row.cells[8].data; - const model = "data/spatial-plannings"; + const model = "data/web-spatial-plannings"; let actionButtons = '