Commit User Profile dan CRUD Kriteria
This commit is contained in:
parent
2ba29a0dae
commit
7dabc26b0f
|
@ -4,6 +4,7 @@
|
|||
use App\Models\Criteria;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
use PhpParser\Node\NullableType;
|
||||
use RealRashid\SweetAlert\Facades\Alert;
|
||||
|
||||
class CriteriaController extends Controller
|
||||
|
@ -22,7 +23,7 @@ public function index()
|
|||
*/
|
||||
public function create()
|
||||
{
|
||||
//
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -30,7 +31,7 @@ public function create()
|
|||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
$validator = Validator::make($request->all(), [
|
||||
$validator = Validator::make($request->only('nama', 'prioritas'), [
|
||||
'nama' => 'required',
|
||||
'prioritas' => 'required',
|
||||
]);
|
||||
|
@ -44,7 +45,7 @@ public function store(Request $request)
|
|||
'prioritas'=>$request->prioritas,
|
||||
]);
|
||||
|
||||
return redirect()->route('kriteria.index')->with('success', 'Tambah Data Berhasil!');
|
||||
return redirect()->route('kriteria.index')->with('success', 'Data Kriteria Berhasil Ditambah!');
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -60,7 +61,8 @@ public function show(string $id)
|
|||
*/
|
||||
public function edit(string $id)
|
||||
{
|
||||
//
|
||||
$kriteria = Criteria::findOrFail($id);
|
||||
return view('kriteria.edit', compact('kriteria'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -68,7 +70,20 @@ public function edit(string $id)
|
|||
*/
|
||||
public function update(Request $request, string $id)
|
||||
{
|
||||
//
|
||||
// $kriteria = Criteria::findorfail($id);
|
||||
// $kriteria->update($request->all());
|
||||
|
||||
// return redirect('kriteria')->with('success', 'Data Kriteria Berhasil Diperbarui!');
|
||||
|
||||
$validatedData = $request->validate([
|
||||
'nama' => 'required',
|
||||
'prioritas' => 'required',
|
||||
]);
|
||||
|
||||
$kriteria = Criteria::findOrFail($id);
|
||||
$kriteria->update($validatedData);
|
||||
|
||||
return redirect()->route('kriteria.index')->with('success', 'Data Kriteria Berhasil Diperbarui!');
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -76,6 +91,9 @@ public function update(Request $request, string $id)
|
|||
*/
|
||||
public function destroy(string $id)
|
||||
{
|
||||
//
|
||||
$kriteria = Criteria::findorfail($id);
|
||||
$kriteria->delete();
|
||||
|
||||
return back()->with('info', 'Data Kriteria Berhasil Dihapus!');
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,46 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Support\Str;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Foundation\Auth\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function showProfile()
|
||||
{
|
||||
return view('user-profile');
|
||||
}
|
||||
|
||||
public function update_profile(Request $request)
|
||||
{
|
||||
$validator = Validator::make($request->all(), [
|
||||
'name' => ['required', 'min:3', 'max:225'],
|
||||
'username' => ['required', 'min:3', 'max:10'],
|
||||
'email' => 'required|email',
|
||||
], [
|
||||
'required' => ':attribute harus diisi.',
|
||||
'email' => ':attribute harus berupa email yang valid.',
|
||||
'min' => 'panjang :attribute minimal :min karakter.',
|
||||
]);
|
||||
|
||||
if ($validator->fails()) {
|
||||
return response()->json([
|
||||
'error' => true,
|
||||
'message' => Str::ucfirst($validator->errors()->first()),
|
||||
'data' => null
|
||||
]);
|
||||
}
|
||||
|
||||
$user = User::findOrFail(Auth::user()->id);
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username,
|
||||
'email' => $request->email,
|
||||
]);
|
||||
return redirect('user-profile')->with('success', 'Profile Berhasil Diperbarui!');
|
||||
}
|
||||
}
|
|
@ -36,7 +36,8 @@ class Kernel extends HttpKernel
|
|||
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
|
||||
\App\Http\Middleware\VerifyCsrfToken::class,
|
||||
\Illuminate\Routing\Middleware\SubstituteBindings::class,
|
||||
|
||||
\App\Http\Middleware\PreventBackHistory::class,
|
||||
|
||||
],
|
||||
|
||||
'api' => [
|
||||
|
@ -65,6 +66,7 @@ class Kernel extends HttpKernel
|
|||
'signed' => \App\Http\Middleware\ValidateSignature::class,
|
||||
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
||||
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
|
||||
'PreventBackHistory' =>\App\Http\Middleware\PreventBackHistory::class,
|
||||
];
|
||||
|
||||
protected $routeMiddleware = [
|
||||
|
|
|
@ -0,0 +1,24 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Http\Request;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
|
||||
class PreventBackHistory
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
|
||||
*/
|
||||
public function handle(Request $request, Closure $next): Response
|
||||
{
|
||||
$response = $next($request);
|
||||
|
||||
return $response->header('Cache-Control', 'no-store, no-cache, must-revalidate, post-check=0, pre-check=0')
|
||||
->header('Pragma', 'no-cache')
|
||||
->header('Expires', '0');
|
||||
}
|
||||
}
|
|
@ -7,6 +7,7 @@
|
|||
|
||||
class Criteria extends Model
|
||||
{
|
||||
protected $guarded = ['id'];
|
||||
protected $fillable = ['nama' , 'prioritas' .'bobot'];
|
||||
|
||||
public function SubCriteria() {
|
||||
|
|
|
@ -14,7 +14,7 @@ public function up(): void
|
|||
Schema::create('criterias', function (Blueprint $table) {
|
||||
$table->id();
|
||||
$table->string('nama');
|
||||
$table->integer('prioritas');
|
||||
$table->string('prioritas');
|
||||
$table->string('bobot');
|
||||
$table->timestamps();
|
||||
});
|
||||
|
|
|
@ -1,21 +1,30 @@
|
|||
@extends('layout.main')
|
||||
@section('body')
|
||||
@php
|
||||
$menu = 'Dashboard';
|
||||
$pageTitle = 'Home';
|
||||
@endphp
|
||||
|
||||
@include('layout.navbar')
|
||||
@include('layout.sidebar')
|
||||
|
||||
<div class="main-container">
|
||||
<div class="pd-ltr-20">
|
||||
<div class="card-box pd-20 height-50-p mb-30">
|
||||
<div class="row align-items-center">
|
||||
<div class="col-md-8">
|
||||
<h1 class="font-20 weight-500 mb-10 text-capitalize">
|
||||
Welcome Back!
|
||||
<div class="weight-600 font-20 text-blue">{{ auth()->user()->name }}</div>
|
||||
</h1>
|
||||
<div class="pd-ltr-20 xs-pd-20-10">
|
||||
<div class="min-height-200px">
|
||||
<div class="card-box pd-20 height-50-p mb-30">
|
||||
<div class="row align-items-center">
|
||||
<div class="col-md-8">
|
||||
<h1 class="font-20 weight-500 mb-10 text-capitalize">
|
||||
Welcome Back!
|
||||
<div class="weight-600 font-20 text-blue">{{ auth()->user()->name }}</div>
|
||||
</h1>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer-wrap pd-20 mb-20 card-box">
|
||||
<strong>Sistem Pendukung Keputusan Pemilihan Ekstrakurikuler Metode SMARTER</strong>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
|
|
@ -5,14 +5,32 @@
|
|||
$pageTitle = 'Data Kriteria';
|
||||
@endphp
|
||||
|
||||
@include('layout.page')
|
||||
@include('layout.navbar')
|
||||
@include('layout.sidebar')
|
||||
@include('layout.navbar')
|
||||
@include('layout.sidebar')
|
||||
|
||||
{{-- Main Content --}}
|
||||
<div class="main-container">
|
||||
<div class="pd-ltr-20 xs-pd-20-10">
|
||||
<div class="min-height-10px">
|
||||
<div class="min-height-200px">
|
||||
<div class="page-header">
|
||||
<div class="row">
|
||||
<div class="col-md-6 col-sm-12">
|
||||
<div class="title">
|
||||
<h4>{{ $menu }}</h4>
|
||||
</div>
|
||||
<nav aria-label="breadcrumb" role="navigation">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item"><a href="{{ route('dashboard.index') }}">Dashboard</a></li>
|
||||
@if(isset($pageTitle))
|
||||
<li class="breadcrumb-item active" aria-current="page">{{ $pageTitle }}</li>
|
||||
@else
|
||||
<li class="breadcrumb-item active" aria-current="page"></li>
|
||||
@endif
|
||||
</ol>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-box mb-30">
|
||||
<div class="pd-20">
|
||||
<h4 class="text-blue h4">Data Kriteria</h4>
|
||||
|
@ -42,13 +60,10 @@
|
|||
<td>{{ $criteria->prioritas }}</td>
|
||||
<td>{{ $criteria->bobot }}</td>
|
||||
<td>
|
||||
<button type="button" class="badge btn-success" title="View">
|
||||
<i class="icon dw dw-eye"></i>
|
||||
</button>
|
||||
<button type="button" class="badge btn-primary" title="Edit">
|
||||
<button type="button" class="badge btn-primary" data-toggle="modal" data-target="#edit-criteria" title="Edit">
|
||||
<i class="icon dw dw-edit2"></i>
|
||||
</button>
|
||||
<button type="button" class="badge btn-danger" title="Delete">
|
||||
<button type="button" class="badge btn-danger" data-toggle="modal" data-target="#delete-criteria" title="Delete">
|
||||
<i class="icon dw dw-delete-3"></i>
|
||||
</button>
|
||||
</td>
|
||||
|
@ -60,6 +75,9 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer-wrap pd-20 mb-20 card-box">
|
||||
<strong>Sistem Pendukung Keputusan Pemilihan Ekstrakurikuler Metode SMARTER</strong>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -84,7 +102,7 @@
|
|||
<div class="form-group row">
|
||||
<label class="col-sm-2 col-form-label">Nama</label>
|
||||
<div class="col-sm-10">
|
||||
<input type="text" class="form-control" id="name" name="name" required="">
|
||||
<input type="text" class="form-control" id="nama" name="nama" required="">
|
||||
<div class="invalid-feedback">
|
||||
Tolong isi Nama Kriteria!
|
||||
</div>
|
||||
|
@ -109,11 +127,93 @@
|
|||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Batal</button>
|
||||
<button type="submit" class="btn btn-primary" data-target="#add-criteria">Simpan</button>
|
||||
<button type="submit" class="btn btn-primary">Simpan</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{-- Modal Edit --}}
|
||||
<div class="modal fade" id="edit-criteria" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel"
|
||||
style="display: none;" aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal-content">
|
||||
@if(session('error'))
|
||||
<div class="alert alert-danger">{{ session('error') }}</div>
|
||||
@endif
|
||||
<div class="modal-header">
|
||||
<h4 class="modal-title" id="myLargeModalLabel">
|
||||
Edit Kriteria
|
||||
</h4>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<form action="{{ route('kriteria.update', $criteria->id) }}" class="needs-validation" novalidate="" method="POST">
|
||||
@csrf
|
||||
@method('PUT')
|
||||
<div class="card-body">
|
||||
<div class="form-group row">
|
||||
<label class="col-sm-2 col-form-label">Nama</label>
|
||||
<div class="col-sm-10">
|
||||
<input type="text" class="form-control" id="nama" name="nama" required="" value="{{ $criteria->nama }}">
|
||||
<div class="invalid-feedback">
|
||||
Tolong isi Nama Kriteria!
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@if($errors->has('nama'))
|
||||
<div class="alert alert-danger">{{ $errors->first('nama') }}</div>
|
||||
@endif
|
||||
<div class="form-group row">
|
||||
<label class="col-sm-2 col-form-label">Prioritas</label>
|
||||
<div class="col-sm-10">
|
||||
<input type="text" class="form-control" id="prioritas" name="prioritas" required="" value="{{ $criteria->prioritas }}">
|
||||
<div class="invalid-feedback">
|
||||
Tolong isi Urutan Prioritas!
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@if($errors->has('prioritas'))
|
||||
<div class="alert alert-danger">{{ $errors->first('prioritas') }}</div>
|
||||
@endif
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Batal</button>
|
||||
<button type="submit" class="btn btn-primary">Simpan</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Modal Delete -->
|
||||
<div class="modal fade" id="delete-criteria" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel"
|
||||
style="display: none;" aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h4 class="modal-title" id="myLargeModalLabel">
|
||||
Konfirmasi Hapus Data Kriteria
|
||||
</h4>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>Apakah Anda yakin ingin menghapus data kriteria ini?</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Batal</button>
|
||||
<form id="delete-form" action="{{ route('kriteria.destroy', $criteria->id) }}" method="POST">
|
||||
@csrf
|
||||
@method('DELETE')
|
||||
<button type="submit" class="btn btn-danger">Hapus</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@endsection
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<head>
|
||||
<!-- Basic Page Info -->
|
||||
<meta charset="utf-8" />
|
||||
<title>DeskApp</title>
|
||||
<title>SIPEX</title>
|
||||
|
||||
<!-- Site favicon -->
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="{{ asset('vendors/images/apple-touch-icon.png') }}" />
|
||||
|
|
|
@ -48,7 +48,7 @@
|
|||
<span class="user-name"> Hi, {{ Auth::user()->username }}</span>
|
||||
</a>
|
||||
<div class="dropdown-menu dropdown-menu-right dropdown-menu-icon-list">
|
||||
<a class="dropdown-item" href="profile.html"><i class="dw dw-user1"></i> Profile</a>
|
||||
<a href="({{ route('user-profile') }})" class="dropdown-item"><i class="dw dw-user1"></i> Profile</a>
|
||||
@auth
|
||||
<a href="{{ route('logout') }}" class="dropdown-item has-icon text-danger"
|
||||
onclick="event.preventDefault(); document.getElementById('logout-form').submit();">
|
||||
|
|
|
@ -1,30 +0,0 @@
|
|||
@extends('layout.main')
|
||||
|
||||
<div class="main-container">
|
||||
<div class="pd-ltr-20 xs-pd-20-10">
|
||||
<div class="min-height-200px">
|
||||
<div class="page-header">
|
||||
<div class="row">
|
||||
<div class="col-md-6 col-sm-12">
|
||||
<div class="title">
|
||||
<h4>{{ $menu }}</h4>
|
||||
</div>
|
||||
<nav aria-label="breadcrumb" role="navigation">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item"><a href="{{ route('dashboard.index') }}">Dashboard</a></li>
|
||||
@if(isset($pageTitle))
|
||||
<li class="breadcrumb-item active" aria-current="page">{{ $pageTitle }}</li>
|
||||
@else
|
||||
<li class="breadcrumb-item active" aria-current="page"></li>
|
||||
@endif
|
||||
</ol>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{-- <div class="footer-wrap pd-20 mb-20 card-box">
|
||||
Sistem Pendukung Keputusan Pemilihan Ekstrakurikuler Metode SMARTER
|
||||
</div> --}}
|
||||
</div>
|
||||
</div>
|
|
@ -0,0 +1,162 @@
|
|||
@extends('layout.main')
|
||||
@section('body')
|
||||
@php
|
||||
$menu = 'Profile';
|
||||
$pageTitle = 'User Profile';
|
||||
@endphp
|
||||
|
||||
@include('layout.navbar')
|
||||
@include('layout.sidebar')
|
||||
|
||||
{{-- Main Content --}}
|
||||
<div class="main-container">
|
||||
<div class="pd-ltr-20 xs-pd-20-10">
|
||||
<div class="min-height-200px">
|
||||
<div class="page-header">
|
||||
<div class="row">
|
||||
<div class="col-md-6 col-sm-12">
|
||||
<div class="title">
|
||||
<h4>{{ $menu }}</h4>
|
||||
</div>
|
||||
<nav aria-label="breadcrumb" role="navigation">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item"><a href="{{ route('dashboard.index') }}">Dashboard</a></li>
|
||||
@if (isset($pageTitle))
|
||||
<li class="breadcrumb-item active" aria-current="page">{{ $pageTitle }}</li>
|
||||
@else
|
||||
<li class="breadcrumb-item active" aria-current="page"></li>
|
||||
@endif
|
||||
</ol>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-xl-4 col-lg-4 col-md-4 col-sm-12 mb-30">
|
||||
<div class="pd-20 card-box height-50-p">
|
||||
<div class="profile-photo">
|
||||
<a href="modal" data-toggle="modal" data-target="#modal" class="edit-avatar">
|
||||
<i class="fa fa-pencil"></i>
|
||||
</a>
|
||||
<img src="vendors/images/photo1.jpg" alt="" class="avatar-photo" />
|
||||
<div class="modal fade" id="modal" tabindex="-1" role="dialog"
|
||||
aria-labelledby="modalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-body pd-5">
|
||||
<div class="img-container">
|
||||
<img id="image" src="vendors/images/photo2.jpg" alt="Picture" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<input type="submit" value="Update" class="btn btn-primary" />
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">
|
||||
Close
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<h5 class="text-center h5 mb-0">{{ Auth::user()->name }}</h5>
|
||||
<p class="text-center text-muted font-14">
|
||||
{{ Auth::user()->role }}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xl-8 col-lg-8 col-md-8 col-sm-12 mb-30">
|
||||
<div class="card-box height-100-p overflow-hidden">
|
||||
<div class="profile-tab height-100-p">
|
||||
<div class="tab height-100-p">
|
||||
<ul class="nav nav-tabs customtab" role="tablist">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link active" data-toggle="tab" href="#profile"
|
||||
role="tab">Profile</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" data-toggle="tab" href="#password"
|
||||
role="tab">Password</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab-content">
|
||||
<!-- Profile -->
|
||||
<div class="tab-pane fade show active" id="profile" role="tabpanel">
|
||||
<div class="profile-setting">
|
||||
<form method="POST" action="{{ route('user-profile') }}" class="needs-validation" novalidate="">
|
||||
@csrf
|
||||
<h4 class=" text-center text-blue h5 mt-3 mb-0">Edit Your Personal Data</h4>
|
||||
<ul class="profile-edit-list row">
|
||||
<li class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label for="name">Name</label>
|
||||
<input id="name" type="text" class="form-control" name="name" value="{{ Auth::user()->name }}">
|
||||
<div class="invalid-feedback">Please fill in your name </div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label for="name">Username</label>
|
||||
<input id="name" type="text" class="form-control" name="username" value="{{ Auth::user()->username }}">
|
||||
<div class="invalid-feedback">Please fill in your username </div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label for="name">Email</label>
|
||||
<input id="name" type="text" class="form-control" name="email" value="{{ Auth::user()->email }}">
|
||||
<div class="invalid-feedback">Please fill in your email </div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="col-sm-12">
|
||||
<div class="input-group mb-3 mx-auto">
|
||||
<button class="btn btn-primary btn-lg btn-block" type="submit">Save Changes</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Password -->
|
||||
<div class="tab-pane fade" id="password" role="tabpanel">
|
||||
<div class="profile-setting">
|
||||
<form method="POST" action="{{ route('user-profile') }}" class="needs-validation" novalidate="">
|
||||
@csrf
|
||||
<h4 class=" text-center text-blue h5 mt-3 mb-0">Edit Your Personal Password</h4>
|
||||
<ul class="profile-edit-list row">
|
||||
<li class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="password">Current Password</label>
|
||||
<input id="password" type="text" class="form-control" name="password">
|
||||
<div class="invalid-feedback">Please fill in your current password </div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="new_password">New Password</label>
|
||||
<input id="new_password" type="text" class="form-control" name="new_password">
|
||||
<div class="invalid-feedback">Please fill in your new password </div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="col-sm-12">
|
||||
<div class="input-group mb-3 mx-auto">
|
||||
<button class="btn btn-primary btn-lg btn-block" type="submit">Save Changes</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer-wrap pd-20 mb-20 card-box">
|
||||
<strong>Sistem Pendukung Keputusan Pemilihan Ekstrakurikuler Metode SMARTER</strong>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
|
@ -3,6 +3,7 @@
|
|||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use App\Http\Controllers\AuthController;
|
||||
use App\Http\Controllers\UserController;
|
||||
use App\Http\Controllers\SiswaController;
|
||||
use App\Http\Controllers\CriteriaController;
|
||||
use App\Http\Controllers\WakilKepalaController;
|
||||
|
@ -76,11 +77,22 @@
|
|||
// Route::get('/siswa/dashboard', [SiswaController::class, 'dashboard'])->name('siswa.dashboard');
|
||||
// });
|
||||
|
||||
Route::get('/dashboard/index', function () {
|
||||
Route::middleware(['auth','web','PreventBackHistory'])->group(function () {
|
||||
Route::get('/dashboard', function () {
|
||||
return view('dashboard.index');
|
||||
})->name('dashboard.index');
|
||||
|
||||
Route::get('/user-profile', function () {
|
||||
if (!Auth::check()) {
|
||||
return redirect('/login');
|
||||
}
|
||||
return view('user.user-profile');
|
||||
})->name('user-profile');
|
||||
Route::post('/user-profile', [UserController::class, 'update_profile']);
|
||||
|
||||
Route::resource('kriteria', CriteriaController::class);
|
||||
|
||||
Route::get('/logout', [AuthController::class, 'logout'])->name('logout');
|
||||
Route::post('/logout', [AuthController::class, 'logout'])->name('logout');
|
||||
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue