Siopas Inventory PETI for ISTW Website
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

216 lines
12 KiB

@extends('layouts.main')
@section('title', 'Role')
@section('content')
@include('layouts.components.alert-prompt')
@if (auth()->user()->role_id == 1)
<div class="card shadow mb-4">
<div class="card-header py-3">
<div class="row">
<div class="col-6">
<h5 class="m-0 font-weight-bold text-primary mt-2">Data Role</h5>
</div>
<div class="col-6 text-right">
<a href="#" class="btn btn-success btn-icon-split" data-toggle="modal"
data-target="#tambahDataModal">
<span class="text">Tambah Data Role</span>
</a>
</div>
</div>
</div>
<div class="card-body">
<div class="row">
<div class="col-6">
<!-- Fitur page -->
<form method="GET" action="{{ route('dashboard.role.index') }}">
<label for="perPage">Tampilkan:</label>
<select id="perPage" name="perPage" class="form-select" onchange="this.form.submit()">
<option value="5" {{ request('perPage', 5) == '5' ? 'selected' : '' }}>5</option>
<option value="10" {{ request('perPage', 5) == '10' ? 'selected' : '' }}>10</option>
<option value="25" {{ request('perPage', 5) == '25' ? 'selected' : '' }}>25</option>
<option value="50" {{ request('perPage', 5) == '50' ? 'selected' : '' }}>50</option>
<option value="100" {{ request('perPage', 5) == '100' ? 'selected' : '' }}>100</option>
<option value="{{ $roles->total() }}"
{{ request('perPage', 5) == $roles->total() ? 'selected' : '' }}>Semua</option>
</select>
<input type="hidden" name="search" value="{{ $search }}">
<input type="hidden" name="page" value="{{ request('page', 1) }}">
</form>
</div>
<div class="col-6 d-flex justify-content-end mb-3">
<!-- Fitur search -->
<form method="GET" action="{{ route('dashboard.role.index') }}" class="form-inline">
<input type="text" name="search" class="form-control mr-2" placeholder="Cari..."
value="{{ $search }}">
<input type="hidden" name="page" value="1">
<input type="hidden" name="perPage" value="{{ request('perPage', 5) }}">
<button type="submit" class="btn btn-primary">Cari</button>
</form>
</div>
</div>
<div class="table-responsive">
<table class="table table-bordered" width="100%" cellspacing="0">
<thead>
<tr>
<th class="text-center" style="width: 50px;">No</th>
<th>Nama Role</th>
<th>Deskripsi</th>
<th class="text-center">Action</th>
</tr>
</thead>
<tbody>
@forelse ($roles as $data_role)
<tr>
<td class="text-center">{{ $i++ }}</td>
<td>{{ optional($data_role)->name }}</td>
<td>{{ optional($data_role)->description }}</td>
<td class="text-center">
<a href="#" data-toggle="modal"
data-target="#editDataModal{{ $data_role->id }}">
<i class="fa fa-edit mr-2" style="font-size: 20px"></i>
</a>
<form action="{{ route('dashboard.role.destroy', $data_role->id) }}" method="POST"
style="display: inline;">
@csrf
@method('DELETE')
<button type="submit"
onclick="return confirm('Apakah Anda yakin ingin menghapus data ini?')"
style="border: none; background: none; cursor: pointer;">
<i class="fa fa-trash text-danger" style="font-size: 20px"></i>
</button>
</form>
</td>
</tr>
@empty
<tr>
<td colspan="4" class="text-center">Data Kosong</td>
</tr>
@endforelse
</tbody>
</table>
</div>
<div class="row mt-3">
<div class="col-4">
<!-- Tampilkan jumlah data yang ditampilkan -->
@if (!$roles->isEmpty())
<p class="d-inline-block">Showing {{ $roles->firstItem() }} to
{{ $roles->lastItem() }} of
{{ $roles->total() }} entries</p>
@endif
</div>
<div class="col-8 d-flex justify-content-end">
@if ($roles->total() > $roles->perPage())
<nav aria-label="Page navigation">
<ul class="pagination justify-content-center">
<li class="page-item {{ $roles->onFirstPage() ? 'disabled' : '' }}">
<a class="page-link"
href="{{ $roles->appends(['perPage' => Request::get('perPage')])->url(1) }}"
aria-label="First">
<span aria-hidden="true">First</span>
</a>
</li>
{{ $roles->appends(['perPage' => Request::get('perPage')])->links() }}
<li class="page-item {{ $roles->hasMorePages() ? '' : 'disabled' }}">
<a class="page-link"
href="{{ $roles->appends(['perPage' => Request::get('perPage')])->url($roles->lastPage()) }}"
aria-label="Last">
<span aria-hidden="true">Last</span>
</a>
</li>
</ul>
</nav>
@endif
</div>
</div>
</div>
</div>
@else
@include('pages.user.Master_Data.Role.index')
@endif
<!-- Tambah Data Modal-->
<div class="modal fade" id="tambahDataModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Tambah Role</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<form action="{{ route('dashboard.role.store') }}" method="POST" enctype="multipart/form-data"
id="inputanForm">
@csrf
<div class="form-group">
<div class="form-group">
<label for="name" class="col-form-label">Nama Hak Akses: <span
class="text-danger">*</span></label>
<input class="form-control" name="name" type="text" id="name"
value="{{ old('name') }}" placeholder="Masukan Nama Hak Akses" pattern="[^0-9]+"
oninput="this.value=this.value.replace(/[0-9]/g,'');"
title="Hanya karakter selain huruf yang diperbolehkan" required>
<label for="description" class="col-form-label">Deskripsi Hak Akses: <span
class="text-danger">*</span></label>
<textarea class="form-control" name="description" id="description" placeholder="Masukkan Deskripsi Hak Akses"
required>{{ old('description') }}</textarea>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Tutup</button>
<button type="submit" class="btn btn-primary" id="submitButton">Simpan</button>
</div>
</form>
</div>
</div>
</div>
</div>
<!-- Edit data Modal -->
@foreach ($roles as $data)
<div class="modal fade" id="editDataModal{{ $data['id'] }}" tabindex="-1" role="dialog"
aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Edit Role</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<form action="{{ route('dashboard.role.update', $data->id) }}" method="POST"
enctype="multipart/form-data" id="inputanForm">
@csrf
@method('PUT')
<div class="form-group">
<label for="name" class="col-form-label">Nama Hak Akses: <span
class="text-danger">*</span></label>
<input class="form-control" name="name" type="text" id="name"
value="{{ $data->name }}" placeholder="Masukan Nama Hak Akses" pattern="[^0-9]+"
oninput="this.value=this.value.replace(/[0-9]/g,'');"
title="Hanya karakter selain huruf yang diperbolehkan" required>
<label for="description" class="col-form-label">Deskripsi Hak Akses: <span
class="text-danger">*</span></label>
<textarea class="form-control" name="description" id="description" placeholder="Masukkan Deskripsi Hak Akses"
required>{{ $data->description }}</textarea>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Tutup</button>
<button type="submit" class="btn btn-primary" id="submitButton">Simpan</button>
</div>
</form>
</div>
</div>
</div>
</div>
@endforeach
<script>
document.getElementById('inputanForm').addEventListener('submit', function() {
document.getElementById('submitButton').setAttribute('disabled', 'true');
});
</script>
@endsection