fixing update fitur

This commit is contained in:
mmmutia 2024-03-23 13:53:08 +07:00
parent 2f728977ab
commit e894690493
35 changed files with 409 additions and 890 deletions

View File

@ -18,20 +18,20 @@ class KalkulasiController extends Controller
public function index() public function index()
{ {
$kalkulasi = Kalkulasi::all(); $kalkulasi = Kalkulasi::all();
return view('admin/kalkulasi',compact('kalkulasi')); return view('kalkulasi/kalkulasi',compact('kalkulasi'));
} }
public function comparison() public function comparison()
{ {
$comparison = Comparison::all(); $comparison = Comparison::all();
return view('admin/comparison', compact('comparison')); return view('comparison/comparison', compact('comparison'));
} }
public function printcomparison() public function printcomparison()
{ {
$comparison = Comparison::all(); $comparison = Comparison::all();
return view('admin/print-comparison', compact('comparison')); return view('comparison/print-comparison', compact('comparison'));
} }
/** /**
@ -39,7 +39,7 @@ public function printcomparison()
*/ */
public function create() public function create()
{ {
return view('admin/kalkulasi'); return view('kalkulasi/kalkulasi');
} }
/** /**
@ -56,12 +56,15 @@ public function store(Request $request)
'temperature'=>$request->temperature, 'temperature'=>$request->temperature,
'humidity'=>$request->humidity, 'humidity'=>$request->humidity,
]); ]);
return redirect('admin/kalkulasi'); return redirect('/kalkulasi')->withSuccess('Data berhasil ditambah!');
} }
public function pembagi(Request $request) public function pembagi(Request $request)
{ {
$kalkulasi = Kalkulasi::all(); $kalkulasi = Kalkulasi::all();
if ($kalkulasi->isEmpty()) {
return back()->withWarning('Isi Data Kalkulasi terlebih dahulu!');
}
$results = []; $results = [];
$bobots = []; $bobots = [];
$hasil_max = []; $hasil_max = [];
@ -224,7 +227,7 @@ public function pembagi(Request $request)
} }
return view('admin/hitung-kal', ['results' => $results, 'bobots' => $bobots, 'hasil_max' => $hasil_max, 'hasil_min' => $hasil_min, 'd_plus_values' => $d_plus_values, 'd_min_values' => $d_min_values, 'kalkulasi' => $kalkulasi]); return view('kalkulasi/hitung-kal', ['results' => $results, 'bobots' => $bobots, 'hasil_max' => $hasil_max, 'hasil_min' => $hasil_min, 'd_plus_values' => $d_plus_values, 'd_min_values' => $d_min_values, 'kalkulasi' => $kalkulasi]);
// return $results; // return $results;
} }
} }
@ -233,6 +236,10 @@ public function pembagi(Request $request)
public function simpanData() public function simpanData()
{ {
$preverensis = Preverensi::all(); $preverensis = Preverensi::all();
$preverensi_kal = PreverensiKal::all();
if ($preverensi_kal->isEmpty()) {
return back()->withWarning('Isi Data Kalkulasi terlebih dahulu!');
}
Comparison::truncate(); Comparison::truncate();
@ -283,7 +290,7 @@ public function show(string $id)
public function edit(Kalkulasi $kalkulasi, string $id) public function edit(Kalkulasi $kalkulasi, string $id)
{ {
$kalkulasi = Kalkulasi::findorfail($id); $kalkulasi = Kalkulasi::findorfail($id);
return view('admin/edit-kalkulasi', compact('kalkulasi')); return view('kalkulasi/edit-kalkulasi', compact('kalkulasi'));
} }
/** /**
@ -294,17 +301,17 @@ public function update(Request $request, string $id)
$kalkulasi = Kalkulasi::findorfail($id); $kalkulasi = Kalkulasi::findorfail($id);
$kalkulasi->update($request->all()); $kalkulasi->update($request->all());
return redirect('admin/kalkulasi'); return redirect('/kalkulasi')->withInfo('Data berhasil diupdate!');
} }
/** /**
* Remove the specified resource from storage. * Remove the specified resource from storage.
*/ */
public function destroy(Kalkulasi $kalkulasi, string $id) public function delete(Kalkulasi $kalkulasi, string $id)
{ {
$kalkulasi = Kalkulasi::findorfail($id); $kalkulasi = Kalkulasi::findorfail($id);
$kalkulasi->delete(); $kalkulasi->delete();
return back(); return back()->withWarning('Data berhasil dihapus!');
} }
} }

View File

@ -13,7 +13,7 @@ class KriteriaController extends Controller
public function index() public function index()
{ {
$kriteria = Kriteria::all(); $kriteria = Kriteria::all();
return view('admin/kriteria',compact('kriteria')); return view('kriteria/kriteria',compact('kriteria'));
} }
/** /**
@ -21,7 +21,7 @@ public function index()
*/ */
public function create() public function create()
{ {
return view('admin/kriteria'); return view('kriteria/kriteria');
} }
/** /**
@ -34,7 +34,7 @@ public function store(Request $request)
'bobot'=>$request->bobot, 'bobot'=>$request->bobot,
'description'=>$request->description, 'description'=>$request->description,
]); ]);
return redirect('admin/kriteria')->withSuccess('Tambah data berhasil!'); return redirect('/kriteria')->withSuccess('Tambah data berhasil!');
} }
/** /**
@ -52,7 +52,7 @@ public function edit(Kriteria $kriteria, string $id)
{ {
// $this->authorize('update',$kriteria); // $this->authorize('update',$kriteria);
$kriteria = Kriteria::findorfail($id); $kriteria = Kriteria::findorfail($id);
return view('admin/edit-kriteria', compact('kriteria')); return view('kriteria/edit-kriteria', compact('kriteria'));
} }
/** /**
@ -63,17 +63,18 @@ public function update(Request $request, string $id)
$kriteria = Kriteria::findorfail($id); $kriteria = Kriteria::findorfail($id);
$kriteria->update($request->all()); $kriteria->update($request->all());
return redirect('admin/kriteria')->withInfo('Data berhasil di update!'); return redirect('/kriteria')->withInfo('Data berhasil di update!');
} }
/** /**
* Remove the specified resource from storage. * Remove the specified resource from storage.
*/ */
public function destroy(Kriteria $kriteria, string $id) public function delete(Kriteria $kriteria, string $id)
{ {
$kriteria = Kriteria::findorfail($id); $kriteria = Kriteria::findorfail($id);
$kriteria->delete(); $kriteria->delete();
return back()->withWarning('Data Berhasil Dihapus!'); return back()->withWarning('Data Berhasil Dihapus!');
} }
} }

View File

@ -16,12 +16,24 @@ class LoginController extends Controller
public function postlogin(Request $request) public function postlogin(Request $request)
{ {
if (Auth::attempt($request->only('email', 'password'))) { // Validasi input
$request->validate([
'email' => ['required', 'email', 'string', 'min:3', 'max:191'],
'password' => ['required'],
]);
// Lakukan proses otentikasi
if (Auth::attempt(['email' => $request->email, 'password' => $request->password])) {
// Jika berhasil login
return redirect('home')->with('success', 'Login berhasil!'); return redirect('home')->with('success', 'Login berhasil!');
} else {
// Jika username atau password salah
return redirect()->back()->withInput()->with('error', 'Username atau password salah! Silahkan coba lagi.');
}
} }
return redirect('login')->withErrors(['error' => 'Email atau password salah. Silakan coba lagi.']);
}
public function logout(Request $request) public function logout(Request $request)
{ {

View File

@ -22,13 +22,13 @@ class SubsidtrictController extends Controller
public function index() public function index()
{ {
$subdistricts = Subdistrict::all(); $subdistricts = Subdistrict::all();
return view('admin/subdistrict',compact('subdistricts')); return view('subdistrict/subdistrict',compact('subdistricts'));
} }
public function perhitungan() public function perhitungan()
{ {
$subdistricts = Subdistrict::all(); $subdistricts = Subdistrict::all();
return view('admin/perhitungan',compact('subdistricts')); return view('subdistrict/perhitungan',compact('subdistricts'));
} }
public function hasil() public function hasil()
@ -36,13 +36,15 @@ public function hasil()
// Ambil nilai preferensi dari database // Ambil nilai preferensi dari database
$preferences = Preverensi::orderByDesc('preverensi')->get(); $preferences = Preverensi::orderByDesc('preverensi')->get();
// $preferences = Preverensi::all(); // $preferences = Preverensi::all();
return view('admin.hasil', compact('preferences')); return view('hasil/hasil', compact('preferences'));
} }
public function pembagi(Request $request) public function pembagi(Request $request)
{ {
$subdistricts = Subdistrict::all(); $subdistricts = Subdistrict::all();
if ($subdistricts->isEmpty()) {
return back()->withWarning('Isi Data Kriteria atau Alternatif terlebih dahulu!');
}
$results = []; $results = [];
$bobots = []; $bobots = [];
@ -207,7 +209,7 @@ public function pembagi(Request $request)
} }
return view('admin/perhitungan', ['results' => $results, 'bobots' => $bobots, 'hasil_max' => $hasil_max, 'hasil_min' => $hasil_min, 'd_plus_values' => $d_plus_values, 'd_min_values' => $d_min_values, 'subdistricts' => $subdistricts]); return view('perhitungan/perhitungan', ['results' => $results, 'bobots' => $bobots, 'hasil_max' => $hasil_max, 'hasil_min' => $hasil_min, 'd_plus_values' => $d_plus_values, 'd_min_values' => $d_min_values, 'subdistricts' => $subdistricts]);
// return $results; // return $results;
} }
} }
@ -215,7 +217,7 @@ public function pembagi(Request $request)
public function alternatif() public function alternatif()
{ {
$subdistricts = Subdistrict::all(); $subdistricts = Subdistrict::all();
return view('admin/alternatif',compact('subdistricts')); return view('subdistrict/subdistrict',compact('subdistricts'));
} }
public function subdistrictexport(){ public function subdistrictexport(){
@ -229,7 +231,7 @@ public function subdistrictimport(Request $request){
$file->move('Subdistrict', $nameFile); $file->move('Subdistrict', $nameFile);
Excel::import(new SubdistrictAllImport, public_path("/Subdistrict/".$nameFile)); Excel::import(new SubdistrictAllImport, public_path("/Subdistrict/".$nameFile));
return redirect('admin/subdistrict'); return redirect('alternatif')->withSuccess('Data berhasil ditambah!');
} }
public function downloadTemplate() public function downloadTemplate()
@ -242,7 +244,7 @@ public function downloadTemplate()
*/ */
public function create() public function create()
{ {
return view('admin/subdistrict'); return view('subdistrict/subdistrict');
} }
/** /**
@ -259,7 +261,7 @@ public function store(Request $request)
'temperature'=>$request->temperature, 'temperature'=>$request->temperature,
'humidity'=>$request->humidity, 'humidity'=>$request->humidity,
]); ]);
return redirect('admin/subdistrict')->withSuccess('Data berhasil ditambah!'); return redirect('/alternatif')->withSuccess('Data berhasil ditambah!');
} }
@ -278,7 +280,7 @@ public function edit(Subdistrict $subdistrict, string $id)
{ {
// $this->authorize('update', $subdistrict); // $this->authorize('update', $subdistrict);
$subdistrict = Subdistrict::findorfail($id); $subdistrict = Subdistrict::findorfail($id);
return view('admin/edit-subdistrict', compact('subdistrict')); return view('subdistrict/edit-subdistrict', compact('subdistrict'));
} }
/** /**
@ -289,13 +291,13 @@ public function update(Request $request, string $id)
$subdistricts = Subdistrict::findorfail($id); $subdistricts = Subdistrict::findorfail($id);
$subdistricts->update($request->all()); $subdistricts->update($request->all());
return redirect('admin/subdistrict')->withInfo('Data berhasil di update!'); return redirect('/alternatif')->withInfo('Data berhasil di update!');
} }
/** /**
* Remove the specified resource from storage. * Remove the specified resource from storage.
*/ */
public function destroy(Subdistrict $subdistrict, string $id) public function delete(Subdistrict $subdistrict, string $id)
{ {
$subdistrict = Subdistrict::findorfail($id); $subdistrict = Subdistrict::findorfail($id);
$subdistrict->delete(); $subdistrict->delete();

View File

@ -15,7 +15,7 @@ class UserController extends Controller
public function index() public function index()
{ {
$user = User::all(); $user = User::all();
return view('admin/users',compact('user')); return view('user/users',compact('user'));
} }
public function profile() public function profile()
@ -66,21 +66,23 @@ public function edit(string $id)
* Update the specified resource in storage. * Update the specified resource in storage.
*/ */
public function update(Request $request) public function update(Request $request)
{ {
$request->validate([ $request->validate([
'name'=>['string','min:3','max:191','required'], 'name' => ['string', 'min:3', 'max:191'],
'email'=>['email','string','min:3','max:191','required'], 'email' => ['email', 'string', 'min:3', 'max:191'],
]); ]);
auth()->user()->update([ auth()->user()->update([
'name'=>$request->name, 'name' => $request->name,
'email'=>$request->email, 'email' => $request->email,
]); ]);
return redirect()->withInfo('Data berhasil di update!');
return redirect()->route('profile')->with('success', 'Data berhasil diupdate!');
} }
/** /**
* Remove the specified resource from storage. * Remove the specified resource from storage.
*/ */
@ -89,6 +91,6 @@ public function destroy(User $user, string $id)
$user = User::findorfail($id); $user = User::findorfail($id);
$user->delete(); $user->delete();
return back(); return redirect()->route('/')->with('warning', 'Akun berhasil diupdate!');
} }
} }

View File

@ -14,4 +14,6 @@ protected function redirectTo(Request $request): ?string
{ {
return $request->expectsJson() ? null : route('login'); return $request->expectsJson() ? null : route('login');
} }
} }

View File

@ -45,5 +45,11 @@ class User extends Authenticatable
'password' => 'hashed', 'password' => 'hashed',
]; ];
public function update(array $attributes = [], array $options = [])
{
return $this->fill($attributes)->save($options);
}
} }

12
package-lock.json generated
View File

@ -4,6 +4,9 @@
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"dependencies": {
"sweetalert2": "^11.10.6"
},
"devDependencies": { "devDependencies": {
"@popperjs/core": "^2.11.6", "@popperjs/core": "^2.11.6",
"axios": "^1.6.1", "axios": "^1.6.1",
@ -1008,6 +1011,15 @@
"node": ">=0.10.0" "node": ">=0.10.0"
} }
}, },
"node_modules/sweetalert2": {
"version": "11.10.6",
"resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.10.6.tgz",
"integrity": "sha512-CINZPLZXZRSZqSOE7H7j1F7X8e8O1kLOiXPmtJn1DYxvXsKBr3d16d90+IcwTTs7dJww20h8r8QIxIwsLGX+6A==",
"funding": {
"type": "individual",
"url": "https://github.com/sponsors/limonte"
}
},
"node_modules/to-regex-range": { "node_modules/to-regex-range": {
"version": "5.0.1", "version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",

View File

@ -11,5 +11,8 @@
"laravel-vite-plugin": "^1.0.0", "laravel-vite-plugin": "^1.0.0",
"sass": "^1.56.1", "sass": "^1.56.1",
"vite": "^5.0.0" "vite": "^5.0.0"
},
"dependencies": {
"sweetalert2": "^11.10.6"
} }
} }

View File

@ -1,5 +1,22 @@
"use strict"; "use strict";
$('.confirm_delete').click(function(event) {
let form = $(this).closest("form");
event.preventDefault();
swal({
title: `Yakin akan mengapus data?`,
text: "Data akan dihapus permanen.",
icon: "warning",
buttons: true,
dangerMode: true,
})
.then((willDelete) => {
if (willDelete) {
form.submit();
}
});
});
$("#swal-1").click(function() { $("#swal-1").click(function() {
swal('Hello'); swal('Hello');
}); });

View File

@ -1,164 +0,0 @@
@extends('layouts.master')
@section('body')
<!-- Main Content -->
<div class="main-content">
<section class="section">
<div class="section-header">
<h1>Dashboard</h1>
</div>
<div class="row">
<div class="col-lg-3 col-md-6 col-sm-6 col-12">
<div class="card card-statistic-1">
<div class="card-icon bg-primary">
<i class="far fa-user"></i>
</div>
<div class="card-wrap">
<div class="card-header">
<h4>Total Admin</h4>
</div>
<div class="card-body">
10
</div>
</div>
</div>
</div>
<div class="col-lg-3 col-md-6 col-sm-6 col-12">
<div class="card card-statistic-1">
<div class="card-icon bg-danger">
<i class="far fa-newspaper"></i>
</div>
<div class="card-wrap">
<div class="card-header">
<h4>News</h4>
</div>
<div class="card-body">
42
</div>
</div>
</div>
</div>
<div class="col-lg-3 col-md-6 col-sm-6 col-12">
<div class="card card-statistic-1">
<div class="card-icon bg-warning">
<i class="far fa-file"></i>
</div>
<div class="card-wrap">
<div class="card-header">
<h4>Reports</h4>
</div>
<div class="card-body">
1,201
</div>
</div>
</div>
</div>
<div class="col-lg-3 col-md-6 col-sm-6 col-12">
<div class="card card-statistic-1">
<div class="card-icon bg-success">
<i class="fas fa-circle"></i>
</div>
<div class="card-wrap">
<div class="card-header">
<h4>Online Users</h4>
</div>
<div class="card-body">
47
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-8 col-md-12 col-12 col-sm-12">
<div class="card">
<div class="card-header">
<h4>Dashboard Admin</h4>
<div class="card-header-action">
<div class="btn-group">
<a href="#" class="btn btn-primary">Week</a>
<a href="#" class="btn">Month</a>
</div>
</div>
</div>
<div class="card-body">
<canvas id="myChart" height="182"></canvas>
<div class="statistic-details mt-sm-4">
<div class="statistic-details-item">
<span class="text-muted"><span class="text-primary"><i class="fas fa-caret-up"></i></span> 7%</span>
<div class="detail-value">$243</div>
<div class="detail-name">Today's Sales</div>
</div>
<div class="statistic-details-item">
<span class="text-muted"><span class="text-danger"><i class="fas fa-caret-down"></i></span> 23%</span>
<div class="detail-value">$2,902</div>
<div class="detail-name">This Week's Sales</div>
</div>
<div class="statistic-details-item">
<span class="text-muted"><span class="text-primary"><i class="fas fa-caret-up"></i></span>9%</span>
<div class="detail-value">$12,821</div>
<div class="detail-name">This Month's Sales</div>
</div>
<div class="statistic-details-item">
<span class="text-muted"><span class="text-primary"><i class="fas fa-caret-up"></i></span> 19%</span>
<div class="detail-value">$92,142</div>
<div class="detail-name">This Year's Sales</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-lg-4 col-md-12 col-12 col-sm-12">
<div class="card">
<div class="card-header">
<h4>Recent Activities</h4>
</div>
<div class="card-body">
<ul class="list-unstyled list-unstyled-border">
<li class="media">
<img class="mr-3 rounded-circle" width="50" src="assets/img/avatar/avatar-1.png" alt="avatar">
<div class="media-body">
<div class="float-right text-primary">Now</div>
<div class="media-title">Farhan A Mujib</div>
<span class="text-small text-muted">Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin.</span>
</div>
</li>
<li class="media">
<img class="mr-3 rounded-circle" width="50" src="assets/img/avatar/avatar-2.png" alt="avatar">
<div class="media-body">
<div class="float-right">12m</div>
<div class="media-title">Ujang Maman</div>
<span class="text-small text-muted">Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin.</span>
</div>
</li>
<li class="media">
<img class="mr-3 rounded-circle" width="50" src="assets/img/avatar/avatar-3.png" alt="avatar">
<div class="media-body">
<div class="float-right">17m</div>
<div class="media-title">Rizal Fakhri</div>
<span class="text-small text-muted">Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin.</span>
</div>
</li>
<li class="media">
<img class="mr-3 rounded-circle" width="50" src="assets/img/avatar/avatar-4.png" alt="avatar">
<div class="media-body">
<div class="float-right">21m</div>
<div class="media-title">Alfa Zulkarnain</div>
<span class="text-small text-muted">Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin.</span>
</div>
</li>
</ul>
<div class="text-center pt-1 pb-1">
<a href="#" class="btn btn-primary btn-lg btn-round">
View All
</a>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
@endsection

View File

