fixing login register
This commit is contained in:
parent
0ce4f4bd7c
commit
ee59e5a722
|
@ -4,6 +4,9 @@
|
|||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Foundation\Auth\AuthenticatesUsers;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
|
||||
class LoginController extends Controller
|
||||
{
|
||||
|
@ -25,7 +28,7 @@ class LoginController extends Controller
|
|||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $redirectTo = '/home';
|
||||
protected $redirectTo = '/';
|
||||
|
||||
/**
|
||||
* Create a new controller instance.
|
||||
|
@ -36,4 +39,12 @@ public function __construct()
|
|||
{
|
||||
$this->middleware('guest')->except('logout');
|
||||
}
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/');
|
||||
}
|
||||
}
|
||||
|
|
|
@ -28,7 +28,7 @@ class RegisterController extends Controller
|
|||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $redirectTo = '/home';
|
||||
protected $redirectTo = '/';
|
||||
|
||||
/**
|
||||
* Create a new controller instance.
|
||||
|
@ -49,8 +49,9 @@ public function __construct()
|
|||
protected function validator(array $data)
|
||||
{
|
||||
return Validator::make($data, [
|
||||
'name' => ['required', 'string', 'max:255'],
|
||||
'nama' => ['required', 'string', 'max:255'],
|
||||
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
|
||||
'alamat' => ['required', 'string', 'max:255'],
|
||||
'password' => ['required', 'string', 'min:8', 'confirmed'],
|
||||
]);
|
||||
}
|
||||
|
@ -64,8 +65,9 @@ protected function validator(array $data)
|
|||
protected function create(array $data)
|
||||
{
|
||||
return User::create([
|
||||
'name' => $data['name'],
|
||||
'nama' => $data['nama'],
|
||||
'email' => $data['email'],
|
||||
'alamat' => $data['alamat'],
|
||||
'password' => Hash::make($data['password']),
|
||||
]);
|
||||
}
|
||||
|
|
|
@ -59,7 +59,7 @@ public function hitungKonsultasi(Request $request)
|
|||
$validateReq = $request->validate([
|
||||
'nama' => 'required',
|
||||
'alamat' => 'required',
|
||||
'jenis_sapi' => 'required'
|
||||
// 'jenis_sapi' => 'required'
|
||||
]);
|
||||
|
||||
$arrHasilUser = $request->input('resultGejala');
|
||||
|
@ -105,7 +105,7 @@ public function hitungKonsultasi(Request $request)
|
|||
$hasil = new Hasil();
|
||||
$hasil->nama = $validateReq['nama'];
|
||||
$hasil->alamat = $validateReq['alamat'];
|
||||
$hasil->jenis_sapi = $validateReq['jenis_sapi'];
|
||||
// $hasil->jenis_sapi = $validateReq['jenis_sapi'];
|
||||
$hasil->hasil_diagnosa = json_encode($variabelTampilan);
|
||||
$hasil->solusi = $variabelTampilan['Solusi_Penyakit']['solusi'];
|
||||
$hasil->save();
|
||||
|
|
|
@ -18,9 +18,10 @@ class User extends Authenticatable
|
|||
* @var array<int, string>
|
||||
*/
|
||||
protected $fillable = [
|
||||
'name',
|
||||
'nama',
|
||||
'email',
|
||||
'password',
|
||||
'alamat',
|
||||
];
|
||||
|
||||
/**
|
||||
|
|
|
@ -17,6 +17,7 @@ public function up(): void
|
|||
$table->string('email')->unique();
|
||||
$table->timestamp('email_verified_at')->nullable();
|
||||
$table->string('password');
|
||||
$table->string('alamat');
|
||||
$table->rememberToken();
|
||||
$table->timestamps();
|
||||
});
|
||||
|
|
|
@ -5,8 +5,11 @@
|
|||
"packages": {
|
||||
"": {
|
||||
"devDependencies": {
|
||||
"@popperjs/core": "^2.11.6",
|
||||
"axios": "^1.1.2",
|
||||
"bootstrap": "^5.2.3",
|
||||
"laravel-vite-plugin": "^0.8.0",
|
||||
"sass": "^1.56.1",
|
||||
"vite": "^4.0.0"
|
||||
}
|
||||
},
|
||||
|
@ -362,6 +365,29 @@
|
|||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/@popperjs/core": {
|
||||
"version": "2.11.8",
|
||||
"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
|
||||
"integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==",
|
||||
"dev": true,
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/popperjs"
|
||||
}
|
||||
},
|
||||
"node_modules/anymatch": {
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
|
||||
"integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"normalize-path": "^3.0.0",
|
||||
"picomatch": "^2.0.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 8"
|
||||
}
|
||||
},
|
||||
"node_modules/asynckit": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
||||
|
@ -379,6 +405,73 @@
|
|||
"proxy-from-env": "^1.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/binary-extensions": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
|
||||
"integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/bootstrap": {
|
||||
"version": "5.3.3",
|
||||
"resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz",
|
||||
"integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==",
|
||||
"dev": true,
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/twbs"
|
||||
},
|
||||
{
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/bootstrap"
|
||||
}
|
||||
],
|
||||
"peerDependencies": {
|
||||
"@popperjs/core": "^2.11.8"
|
||||
}
|
||||
},
|
||||
"node_modules/braces": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
|
||||
"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"fill-range": "^7.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/chokidar": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
|
||||
"integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"anymatch": "~3.1.2",
|
||||
"braces": "~3.0.2",
|
||||
"glob-parent": "~5.1.2",
|
||||
"is-binary-path": "~2.1.0",
|
||||
"is-glob": "~4.0.1",
|
||||
"normalize-path": "~3.0.0",
|
||||
"readdirp": "~3.6.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 8.10.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"fsevents": "~2.3.2"
|
||||
}
|
||||
},
|
||||
"node_modules/combined-stream": {
|
||||
"version": "1.0.8",
|
||||
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
||||
|
@ -437,6 +530,18 @@
|
|||
"@esbuild/win32-x64": "0.18.20"
|
||||
}
|
||||
},
|
||||
"node_modules/fill-range": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
|
||||
"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"to-regex-range": "^5.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/follow-redirects": {
|
||||
"version": "1.15.5",
|
||||
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz",
|
||||
|
@ -485,6 +590,66 @@
|
|||
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/glob-parent": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
|
||||
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-glob": "^4.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/immutable": {
|
||||
"version": "4.3.5",
|
||||
"resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz",
|
||||
"integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/is-binary-path": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
|
||||
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"binary-extensions": "^2.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/is-extglob": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
|
||||
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/is-glob": {
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
|
||||
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-extglob": "^2.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/is-number": {
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
|
||||
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.12.0"
|
||||
}
|
||||
},
|
||||
"node_modules/laravel-vite-plugin": {
|
||||
"version": "0.8.1",
|
||||
"resolved": "https://registry.npmjs.org/laravel-vite-plugin/-/laravel-vite-plugin-0.8.1.tgz",
|
||||
|
@ -540,6 +705,15 @@
|
|||
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/normalize-path": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
|
||||
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/picocolors": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
|
||||
|
@ -592,6 +766,18 @@
|
|||
"integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/readdirp": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
|
||||
"integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"picomatch": "^2.2.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/rollup": {
|
||||
"version": "3.29.4",
|
||||
"resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz",
|
||||
|
@ -608,6 +794,23 @@
|
|||
"fsevents": "~2.3.2"
|
||||
}
|
||||
},
|
||||
"node_modules/sass": {
|
||||
"version": "1.72.0",
|
||||
"resolved": "https://registry.npmjs.org/sass/-/sass-1.72.0.tgz",
|
||||
"integrity": "sha512-Gpczt3WA56Ly0Mn8Sl21Vj94s1axi9hDIzDFn9Ph9x3C3p4nNyvsqJoQyVXKou6cBlfFWEgRW4rT8Tb4i3XnVA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"chokidar": ">=3.0.0 <4.0.0",
|
||||
"immutable": "^4.0.0",
|
||||
"source-map-js": ">=0.6.2 <2.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"sass": "sass.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/source-map-js": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
|
||||
|
@ -617,6 +820,18 @@
|
|||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/to-regex-range": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
||||
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-number": "^7.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0"
|
||||
}
|
||||
},
|
||||
"node_modules/vite": {
|
||||
"version": "4.5.2",
|
||||
"resolved": "https://registry.npmjs.org/vite/-/vite-4.5.2.tgz",
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
.gradient-custom-2 {
|
||||
/* fallback for old browsers */
|
||||
background: #fccb90;
|
||||
/* Chrome 10-25, Safari 5.1-6 */
|
||||
background: -webkit-linear-gradient(to right, #3b83d0, #3b83d0, #3b83d0, #1c5299);
|
||||
|
||||
/* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
|
||||
background: linear-gradient(to right, #3b83d0, #3b83d0, #3b83d0, #1c5299);
|
||||
}
|
||||
|
||||
@media (min-width: 400px) {
|
||||
.gradient-form {
|
||||
height: 100vh !important;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 769px) {
|
||||
.gradient-custom-2 {
|
||||
border-top-right-radius: .3rem;
|
||||
border-bottom-right-radius: .3rem;
|
||||
}
|
||||
}
|
Binary file not shown.
After Width: | Height: | Size: 148 KiB |
|
@ -0,0 +1,22 @@
|
|||
.gradient-custom-2 {
|
||||
/* fallback for old browsers */
|
||||
background: #fccb90;
|
||||
|
||||
/* Chrome 10-25, Safari 5.1-6 */
|
||||
background: -webkit-linear-gradient(to right, #ee7724, #d8363a, #dd3675, #b44593);
|
||||
|
||||
/* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
|
||||
background: linear-gradient(to right, #ee7724, #d8363a, #dd3675, #b44593);
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
.gradient-form {
|
||||
height: 100vh !important;
|
||||
}
|
||||
}
|
||||
@media (min-width: 769px) {
|
||||
.gradient-custom-2 {
|
||||
border-top-right-radius: .3rem;
|
||||
border-bottom-right-radius: .3rem;
|
||||
}
|
||||
}
|
|
@ -1,73 +1,112 @@
|
|||
@extends('layouts.app')
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>Sistem Pakar</title>
|
||||
<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('css/login.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/auth.css') }}">
|
||||
<style>
|
||||
/* tambahkan gaya kustom di sini */
|
||||
body {
|
||||
background-color: #2b2525;
|
||||
}
|
||||
.card {
|
||||
border: none;
|
||||
border-radius: 8px;
|
||||
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1), 0 1px 4px rgba(0, 0, 0, 0.06);
|
||||
background-color: #cfcfcf ;
|
||||
margin-top: 20px;
|
||||
}
|
||||
.card-body {
|
||||
padding: 2rem;
|
||||
}
|
||||
.form-control {
|
||||
border: 1px solid #e1e4e8;
|
||||
border-radius: 6px;
|
||||
padding: 12px;
|
||||
font-size: 16px;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
.form-label {
|
||||
margin-bottom: 0.5rem;
|
||||
font-weight: 600;
|
||||
}
|
||||
.btn-primary {
|
||||
background-color: #2ea44f;
|
||||
border-color: #2ea44f;
|
||||
padding: 10px 16px;
|
||||
font-size: 16px;
|
||||
border-radius: 6px;
|
||||
font-weight: 600;
|
||||
transition: background-color 0.2s;
|
||||
}
|
||||
.btn-primary:hover {
|
||||
background-color: #2c974b;
|
||||
border-color: #2c974b;
|
||||
}
|
||||
.forgot-password {
|
||||
color: #586069;
|
||||
font-size: 14px;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
.create-account {
|
||||
color: #0366d6;
|
||||
font-size: 14px;
|
||||
margin-top: 1rem;
|
||||
font-weight: 600;
|
||||
}
|
||||
.create-account:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
.brand-logo {
|
||||
max-width: 100px;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
.github-logo {
|
||||
max-width: 200px;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<section class="h-100">
|
||||
<div class="container">
|
||||
<div class="row justify-content-center align-items-center">
|
||||
<div class="col-lg-5">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<img src="img/logo3.1.png" class="brand-logo d-block mx-auto" alt="logo">
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Login') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
<form method="POST" action="{{ route('login') }}">
|
||||
@csrf
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="email" class="col-md-4 col-form-label text-md-end">{{ __('Email Address') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email" autofocus>
|
||||
|
||||
@error('email')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="password" class="col-md-4 col-form-label text-md-end">{{ __('Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="current-password">
|
||||
|
||||
@error('password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-6 offset-md-4">
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" name="remember" id="remember" {{ old('remember') ? 'checked' : '' }}>
|
||||
|
||||
<label class="form-check-label" for="remember">
|
||||
{{ __('Remember Me') }}
|
||||
</label>
|
||||
<h2 class="text-center mb-4">Login</h2>
|
||||
<form method="POST" action="{{ route('login') }}">
|
||||
@csrf
|
||||
<div class="mb-3">
|
||||
<label for="email" class="form-label">Email address</label>
|
||||
<input type="email" class="form-control" id="email" name="email" value="{{ old('email') }}" required autofocus>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mb-3">
|
||||
<label for="password" class="form-label">Password</label>
|
||||
<input type="password" class="form-control" id="password" name="password" required>
|
||||
</div>
|
||||
<div class="mb-3">
|
||||
<button type="submit" class="btn btn-primary btn-block">Login</button>
|
||||
</div>
|
||||
</form>
|
||||
<p class="forgot-password text-center">
|
||||
<a href="#">Lupa Password?</a>
|
||||
</p>
|
||||
<p class="text-center">
|
||||
Belum Punya Akun ? <a href="{{ route('register') }}" class="create-account">Buat Akun</a>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="row mb-0">
|
||||
<div class="col-md-8 offset-md-4">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
{{ __('Login') }}
|
||||
</button>
|
||||
|
||||
@if (Route::has('password.request'))
|
||||
<a class="btn btn-link" href="{{ route('password.request') }}">
|
||||
{{ __('Forgot Your Password?') }}
|
||||
</a>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
</section>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -0,0 +1,62 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-6">
|
||||
<div class="card shadow-lg">
|
||||
<div class="card-header bg-primary text-white text-center">
|
||||
<h3>{{ __('Login') }}</h3>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
<form method="POST" action="{{ route('login') }}">
|
||||
@csrf
|
||||
|
||||
<div class="mb-4">
|
||||
<label for="email" class="form-label">{{ __('Email Address') }}</label>
|
||||
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email" autofocus>
|
||||
@error('email')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="mb-4">
|
||||
<label for="password" class="form-label">{{ __('Password') }}</label>
|
||||
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="current-password">
|
||||
@error('password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="mb-4 form-check">
|
||||
<input class="form-check-input" type="checkbox" name="remember" id="remember" {{ old('remember') ? 'checked' : '' }}>
|
||||
<label class="form-check-label" for="remember">
|
||||
{{ __('Remember Me') }}
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="d-grid gap-2">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
{{ __('Login') }}
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="text-center mt-3">
|
||||
@if (Route::has('password.request'))
|
||||
<a class="btn btn-link" href="{{ route('password.request') }}">
|
||||
{{ __('Forgot Your Password?') }}
|
||||
</a>
|
||||
@endif
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
|
@ -1,77 +1,94 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Register') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
<form method="POST" action="{{ route('register') }}">
|
||||
@csrf
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="name" class="col-md-4 col-form-label text-md-end">{{ __('Name') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="name" type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name') }}" required autocomplete="name" autofocus>
|
||||
|
||||
@error('name')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>Sistem Pakar</title>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
|
||||
<style>
|
||||
/* tambahkan gaya kustom di sini */
|
||||
.gradient-form {
|
||||
background-color: #2b2525;
|
||||
}
|
||||
.card {
|
||||
background-color: #cfcfcf;
|
||||
}
|
||||
.card-body {
|
||||
padding: 2rem; /* Ubah padding menjadi 2rem */
|
||||
}
|
||||
.form-outline input[type=email],
|
||||
.form-outline input[type=password],
|
||||
.form-outline input[type=text] {
|
||||
border-radius: 15px; /* Ubah radius border menjadi 15px */
|
||||
padding: 0.8rem; /* Ubah padding menjadi 0.8rem */
|
||||
}
|
||||
.btn-primary {
|
||||
border-radius: 15px; /* Ubah radius border tombol menjadi 15px */
|
||||
padding: 0.75rem 1.5rem;
|
||||
}
|
||||
.gradient-custom-2 {
|
||||
background: linear-gradient(to right, #667db6, #0082c8, #0082c8, #667db6);
|
||||
}
|
||||
.background-image {
|
||||
background-image: url('img/background-sapi-login.png');
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
}
|
||||
.overlay {
|
||||
background-color: rgba(0, 0, 0, 0.6);
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<section class="h-100 gradient-form">
|
||||
<div class="container py-5">
|
||||
<div class="row justify-content-center align-items-center">
|
||||
<div class="col-md-8 col-lg-6"> <!-- Ubah ukuran kolom di sini -->
|
||||
<div class="card rounded-3 text-black">
|
||||
<div class="card-body">
|
||||
<div class="text-center mb-4"> <!-- Ubah margin menjadi mb-4 -->
|
||||
<img src="img/logo3.1.png" style="width: 185px;" alt="logo">
|
||||
<h4 class="mt-1 mb-3">Register</h4> <!-- Ubah margin menjadi mb-3 -->
|
||||
</div>
|
||||
<form method="POST" action="{{ route('register') }}">
|
||||
@csrf
|
||||
|
||||
<div class="form-outline mb-3"> <!-- Ubah margin menjadi mb-3 -->
|
||||
<label class="form-label" for="nama">Nama</label>
|
||||
<input id="nama" type="text" class="form-control @error('nama') is-invalid @enderror" name="nama" value="{{ old('nama') }}" required autocomplete="nama" autofocus>
|
||||
</div>
|
||||
<div class="form-outline mb-3"> <!-- Ubah margin menjadi mb-3 -->
|
||||
<label class="form-label" for="email">Email</label>
|
||||
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">
|
||||
</div>
|
||||
<div class="form-outline mb-3"> <!-- Ubah margin menjadi mb-3 -->
|
||||
<label class="form-label" for="password">Password</label>
|
||||
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="new-password">
|
||||
</div>
|
||||
<div class="form-outline mb-3"> <!-- Ubah margin menjadi mb-3 -->
|
||||
<label class="form-label" for="password-confirm">Konfirmasi Password</label>
|
||||
<input id="password-confirm" type="password" class="form-control" name="password_confirmation" required autocomplete="new-password">
|
||||
</div>
|
||||
<div class="form-outline mb-3"> <!-- Ubah margin menjadi mb-3 -->
|
||||
<label class="form-label" for="alamat">Alamat</label>
|
||||
<input id="alamat" type="text" class="form-control @error('alamat') is-invalid @enderror" name="alamat" value="{{ old('alamat') }}" required autocomplete="alamat">
|
||||
</div>
|
||||
<div class="text-center mb-3"> <!-- Ubah margin menjadi mb-3 -->
|
||||
<button type="submit" class="btn btn-primary btn-block">Daftar</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="email" class="col-md-4 col-form-label text-md-end">{{ __('Email Address') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">
|
||||
|
||||
@error('email')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="password" class="col-md-4 col-form-label text-md-end">{{ __('Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="new-password">
|
||||
|
||||
@error('password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="password-confirm" class="col-md-4 col-form-label text-md-end">{{ __('Confirm Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password-confirm" type="password" class="form-control" name="password_confirmation" required autocomplete="new-password">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-0">
|
||||
<div class="col-md-6 offset-md-4">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
{{ __('Register') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
</section>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -0,0 +1,90 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Register') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
<form method="POST" action="{{ route('register') }}">
|
||||
@csrf
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="nama" class="col-md-4 col-form-label text-md-end">{{ __('Nama') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="nama" type="text" class="form-control @error('nama') is-invalid @enderror" name="nama" value="{{ old('nama') }}" required autocomplete="nama" autofocus>
|
||||
|
||||
@error('nama')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="email" class="col-md-4 col-form-label text-md-end">{{ __('Email Address') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">
|
||||
|
||||
@error('email')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="password" class="col-md-4 col-form-label text-md-end">{{ __('Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="new-password">
|
||||
|
||||
@error('password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="password-confirm" class="col-md-4 col-form-label text-md-end">{{ __('Confirm Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password-confirm" type="password" class="form-control" name="password_confirmation" required autocomplete="new-password">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mb-3">
|
||||
<label for="alamat" class="col-md-4 col-form-label text-md-end">{{ __('Alamat') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="alamat" type="text" class="form-control @error('alamat') is-invalid @enderror" name="alamat" value="{{ old('alamat') }}" required autocomplete="alamat" autofocus>
|
||||
|
||||
@error('alamat')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-0">
|
||||
<div class="col-md-6 offset-md-4">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
{{ __('Register') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
|
@ -1,27 +1,26 @@
|
|||
@auth
|
||||
@extends('layouts.master')
|
||||
@section('title', 'konsultasi')
|
||||
|
||||
@section('konten')
|
||||
<div class="container-fluid p-0 m-0 my-5">
|
||||
<div class="col-xxl-5">
|
||||
<div class="container-fluid py-5" style="background-color: #f8f9fa;">
|
||||
<div class="col-xxl-5 mx-auto">
|
||||
<!-- Header text content-->
|
||||
<div class="text-center text-xxl-start">
|
||||
<div class="badge bg-gradient-primary-to-secondary text-black mb-4" @style("font-size:20pt")><div class="text-uppercase"> PILIH GEJALA</div></div>
|
||||
|
||||
<div class="text-center text-xxl-start mb-4">
|
||||
<div class="badge bg-primary text-white" style="font-size: 24px;"><div class="text-uppercase"> PILIH GEJALA</div></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card kartu-custom">
|
||||
<div class="card-header bg-gradient-primary-to-secondary text-white fw-bold">
|
||||
<div class="card-header bg-primary text-white fw-bold">
|
||||
Konsultasi Gejala
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<form action="{{ URL::to('diagnosa') }}" method="post">
|
||||
@csrf
|
||||
<div class="mb-3 row">
|
||||
<div class="mb-3 row" @style("display:none;")>
|
||||
<label for="nama" class="col-sm-2 col-form-label text-custom">Nama Pengunjung</label>
|
||||
<div class="col-sm-10">
|
||||
<input type="text" class="form-control @error('nama') is-invalid @enderror" id="nama" name="nama"
|
||||
value="{{ old('nama') }}">
|
||||
<input type="text" class="form-control" id="nama" name="nama" value="{{ Auth::user()->nama }}">
|
||||
@error('nama')
|
||||
<div class="invalid-feedback">
|
||||
{{ $message }}
|
||||
|
@ -29,11 +28,10 @@
|
|||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="mb-3 row">
|
||||
<div class="mb-3 row" @style("display:none;")>
|
||||
<label for="alamat" class="col-sm-2 col-form-label text-custom">Alamat</label>
|
||||
<div class="col-sm-10">
|
||||
<textarea class="form-control @error('alamat') is-invalid @enderror" id="alamat" name="alamat"
|
||||
rows="3">{{ old('alamat') }}</textarea>
|
||||
<textarea class="form-control" id="alamat" name="alamat" rows="3">{{ Auth::user()->alamat }}</textarea>
|
||||
@error('alamat')
|
||||
<div class="invalid-feedback">
|
||||
{{ $message }}
|
||||
|
@ -41,45 +39,24 @@
|
|||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="mb-3 row">
|
||||
{{-- <div class="mb-3 row">
|
||||
<label for="jenis_sapi" class="col-sm-2 col-form-label text-custom">Jenis Sapi</label>
|
||||
<div class="col-sm-10">
|
||||
<input type="text" class="form-control @error('jenis_sapi') is-invalid @enderror"
|
||||
id="jenis_sapi" name="jenis_sapi" value="{{ old('jenis_sapi') }}">
|
||||
<input type="text" class="form-control" id="jenis_sapi" name="jenis_sapi" value="{{ old('jenis_sapi') }}">
|
||||
@error('jenis_sapi')
|
||||
<div class="invalid-feedback">
|
||||
{{ $message }}
|
||||
</div>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
</div> --}}
|
||||
@if (session()->has('error'))
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
|
||||
<symbol id="check-circle-fill" fill="currentColor" viewBox="0 0 16 16">
|
||||
<path
|
||||
d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
|
||||
</symbol>
|
||||
<symbol id="info-fill" fill="currentColor" viewBox="0 0 16 16">
|
||||
<path
|
||||
d="M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm.93-9.412-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2z" />
|
||||
</symbol>
|
||||
<symbol id="exclamation-triangle-fill" fill="currentColor" viewBox="0 0 16 16">
|
||||
<path
|
||||
d="M8.982 1.566a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566zM8 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995A.905.905 0 0 1 8 5zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z" />
|
||||
</symbol>
|
||||
</svg>
|
||||
<div class="alert alert-danger alert-dismissible fade show d-flex align-items-center" role="alert">
|
||||
<svg class="bi flex-shrink-0 me-2" width="24" height="24" role="img" aria-label="Danger:">
|
||||
<use xlink:href="#exclamation-triangle-fill" />
|
||||
</svg>
|
||||
<div>
|
||||
{{ session('error') }}
|
||||
</div>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="alert"
|
||||
aria-label="Close"></button>
|
||||
<div class="alert alert-danger alert-dismissible fade show" role="alert">
|
||||
{{ session('error') }}
|
||||
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
|
||||
</div>
|
||||
@endif
|
||||
<table class="table table-bordered custom-table" style="width: 100%">
|
||||
<table class="table table-bordered custom-table">
|
||||
<colgroup>
|
||||
<col span="1" style="width: 3%;">
|
||||
<col span="1" style="width: 12%;">
|
||||
|
@ -104,12 +81,10 @@
|
|||
<td class="text-center">{{ $gejala['kode_gejala'] }}</td>
|
||||
<td>{{ $gejala['gejala'] }}</td>
|
||||
<td class="text-center">
|
||||
<input type="checkbox" class="form-check-input" name="resultGejala[]"
|
||||
value="{{ $gejala['kode_gejala'] }}"
|
||||
<input type="checkbox" class="form-check-input" name="resultGejala[]" value="{{ $gejala['kode_gejala'] }}"
|
||||
@if (is_array(old('resultGejala')) && in_array($gejala['kode_gejala'], old('resultGejala'))) checked @endif>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@php
|
||||
$i++;
|
||||
@endphp
|
||||
|
@ -117,17 +92,22 @@
|
|||
</tbody>
|
||||
</table>
|
||||
<div class="d-grid gap-2 d-md-flex justify-content-md-end">
|
||||
<button class="btn btn-sm btn-info text-whitefw-bold" type="submit"><i class="fa-solid fa-floppy-disk me-1"></i>
|
||||
Hitung
|
||||
</button>
|
||||
<button class="btn btn-sm btn-danger fw-bold" type="reset"><i class="fa-solid fa-ban me-1"></i>
|
||||
Cancel
|
||||
</button>
|
||||
<button class="btn btn-info fw-bold" type="submit"><i class="fa-solid fa-floppy-disk me-1"></i> Hitung</button>
|
||||
<button class="btn btn-danger fw-bold" type="reset"><i class="fa-solid fa-ban me-1"></i> Cancel</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="card-footer"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@guest <!-- Menampilkan pesan jika pengguna belum login -->
|
||||
<div class="container">
|
||||
<div class="alert alert-warning" role="alert">
|
||||
Anda harus login untuk mengakses halaman ini.
|
||||
</div>
|
||||
</div>
|
||||
@endguest
|
||||
@endauth
|
||||
@endsection
|
||||
|
||||
|
|
|
@ -2,72 +2,49 @@
|
|||
|
||||
@section('konten')
|
||||
|
||||
|
||||
<div class="card shadow-sm mb-3" style="background-color: #4b86fe;">
|
||||
<div class="card-header bg-gradient-primary-to-secondary text-white fw-bold">
|
||||
Hasil Diagnosa
|
||||
<div class="card shadow-sm mb-3" style="background-color: #fff; border: 1px solid #ccc; font-size: 0.9rem;">
|
||||
<div class="card-header bg-gradient-primary-to-secondary text-white fw-bold" style="background-color: #f2f2f2; border-bottom: 1px solid #ccc; padding: 8px;">
|
||||
<h5 class="m-0">Nota Diagnosa</h5>
|
||||
</div>
|
||||
<div class="card-body" style="padding: 8px;">
|
||||
<h6 class="text-custom"><b>1. Pengunjung</b></h6>
|
||||
<div class="row row-cols-md-2">
|
||||
<div class="col mb-2">
|
||||
<strong>Nama:</strong> {{ $dataDiagnosa['nama'] }}
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="container-fluid">
|
||||
<h5 class="text-custom"><b>1. Pengunjung</b></h5>
|
||||
<div class="row row-cols-md-3 row-cols-sm-2 row-cols-1">
|
||||
<div class="col mb-3">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<h6 class="card-title"><strong>Nama:</strong></h6>
|
||||
<p class="card-text">{{ $dataDiagnosa['nama'] }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col mb-3">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<h6 class="card-title"><strong>Jenis Sapi:</strong></h6>
|
||||
<p class="card-text">{{ $dataDiagnosa['jenis_sapi'] }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col mb-3">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<h6 class="card-title"><strong>Alamat:</strong></h6>
|
||||
<p class="card-text">{{ $dataDiagnosa['alamat'] }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="container-fluid mt-4">
|
||||
<h5 class="text-custom"><b>2. Gejala yang dialami</b></h5>
|
||||
<div class="list-group">
|
||||
@foreach ($hasilDiagnosa->Gejala_Penyakit as $gejala)
|
||||
<a href="#" class="list-group-item list-group-item-action">{{ $gejala->nama_gejala }}</a>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="container-fluid mt-4">
|
||||
<h5 class="text-custom"><b>3. Penyakit</b></h5>
|
||||
<div class="card">
|
||||
<ul class="list-group list-group-flush">
|
||||
<li class="list-group-item"><strong>Nama Penyakit:</strong> {{ $hasilDiagnosa->Nama_Penyakit->nama_penyakit }}</li>
|
||||
<li class="list-group-item"><strong>Nilai Kepercayaan:</strong> {!! '<b>' . $hasilDiagnosa->Persentase_Penyakit . '</b>' . ' / (' . $hasilDiagnosa->Nilai_Belief_Penyakit . ')' !!}</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="container-fluid mt-4">
|
||||
<h5 class="text-custom"><b>4. Solusi</b></h5>
|
||||
<div class="list-group">
|
||||
@foreach (json_decode($hasilDiagnosa->Solusi_Penyakit->solusi) as $solusi)
|
||||
<a href="#" class="list-group-item list-group-item-action">{{ $solusi }}</a>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
<div class="col mb-2">
|
||||
<strong>Alamat:</strong> {{ $dataDiagnosa['alamat'] }}
|
||||
</div>
|
||||
<div class="card-footer"></div>
|
||||
</div>
|
||||
<a href="{{ URL::to('diagnosa') }}" class="btn btn-sm btn-info text-white"><i class="fa-solid fa-arrow-left me-1"></i> Diagnosa Ulang</a>
|
||||
|
||||
<hr style="margin: 8px 0;">
|
||||
|
||||
<h6 class="text-custom"><b>2. Gejala yang Dialami</b></h6>
|
||||
<div class="list-group">
|
||||
@foreach ($hasilDiagnosa->Gejala_Penyakit as $gejala)
|
||||
<a href="#" class="list-group-item list-group-item-action" style="padding: 4px 8px;">{{ $gejala->nama_gejala }}</a>
|
||||
@endforeach
|
||||
</div>
|
||||
|
||||
<hr style="margin: 8px 0;">
|
||||
|
||||
<h6 class="text-custom"><b>3. Penyakit</b></h6>
|
||||
<ul class="list-group" style="margin-bottom: 8px;">
|
||||
<li class="list-group-item" style="padding: 4px 8px;"><strong>Nama Penyakit:</strong> {{ $hasilDiagnosa->Nama_Penyakit->nama_penyakit }}</li>
|
||||
<li class="list-group-item" style="padding: 4px 8px;"><strong>Nilai Kepercayaan:</strong> {!! '<b>' . $hasilDiagnosa->Persentase_Penyakit . '</b>' . ' / (' . $hasilDiagnosa->Nilai_Belief_Penyakit . ')' !!}</li>
|
||||
</ul>
|
||||
|
||||
<hr style="margin: 8px 0;">
|
||||
|
||||
<h6 class="text-custom"><b>4. Solusi</b></h6>
|
||||
<div class="list-group">
|
||||
@foreach (json_decode($hasilDiagnosa->Solusi_Penyakit->solusi) as $solusi)
|
||||
<a href="#" class="list-group-item list-group-item-action" style="padding: 4px 8px;">{{ $solusi }}</a>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer"></div>
|
||||
</div>
|
||||
<a href="{{ URL::to('diagnosa') }}" class="btn btn-sm btn-info text-white"><i class="fa-solid fa-arrow-left me-1"></i> Diagnosa Ulang</a>
|
||||
|
||||
@endsection
|
||||
|
|
|
@ -12,6 +12,9 @@
|
|||
<!-- Fonts -->
|
||||
<link rel="dns-prefetch" href="//fonts.bunny.net">
|
||||
<link href="https://fonts.bunny.net/css?family=Nunito" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{ asset('css/login.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/auth.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">
|
||||
|
||||
<!-- Scripts -->
|
||||
@vite(['resources/sass/app.scss', 'resources/js/app.js'])
|
||||
|
|
|
@ -92,15 +92,27 @@
|
|||
<a class="nav-link @if(request()->is('gejala')) active @endif" href="/gejala">Gejala</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item mx-2">
|
||||
{{-- <li class="nav-item mx-2">
|
||||
<a class="nav-link @if(request()->is('aturan')) active @endif" href="/aturan">Aturan</a>
|
||||
</li>
|
||||
</li> --}}
|
||||
|
||||
</ul>
|
||||
<div class="ml-2">
|
||||
<a href="#" id="loginNav" class="btn btn-outline-success mr-3 mx-2">Login</a>
|
||||
<a href="#" class="btn btn-danger mx-2">Daftar</a>
|
||||
</div>
|
||||
@if (Auth::check())
|
||||
<div class="dropdown show">
|
||||
<a class="btn btn-secondary dropdown-toggle" href="#" role="button" id="dropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
Selamat Datang, {{Auth::user()->nama}}
|
||||
</a>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuLink">
|
||||
<a class="dropdown-item" href="logoutt">Logout</a>
|
||||
<a class="dropdown-item" href="profile">Profile</a>
|
||||
</div>
|
||||
</div>
|
||||
@else
|
||||
<a href="/login" id="loginNav" class="btn btn-outline-success mr-3 mx-2">Login</a>
|
||||
<a href="/register" class="btn btn-danger mx-2">Daftar</a>
|
||||
@endif
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
@ -111,6 +123,9 @@
|
|||
|
||||
|
||||
|
||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.12.9/dist/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
|
||||
|
||||
<script src="{{asset('js/boostrap.min.js')}}"></script>
|
||||
</body>
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
use App\Http\Controllers\PenyakitController;
|
||||
use App\Http\Controllers\AturanController;
|
||||
use App\Http\Controllers\KonsultasiController;
|
||||
use App\Http\Controllers\Auth\LoginController;
|
||||
/*
|
||||
|
||||
|--------------------------------------------------------------------------
|
||||
|
@ -35,6 +36,11 @@
|
|||
return view('konsultasi');
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
Auth::routes();
|
||||
Route::middleware(['auth'])->group(function () {
|
||||
//Aturan
|
||||
Route::get('/aturan', [AturanController::class, 'index']);
|
||||
Route::post('/tambah-aturan', [Atu21ranController::class, 'store'])->name('tambah-aturan');
|
||||
|
@ -43,8 +49,9 @@
|
|||
Route::get('diagnosa', [KonsultasiController::class, 'index']);
|
||||
Route::post('diagnosa', [KonsultasiController::class, 'hitungKonsultasi']);
|
||||
Route::get('diagnosa/{data_diagnosa}', [KonsultasiController::class, 'showdata']);
|
||||
Route::get('logoutt', [LoginController::class, 'logout']);
|
||||
|
||||
|
||||
Auth::routes();
|
||||
});
|
||||
|
||||
Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');
|
||||
|
|
Loading…
Reference in New Issue