TAMPIL KURSUS
This commit is contained in:
parent
e19b346a64
commit
8fdc0b70c4
|
@ -2,12 +2,14 @@
|
||||||
|
|
||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use App\Models\DataKursus; // Pastikan model diimport
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
class AdminDataKursusController extends Controller
|
class AdminDataKursusController extends Controller
|
||||||
{
|
{
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
return view('admin.dataKursusAdmin');
|
$courses = DataKursus::all(); // Mengambil semua data dari tabel data_kursus
|
||||||
|
return view('admin.dataKursusAdmin', ['courses' => $courses]); // Mengirim data ke view
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,6 +8,7 @@ class UserDetailDataKursusController extends Controller
|
||||||
{
|
{
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
return view('user.detailKursus');
|
$courses = DataKursus::all(); // Mengambil semua data dari tabel data_kursus
|
||||||
|
return view('user.detailKursus', compact('courses')); // Mengirim data ke view
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
|
class DataKursus extends Model
|
||||||
|
{
|
||||||
|
use HasFactory;
|
||||||
|
protected $table = 'data_kursus';
|
||||||
|
}
|
|
@ -0,0 +1,36 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
return new class extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::create('data_kursus', function (Blueprint $table) {
|
||||||
|
$table->id(); // Kolom id dengan auto increment
|
||||||
|
$table->string('nama_kursus'); // Kolom nama_kursus
|
||||||
|
$table->string('img')->nullable(); // Kolom img (nullable jika tidak wajib diisi)
|
||||||
|
$table->text('deskripsi'); // Kolom deskripsi
|
||||||
|
$table->string('paket'); // Kolom paket
|
||||||
|
$table->string('metode'); // Kolom metode
|
||||||
|
$table->text('fasilitas'); // Kolom fasilitas
|
||||||
|
$table->string('lokasi'); // Kolom lokasi
|
||||||
|
$table->decimal('latitude', 10, 7); // Kolom latitude (10 digit, 7 desimal)
|
||||||
|
$table->decimal('longitude', 10, 7); // Kolom longitude (10 digit, 7 desimal)
|
||||||
|
$table->timestamps(); // Kolom created_at dan updated_at
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*/
|
||||||
|
public function down(): void
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('data_kursus');
|
||||||
|
}
|
||||||
|
};
|
|
@ -3,52 +3,38 @@
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="py-10">
|
<div class="py-10">
|
||||||
|
|
||||||
|
|
||||||
<div class="relative overflow-x-auto shadow-md sm:rounded-lg">
|
<div class="relative overflow-x-auto shadow-md sm:rounded-lg">
|
||||||
<table class="w-full text-sm text-left rtl:text-right text-gray-500 ">
|
<table class="w-full text-sm text-left rtl:text-right text-gray-500">
|
||||||
<thead class="text-xs text-gray-700 uppercase bg-gray-50 ">
|
<thead class="text-xs text-gray-700 uppercase bg-gray-50">
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="col" class="px-6 py-3">
|
<th scope="col" class="px-6 py-3">No</th>
|
||||||
No
|
<th scope="col" class="px-6 py-3">Nama Kursus</th>
|
||||||
</th>
|
<th scope="col" class="px-6 py-3">Deskripsi</th>
|
||||||
<th scope="col" class="px-6 py-3">
|
<th scope="col" class="px-6 py-3">Gambar</th>
|
||||||
Nama Kursus
|
<th scope="col" class="px-6 py-3">Aksi</th>
|
||||||
</th>
|
|
||||||
<th scope="col" class="px-6 py-3">
|
|
||||||
Deskripsi
|
|
||||||
</th>
|
|
||||||
<th scope="col" class="px-6 py-3">
|
|
||||||
Gambar
|
|
||||||
</th>
|
|
||||||
<th scope="col" class="px-6 py-3">
|
|
||||||
Aksi
|
|
||||||
</th>
|
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr class="odd:bg-white even:bg-gray-50 ">
|
@foreach ($courses as $index => $course)
|
||||||
|
<tr class="odd:bg-white even:bg-gray-50">
|
||||||
<th scope="row" class="px-6 py-4 font-medium text-gray-900 whitespace-nowrap">
|
<th scope="row" class="px-6 py-4 font-medium text-gray-900 whitespace-nowrap">
|
||||||
1
|
{{ $index + 1 }}
|
||||||
</th>
|
</th>
|
||||||
<td class="px-6 py-4">
|
<td class="px-6 py-4">
|
||||||
Kampung Inggris LC - Language Center
|
{{ $course->nama_kursus }}
|
||||||
</td>
|
</td>
|
||||||
<td class="px-6 py-4">
|
<td class="px-6 py-4">
|
||||||
Jl. Langkat No.88, Singgahan, Pelem, Kec. Pare, Kabupaten Kediri, Jawa Timur 64213
|
{{ $course->deskripsi }}
|
||||||
0858-5611-1118
|
|
||||||
Instagram:
|
|
||||||
@kampunginggrislc
|
|
||||||
</td>
|
</td>
|
||||||
<td class="px-6 py-4">
|
<td class="px-6 py-4">
|
||||||
<img src="{{ asset('img/Rectangle 294.png') }}" class="w-72 h-auto object-cover" alt="">
|
<img src="{{ asset('storage/' . $course->img) }}" class="w-72 h-auto object-cover" alt="">
|
||||||
</td>
|
</td>
|
||||||
<td class="px-6 py-4 flex space-x-2">
|
<td class="px-6 py-4 flex space-x-2">
|
||||||
<a href="#"
|
<a href="#" class="font-medium text-white hover:underline py-2 px-4 bg-[#4F7F81] rounded-xl">Edit</a>
|
||||||
class="font-medium text-white hover:underline py-2 px-4 bg-[#4F7F81] rounded-xl">Edit</a>
|
<a href="#" class="font-medium text-white hover:underline py-2 px-4 bg-[#4F7F81] rounded-xl">Hapus</a>
|
||||||
<a href="#"
|
|
||||||
class="font-medium text-white hover:underline py-2 px-4 bg-[#4F7F81] rounded-xl">Hapus</a>
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@endforeach
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1 +1,89 @@
|
||||||
w
|
<x-adminlayout>
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<div class="py-10">
|
||||||
|
|
||||||
|
<form action="#" method="POST" enctype="multipart/form-data">
|
||||||
|
@csrf
|
||||||
|
<div class="grid gap-6 mb-6 md:grid-cols-2">
|
||||||
|
<!-- Nama Kursus -->
|
||||||
|
<div>
|
||||||
|
<label for="nama_kursus" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Nama Kursus</label>
|
||||||
|
<input type="text" id="nama_kursus" name="nama_kursus"
|
||||||
|
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
||||||
|
placeholder="Nama Kursus" required />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Gambar -->
|
||||||
|
<div>
|
||||||
|
<label for="img" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Gambar</label>
|
||||||
|
<input type="file" id="img" name="img"
|
||||||
|
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
||||||
|
required />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Deskripsi -->
|
||||||
|
<div>
|
||||||
|
<label for="deskripsi" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Deskripsi</label>
|
||||||
|
<textarea id="deskripsi" name="deskripsi"
|
||||||
|
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
||||||
|
placeholder="Deskripsi" required></textarea>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Paket -->
|
||||||
|
<div>
|
||||||
|
<label for="paket" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Paket</label>
|
||||||
|
<input type="text" id="paket" name="paket"
|
||||||
|
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
||||||
|
placeholder="Paket" required />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Metode -->
|
||||||
|
<div>
|
||||||
|
<label for="metode" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Metode</label>
|
||||||
|
<input type="text" id="metode" name="metode"
|
||||||
|
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
||||||
|
placeholder="Metode" required />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Fasilitas -->
|
||||||
|
<div>
|
||||||
|
<label for="fasilitas" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Fasilitas</label>
|
||||||
|
<textarea id="fasilitas" name="fasilitas"
|
||||||
|
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
||||||
|
placeholder="Fasilitas" required></textarea>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Lokasi -->
|
||||||
|
<div>
|
||||||
|
<label for="lokasi" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Lokasi</label>
|
||||||
|
<input type="text" id="lokasi" name="lokasi"
|
||||||
|
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
||||||
|
placeholder="Lokasi" required />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Latitude -->
|
||||||
|
<div>
|
||||||
|
<label for="latitude" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Latitude</label>
|
||||||
|
<input type="text" id="latitude" name="latitude"
|
||||||
|
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
||||||
|
placeholder="Latitude" required />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Longitude -->
|
||||||
|
<div>
|
||||||
|
<label for="longitude" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Longitude</label>
|
||||||
|
<input type="text" id="longitude" name="longitude"
|
||||||
|
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
||||||
|
placeholder="Longitude" required />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<button type="submit"
|
||||||
|
class="text-white bg-blue-700 hover:bg-blue-800 focus:ring-4 focus:outline-none focus:ring-blue-300 font-medium rounded-lg text-sm w-full sm:w-auto px-5 py-2.5 text-center dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800">Submit</button>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</x-adminlayout>
|
||||||
|
|
|
@ -12,7 +12,11 @@
|
||||||
|
|
||||||
Route::get('/admin/dashboard', [AdminDashboardController::class, 'index'])->name('admin.home');
|
Route::get('/admin/dashboard', [AdminDashboardController::class, 'index'])->name('admin.home');
|
||||||
Route::get('/admin/data-kursus', [AdminDataKursusController::class, 'index'])->name('admin.dataKursus');
|
Route::get('/admin/data-kursus', [AdminDataKursusController::class, 'index'])->name('admin.dataKursus');
|
||||||
// Route::get('/admin/tambah-data-kursus', [AdminTambahDataKursusController::class, 'create'])->name('admin.tambahDataKursus');
|
Route::get('/admin/tambahData', [AdminTambahDataKursusController::class, 'create'])->name('admin.tambahDataKursus');
|
||||||
|
|
||||||
|
|
||||||
|
Route::get('/admin/courses', [AdminDataKursusController::class, 'index']);
|
||||||
|
|
||||||
|
|
||||||
Route::get('/login', [LoginController::class, 'index'])->name('login');
|
Route::get('/login', [LoginController::class, 'index'])->name('login');
|
||||||
// Route::post('/login', [LoginController::class, 'login'])->name('login.post');
|
// Route::post('/login', [LoginController::class, 'login'])->name('login.post');
|
||||||
|
@ -20,3 +24,4 @@
|
||||||
Route::get('/kursus', [UserKursusController::class, 'index'])->name('user.kursus'); // Perbaikan pada rute ini
|
Route::get('/kursus', [UserKursusController::class, 'index'])->name('user.kursus'); // Perbaikan pada rute ini
|
||||||
Route::get('/peta', [UserPetaController::class, 'index'])->name('user.peta');
|
Route::get('/peta', [UserPetaController::class, 'index'])->name('user.peta');
|
||||||
Route::get('/detailKursus', [UserDetailDataKursusController::class, 'index'])->name('user.detailKursus');
|
Route::get('/detailKursus', [UserDetailDataKursusController::class, 'index'])->name('user.detailKursus');
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue