add fitur view
This commit is contained in:
parent
43168c4273
commit
bb5315fad5
@ -11,7 +11,7 @@ class FiturController extends Controller
|
|||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
$fiturs = Fitur::all();
|
$fiturs = Fitur::all();
|
||||||
return response()->json($fiturs);
|
return view('admin.fitur.index', compact('fiturs'));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Menambah fitur baru
|
// Menambah fitur baru
|
||||||
@ -21,21 +21,11 @@ class FiturController extends Controller
|
|||||||
'nama_fitur' => 'required|string|max:255',
|
'nama_fitur' => 'required|string|max:255',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$fitur = Fitur::create([
|
Fitur::create([
|
||||||
'nama_fitur' => $request->nama_fitur,
|
'nama_fitur' => $request->nama_fitur,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
return response()->json([
|
return redirect()->route('admin.fitur.index')->with('success', 'Fitur berhasil ditambahkan');
|
||||||
'message' => 'Fitur berhasil ditambahkan',
|
|
||||||
'data' => $fitur,
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Menampilkan detail fitur
|
|
||||||
public function show($id)
|
|
||||||
{
|
|
||||||
$fitur = Fitur::findOrFail($id);
|
|
||||||
return response()->json($fitur);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Edit / update fitur
|
// Edit / update fitur
|
||||||
@ -50,10 +40,7 @@ class FiturController extends Controller
|
|||||||
'nama_fitur' => $request->nama_fitur,
|
'nama_fitur' => $request->nama_fitur,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
return response()->json([
|
return redirect()->route('admin.fitur.index')->with('success', 'Fitur berhasil diperbarui');
|
||||||
'message' => 'Fitur berhasil diperbarui',
|
|
||||||
'data' => $fitur,
|
|
||||||
]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Hapus fitur
|
// Hapus fitur
|
||||||
@ -62,8 +49,6 @@ class FiturController extends Controller
|
|||||||
$fitur = Fitur::findOrFail($id);
|
$fitur = Fitur::findOrFail($id);
|
||||||
$fitur->delete();
|
$fitur->delete();
|
||||||
|
|
||||||
return response()->json([
|
return redirect()->route('admin.fitur.index')->with('success', 'Fitur berhasil dihapus');
|
||||||
'message' => 'Fitur berhasil dihapus',
|
|
||||||
]);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
107
backend/resources/views/admin/fitur/index.blade.php
Normal file
107
backend/resources/views/admin/fitur/index.blade.php
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
@extends('layouts.app')
|
||||||
|
|
||||||
|
@section('title', 'Manajemen Fitur')
|
||||||
|
|
||||||
|
@section('content')
|
||||||
|
<div class="container">
|
||||||
|
<!-- Header -->
|
||||||
|
<div class="d-flex justify-content-between align-items-center mb-4">
|
||||||
|
<h3 class="fw-bold">Manajemen Fitur</h3>
|
||||||
|
<button class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#modalTambah">
|
||||||
|
<i class="bi bi-plus-lg"></i> Tambah Fitur
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Tabel Fitur -->
|
||||||
|
<div class="card shadow-sm border-0">
|
||||||
|
<div class="card-body">
|
||||||
|
<table class="table table-hover align-middle">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="50">No</th>
|
||||||
|
<th>Nama Fitur</th>
|
||||||
|
<th width="180">Aksi</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
@forelse ($fiturs as $key => $fitur)
|
||||||
|
<tr>
|
||||||
|
<td>{{ $key + 1 }}</td>
|
||||||
|
<td>{{ $fitur->nama_fitur }}</td>
|
||||||
|
<td>
|
||||||
|
<button class="btn btn-warning btn-sm" data-bs-toggle="modal"
|
||||||
|
data-bs-target="#modalEdit{{ $fitur->id }}">
|
||||||
|
<i class="bi bi-pencil"></i>
|
||||||
|
</button>
|
||||||
|
<form action="{{ route('admin.fitur.destroy', $fitur->id) }}"
|
||||||
|
method="POST"
|
||||||
|
class="d-inline"
|
||||||
|
onsubmit="return confirm('Yakin mau hapus fitur ini?')">
|
||||||
|
@csrf
|
||||||
|
@method('DELETE')
|
||||||
|
<button class="btn btn-danger btn-sm">
|
||||||
|
<i class="bi bi-trash"></i>
|
||||||
|
</button>
|
||||||
|
</form>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
@empty
|
||||||
|
<tr>
|
||||||
|
<td colspan="3" class="text-center text-muted">Belum ada fitur</td>
|
||||||
|
</tr>
|
||||||
|
@endforelse
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Modal Tambah -->
|
||||||
|
<div class="modal fade" id="modalTambah" tabindex="-1">
|
||||||
|
<div class="modal-dialog">
|
||||||
|
<form action="{{ route('admin.fitur.store') }}" method="POST" class="modal-content">
|
||||||
|
@csrf
|
||||||
|
<div class="modal-header">
|
||||||
|
<h5 class="modal-title">Tambah Fitur</h5>
|
||||||
|
<button type="button" class="btn-close" data-bs-dismiss="modal"></button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="mb-3">
|
||||||
|
<label>Nama Fitur</label>
|
||||||
|
<input type="text" name="nama_fitur" class="form-control" required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button class="btn btn-secondary" data-bs-dismiss="modal">Batal</button>
|
||||||
|
<button class="btn btn-primary">Simpan</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Modal Edit -->
|
||||||
|
@foreach ($fiturs as $fitur)
|
||||||
|
<div class="modal fade" id="modalEdit{{ $fitur->id }}" tabindex="-1">
|
||||||
|
<div class="modal-dialog">
|
||||||
|
<form action="{{ route('admin.fitur.update', $fitur->id) }}" method="POST" class="modal-content">
|
||||||
|
@csrf
|
||||||
|
@method('PUT')
|
||||||
|
<div class="modal-header">
|
||||||
|
<h5 class="modal-title">Edit Fitur</h5>
|
||||||
|
<button type="button" class="btn-close" data-bs-dismiss="modal"></button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="mb-3">
|
||||||
|
<label>Nama Fitur</label>
|
||||||
|
<input type="text" name="nama_fitur" value="{{ $fitur->nama_fitur }}" class="form-control" required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button class="btn btn-secondary" data-bs-dismiss="modal">Batal</button>
|
||||||
|
<button class="btn btn-primary">Simpan Perubahan</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endforeach
|
||||||
|
@endsection
|
@ -48,6 +48,11 @@ Route::prefix('admin')->name('admin.')->middleware('auth:admin')->group(function
|
|||||||
|
|
||||||
use App\Http\Controllers\FiturController;
|
use App\Http\Controllers\FiturController;
|
||||||
|
|
||||||
Route::resource('fitur', FiturController::class);
|
Route::prefix('admin')->name('admin.')->group(function () {
|
||||||
|
Route::get('/fitur', [FiturController::class, 'index'])->name('fitur.index');
|
||||||
|
Route::post('/fitur', [FiturController::class, 'store'])->name('fitur.store');
|
||||||
|
Route::get('/fitur/{id}', [FiturController::class, 'show'])->name('fitur.show');
|
||||||
|
Route::put('/fitur/{id}', [FiturController::class, 'update'])->name('fitur.update');
|
||||||
|
Route::delete('/fitur/{id}', [FiturController::class, 'destroy'])->name('fitur.destroy');
|
||||||
|
});
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user