@ -2,6 +2,12 @@
@section('body') @section('body')
@if(session('error'))
<div class="alert alert-danger">
{{ session('error') }}
</div>
@endif
<section class="section"> <section class="section">
<div class="container mt-5"> <div class="container mt-5">
<div class="row"> <div class="row">
@ -17,7 +23,7 @@
<label for="email">Email</label> <label for="email">Email</label>
<input id="email" type="email" class="form-control" name="email" tabindex="1" required autofocus> <input id="email" type="email" class="form-control" name="email" tabindex="1" required autofocus>
<div class="invalid-feedback"> <div class="invalid-feedback">
Please fill in your email Email tidak sesuai!
</div> </div>
</div> </div>
@ -32,7 +38,7 @@
</div> </div>
<input id="password" type="password" class="form-control" name="password" tabindex="2" required> <input id="password" type="password" class="form-control" name="password" tabindex="2" required>
<div class="invalid-feedback"> <div class="invalid-feedback">
please fill in your password tolong isi password!
</div> </div>
</div> </div>

View File

@ -29,14 +29,14 @@
<div class="row"> <div class="row">
<div class="form-group col-md-6 col-12"> <div class="form-group col-md-6 col-12">
<label>Nama</label> <label>Nama</label>
<input type="text" class="form-control" value="{{ Auth::user()->name }}" > <input type="text" id="name" name="name" class="form-control" value="{{ Auth::user()->name }}" >
<div class="invalid-feedback"> <div class="invalid-feedback">
Tolong isi nama kamu! Tolong isi nama kamu!
</div> </div>
</div> </div>
<div class="form-group col-md-6 col-12"> <div class="form-group col-md-6 col-12">
<label>Email</label> <label>Email</label>
<input type="text" class="form-control" value="{{ Auth::user()->email }}" > <input type="email" id="email" name="email" class="form-control" value="{{ Auth::user()->email }}" >
<div class="invalid-feedback"> <div class="invalid-feedback">
Tolong isi email kamu! Tolong isi email kamu!
</div> </div>

View File

@ -49,7 +49,7 @@
</div> </div>
<div class="d-flex justify-content-center"> <div class="d-flex justify-content-center">
<form action="{{ route('/admin/save-data') }}" method="post"> <form action="{{ route('/save-data') }}" method="post">
@csrf @csrf
<!-- Isi formulir --> <!-- Isi formulir -->
<button type="submit" class="btn badge btn-primary btn-lg" style="margin-right: 10px;"><i class="fas fa-save"></i> Perbandingan</button> <button type="submit" class="btn badge btn-primary btn-lg" style="margin-right: 10px;"><i class="fas fa-save"></i> Perbandingan</button>

View File

@ -1,164 +0,0 @@
@extends('layouts.master')
@section('body')
<div class="main-content">
<section class="section">
<div class="section-header">
<h1>Activities</h1>
<div class="section-header-breadcrumb">
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
<div class="breadcrumb-item">Riwayat </div>
</div>
</div>
<div class="section-body">
<h2 class="section-title">September 2018</h2>
<div class="row">
<div class="col-12">
<div class="activities">
<div class="activity">
<div class="activity-icon bg-primary text-white shadow-primary">
<i class="fas fa-comment-alt"></i>
</div>
<div class="activity-detail">
<div class="mb-2">
<span class="text-job text-primary">2 min ago</span>
<span class="bullet"></span>
<a class="text-job" href="#">View</a>
<div class="float-right dropdown">
<a href="#" data-toggle="dropdown"><i class="fas fa-ellipsis-h"></i></a>
<div class="dropdown-menu">
<div class="dropdown-title">Options</div>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-eye"></i> View</a>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-list"></i> Detail</a>
<div class="dropdown-divider"></div>
<a href="#" class="dropdown-item has-icon text-danger" data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?" data-confirm-text-yes="Yes, IDC"><i class="fas fa-trash-alt"></i> Archive</a>
</div>
</div>
</div>
<p>Have commented on the task of "<a href="#">Responsive design</a>".</p>
</div>
</div>
<div class="activity">
<div class="activity-icon bg-primary text-white shadow-primary">
<i class="fas fa-arrows-alt"></i>
</div>
<div class="activity-detail">
<div class="mb-2">
<span class="text-job">1 hour ago</span>
<span class="bullet"></span>
<a class="text-job" href="#">View</a>
<div class="float-right dropdown">
<a href="#" data-toggle="dropdown"><i class="fas fa-ellipsis-h"></i></a>
<div class="dropdown-menu">
<div class="dropdown-title">Options</div>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-eye"></i> View</a>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-list"></i> Detail</a>
<div class="dropdown-divider"></div>
<a href="#" class="dropdown-item has-icon text-danger" data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?" data-confirm-text-yes="Yes, IDC"><i class="fas fa-trash-alt"></i> Archive</a>
</div>
</div>
</div>
<p>Moved the task "<a href="#">Fix some features that are bugs in the master module</a>" from Progress to Finish.</p>
</div>
</div>
<div class="activity">
<div class="activity-icon bg-primary text-white shadow-primary">
<i class="fas fa-unlock"></i>
</div>
<div class="activity-detail">
<div class="mb-2">
<span class="text-job">4 hour ago</span>
<span class="bullet"></span>
<a class="text-job" href="#">View</a>
<div class="float-right dropdown">
<a href="#" data-toggle="dropdown"><i class="fas fa-ellipsis-h"></i></a>
<div class="dropdown-menu">
<div class="dropdown-title">Options</div>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-eye"></i> View</a>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-list"></i> Detail</a>
<div class="dropdown-divider"></div>
<a href="#" class="dropdown-item has-icon text-danger" data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?" data-confirm-text-yes="Yes, IDC"><i class="fas fa-trash-alt"></i> Archive</a>
</div>
</div>
</div>
<p>Login to the system with ujang@maman.com email and location in Bogor.</p>
</div>
</div>
<div class="activity">
<div class="activity-icon bg-primary text-white shadow-primary">
<i class="fas fa-sign-out-alt"></i>
</div>
<div class="activity-detail">
<div class="mb-2">
<span class="text-job">12 hour ago</span>
<span class="bullet"></span>
<a class="text-job" href="#">View</a>
<div class="float-right dropdown">
<a href="#" data-toggle="dropdown"><i class="fas fa-ellipsis-h"></i></a>
<div class="dropdown-menu">
<div class="dropdown-title">Options</div>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-eye"></i> View</a>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-list"></i> Detail</a>
<div class="dropdown-divider"></div>
<a href="#" class="dropdown-item has-icon text-danger" data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?" data-confirm-text-yes="Yes, IDC"><i class="fas fa-trash-alt"></i> Archive</a>
</div>
</div>
</div>
<p>Log out of the system after 6 hours using the system.</p>
</div>
</div>
<div class="activity">
<div class="activity-icon bg-primary text-white shadow-primary">
<i class="fas fa-trash"></i>
</div>
<div class="activity-detail">
<div class="mb-2">
<span class="text-job">Yesterday</span>
<span class="bullet"></span>
<a class="text-job" href="#">View</a>
<div class="float-right dropdown">
<a href="#" data-toggle="dropdown"><i class="fas fa-ellipsis-h"></i></a>
<div class="dropdown-menu">
<div class="dropdown-title">Options</div>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-eye"></i> View</a>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-list"></i> Detail</a>
<div class="dropdown-divider"></div>
<a href="#" class="dropdown-item has-icon text-danger" data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?" data-confirm-text-yes="Yes, IDC"><i class="fas fa-trash-alt"></i> Archive</a>
</div>
</div>
</div>
<p>Removing task "Delete all unwanted selectors in CSS files".</p>
</div>
</div>
<div class="activity">
<div class="activity-icon bg-primary text-white shadow-primary">
<i class="fas fa-trash"></i>
</div>
<div class="activity-detail">
<div class="mb-2">
<span class="text-job">Yesterday</span>
<span class="bullet"></span>
<a class="text-job" href="#">View</a>
<div class="float-right dropdown">
<a href="#" data-toggle="dropdown"><i class="fas fa-ellipsis-h"></i></a>
<div class="dropdown-menu">
<div class="dropdown-title">Options</div>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-eye"></i> View</a>
<a href="#" class="dropdown-item has-icon"><i class="fas fa-list"></i> Detail</a>
<div class="dropdown-divider"></div>
<a href="#" class="dropdown-item has-icon text-danger" data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?" data-confirm-text-yes="Yes, IDC"><i class="fas fa-trash-alt"></i> Archive</a>
</div>
</div>
</div>
<p>Assign the task of "<a href="#">Redesigning website header and make it responsive AF</a>" to <a href="#">Syahdan Ubaidilah</a>.</p>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
@endsection

View File

@ -15,12 +15,16 @@
</div> </div>
<div class="row"> <div class="row">
<div class="card"> <div class="card">
<form action="{{ route('admin/update-kalkulasi',$kalkulasi->id) }}" class="needs-validation" novalidate="" method="POST"> <form action="{{ route('/update-kalkulasi',$kalkulasi->id) }}" class="needs-validation" novalidate="" method="POST">
@csrf @csrf
<div class="card-body"> <div class="card-body">
<div class="form-group"> <div class="form-group">
<label>Nama</label> <label>Nama</label>
<input type="text" id="kalkulasis" name="kalkulasis" class="form-control" value="{{ $kalkulasi->kalkulasis }}"> <select class="form-control" id="kalkulasis" name="kalkulasis">
<option {{ $kalkulasi->kalkulasis == 'Padi' ? 'selected' : '' }}>Padi</option>
<option {{ $kalkulasi->kalkulasis == 'Jagung' ? 'selected' : '' }}>Jagung</option>
<option {{ $kalkulasi->kalkulasis == 'Kedelai' ? 'selected' : '' }}>Kedelai</option>
</select>
</div> </div>
<div class="form-group"> <div class="form-group">
<label>Ketinggian Tempat</label> <label>Ketinggian Tempat</label>

View File

@ -64,7 +64,7 @@
</div> </div>
<div class="card-body"> <div class="card-body">
<div class="table-responsive"> <div class="table-responsive">
<table class="table table-striped" id="table-1"> <table class="table table-striped" id="table-2">
<thead> <thead>
<tr> <tr>
<th class="text-center">#</th> <th class="text-center">#</th>
@ -106,7 +106,7 @@
</div> </div>
<div class="card-body"> <div class="card-body">
<div class="table-responsive"> <div class="table-responsive">
<table class="table table-striped" id="table-1"> <table class="table table-striped" id="table-6">
<thead> <thead>
</thead> </thead>
<tbody> <tbody>
@ -152,13 +152,14 @@
</div> </div>
<div class="card-body"> <div class="card-body">
<div class="table-responsive"> <div class="table-responsive">
<table class="table table-striped" id="table-1"> <table class="table table-striped" id="table-4">
<thead> <thead>
<tr> <tr>
<th class="text-center">#</th> <th class="text-center">#</th>
<th>Kecamatan</th> <th>Kecamatan</th>
<th>D+</th> <th>D+</th>
<th>D-</th> <th>D-</th>
<th></th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
@ -168,6 +169,7 @@
<td>{{ $data->kalkulasis }}</td> <td>{{ $data->kalkulasis }}</td>
<td>{{ isset($d_plus_values[$data->id]) ? $d_plus_values[$data->id] : 'N/A' }}</td> <td>{{ isset($d_plus_values[$data->id]) ? $d_plus_values[$data->id] : 'N/A' }}</td>
<td>{{ isset($d_min_values[$data->id]) ? $d_min_values[$data->id] : 'N/A' }}</td> <td>{{ isset($d_min_values[$data->id]) ? $d_min_values[$data->id] : 'N/A' }}</td>
<td></td>
</tr> </tr>
@endforeach @endforeach
</tbody> </tbody>
@ -192,6 +194,7 @@
<th class="text-center">#</th> <th class="text-center">#</th>
<th>Kecamatan</th> <th>Kecamatan</th>
<th>Preverensi</th> <th>Preverensi</th>
<th></th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
@ -203,6 +206,7 @@
<td class="text-center">{{ $loop->iteration }}</td> <td class="text-center">{{ $loop->iteration }}</td>
<td>{{ $data->kalkulasis }}</td> <td>{{ $data->kalkulasis }}</td>
<td>{{ $preference }}</td> <td>{{ $preference }}</td>
<td></td>
</tr> </tr>
@endforeach @endforeach
</tbody> </tbody>
@ -221,7 +225,7 @@
</div> </div>
<div class="card-body"> <div class="card-body">
<div class="table-responsive"> <div class="table-responsive">
<table class="table table-striped" id="table-2"> <table class="table table-striped" id="table-3">
<thead> <thead>
<tr> <tr>
<th class="text-center">#</th> <th class="text-center">#</th>

View File

@ -53,10 +53,13 @@
<td>{{ $data->temperature }}</td> <td>{{ $data->temperature }}</td>
<td>{{ $data->humidity }}</td> <td>{{ $data->humidity }}</td>
<td> <td>
<div class="icon-container"> <div class="d-flex align-items-center">
<a class="btn btn-primary btn-action mr-1" href="/edit-kalkulasi,{{ $data->id }}" data-toggle="tooltip" title="Edit"><i class="fas fa-pencil-alt"></i></a> <a class="btn btn-primary btn-action mr-1" href="/edit-kalkulasi,{{ $data->id }}" data-toggle="tooltip" title="Edit"><i class="fas fa-pencil-alt"></i></a>
<form action=/delete-kalkulasi,{{ $data->id }}" method="POST" class="ml-2">
<a href="/admin/delete-kalkulasi,{{ $data->id }}" class="confirm-button btn btn-icon btn-danger" ><i class="fas fa-trash"></i></a> @method('DELETE')
@csrf
<button class="btn btn-danger btn-action confirm_delete"><i class="fas fa-trash"></i></button>
</form>
</div> </div>
</td> </td>
</tr> </tr>
@ -79,7 +82,7 @@
<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="Close"></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<form action="/admin/save-kalkulasi" class="needs-validation" novalidate="" method="POST"> <form action="/save-kalkulasi" class="needs-validation" novalidate="" method="POST">
@csrf @csrf
<div class="card-body"> <div class="card-body">
<div class="form-group row"> <div class="form-group row">
@ -174,7 +177,7 @@
</div> </div>
<div class="modal-body"> <div class="modal-body">
<form action="{{ route('admin/update-subdistrict',) }}" class="needs-validation" novalidate="" method="POST"> <form action="{{ route(/update-subdistrict',) }}" class="needs-validation" novalidate="" method="POST">
@csrf @csrf
<div class="card-body"> <div class="card-body">
<div class="form-group row"> <div class="form-group row">

View File

@ -15,12 +15,19 @@
</div> </div>
<div class="row"> <div class="row">
<div class="card"> <div class="card">
<form action="{{ route('admin/update-kriteria',$kriteria->id) }}" class="needs-validation" novalidate="" method="POST"> <form action="{{ route('/update-kriteria',$kriteria->id) }}" class="needs-validation" novalidate="" method="POST">
@csrf @csrf
<div class="card-body"> <div class="card-body">
<div class="form-group"> <div class="form-group">
<label>Nama</label> <label>Nama</label>
<input type="text" id="name" name="name" class="form-control" value="{{ $kriteria->name }}"> <select class="form-control" id="name" name="name">
<option {{ $kriteria->name == 'Ketinggian Tempat' ? 'selected' : '' }}>Ketinggian Tempat</option>
<option {{ $kriteria->name == 'Curah Hujan' ? 'selected' : '' }}>Curah Hujan</option>
<option {{ $kriteria->name == 'Penyinaran Matahari' ? 'selected' : '' }}>Penyinaran Matahari</option>
<option {{ $kriteria->name == 'pH Tanah' ? 'selected' : '' }}>Curah Hujan</option>
<option {{ $kriteria->name == 'Temperature' ? 'selected' : '' }}>Temperature</option>
<option {{ $kriteria->name == 'Kelembapan' ? 'selected' : '' }}>Kelembapan</option>
</select>
</div> </div>
<div class="form-group"> <div class="form-group">
<label>Bobot</label> <label>Bobot</label>

View File

@ -19,8 +19,7 @@
<div class="card-header"> <div class="card-header">
<!-- Button trigger modal --> <!-- Button trigger modal -->
<button type="button" class="btn btn-primary" data-bs-toggle="modal" <button type="button" class="btn btn-primary" data-bs-toggle="modal"
data-bs-target="#add-kriteria">Tambah Data</button>&nbsp;&nbsp;&nbsp; data-bs-target="#add-kriteria">Tambah Data</button>
<a href="/admin/export-kriteria"><button type="button" class="btn btn-primary" style="margin-right: 10px;"><i class="fas fa-file-export"></i> Export Data Kriteria</button></a>
</div> </div>
<div class="card-body"> <div class="card-body">
<div class="table-responsive"> <div class="table-responsive">
@ -44,46 +43,53 @@
<td>{{ $data->bobot }}</td> <td>{{ $data->bobot }}</td>
<td>{{ $data->description }}</td> <td>{{ $data->description }}</td>
<td> <td>
<div class="icon-container"> <div class="d-flex align-items-center">
<a class="btn btn-primary btn-action mr-1" href="/edit-kriteria,{{ $data->id }}" data-toggle="tooltip" title="Edit"><i class="fas fa-pencil-alt"></i></a> <a class="btn btn-primary btn-action mr-1" href="/edit-kriteria,{{ $data->id }}" data-toggle="tooltip" title="Edit"><i class="fas fa-pencil-alt"></i></a>
{{-- <a href="#edit-kriteria{{ $data->id }}" data-toggle="modal" class="btn btn-primary btn-action mr-1" data-toggle="tooltip" title="Edit"><i class="fas fa-pencil-alt"></i></a> --}} {{-- <a href="#edit-kriteria{{ $data->id }}" data-toggle="modal" class="btn btn-primary btn-action mr-1" data-toggle="tooltip" title="Edit"><i class="fas fa-pencil-alt"></i></a> --}}
<a href="/admin/delete-kriteria,{{ $data->id }}" class="btn btn-danger btn-action" data-toggle="tooltip" data-confirm-delete="true" title="Delete"><i class="fas fa-trash"></i></a> <form action="delete-kriteria,{{ $data->id }}" method="POST" class="ml-2">
@method('DELETE')
@csrf
<button class="btn btn-danger btn-action confirm_delete"><i class="fas fa-trash"></i></button>
</form>
</div> </div>
</td> </td>
</tr> </tr>
<!-- Modal Edit--> <!-- Modal Edit-->
{{-- @if($kriteria->isEmpty()) @if($kriteria->isEmpty())
<p>Error!</p> <p>Error!</p>
@else @else
<div class="modal fade center-modal" id="edit-kriteria{{ $data->id }}" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> <div class="modal fade center-modal" id="edit-kriteria{{ $data->id }}" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog"> <div class="modal-dialog">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Edit kriteria</h5> <h5 class="modal-title" id="exampleModalLabel">Edit kriteria</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="Close"></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<form action="{{ route('admin/update-kriteria',$data->id) }}" class="needs-validation" novalidate="" method="POST"> <form action="{{ route('/update-kriteria',$data->id) }}" class="needs-validation" novalidate="" method="POST">
@csrf @csrf
@method('PUT')
<div class="card-body"> <div class="card-body">
<div class="form-group row"> <div class="form-group row">
<label class="col-sm-2 col-form-label">Nama</label> <label class="col-sm-3 col-form-label">Nama</label>
<div class="col-sm-10"> <div class="col-sm-9">
<input type="text" class="form-control" id="name" name="name" required="" value="{{ $data->name }}"> <select class="form-control" id="name" name="name">
<option {{ $data->name == 'Ketinggian Tempat' ? 'selected' : '' }}>Ketinggian Tempat</option>
<option {{ $data->name == 'Curah Hujan' ? 'selected' : '' }}>Curah Hujan</option>
<option {{ $data->name == 'Penyinaran Matahari' ? 'selected' : '' }}>Penyinaran Matahari</option>
<option {{ $data->name == 'pH Tanah' ? 'selected' : '' }}>Curah Hujan</option>
<option {{ $data->name == 'Temperature' ? 'selected' : '' }}>Temperature</option>
<option {{ $data->name == 'Kelembapan' ? 'selected' : '' }}>Kelembapan</option>
</select>
<div class="invalid-feedback"> <div class="invalid-feedback">
Tolong isi Nama Kriteria! Tolong isi Nama Kriteria!
</div> </div>
</div> </div>
</div> </div>
<div class="form-group row"> <div class="form-group row">
<label class="col-sm-2 col-form-label">Bobot</label> <label class="col-sm-3 col-form-label">Bobot</label>
<div class="col-sm-10"> <div class="col-sm-9">
<input type="text" class="form-control" id="bobot" name="bobot" required="" value="{{ $data->bobot }}"> <input type="text" class="form-control" id="bobot" name="bobot" required="" value="{{ $data->bobot }}">
<div class="invalid-feedback"> <div class="invalid-feedback">
Tolong isi Bobot Kriteria! Tolong isi Bobot Kriteria!
@ -91,8 +97,8 @@
</div> </div>
</div> </div>
<div class="form-group row"> <div class="form-group row">
<label class="col-sm-2 col-form-label">Keterangan</label> <label class="col-sm-3 col-form-label">Keterangan</label>
<div class="col-sm-10"> <div class="col-sm-9">
<select class="form-control" id="description" name="description"> <select class="form-control" id="description" name="description">
<option {{ $data->description == 'Benefit' ? 'selected' : '' }}>Benefit</option> <option {{ $data->description == 'Benefit' ? 'selected' : '' }}>Benefit</option>
<option {{ $data->description == 'Cost' ? 'selected' : '' }}>Cost</option> <option {{ $data->description == 'Cost' ? 'selected' : '' }}>Cost</option>
@ -112,8 +118,7 @@
</div> </div>
</div> </div>
@endif --}} @endif
@endforeach @endforeach
</tbody> </tbody>
</table> </table>
@ -124,10 +129,11 @@
</div> </div>
</div> </div>
</div> </div>
</section>
</div>
<!-- Modal Add-->
<!-- Modal Add--> <div class="modal fade center-modal" id="add-kriteria" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal fade center-modal" id="add-kriteria" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog"> <div class="modal-dialog">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
@ -135,13 +141,21 @@
<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="Close"></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<form action="/admin/save-kriteria" class="needs-validation" novalidate="" method="POST"> <form action="/save-kriteria" class="needs-validation" novalidate="" method="POST">
@csrf @csrf
<div class="card-body"> <div class="card-body">
<div class="form-group row"> <div class="form-group row">
<label class="col-sm-2 col-form-label">Nama</label> <label class="col-sm-2 col-form-label">Nama</label>
<div class="col-sm-10"> <div class="col-sm-10">
<input type="text" class="form-control" id="name" name="name" required> <select class="form-control" id="name" name="name" required>
<option>-- Pilih Kriteria --</option>
<option>Ketinggian Tempat</option>
<option>Curah Hujan</option>
<option>Penyinaran Matahari</option>
<option>pH Tanah</option>
<option>Temperature</option>
<option>Kelembapan</option>
</select>
<div class="invalid-feedback"> <div class="invalid-feedback">
Tolong isi Nama Kriteria! Tolong isi Nama Kriteria!
</div> </div>
@ -159,7 +173,7 @@
<div class="form-group row"> <div class="form-group row">
<label class="col-sm-2 col-form-label">Keterangan</label> <label class="col-sm-2 col-form-label">Keterangan</label>
<div class="col-sm-10"> <div class="col-sm-10">
<select class="form-control" id="description" name="description"> <select class="form-control" id="description" name="description" required>
<option>-- Pilih Keterangan --</option> <option>-- Pilih Keterangan --</option>
<option>Benefit</option> <option>Benefit</option>
<option>Cost</option> <option>Cost</option>
@ -179,11 +193,10 @@
</div> </div>
</div> </div>
</section>
</div>
@endsection @endsection

View File

@ -1,80 +0,0 @@
<!doctype html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- CSRF Token -->
<meta name="csrf-token" content="{{ csrf_token() }}">
<title>{{ config('app.name', 'Laravel') }}</title>
<!-- Fonts -->
<link rel="dns-prefetch" href="//fonts.bunny.net">
<link href="https://fonts.bunny.net/css?family=Nunito" rel="stylesheet">
<!-- Scripts -->
@vite(['resources/sass/app.scss', 'resources/js/app.js'])
</head>
<body>
<div id="app">
<nav class="navbar navbar-expand-md navbar-light bg-white shadow-sm">
<div class="container">
<a class="navbar-brand" href="{{ url('/') }}">
{{ config('app.name', 'Laravel') }}
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="{{ __('Toggle navigation') }}">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<!-- Left Side Of Navbar -->
<ul class="navbar-nav me-auto">
</ul>
<!-- Right Side Of Navbar -->
<ul class="navbar-nav ms-auto">
<!-- Authentication Links -->
@guest
@if (Route::has('login'))
<li class="nav-item">
<a class="nav-link" href="{{ route('login') }}">{{ __('Login') }}</a>
</li>
@endif
@if (Route::has('register'))
<li class="nav-item">
<a class="nav-link" href="{{ route('register') }}">{{ __('Register') }}</a>
</li>
@endif
@else
<li class="nav-item dropdown">
<a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre>
{{ Auth::user()->name }}
</a>
<div class="dropdown-menu dropdown-menu-end" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="{{ route('logout') }}"
onclick="event.preventDefault();
document.getElementById('logout-form').submit();">
{{ __('Logout') }}
</a>
<form id="logout-form" action="{{ route('logout') }}" method="POST" class="d-none">
@csrf
</form>
</div>
</li>
@endguest
</ul>
</div>
</div>
</nav>
<main class="py-4">
@yield('content')
</main>
</div>
</body>
</html>

View File

@ -18,7 +18,7 @@
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/DataTables-1.10.16/css/dataTables.bootstrap4.min.css') }}"> <link rel="stylesheet" href="{{ asset('assets/modules/datatables/DataTables-1.10.16/css/dataTables.bootstrap4.min.css') }}">
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/Select-1.2.4/css/select.bootstrap4.min.css') }}"> <link rel="stylesheet" href="{{ asset('assets/modules/datatables/Select-1.2.4/css/select.bootstrap4.min.css') }}">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous"> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
<link rel="stylesheet" href="{{ asset('assets/modules/prism/prism.css') }}">
<!-- Template CSS --> <!-- Template CSS -->
<link rel="stylesheet" href="{{ asset('assets/css/style.css') }}"> <link rel="stylesheet" href="{{ asset('assets/css/style.css') }}">
@ -75,11 +75,15 @@ function gtag(){dataLayer.push(arguments);}
<script src="{{ asset('assets/modules/datatables/DataTables-1.10.16/js/dataTables.bootstrap4.min.js') }}"></script> <script src="{{ asset('assets/modules/datatables/DataTables-1.10.16/js/dataTables.bootstrap4.min.js') }}"></script>
<script src="{{ asset('assets/modules/datatables/Select-1.2.4/js/dataTables.select.min.js') }}"></script> <script src="{{ asset('assets/modules/datatables/Select-1.2.4/js/dataTables.select.min.js') }}"></script>
<script src="{{ asset('assets/modules/jquery-ui/jquery-ui.min.js') }}"></script> <script src="{{ asset('assets/modules/jquery-ui/jquery-ui.min.js') }}"></script>
<script src="{{ asset('assets/modules/prism/prism.js') }}"></script>
<script src="{{ asset('assets/modules/sweetalert/sweetalert.min.js') }}"></script>
<!-- Page Specific JS File --> <!-- Page Specific JS File -->
<script src="{{ asset('assets/js/page/index-0.js') }}"></script> <script src="{{ asset('assets/js/page/index-0.js') }}"></script>
<script src="{{ asset('assets/js/page/modules-datatables.js') }}"></script> <script src="{{ asset('assets/js/page/modules-datatables.js') }}"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
<script src="{{ asset('assets/js/page/bootstrap-modal.js') }}"></script>
<script src="{{ asset('assets/js/page/modules-sweetalert.js') }}"></script>
<!-- Template JS File --> <!-- Template JS File -->
<script src="{{ asset('assets/js/scripts.js') }}"></script> <script src="{{ asset('assets/js/scripts.js') }}"></script>

View File

@ -11,20 +11,20 @@
<li class=active><a class="nav-link" href="/home"><i class="fas fa-fire"></i>Dashboard</a></li> <li class=active><a class="nav-link" href="/home"><i class="fas fa-fire"></i>Dashboard</a></li>
@if (auth()->user()->level=="admin") @if (auth()->user()->level=="admin")
<li class="menu-header">DATA</li> <li class="menu-header">DATA</li>
<li><a class="nav-link" href="/admin/kriteria"><i class="fas fa-th"></i> <span>Data Kriteria</span></a></li> <li><a class="nav-link" href="/kriteria"><i class="fas fa-th"></i> <span>Data Kriteria</span></a></li>
<li class="dropdown"> <li class="dropdown">
<a href="/admin/kalkulasi" class="nav-link has-dropdown"><i class="fas fa-ellipsis-h"></i><span>Data Kalkulasi</span></a> <a href="/kalkulasi" class="nav-link has-dropdown"><i class="fas fa-ellipsis-h"></i><span>Data Kalkulasi</span></a>
<ul class="dropdown-menu"> <ul class="dropdown-menu">
<li class=active><a class="nav-link" href="/admin/kalkulasi">Data Kalkulasi</a></li> <li class=active><a class="nav-link" href="/kalkulasi">Data Kalkulasi</a></li>
<li><a class="nav-link" href="/hitung-kal">Perhitungan</a></li> <li><a class="nav-link" href="/hitung-kal">Perhitungan</a></li>
</ul> </ul>
</li> </li>
<li><a class="nav-link" href="/admin/subdistrict"><i class="fas fa-pencil-ruler"></i> <span>Data Alternatif</span></a></li> <li><a class="nav-link" href="/alternatif"><i class="fas fa-pencil-ruler"></i> <span>Data Alternatif</span></a></li>
<li><a class="nav-link" href="/perhitungan"><i class="fas fa-calculator"></i> <span>Perhitungan</span></a></li> <li><a class="nav-link" href="/perhitungan"><i class="fas fa-calculator"></i> <span>Perhitungan</span></a></li>
<li><a class="nav-link" href="/hasil"><i class="fas fa-file-alt"></i> <span>Hasil</span></a></li> <li><a class="nav-link" href="/hasil"><i class="fas fa-file-alt"></i> <span>Hasil</span></a></li>
<li><a class="nav-link" href="/comparison"><i class="fas fa-plug"></i> <span>Perbandingan</span></a></li> <li><a class="nav-link" href="/comparison"><i class="fas fa-plug"></i> <span>Perbandingan</span></a></li>
<li class="menu-header">USER</li> <li class="menu-header">USER</li>
<li><a class="nav-link" href="/admin/users"><i class="far fa-user"></i> <span>Data User</span></a></li> <li><a class="nav-link" href="/users"><i class="far fa-user"></i> <span>Data User</span></a></li>
@endif @endif
<li class="menu-header">DATA</li> <li class="menu-header">DATA</li>
<li><a class="nav-link" href="/comparison"><i class="fas fa-plug"></i> <span>Hasil Penilaian</span></a></li> <li><a class="nav-link" href="/comparison"><i class="fas fa-plug"></i> <span>Hasil Penilaian</span></a></li>

View File

@ -105,7 +105,7 @@
</div> </div>
<div class="card-body"> <div class="card-body">
<div class="table-responsive"> <div class="table-responsive">
<table class="table table-striped" id="table-2"> <table class="table table-striped" id="table-6">
<thead> <thead>
</thead> </thead>
<tbody> <tbody>
@ -191,6 +191,7 @@
<th class="text-center">#</th> <th class="text-center">#</th>
<th>Kecamatan</th> <th>Kecamatan</th>
<th>Preverensi</th> <th>Preverensi</th>
<th></th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
@ -202,6 +203,7 @@
<td class="text-center">{{ $loop->iteration }}</td> <td class="text-center">{{ $loop->iteration }}</td>
<td>{{ $data->subdistrict }}</td> <td>{{ $data->subdistrict }}</td>
<td>{{ $preference }}</td> <td>{{ $preference }}</td>
<td></td>
</tr> </tr>
@endforeach @endforeach
</tbody> </tbody>

View File

@ -1,61 +0,0 @@
@extends('layouts.master')
@section('body')
<!-- Main Content -->
<div class="main-content">
<section class="section">
<div class="section-header">
<h1>Data Hasil Perhitungan</h1>
<div class="section-header-breadcrumb">
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
<div class="breadcrumb-item"><a href="#">Modules</a></div>
<div class="breadcrumb-item">DataTables</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-header">
<h2>Tabel Hasil Preferensi dan Rangking</h2>
</div>
<div class="card-body">
<div class="table-responsive">
<table class="table table-striped" id="table-1">
<thead>
<tr>
<th class="text-center">#</th>
<th>Kecamatan</th>
<th>Kecocokan Tanaman Pangan</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach ($comparison as $data)
<tr>
<td class="text-center">{{ $loop->iteration }}</td>
<td>{{ $data->subdistrict->subdistrict }}</td>
<td>{{ $data->result }}</td>
<td></td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
{{--
<div class="d-flex justify-content-center">
<a href="#">
<button type="button" class="btn badge btn-primary btn-lg" style="margin-right: 10px;"><i class="fas fa-save"></i> Cetak Hasil</button>
</a>
</div> --}}
</div>
</section>
@endsection

View File

@ -15,7 +15,7 @@
</div> </div>
<div class="row"> <div class="row">
<div class="card"> <div class="card">
<form action="{{ route('admin/update-subdistrict',$subdistrict->id) }}" class="needs-validation" novalidate="" method="POST"> <form action="{{ route('/update-subdistrict',$subdistrict->id) }}" class="needs-validation" novalidate="" method="POST">
@csrf @csrf
<div class="card-body"> <div class="card-body">
<div class="form-group"> <div class="form-group">

View File

@ -19,7 +19,7 @@
<div class="card-header d-flex justify-content-between align-items-center"> <div class="card-header d-flex justify-content-between align-items-center">
<div> <div>
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#add-subdistrict">Tambah Data</button>&nbsp;&nbsp;&nbsp; <button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#add-subdistrict">Tambah Data</button>&nbsp;&nbsp;&nbsp;
<a href="/admin/export-subdistrict"> <a href="/export-subdistrict">
<button type="button" class="btn btn-primary" style="margin-right: 10px;"><i class="fas fa-file-export"></i> Export Data Alternatif</button> <button type="button" class="btn btn-primary" style="margin-right: 10px;"><i class="fas fa-file-export"></i> Export Data Alternatif</button>
</a> </a>
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#import-subdistrict"><i class="fas fa-file-import"></i> Import Data Alternatif</button> <button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#import-subdistrict"><i class="fas fa-file-import"></i> Import Data Alternatif</button>
@ -63,247 +63,21 @@
<td>{{ $data->ph_soil }}</td> <td>{{ $data->ph_soil }}</td>
<td>{{ $data->temperature }}</td> <td>{{ $data->temperature }}</td>
<td>{{ $data->humidity }}</td> <td>{{ $data->humidity }}</td>
{{-- <td> @if($data->altitude == null)
<!-- Tombol Tambah -->
<a href="#edit-alternatif{{ $data->id }}" data-bs-toggle="modal" data-bs-target="#edit-alternatif" class="btn badge btn-icon btn-info">Tambah</a>
@else
<!-- Tombol Eye -->
<a data-toggle="modal" href="#alternatif{{ $data->id }}" class="btn badge btn-info btn-sm"><i
class="fa fa-eye"></i></a>
@endif</td> --}}
<td> <td>
<div class="icon-container"> <div class="d-flex align-items-center">
{{-- <a data-bs-toggle="modal" href="#edit" class="btn badge btn-info btn-sm"><i class="fa fa-eye"></i></a> --}}
<a class="btn btn-primary btn-action mr-1" href="/edit-subdistrict,{{ $data->id }}" data-toggle="tooltip" title="Edit"><i class="fas fa-pencil-alt"></i></a> <a class="btn btn-primary btn-action mr-1" href="/edit-subdistrict,{{ $data->id }}" data-toggle="tooltip" title="Edit"><i class="fas fa-pencil-alt"></i></a>
<a href="/admin/delete-subdistrict,{{ $data->id }}" class="btn btn-danger btn-action" data-toggle="tooltip" title="Delete"><i class="fas fa-trash"></i></a> {{-- <a href="#edit{{ $data->id }}" data-toggle="modal" class="btn btn-primary btn-action mr-1" data-toggle="tooltip" title="Edit"><i class="fas fa-pencil-alt"></i></a> --}}
<form action="edit-subdistrict,{{ $data->id }}" method="POST" class="ml-2">
@method('DELETE')
@csrf
<button class="btn btn-danger btn-action confirm_delete"><i class="fas fa-trash"></i></button>
</form>
</div> </div>
</td> </td>
</tr> </tr>
<!-- Modal Lihat Data Alternatif--> <!-- Modal Edit -->
<div class="modal fade center-modal" id="alternatif{{ $data->id }}" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> <div class="modal fade" id="edit{{ $data->id }}" tabindex="-1" role="dialog"
<div class="modal-dialog modal-dialog-centered modal-dialog-scrollable">
<div class="modal-content">
@if($subdistricts->isEmpty())
<p>Error!</p>
@else
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Data Alternatif Kecamatan {{ $data->subdistrict }}</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<form action="{{ route('admin/update-subdistrict',$data->id) }}" class="needs-validation" novalidate="" method="POST">
@csrf
<div class="card-body">
<div class="form-group row">
<label class="col-sm-4 col-form-label">Nama </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="altitude" name="altitude" value="{{ $data->subdistrict}}" readonly>
<div class="invalid-feedback">
Tolong isi Nama Ketinggian Tempat!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Ketinggian Tempat </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="altitude" name="altitude" value="{{ $data->altitude }}" readonly>
<div class="invalid-feedback">
Tolong isi Nama Ketinggian Tempat!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Curah Hujan </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="rainfall" name="rainfall" value="{{ $data->rainfall }}" readonly>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Penyinaran Matahari </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="solar_radiation" name="solar_radiation" value="{{ $data->solar_radiation }}" readonly>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">pH Tanah </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="ph_soil" name="ph_soil" required="" value="{{ $data->ph_soil }}" readonly>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Temperature </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="temperature" name="temperature" value="{{ $data->temperature }}" readonly>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Kelembapan </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="humidity" name="humidity" value="{{ $data->humidity }}" readonly>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
</div>
</form>
</div>
@endif
</div>
</div>
</div>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
<!-- Modal Add-->
<div class="modal fade center-modal" id="add-subdistrict" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-dialog-scrollable">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Tambah Data Alternatif</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<form action="/admin/save-subdistrict" class="needs-validation" novalidate="" method="POST">
@csrf
<div class="card-body">
<div class="form-group row">
<label class="col-sm-4 col-form-label">Kecamatan </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="subdistrict" name="subdistrict" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Ketinggian Tempat </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="altitude" name="altitude" required>
<div class="invalid-feedback">
Tolong isi Nama Ketinggian Tempat!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Curah Hujan </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="rainfall" name="rainfall" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Penyinaran Matahari </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="solar_radiation" name="solar_radiation" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">pH Tanah </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="ph_soil" name="ph_soil" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Temperature </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="temperature" name="temperature" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Kelembapan </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="humidity" name="humidity" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
</div>
<div class="modal-footer">
<button type="submit" class="btn btn-primary">Simpan</button>
</div>
</form>
</div>
</div>
</div>
</div>
<!-- Modal Import-->
<div class="modal fade center-modal" id="import-subdistrict" tabindex="-1" aria-labelledby="exampleModalLabel"
aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Import Data Alternatif</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<form action="/admin/import-subdistrict" class="needs-validation" novalidate=""
method="POST" enctype="multipart/form-data">
@csrf
<div class="card-body">
<div class="form-group row">
<div class="col-sm-12">
<input type="file" class="form-control" id="file" name="file"
required="">
<div class="invalid-feedback">
Tolong upload sebuah file!
</div>
<label class="col-sm-12 col-form-label">- Unduh template dibawah terlebih dahulu </label>
<label class="col-sm-12 col-form-label">- Format file yang di Upload dalam bentuk
(.xlxs) </label>
</div>
</div>
</div>
<div class="modal-footer">
<a href="/admin/downloadtemplate-subdistrict" class="btn btn-info mb-2">Unduh Template</a>
<button type="submit" class="btn btn-primary">Simpan</button>
</div>
</form>
</div>
</div>
</div>
<!-- Modal Edit -->
<div class="modal fade" id="edit" tabindex="-1" role="dialog"
aria-labelledby="myModalLabel" aria-hidden="true"> aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-dialog-scrollable"> <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable">
@if($subdistricts->isEmpty()) @if($subdistricts->isEmpty())
@ -394,42 +168,146 @@ class="fa fa-times"></i> Batal</button>
</div> </div>
@endif @endif
</div> </div>
</div>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</section>
</div> </div>
<!-- Modal Add-->
<div class="modal fade center-modal" id="add-subdistrict" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-dialog-scrollable">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Tambah Data Alternatif</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<form action="/save-subdistrict" class="needs-validation" novalidate="" method="POST">
@csrf
<div class="card-body">
<div class="form-group row">
<label class="col-sm-4 col-form-label">Kecamatan </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="subdistrict" name="subdistrict" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Ketinggian Tempat </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="altitude" name="altitude" required>
<div class="invalid-feedback">
Tolong isi Nama Ketinggian Tempat!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Curah Hujan </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="rainfall" name="rainfall" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Penyinaran Matahari </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="solar_radiation" name="solar_radiation" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">pH Tanah </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="ph_soil" name="ph_soil" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Temperature </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="temperature" name="temperature" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
<div class="form-group row">
<label class="col-sm-4 col-form-label">Kelembapan </label>
<div class="col-sm-8">
<input type="text" class="form-control" id="humidity" name="humidity" required>
<div class="invalid-feedback">
Tolong isi Nama Kecamatan!
</div>
</div>
</div>
</div>
<div class="modal-footer">
<button type="submit" class="btn btn-primary">Simpan</button>
</div>
</form>
</div>
</div>
</div>
</div>
<!-- Modal Import-->
<div class="modal fade center-modal" id="import-subdistrict" tabindex="-1" aria-labelledby="exampleModalLabel"
aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Import Data Alternatif</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<form action="/import-subdistrict" class="needs-validation" novalidate=""
method="POST" enctype="multipart/form-data">
@csrf
<div class="card-body">
<div class="form-group row">
<div class="col-sm-12">
<input type="file" class="form-control" id="file" name="file"
required="">
<div class="invalid-feedback">
Tolong upload sebuah file!
</div>
<label class="col-sm-12 col-form-label">- Unduh template dibawah terlebih dahulu </label>
<label class="col-sm-12 col-form-label">- Format file yang di Upload dalam bentuk
(.xlxs) </label>
</div>
</div>
</div>
<div class="modal-footer">
<a href="/downloadtemplate-subdistrict" class="btn btn-info mb-2">Unduh Template</a>
<button type="submit" class="btn btn-primary">Simpan</button>
</div>
</form>
</div>
</div>
</div>
</div>
@endsection @endsection
<script>
document.getElementById('deleteDataButton').addEventListener('click', function() {
if (confirm('Apakah Anda yakin ingin menghapus semua data?')) {
// Kirim permintaan AJAX ke URL yang memanggil fungsi deleteAllData()
fetch('/delete-all-data', {
method: 'POST',
headers: {
'X-CSRF-TOKEN': '{{ csrf_token() }}',
'Content-Type': 'application/json'
},
body: JSON.stringify({})
})
.then(response => {
if (response.ok) {
return response.json();
}
throw new Error('Terjadi kesalahan saat menghapus data.');
})
.then(data => {
alert(data.success);
location.reload(); // Refresh halaman setelah berhasil
})
.catch(error => {
console.error('Error:', error.message);
alert('Terjadi kesalahan saat menghapus data.');
});
}
});
</script>

View File

@ -9,7 +9,7 @@
<h1>Dashboard</h1> <h1>Dashboard</h1>
</div> </div>
<div class="row"> <div class="row">
<div class="col-lg-4 col-md-6 col-sm-6 col-12"> <div class="col-lg-3 col-md-6 col-sm-6 col-12">
<div class="card card-statistic-1"> <div class="card card-statistic-1">
<div class="card-icon bg-primary"> <div class="card-icon bg-primary">
<i class="far fa-map"></i> <i class="far fa-map"></i>
@ -24,7 +24,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="col-lg-4 col-md-6 col-sm-6 col-12"> <div class="col-lg-3 col-md-6 col-sm-6 col-12">
<div class="card card-statistic-1"> <div class="card card-statistic-1">
<div class="card-icon bg-danger"> <div class="card-icon bg-danger">
<i class="far fa-circle"></i> <i class="far fa-circle"></i>
@ -39,7 +39,22 @@
</div> </div>
</div> </div>
</div> </div>
<div class="col-lg-4 col-md-6 col-sm-6 col-12"> <div class="col-lg-3 col-md-6 col-sm-6 col-12">
<div class="card card-statistic-1">
<div class="card-icon bg-warning">
<i class="far fa-file"></i>
</div>
<div class="card-wrap">
<div class="card-header">
<h4>Kriteria</h4>
</div>
<div class="card-body">
{{ \App\Models\Kriteria::count() }}
</div>
</div>
</div>
</div>
<div class="col-lg-3 col-md-6 col-sm-6 col-12">
<div class="card card-statistic-1"> <div class="card card-statistic-1">
<div class="card-icon bg-success"> <div class="card-icon bg-success">
<i class="fas fa-user"></i> <i class="fas fa-user"></i>

View File

@ -42,8 +42,14 @@
<td>{{ $data->email }}</td> <td>{{ $data->email }}</td>
<td>{{ $data->level }}</td> <td>{{ $data->level }}</td>
<td> <td>
<div class="d-flex align-items-center">
<form action="delete-user,{{ $data->id }}" method="POST" class="ml-2">
@method('DELETE')
@csrf
<button class="btn btn-danger btn-action confirm_delete"><i class="fas fa-trash"></i></button>
</form>
</div>
<div class="icon-container"> <div class="icon-container">
<a href="/admin/delete-user,{{ $data->id }}" class="confirm-button btn btn-icon btn-danger" ><i class="fas fa-trash"></i></a>
</div> </div>
</td> </td>
</tr> </tr>

View File

@ -22,62 +22,44 @@
*/ */
Route::get('/', function () { Route::get('/', function () {
return view('user/index'); return view('landingpage/index');
}); });
Route::get('/about', function () { Route::get('/about', function () {
return view('user/about'); return view('landingpage/about');
}); });
Route::get('/plant', function () { Route::get('/plant', function () {
return view('user/plant'); return view('landingpage/plant');
}); });
Route::get('login',[App\Http\Controllers\LoginController::class, 'index'])->name('login'); Route::get('login',[App\Http\Controllers\LoginController::class, 'index'])->name('login');
Route::post('/postlogin',[App\Http\Controllers\LoginController::class, 'postlogin'])->name('postlogin'); Route::post('/postlogin',[App\Http\Controllers\LoginController::class, 'postlogin'])->name('postlogin');
// Route::post('/logout',[App\Http\Controllers\LoginController::class, 'logout'])->name('logout');
Route::get('/logout',[App\Http\Controllers\LoginController::class, 'logout'])->name('logout'); Route::get('/logout',[App\Http\Controllers\LoginController::class, 'logout'])->name('logout');
Route::get('/register',[App\Http\Controllers\LoginController::class, 'register'])->name('register'); Route::get('/register',[App\Http\Controllers\LoginController::class, 'register'])->name('register');
Route::post('/simpanregistrasi',[App\Http\Controllers\LoginController::class, 'simpanregistrasi'])->name('simpanregistrasi'); Route::post('/simpanregistrasi',[App\Http\Controllers\LoginController::class, 'simpanregistrasi'])->name('simpanregistrasi');
Route::get('/admin/temperature', function () { return view('admin/temperature'); });
Route::get('/admin/altitude', function () { return view('admin/altitude'); });
Route::get('/admin/rainfall', function () { return view('admin/rainfall'); });
Route::get('/admin/humidity', function () { return view('admin/humidity'); });
Route::get('/admin/ph-soil', function () { return view('admin/subdistrict'); });
Route::get('/admin/solar-radiation', function () { return view('admin/subdistrict'); });
Route::get('/admin/users', function () { return view('admin/users'); });
Route::get('/admin/kriteria', function () { return view('admin/kriteria'); });
Route::get('/admin/kalkulasi', function () { return view('admin/kalkulasi'); });
Route::get('/history', function () { return view('history/history'); });
// Route::get('/search', function () { return view('search\search'); });
// Route::get('/subdistrict/search', 'SubdistrictController@search')->name('subdistrict.search');
Route::middleware(['auth'])->group(function () { Route::middleware(['auth'])->group(function () {
Route::get('/home', [App\Http\Controllers\HomeUserController::class, 'index'])->name('home'); Route::get('/home', [App\Http\Controllers\HomeUserController::class, 'index'])->name('home');
Route::get('/comparison',[App\Http\Controllers\KalkulasiController::class, 'comparison'])->name('/comparison'); Route::get('/comparison',[App\Http\Controllers\KalkulasiController::class, 'comparison'])->name('/comparison');
Route::get('/print-comparison',[App\Http\Controllers\KalkulasiController::class, 'printcomparison'])->name('/print-comparison'); Route::get('/print-comparison',[App\Http\Controllers\KalkulasiController::class, 'printcomparison'])->name('/print-comparison');
Route::get('/profile', [App\Http\Controllers\UserController::class, 'profile'])->name('profile'); Route::get('/profile', [App\Http\Controllers\UserController::class, 'profile'])->name('profile');
Route::get('/edit-profile,{id}',[App\Http\Controllers\UserController::class, 'edit'])->name('/edit-profile'); Route::get('/edit-profile',[App\Http\Controllers\UserController::class, 'edit'])->name('/edit-profile');
Route::put('/update-profile,{id}', [App\Http\Controllers\UserController::class, 'update'])->name('update-profile'); Route::post('/update-profile', [App\Http\Controllers\UserController::class, 'update'])->name('update-profile');
}); });
Route::middleware(['auth', 'ceklevel:admin'])->group(function () { Route::middleware(['auth', 'ceklevel:admin'])->group(function () {
Route::get('/admin/subdistrict',[App\Http\Controllers\SubsidtrictController::class, 'index'])->name('/admin/subdistrict');
Route::get('/admin/alternatif',[App\Http\Controllers\SubsidtrictController::class, 'alternatif'])->name('/admin/alternatif'); Route::get('/add-subdistrict',[App\Http\Controllers\SubsidtrictController::class, 'create'])->name('/add-subdistrict');
Route::get('/admin/add-subdistrict',[App\Http\Controllers\SubsidtrictController::class, 'create'])->name('/admin/add-subdistrict'); Route::post('/save-subdistrict',[App\Http\Controllers\SubsidtrictController::class, 'store'])->name('/save-subdistrict');
Route::post('/admin/save-subdistrict',[App\Http\Controllers\SubsidtrictController::class, 'store'])->name('/admin/save-subdistrict');
Route::get('/edit-subdistrict,{id}',[App\Http\Controllers\SubsidtrictController::class, 'edit'])->name('/edit-subdistrict'); Route::get('/edit-subdistrict,{id}',[App\Http\Controllers\SubsidtrictController::class, 'edit'])->name('/edit-subdistrict');
Route::post('/admin/update-subdistrict,{id}',[App\Http\Controllers\SubsidtrictController::class, 'update'])->name('admin/update-subdistrict'); Route::post('/update-subdistrict,{id}',[App\Http\Controllers\SubsidtrictController::class, 'update'])->name('/update-subdistrict');
Route::get('/admin/delete-subdistrict,{id}',[App\Http\Controllers\SubsidtrictController::class, 'destroy'])->name('admin/delete-subdistrict'); Route::delete('/delete-subdistrict,{id}',[App\Http\Controllers\SubsidtrictController::class, 'delete'])->name('/delete-subdistrict');
Route::get('/admin/export-subdistrict',[App\Http\Controllers\SubsidtrictController::class, 'subdistrictexport'])->name('admin/export-subdistrict'); Route::get('/export-subdistrict',[App\Http\Controllers\SubsidtrictController::class, 'subdistrictexport'])->name('/export-subdistrict');
Route::post('/admin/import-subdistrict',[App\Http\Controllers\SubsidtrictController::class, 'subdistrictimport'])->name('admin/import-subdistrict'); Route::post('/import-subdistrict',[App\Http\Controllers\SubsidtrictController::class, 'subdistrictimport'])->name('/import-subdistrict');
Route::get('/admin/downloadtemplate-subdistrict',[App\Http\Controllers\SubsidtrictController::class, 'downloadTemplate'])->name('admin/downloadtemplate-subdistrict'); Route::get('/downloadtemplate-subdistrict',[App\Http\Controllers\SubsidtrictController::class, 'downloadTemplate'])->name('/downloadtemplate-subdistrict');
// Route::resource('/admin/subdistrict', SubsidtrictController::class); // Route::resource('/admin/subdistrict', SubsidtrictController::class);
Route::get('/delete-all-data', [SubsidtrictController::class, 'deleteAllData'])->name('delete.all.data'); Route::get('/delete-all-data', [SubsidtrictController::class, 'deleteAllData'])->name('delete.all.data');
@ -87,42 +69,42 @@
Route::get('/hasil',[App\Http\Controllers\SubsidtrictController::class, 'hasil'])->name('/admin/hasil'); Route::get('/hasil',[App\Http\Controllers\SubsidtrictController::class, 'hasil'])->name('/admin/hasil');
Route::get('/admin/users',[App\Http\Controllers\UserController::class, 'index'])->name('/admin/users'); Route::get('/users',[App\Http\Controllers\UserController::class, 'index'])->name('/users');
Route::get('/admin/add-users',[App\Http\Controllers\UserController::class, 'create'])->name('/admin/add-users'); Route::get('/add-users',[App\Http\Controllers\UserController::class, 'create'])->name('/add-users');
Route::post('/admin/save-users',[App\Http\Controllers\UserController::class, 'store'])->name('/admin/save-users'); Route::post('/save-users',[App\Http\Controllers\UserController::class, 'store'])->name('/save-users');
Route::get('/admin/edit-users-{id}',[App\Http\Controllers\UserController::class, 'edit'])->name('/admin/edit-users'); Route::get('/edit-users-{id}',[App\Http\Controllers\UserController::class, 'edit'])->name('/edit-users');
Route::post('/admin/update-users-{id}',[App\Http\Controllers\UserController::class, 'update'])->name('admin/update-users'); Route::post('/update-users-{id}',[App\Http\Controllers\UserController::class, 'update'])->name('/update-users');
Route::get('/admin/delete-users-{id}',[App\Http\Controllers\UserController::class, 'destroy'])->name('admin/delete-users'); Route::get('/delete-users-{id}',[App\Http\Controllers\UserController::class, 'destroy'])->name('/delete-users');
Route::get('/admin/export-users',[App\Http\Controllers\UserController::class, 'userexport'])->name('admin/export-users'); Route::get('/export-users',[App\Http\Controllers\UserController::class, 'userexport'])->name('/export-users');
Route::post('/admin/import-users',[App\Http\Controllers\UserController::class, 'humidityimport'])->name('admin/import-users'); Route::post('/import-users',[App\Http\Controllers\UserController::class, 'humidityimport'])->name('/import-users');
Route::get('/admin/downloadtemplate-users',[App\Http\Controllers\UserController::class, 'downloadTemplate'])->name('admin/downloadtemplate-users'); Route::get('/downloadtemplate-users',[App\Http\Controllers\UserController::class, 'downloadTemplate'])->name('/downloadtemplate-users');
Route::get('/admin/kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'index'])->name('/admin/kalkulasi'); Route::get('/kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'index'])->name('/kalkulasi');
Route::post('/admin/save-data',[App\Http\Controllers\KalkulasiController::class, 'simpanData'])->name('/admin/save-data'); Route::post('/save-data',[App\Http\Controllers\KalkulasiController::class, 'simpanData'])->name('/save-data');
Route::get('/hitung-kal',[App\Http\Controllers\KalkulasiController::class, 'pembagi'])->name('/admin/hitung-kal'); Route::get('/hitung-kal',[App\Http\Controllers\KalkulasiController::class, 'pembagi'])->name('/hitung-kal');
Route::get('/admin/add-kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'create'])->name('/admin/add-kalkulasi'); Route::get('/add-kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'create'])->name('/add-kalkulasi');
Route::post('/admin/save-kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'store'])->name('/admin/save-kalkulasi'); Route::post('/save-kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'store'])->name('/save-kalkulasi');
Route::get('/edit-kalkulasi,{id}',[App\Http\Controllers\KalkulasiController::class, 'edit'])->name('/admin/edit-kalkulasi'); Route::get('/edit-kalkulasi,{id}',[App\Http\Controllers\KalkulasiController::class, 'edit'])->name('/edit-kalkulasi');
Route::post('/admin/update-kalkulasi,{id}',[App\Http\Controllers\KalkulasiController::class, 'update'])->name('admin/update-kalkulasi'); Route::post('/update-kalkulasi,{id}',[App\Http\Controllers\KalkulasiController::class, 'update'])->name('/update-kalkulasi');
Route::get('/admin/delete-kalkulasi,{id}',[App\Http\Controllers\KalkulasiController::class, 'destroy'])->name('admin/delete-kalkulasi'); Route::delete('/delete-kalkulasi,{id}',[App\Http\Controllers\KalkulasiController::class, 'delete'])->name('/delete-kalkulasi');
Route::get('/admin/export-kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'userexport'])->name('admin/export-kalkulasi'); Route::get('/export-kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'userexport'])->name('/export-kalkulasi');
Route::post('/admin/import-kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'humidityimport'])->name('admin/import-kalkulasi'); Route::post('/import-kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'humidityimport'])->name('/import-kalkulasi');
Route::get('/admin/downloadtemplate-kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'downloadTemplate'])->name('admin/downloadtemplate-kalkulasi'); Route::get('/downloadtemplate-kalkulasi',[App\Http\Controllers\KalkulasiController::class, 'downloadTemplate'])->name('/downloadtemplate-kalkulasi');
Route::get('/admin/kriteria',[App\Http\Controllers\KriteriaController::class, 'index'])->name('/admin/kriteria'); Route::get('/kriteria',[App\Http\Controllers\KriteriaController::class, 'index'])->name('/kriteria');
Route::get('/edit-kriteria,{id}',[App\Http\Controllers\KriteriaController::class, 'edit'])->name('/edit-kriteria'); Route::get('/edit-kriteria,{id}',[App\Http\Controllers\KriteriaController::class, 'edit'])->name('/edit-kriteria');
Route::get('/admin/add-kriteria',[App\Http\Controllers\KriteriaController::class, 'create'])->name('/admin/add-kriteria'); Route::get('/add-kriteria',[App\Http\Controllers\KriteriaController::class, 'create'])->name('/add-kriteria');
Route::post('/admin/save-kriteria',[App\Http\Controllers\KriteriaController::class, 'store'])->name('/admin/save-kriteria'); Route::post('/save-kriteria',[App\Http\Controllers\KriteriaController::class, 'store'])->name('/save-kriteria');
Route::post('/admin/update-kriteria,{id}',[App\Http\Controllers\KriteriaController::class, 'update'])->name('admin/update-kriteria'); Route::post('/update-kriteria,{id}',[App\Http\Controllers\KriteriaController::class, 'update'])->name('/update-kriteria');
Route::get('/admin/delete-kriteria,{id}',[App\Http\Controllers\KriteriaController::class, 'destroy'])->name('admin/delete-kriteria'); Route::delete('/delete-kriteria,{id}',[App\Http\Controllers\KriteriaController::class, 'delete'])->name('/delete-kriteria');
Route::get('/admin/export-kriteria',[App\Http\Controllers\KriteriaController::class, 'userexport'])->name('admin/export-kriteria'); Route::get('/export-kriteria',[App\Http\Controllers\KriteriaController::class, 'userexport'])->name('/export-kriteria');
Route::post('/admin/import-kriteria',[App\Http\Controllers\KriteriaController::class, 'humidityimport'])->name('admin/import-kriteria'); Route::post('/import-kriteria',[App\Http\Controllers\KriteriaController::class, 'humidityimport'])->name('/import-kriteria');
Route::get('/admin/downloadtemplate-kriteria',[App\Http\Controllers\KriteriaController::class, 'downloadTemplate'])->name('admin/downloadtemplate-kriteria'); Route::get('/downloadtemplate-kriteria',[App\Http\Controllers\KriteriaController::class, 'downloadTemplate'])->name('/downloadtemplate-kriteria');
Route::resource('/admin/kriteria', KriteriaController::class); Route::resource('/kriteria', KriteriaController::class);
}); });