This commit is contained in:
gitaysn 2025-05-25 03:53:25 +07:00
parent 48ce40d3ca
commit 0b6fa9fe34
5 changed files with 262 additions and 303 deletions

View File

@ -3,13 +3,20 @@
@section('title', 'Edit Data Kriteria')
@section('content')
<div class="d-flex justify-content-between align-items-center mb-4">
<h1 class="h3 text-grey-800">
<i class="bi bi-pencil-square"></i> Edit Data Kriteria
<h1 class="h3 mb-4 text-grey-800">
<i class="bi bi-database"></i> Data Kriteria
</h1>
</div>
<div class="card shadow mb-4">
<div class="card-header bg-white d-flex justify-content-between align-items-center">
<span style="color: #006400;" class="fw-bold">
<i class="bi bi-pencil-square"></i> Edit Data Kriteria
</span>
<a href="{{ route('admin.kriteria.index') }}" class="btn"
style="background-color: #90ee90; border-color: #90ee90; color: black;">
<i class="bi bi-arrow-left"></i> Kembali
</a>
</div>
<div class="card-body">
@if ($errors->any())
<div class="alert alert-danger">
@ -24,37 +31,38 @@
<form action="{{ route('admin.kriteria.update', $kriteria->id) }}" method="POST">
@csrf
@method('PUT')
<div class="mb-3">
<div class="row">
<div class="col-md-6 mb-3">
<label for="kode_kriteria" class="form-label">Kode Kriteria</label>
<input type="text" class="form-control" id="kode_kriteria" name="kode_kriteria"
value="{{ $kriteria->kode_kriteria }}" required>
</div>
<div class="mb-3">
<div class="col-md-6 mb-3">
<label for="nama_kriteria" class="form-label">Nama Kriteria</label>
<input type="text" class="form-control" id="nama_kriteria" name="nama_kriteria"
value="{{ $kriteria->nama_kriteria }}" required>
</div>
<div class="mb-3">
<div class="col-md-6 mb-3">
<label for="bobot" class="form-label">Bobot</label>
<input type="number" step="0.01" class="form-control" id="bobot" name="bobot"
value="{{ $kriteria->bobot }}" required>
</div>
<div class="mb-3">
<div class="col-md-6 mb-3">
<label for="jenis" class="form-label">Jenis</label>
<select class="form-control" id="jenis" name="jenis" required>
<option value="BENEFIT" {{ $kriteria->jenis == 'BENEFIT' ? 'selected' : '' }}>Benefit</option>
<option value="COST" {{ $kriteria->jenis == 'COST' ? 'selected' : '' }}>Cost</option>
</select>
</div>
<button type="submit" class="btn"
</div>
<button type="submit" class="btn me-3"
style="background-color: #006400; border-color: #006400; color: white;">
Simpan
<i></i> Simpan
</button>
<button type="reset" class="btn"
style="background-color: #90ee90; border-color: #90ee90; color: black; margin-left: 10px;">
<i class="bi bi-arrow-clockwise"></i> Reset
</button>
<a href="{{ route('admin.kriteria.index') }}" class="btn"
style="background-color: #90ee90; border-color: #90ee90; color: black;">
Kembali
</a>
</form>
</div>
</div>

View File

@ -7,16 +7,18 @@
<h1 class="h3 text-grey-800">
<i class="bi bi-box"></i> Data Kriteria
</h1>
<a href="{{ route('admin.kriteria.create') }}" class="btn btn-success"
style="background-color: #006400; border-color: #004d00;">
<i></i> Tambah Data
</a>
</div>
<div class="card shadow mb-4">
<div class="card-header py-3">
<h6 class="m-0 font-weight-bold" style="color: #006400;">
<h6 class="m-0 font-weight-bold d-flex justify-content-between align-items-center" style="color: #006400;">
<span>
<i class="bi bi-table"></i> Daftar Data Kriteria
</span>
<a href="{{ route('admin.kriteria.create') }}" class="btn btn-success"
style="background-color: #006400; border-color: #004d00;">
<i class="bi bi-plus"></i> Tambah Data
</a>
</h6>
</div>
@ -48,15 +50,13 @@
<i class="bi bi-pencil"></i>
</a>
<form action="{{ route('admin.kriteria.destroy', $item->id) }}" method="POST"
class="d-inline" onsubmit="return confirm('Yakin ingin menghapus data ini?')">
<form id="delete-form-{{ $item->id }}" action="{{ route('admin.kriteria.destroy', $item->id) }}" method="POST" class="d-inline">
@csrf
@method('DELETE')
<button type="submit" class="btn btn-danger btn-sm mx-1">
<button type="button" class="btn btn-danger btn-sm mx-1 delete-button" data-id="{{ $item->id }}">
<i class="bi bi-trash"></i>
</button>
</form>
</div>
</td>
</tr>
@ -82,6 +82,18 @@
</script>
@endif
@if (session('error'))
<script>
Swal.fire({
title: 'Error!',
text: '{{ session('error') }}',
icon: 'error',
confirmButtonText: 'OK',
confirmButtonColor: '#d33'
});
</script>
@endif
<script>
document.addEventListener('DOMContentLoaded', function() {

View File

@ -35,24 +35,28 @@
<div class="card-body">
<form method="GET" id="entriesForm" action="{{ route('admin.pakaian.index') }}"
class="d-flex justify-content-between align-items-center mb-3 flex-wrap gap-3">
class="d-flex justify-content-between align-items-center mb-3 flex-wrap">
{{-- KIRI --}}
<div class="d-flex align-items-center">
<label for="entriesPerPage" class="me-2">Show</label>
<select name="entries" id="entriesPerPage" class="form-select me-3"
<label for="entriesPerPage" class="me-2 mb-0">Show</label>
<select name="entries" id="entriesPerPage" class="form-select form-select-sm me-2"
onchange="document.getElementById('entriesForm').submit()">
<option value="10" {{ request('entries') == 10 ? 'selected' : '' }}>10</option>
<option value="25" {{ request('entries') == 25 ? 'selected' : '' }}>25</option>
<option value="50" {{ request('entries') == 50 ? 'selected' : '' }}>50</option>
</select>
<span class="me-3">entries</span>
<span class="mb-0">entries</span>
</div>
<div class="d-flex align-items-center gap-2">
<label for="search" class="me-2">Search:</label>
<input type="text" name="search" id="search" class="form-control" placeholder="Search..."
{{-- KANAN --}}
<div class="d-flex align-items-center">
<label for="search" class="me-2 mb-0">Search:</label>
<input type="text" name="search" id="search" class="form-control form-control-sm me-3" placeholder="Search..."
value="{{ request('search') }}">
<button type="submit" class="btn btn-primary">Cari</button>
<button type="submit" class="btn btn-sm btn-primary">Cari</button>
</div>
</form>
<div class="table-responsive">
@ -79,23 +83,20 @@
Tidak ada gambar
@endif
</td>
<td>{{ $item->nama_pakaian }}</td>
<td class="text-center">
<!-- Tombol Info -->
<button class="btn btn-info btn-sm" data-bs-toggle="modal"
data-bs-target="#infoModal{{ $item->id }}">
Info
<i class="bi bi-info-circle-fill"></i>
</button>
<!-- Tombol Edit -->
<button class="btn btn-warning btn-sm" data-bs-toggle="modal"
data-bs-target="#modalEdit{{ $item->id }}">
Edit
<i class="bi bi-pencil"></i>
</button>
@foreach ($alternatif as $item)
<!-- Modal Info -->
<div class="modal fade" id="infoModal{{ $item->id }}" tabindex="-1"
@ -161,23 +162,22 @@
</div>
</div>
</div>
</div>
<!-- Modal Tambah Data Pakaian -->
<div class="modal fade" id="modalTambah" tabindex="-1" aria-labelledby="modalTambahLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-dialog modal-dialog-centered"> <!-- Centered vertically -->
<div class="modal-content rounded-3 shadow-sm border-0">
<!-- Header -->
<div class="modal-header">
<h5 class="modal-title" id="modalTambahLabel">
<i class="bi bi-plus-circle"></i> Tambah Pakaian
<div class="modal-header border-bottom-0">
<h5 class="modal-title fw-semibold" id="modalTambahLabel">
<i class="bi bi-plus-circle me-1"></i> Tambah Pakaian
</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Tutup"></button>
</div>
<!-- Body -->
<div class="modal-body">
<div class="modal-body pt-0">
<form action="{{ route('admin.pakaian.store') }}" method="POST" enctype="multipart/form-data">
@csrf
@ -196,16 +196,21 @@
<input type="file" class="form-control" name="img" accept="image/*">
</div>
<div class="d-flex justify-content-end gap-2">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Batal</button>
<button type="submit" class="btn btn-success">Simpan</button>
<!-- Footer Buttons -->
<div class="modal-footer border-top-0 d-flex justify-content-end gap-2 pt-0">
<button type="button" class="btn" style="background-color: #90ee90; color: black; border-radius: 5px; padding: 6px 20px;" data-bs-dismiss="modal">
<i></i> Batal
</button>
<button type="submit" class="btn" style="background-color: #064e3b; color: white; border-radius: 5px; padding: 6px 20px;">
<i></i> Simpan
</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@foreach ($alternatif as $item)
<!-- Modal Edit -->
<div class="modal fade" id="modalEdit{{ $item->id }}" tabindex="-1"

View File

@ -8,85 +8,88 @@
<h1 class="h3 text-grey-800">
<i class="bi bi-boxes"></i> Data Sub Kriteria untuk: {{ $kriteria->nama_kriteria }}
</h1>
<button type="button" class="btn btn-success mb-3" data-bs-toggle="modal" data-bs-target="#tambahSubkriteriaModal"
style="background-color: #006400; border-color: #006400; color: white;">
<i></i> Tambah Data
</button>
</div>
<div class="card shadow mb-4">
<div class="card-header py-3 d-flex justify-content-between align-items-center">
<h6 class="m-0 font-weight-bold" style="color: #006400;">
<div class="card-header py-3">
<h6 class="m-0 font-weight-bold d-flex justify-content-between align-items-center" style="color: #006400;">
<span>
<i class="bi bi-table"></i> Daftar Sub Kriteria
</span>
<div class="d-flex gap-2">
<button type="button" class="btn btn-success" data-bs-toggle="modal" data-bs-target="#tambahSubkriteriaModal"
style="background-color: #006400; border-color: #004d00;">
<i class="bi bi-plus"></i> Tambah Data
</button>
</div>
</h6>
</div>
<div class="card shadow mb-4">
<div class="card-header bg-white d-flex justify-content-between align-items-center">
<span class="fw-bold text-success">
Subkriteria untuk: {{ $kriteria->nama_kriteria }}
</span>
<a href="{{ route('admin.kriteria.index') }}" class="btn btn-sm btn-success">
<i class="bi bi-arrow-left"></i> Kembali
</a>
</div>
<div class="card-body">
<table class="table table-bordered">
<div class="table-responsive">
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
<thead>
<tr>
<th>Nama Subkriteria</th>
<th>Nilai</th>
<th>Min Harga</th>
<th>Max Harga</th>
<th>Aksi</th>
<th class="text-center">No</th>
<th class="text-center">Nama Subkriteria</th>
<th class="text-center">Nilai</th>
<th class="text-center">Min Harga</th>
<th class="text-center">Max Harga</th>
<th class="text-center">Aksi</th>
</tr>
</thead>
<tbody>
@forelse ($subkriterias as $sub)
@forelse ($subkriterias as $key => $sub)
<tr>
<td>{{ $sub->nama_sub }}</td>
<td>{{ $sub->nilai }}</td>
<td>{{ $sub->min_harga ?? '-' }}</td>
<td>{{ $sub->max_harga ?? '-' }}</td>
<td>
<!-- Tombol Edit -->
<button class="btn btn-sm btn-primary" data-bs-toggle="modal"
data-bs-target="#editModal{{ $sub->id }}">Edit</button>
<td class="text-center">{{ $key + 1 }}</td>
<td class="text-center">{{ $sub->nama_sub }}</td>
<td class="text-center">{{ $sub->nilai }}</td>
<td class="text-center">{{ $sub->min_harga ?? '-' }}</td>
<td class="text-center">{{ $sub->max_harga ?? '-' }}</td>
<td class="text-center">
<div class="d-flex justify-content-center">
<button class="btn btn-warning btn-sm mx-1" data-bs-toggle="modal"
data-bs-target="#editModal{{ $sub->id }}">
<i class="bi bi-pencil"></i>
</button>
<!-- Tombol Delete -->
<button class="btn btn-sm btn-danger" data-bs-toggle="modal"
data-bs-target="#deleteModal{{ $sub->id }}">Hapus</button>
<form id="delete-form-{{ $sub->id }}" action="{{ route('admin.subkriteria.destroy', $sub->id) }}" method="POST" class="d-inline">
@csrf
@method('DELETE')
<button type="button" class="btn btn-danger btn-sm mx-1 delete-button" data-id="{{ $sub->id }}">
<i class="bi bi-trash"></i>
</button>
</form>
</div>
</td>
</tr>
@empty
<tr>
<td colspan="4" class="text-center">Belum ada subkriteria</td>
<td colspan="6" class="text-center">Belum ada subkriteria</td>
</tr>
@endforelse
</tbody>
</table>
</div>
</div>
</div>
<!-- Modal Tambah Subkriteria -->
<div class="modal fade" id="tambahSubkriteriaModal" tabindex="-1" aria-labelledby="tambahSubkriteriaLabel"
aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal fade" id="tambahSubkriteriaModal" tabindex="-1" aria-labelledby="tambahSubkriteriaLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-md">
<div class="modal-content border-0 shadow-sm">
<form action="{{ route('admin.subkriteria.store') }}" method="POST">
@csrf
<input type="hidden" name="kriteria_id" value="{{ $kriteria->id }}">
<div class="modal-header">
<h5 class="modal-title" id="tambahSubkriteriaLabel">Tambah Subkriteria</h5>
<div class="modal-header border-bottom-0">
<h5 class="modal-title fw-bold" id="tambahSubkriteriaLabel">Tambah Subkriteria</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Tutup"></button>
</div>
<div class="modal-body">
<div class="mb-3">
<label for="kriteria_id" class="form-label">Pilih Kriteria</label>
<select class="form-select" id="kriteria_id" name="kriteria_id" required
onchange="toggleHargaFields()">
<select class="form-select" id="kriteria_id" name="kriteria_id" required onchange="toggleHargaFields()">
<option value="">-- Pilih Kriteria --</option>
@foreach ($kriterias as $kriteria)
<option value="{{ $kriteria->id }}" data-nama="{{ $kriteria->nama_kriteria }}">
@ -103,8 +106,7 @@
<div class="mb-3">
<label for="nilai" class="form-label">Nilai</label>
<input type="number" class="form-control" id="nilai" name="nilai" step="1"
required>
<input type="number" class="form-control" id="nilai" name="nilai" step="1" required>
</div>
<div id="harga-fields" style="display: none;">
@ -119,6 +121,111 @@
</div>
</div>
</div>
<div class="modal-footer border-top-0">
<button type="button" class="btn" style="background-color: #90ee90; color: #000; border: none; border-radius: 0.5rem;" data-bs-dismiss="modal">
<i></i> Batal
</button>
<button type="submit" class="btn btn-success" style="background-color: #14532d; border-color: #14532d;">
Simpan
</button>
</div>
</form>
</div>
</div>
</div>
{{-- Modal Edit --}}
@foreach ($subkriterias as $sub)
<div class="modal fade" id="editModal{{ $sub->id }}" tabindex="-1" aria-labelledby="editModalLabel{{ $sub->id }}" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered">
<div class="modal-content">
<form action="{{ route('admin.subkriteria.update', $sub->id) }}" method="POST">
@csrf
@method('PUT')
<div class="modal-header">
<h5 class="modal-title" id="editModalLabel{{ $sub->id }}">Edit Subkriteria</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Tutup"></button>
</div>
<div class="modal-body">
<div class="mb-3">
<label for="kriteria_id" class="form-label">Pilih Kriteria</label>
<select class="form-select kriteria-select" data-id="{{ $sub->id }}" name="kriteria_id" required>
@foreach ($kriterias as $kriteria)
<option value="{{ $kriteria->id }}" data-nama="{{ $kriteria->nama_kriteria }}"
{{ $sub->kriteria_id == $kriteria->id ? 'selected' : '' }}>
{{ $kriteria->nama_kriteria }}
</option>
@endforeach
</select>
</div>
<div class="mb-3">
<label for="nama_sub" class="form-label">Nama Subkriteria</label>
<input type="text" class="form-control" name="nama_sub" value="{{ $sub->nama_sub }}" required>
</div>
<div class="mb-3">
<label for="nilai" class="form-label">Nilai</label>
<input type="number" class="form-control" name="nilai" value="{{ $sub->nilai }}" required>
</div>
<div class="harga-fields" id="hargaFields{{ $sub->id }}" style="display: none;">
<div class="mb-3">
<label for="min_harga" class="form-label">Min Harga</label>
<input type="number" class="form-control" name="min_harga" value="{{ $sub->min_harga }}">
</div>
<div class="mb-3">
<label for="max_harga" class="form-label">Max Harga</label>
<input type="number" class="form-control" name="max_harga" value="{{ $sub->max_harga }}">
</div>
</div>
</div>
<div class="modal-footer border-top-0">
<button type="button" class="btn" style="background-color: #90ee90; color: #000; border: none; border-radius: 0.5rem;" data-bs-dismiss="modal">
<i"></i> Batal
</button>
<button type="submit" class="btn" style="background-color: #14532d; color: #fff; border: none; border-radius: 0.5rem;">
Simpan
</button>
</div>
</form>
</div>
</div>
</div>
@endforeach
<!-- SweetAlert CDN -->
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
@if (session('success'))
<script>
Swal.fire({
title: 'Berhasil!',
text: '{{ session('success') }}',
icon: 'success',
timer: 3000,
showConfirmButton: false
});
</script>
@endif
@if (session('error'))
<script>
Swal.fire({
title: 'Error!',
text: '{{ session('error') }}',
icon: 'error',
confirmButtonText: 'OK',
confirmButtonColor: '#d33'
});
</script>
@endif
<script>
function toggleHargaFields() {
const select = document.getElementById('kriteria_id');
@ -136,73 +243,32 @@
document.getElementById('max_harga').required = false;
}
}
</script>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Batal</button>
<button type="submit" class="btn btn-primary">Simpan</button>
</div>
</form>
</div>
</div>
</div>
{{-- Modal Edit --}}
@foreach ($subkriterias as $sub)
<div class="modal fade" id="editModal{{ $sub->id }}" tabindex="-1"
aria-labelledby="editModalLabel{{ $sub->id }}" aria-hidden="true">
<div class="modal-dialog">
<form action="{{ route('admin.subkriteria.update', $sub->id) }}" method="POST">
@csrf
@method('PUT')
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="editModalLabel{{ $sub->id }}">Edit Subkriteria</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal"
aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="mb-3">
<label for="kriteria_id" class="form-label">Kriteria</label>
<select class="form-select kriteria-select" data-id="{{ $sub->id }}"
name="kriteria_id" required>
@foreach ($kriterias as $kriteria)
<option value="{{ $kriteria->id }}" data-nama="{{ $kriteria->nama_kriteria }}"
{{ $sub->kriteria_id == $kriteria->id ? 'selected' : '' }}>
{{ $kriteria->nama_kriteria }}
</option>
@endforeach
</select>
</div>
<div class="mb-3">
<label for="nama_sub" class="form-label">Nama Subkriteria</label>
<input type="text" class="form-control" name="nama_sub" value="{{ $sub->nama_sub }}"
required>
</div>
<div class="mb-3">
<label for="nilai" class="form-label">Nilai</label>
<input type="number" class="form-control" name="nilai" value="{{ $sub->nilai }}"
required>
</div>
<div class="harga-fields" id="hargaFields{{ $sub->id }}" style="display: none;">
<div class="mb-3">
<label for="min_harga" class="form-label">Min Harga</label>
<input type="number" class="form-control" name="min_harga"
value="{{ $sub->min_harga }}">
</div>
<div class="mb-3">
<label for="max_harga" class="form-label">Max Harga</label>
<input type="number" class="form-control" name="max_harga"
value="{{ $sub->max_harga }}">
</div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
// Loop semua select.kriteria-select
// Handle delete buttons with SweetAlert
const deleteButtons = document.querySelectorAll('.delete-button');
deleteButtons.forEach(button => {
button.addEventListener('click', function() {
const id = this.getAttribute('data-id');
Swal.fire({
title: 'Apakah Anda yakin?',
text: 'Data ini akan dihapus secara permanen!',
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#d33',
cancelButtonColor: '#3085d6',
confirmButtonText: 'Ya, hapus!',
cancelButtonText: 'Batal'
}).then((result) => {
if (result.isConfirmed) {
document.getElementById('delete-form-' + id).submit();
}
});
});
});
// Handle edit modal harga fields toggle
document.querySelectorAll('.kriteria-select').forEach(select => {
const id = select.dataset.id;
const hargaFields = document.getElementById(`hargaFields${id}`);
@ -226,136 +292,4 @@
});
</script>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Batal</button>
<button type="submit" class="btn btn-success">Simpan Perubahan</button>
</div>
</div>
</form>
</div>
</div>
@endforeach
@foreach ($subkriterias as $sub)
<!-- Modal Delete -->
<div class="modal fade" id="deleteModal{{ $sub->id }}" tabindex="-1"
aria-labelledby="deleteModalLabel{{ $sub->id }}" aria-hidden="true">
<div class="modal-dialog">
<form action="{{ route('admin.subkriteria.destroy', $sub->id) }}" method="POST">
@csrf
@method('DELETE')
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="deleteModalLabel{{ $sub->id }}">Konfirmasi Hapus</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal"
aria-label="Close"></button>
</div>
<div class="modal-body">
Apakah Anda yakin ingin menghapus subkriteria "<strong>{{ $sub->nama_sub }}</strong>"?
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Batal</button>
<button type="submit" class="btn btn-danger">Ya, Hapus</button>
</div>
</div>
</form>
</div>
</div>
@endforeach
<!-- Tambahkan SweetAlert2 -->
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script>
// Fungsi untuk menampilkan SweetAlert sukses
function showSuccessMessage(message) {
Swal.fire({
icon: 'success',
title: 'Berhasil!',
text: message,
showConfirmButton: false,
timer: 1500
});
}
// SweetAlert untuk konfirmasi hapus data
document.addEventListener('DOMContentLoaded', function() {
const forms = document.querySelectorAll('.form-hapus');
forms.forEach(form => {
form.addEventListener('submit', function(e) {
e.preventDefault(); // Cegah submit langsung
Swal.fire({
title: 'Yakin ingin menghapus?',
text: "Data tidak bisa dikembalikan!",
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#d33',
cancelButtonColor: '#3085d6',
confirmButtonText: 'Ya, hapus!',
cancelButtonText: 'Batal'
}).then((result) => {
if (result.isConfirmed) {
form.submit(); // Lanjutkan submit jika dikonfirmasi
}
});
});
});
});
// Menampilkan SweetAlert saat ada pesan sukses dari server
document.addEventListener("DOMContentLoaded", function() {
const successMessage = "{{ session('success') }}";
if (successMessage.trim() !== "") {
showSuccessMessage(successMessage);
}
});
// SweetAlert setelah menambah data
document.addEventListener("DOMContentLoaded", function() {
const successMessage = "{{ session('success') }}";
if (successMessage.trim() !== "") {
showSuccessMessage(successMessage);
}
});
// SweetAlert setelah edit data
document.getElementById('formEdit')?.addEventListener('submit', function(event) {
event.preventDefault();
let form = this;
let url = form.action;
let formData = new FormData(form);
fetch(url, {
method: 'POST', // atau 'PUT' jika pakai PUT
body: formData,
headers: {
'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').content,
'X-Requested-With': 'XMLHttpRequest'
},
})
.then(response => response.json())
.then(data => {
console.log(data);
if (data.success) {
Swal.fire({
icon: 'success',
title: 'Berhasil!',
text: 'Data berhasil diperbarui!',
showConfirmButton: false,
timer: 1500
}).then(() => {
location.reload();
});
} else {
Swal.fire("Gagal!", data.message || "Data tidak dapat diperbarui.", "error");
}
})
.catch(error => {
console.log("Error di fetch:", error);
Swal.fire("Error!", "Terjadi kesalahan saat mengupdate data.", "error");
});
});
</script>
@endsection

View File

@ -27,13 +27,13 @@ Route::get('/', [HomeController::class, 'index'])->name('home');
Route::post('/proses-rekomendasi', [HomeController::class, 'simpankuisionerdanrekomendasi'])->name('proses.rekomendasi');
// Jika user sudah login, arahkan ke dashboard
Route::get('/dashboard', function () {
if (!Auth::check()) {
return redirect()->route('login');
}
return view('admin.pages.dashboard.index');
})->name('dashboard');
// // Jika user sudah login, arahkan ke dashboard
// Route::get('/dashboard', function () {
// if (!Auth::check()) {
// return redirect()->route('login');
// }
// return view('admin.pages.dashboard.index');
// })->name('dashboard');
// Login & Register Routes
Route::get('/login', [AuthController::class, 'showLogin'])->name('login');