main
Ilham Wara Nugroho 2026-02-19 09:31:05 +07:00
parent c17e738fbb
commit 9ec2b222f7
1 changed files with 179 additions and 183 deletions

View File

@ -1,191 +1,187 @@
@extends('layouts.master') @extends('layouts.master')
@section('content') @section('content')
<div class="flex flex-col gap-6"> <div class="flex-1 overflow-y-auto p-8 custom-scrollbar">
<div class="card"> <div class="bg-white p-8 rounded-3xl border border-slate-200 shadow-sm overflow-hidden">
<div class="card-header"> <div class="overflow-x-auto">
<div class="flex justify-between items-center"> <form action="{{route($route.'.store')}}" method="POST" class="">
<h4 class="card-title">Data {{$title}}</h4>
</div>
</div>
<form action="{{route($route.'.store')}}" method="POST" class="">
{{csrf_field()}} {{csrf_field()}}
<div class="p-6">
<table class="gridjs-table" <table class="w-full text-left border-collapse"
data-toggle="table" data-toggle="table"
data-search="false" data-search="false"
data-show-refresh ="false" data-show-refresh ="false"
data-page-size="700"> data-page-size="700">
<thead class="gridjs-thead"> <thead class="bg-slate-50/50 border-b border-slate-100">
<tr class="gridjs-tr bg-primary-light"> <tr>
<th width="20">#</th> <th class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest" width="20">#</th>
<th>Menu</th> <th class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest" >Menu</th>
<th width="100"><label><input type="checkbox" class="checkread"> Read</label></th> <th class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest" width="100"><label><input type="checkbox" class="checkread"> Read</label></th>
<th width="100"><label><input type="checkbox" class="checkadd"> Create</label></th> <th class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest" width="100"><label><input type="checkbox" class="checkadd"> Create</label></th>
<th width="100"><label><input type="checkbox" class="checkedit"> Update</label></th> <th class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest" width="100"><label><input type="checkbox" class="checkedit"> Update</label></th>
<th width="100"><label><input type="checkbox" class="checkdel"> Delete</label></th> <th class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest" width="100"><label><input type="checkbox" class="checkdel"> Delete</label></th>
<th width="100"><label><input type="checkbox" class="checkdownload"> Download</label></th> <th class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest" width="100"><label><input type="checkbox" class="checkdownload"> Download</label></th>
</tr>
</thead>
<tbody>
@foreach($menu as $key1 => $parent)
<tr>
<td class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest">
@if(count($parent['level1']) > 0)
<a href="javascript:;" class="show_detail" data-id="{{$parent['id']}}" data-status="1">
<i id="parent{{$parent['id']}}" class="ri-subtract-line"></i>
</a>
@endif
</td>
<td class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest">{{$parent['title']}}</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_read[]"
value="is_read+{{$parent['id']}}" @if($parent['checked']['is_read'] == 1) {{'checked'}} @endif>
</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_create[]"
value="is_create+{{$parent['id']}}" @if($parent['checked']['is_create'] == 1) {{'checked'}} @endif>
</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_update[]"
value="is_update+{{$parent['id']}}" @if($parent['checked']['is_update'] == 1) {{'checked'}} @endif>
</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_delete[]"
value="is_delete+{{$parent['id']}}" @if($parent['checked']['is_delete'] == 1) {{'checked'}} @endif>
</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_download[]"
value="is_download+{{$parent['id']}}" @if($parent['checked']['is_download'] == 1) {{'checked'}} @endif>
</td>
</tr> </tr>
</thead> @if($parent['level1'])
<tbody> @foreach($parent['level1'] as $key2 => $level1)
@foreach($menu as $key1 => $parent) <tr class="parent_{{$parent['id']}} hide_child">
<tr> <td class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest">
<td class="gridjs-td gridjs-th text-sm text-gray-500"> @if(count($level1['level2']) > 0)<a href="javascript:;"
@if(count($parent['level1']) > 0) class="show_detail"
<a href="javascript:;" class="show_detail" data-id="{{$parent['id']}}" data-status="1"> data-id="{{$level1['id']}}"
<i id="parent{{$parent['id']}}" class="ri-subtract-line"></i> data-status="1"><i
</a> id="parent{{$level1['id']}}"
@endif class="ri-subtract-line"></i></a>@endif
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500">{{$parent['title']}}</td> <td class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest" style="text-indent:30px;">--- {{$level1['title']}}</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_read[]" <input type="checkbox" name="is_read[]" value="is_read+{{$level1['id']}}" @if($level1['checked']['is_read'] == 1) {{'checked'}} @endif>
value="is_read+{{$parent['id']}}" @if($parent['checked']['is_read'] == 1) {{'checked'}} @endif> </td>
</td> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <input type="checkbox" name="is_create[]" value="is_create+{{$level1['id']}}" @if($level1['checked']['is_create'] == 1) {{'checked'}} @endif>
<input type="checkbox" name="is_create[]" </td>
value="is_create+{{$parent['id']}}" @if($parent['checked']['is_create'] == 1) {{'checked'}} @endif> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
</td> <input type="checkbox" name="is_update[]" value="is_update+{{$level1['id']}}" @if($level1['checked']['is_update'] == 1) {{'checked'}} @endif>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> </td>
<input type="checkbox" name="is_update[]" <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
value="is_update+{{$parent['id']}}" @if($parent['checked']['is_update'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_delete[]" value="is_delete+{{$level1['id']}}" @if($level1['checked']['is_delete'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_delete[]" <input type="checkbox" name="is_download[]" value="is_download+{{$level1['id']}}" @if($level1['checked']['is_download'] == 1) {{'checked'}} @endif>
value="is_delete+{{$parent['id']}}" @if($parent['checked']['is_delete'] == 1) {{'checked'}} @endif> </td>
</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_download[]"
value="is_download+{{$parent['id']}}" @if($parent['checked']['is_download'] == 1) {{'checked'}} @endif>
</td>
</tr>
@if($parent['level1'])
@foreach($parent['level1'] as $key2 => $level1)
<tr class="parent_{{$parent['id']}} hide_child">
<td class="gridjs-td gridjs-th text-sm text-gray-500">
@if(count($level1['level2']) > 0)<a href="javascript:;"
class="show_detail"
data-id="{{$level1['id']}}"
data-status="1"><i
id="parent{{$level1['id']}}"
class="ri-subtract-line"></i></a>@endif
</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500" style="text-indent:30px;">--- {{$level1['title']}}</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_read[]" value="is_read+{{$level1['id']}}" @if($level1['checked']['is_read'] == 1) {{'checked'}} @endif>
</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_create[]" value="is_create+{{$level1['id']}}" @if($level1['checked']['is_create'] == 1) {{'checked'}} @endif>
</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_update[]" value="is_update+{{$level1['id']}}" @if($level1['checked']['is_update'] == 1) {{'checked'}} @endif>
</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_delete[]" value="is_delete+{{$level1['id']}}" @if($level1['checked']['is_delete'] == 1) {{'checked'}} @endif>
</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_download[]" value="is_download+{{$level1['id']}}" @if($level1['checked']['is_download'] == 1) {{'checked'}} @endif>
</td>
</tr> </tr>
@if($level1['level2']) @if($level1['level2'])
@foreach($level1['level2'] as $key3 => $level2) @foreach($level1['level2'] as $key3 => $level2)
<tr class="parent_{{$level1['id']}} hide_child"> <tr class="parent_{{$level1['id']}} hide_child">
<td class="gridjs-td gridjs-th text-sm text-gray-500"> <td class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest">
@if(count($level2['level3']) > 0)<a href="javascript:;" @if(count($level2['level3']) > 0)<a href="javascript:;"
class="show_detail" class="show_detail"
data-id="{{$level2['id']}}" data-id="{{$level2['id']}}"
data-status="1"><i data-status="1"><i
id="parent{{$level2['id']}}" id="parent{{$level2['id']}}"
class="ri-subtract-line"></i></a>@endif class="ri-subtract-line"></i></a>@endif
</td> </td>
<td style="text-indent: 60px">------ {{$level2['title']}}</td> <td style="text-indent: 60px">------ {{$level2['title']}}</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_read[]" value="is_read+{{$level2['id']}}" @if($level2['checked']['is_read'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_read[]" value="is_read+{{$level2['id']}}" @if($level2['checked']['is_read'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_create[]" value="is_create+{{$level2['id']}}" @if($level2['checked']['is_create'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_create[]" value="is_create+{{$level2['id']}}" @if($level2['checked']['is_create'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_update[]" value="is_update+{{$level2['id']}}" @if($level2['checked']['is_update'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_update[]" value="is_update+{{$level2['id']}}" @if($level2['checked']['is_update'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_delete[]" value="is_delete+{{$level2['id']}}" @if($level2['checked']['is_delete'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_delete[]" value="is_delete+{{$level2['id']}}" @if($level2['checked']['is_delete'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_download[]" value="is_download+{{$level2['id']}}" @if($level2['checked']['is_download'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_download[]" value="is_download+{{$level2['id']}}" @if($level2['checked']['is_download'] == 1) {{'checked'}} @endif>
</td> </td>
</tr> </tr>
@if($level2['level3']) @if($level2['level3'])
@foreach($level2['level3'] as $key4 => $level3) @foreach($level2['level3'] as $key4 => $level3)
<tr class="parent_{{$level2['id']}} hide_child"> <tr class="parent_{{$level2['id']}} hide_child">
<td class="gridjs-td gridjs-th text-sm text-gray-500"> <td class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest">
@if(count($level3['level4']) > 0)<a href="javascript:;" @if(count($level3['level4']) > 0)<a href="javascript:;"
class="show_detail" class="show_detail"
data-id="{{$level3['id']}}" data-id="{{$level3['id']}}"
data-status="1"><i data-status="1"><i
id="parent{{$level3['id']}}" id="parent{{$level3['id']}}"
class="ri-subtract-line"></i></a>@endif class="ri-subtract-line"></i></a>@endif
</td> </td>
<td style="text-indent: 90px;">--------- {{$level3['title']}}</td> <td style="text-indent: 90px;">--------- {{$level3['title']}}</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_read[]" value="is_read+{{$level3['id']}}" @if($level3['checked']['is_read'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_read[]" value="is_read+{{$level3['id']}}" @if($level3['checked']['is_read'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_create[]" value="is_create+{{$level3['id']}}" @if($level3['checked']['is_create'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_create[]" value="is_create+{{$level3['id']}}" @if($level3['checked']['is_create'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_update[]" value="is_update+{{$level3['id']}}" @if($level3['checked']['is_update'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_update[]" value="is_update+{{$level3['id']}}" @if($level3['checked']['is_update'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_delete[]" value="is_delete+{{$level3['id']}}" @if($level3['checked']['is_delete'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_delete[]" value="is_delete+{{$level3['id']}}" @if($level3['checked']['is_delete'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_download[]" value="is_download+{{$level3['id']}}" @if($level3['checked']['is_download'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_download[]" value="is_download+{{$level3['id']}}" @if($level3['checked']['is_download'] == 1) {{'checked'}} @endif>
</td> </td>
</tr> </tr>
@if($level3['level4']) @if($level3['level4'])
@foreach($level3['level4'] as $key5 => $level4) @foreach($level3['level4'] as $key5 => $level4)
<tr class="parent_{{$level3['id']}} hide_child"> <tr class="parent_{{$level3['id']}} hide_child">
<td class="gridjs-td gridjs-th text-sm text-gray-500"> <td class="px-6 py-4 text-[10px] font-bold text-slate-400 uppercase tracking-widest">
<span style="color: #7F8FA4">{{$level4['id']}}</span> <span style="color: #7F8FA4">{{$level4['id']}}</span>
</td> </td>
<td style="text-indent: 130px">------------ {{$level4['title']}}</td> <td style="text-indent: 130px">------------ {{$level4['title']}}</td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_read[]" value="is_read+{{$level4['id']}}" @if($level4['checked']['is_read'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_read[]" value="is_read+{{$level4['id']}}" @if($level4['checked']['is_read'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_create[]" value="is_create+{{$level4['id']}}" @if($level4['checked']['is_create'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_create[]" value="is_create+{{$level4['id']}}" @if($level4['checked']['is_create'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_update[]" value="is_update+{{$level4['id']}}" @if($level4['checked']['is_update'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_update[]" value="is_update+{{$level4['id']}}" @if($level4['checked']['is_update'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_delete[]" value="is_delete+{{$level4['id']}}" @if($level4['checked']['is_delete'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_delete[]" value="is_delete+{{$level4['id']}}" @if($level4['checked']['is_delete'] == 1) {{'checked'}} @endif>
</td> </td>
<td class="gridjs-td gridjs-th text-sm text-gray-500 text-center"> <td class="gridjs-td gridjs-th text-sm text-gray-500 text-center">
<input type="checkbox" name="is_download[]" value="is_download+{{$level4['id']}}" @if($level4['checked']['is_download'] == 1) {{'checked'}} @endif> <input type="checkbox" name="is_download[]" value="is_download+{{$level4['id']}}" @if($level4['checked']['is_download'] == 1) {{'checked'}} @endif>
</td> </td>
</tr> </tr>
@endforeach @endforeach
@endif @endif
@endforeach @endforeach
@endif @endif
@endforeach @endforeach
@endif @endif
@endforeach @endforeach
@endif @endif
@endforeach @endforeach
</tbody> </tbody>
</table> </table>
<input type="hidden" name="group_id" value="{{encode_id(@$id)}}"> <input type="hidden" name="group_id" value="{{encode_id(@$id)}}">
</div> <div class="flex justify-center justify-items-center mt-2">
<div class="p-6"> <a href="{{route('modules.management.role.index')}}" class="btn text-white bg-danger"><i class="ri-close-line"></i> Batal</a>
<a href="{{route('modules.management.role.index')}}" class="btn text-white bg-danger"><i class="ri-close-line"></i> Batal</a> <button class="btn text-white bg-success"><i class="ri-save-line"></i> Simpan</button>
<button class="btn text-white bg-success"><i class="ri-save-line"></i> Simpan</button> </div>
</div> </form>
</form> </div>
</div> </div>
</div> </div>
@endsection @endsection