From 307727f5585aec92860a8f747110c4784d896483 Mon Sep 17 00:00:00 2001 From: Arya Dwi Putra Date: Mon, 1 Dec 2025 20:06:09 +0700 Subject: [PATCH] Wire login/register views to auth logic and add auth routes --- app/Http/Controllers/AuthController.php | 68 ++++++++++ .../authentication/sign-in-cover.blade.php | 111 ++++++++++++++++ .../authentication/sign-up-cover.blade.php | 120 ++++++++++++++++++ routes/web.php | 7 + 4 files changed, 306 insertions(+) create mode 100644 app/Http/Controllers/AuthController.php create mode 100644 resources/views/pages/authentication/sign-in-cover.blade.php create mode 100644 resources/views/pages/authentication/sign-up-cover.blade.php diff --git a/app/Http/Controllers/AuthController.php b/app/Http/Controllers/AuthController.php new file mode 100644 index 0000000..ce1701d --- /dev/null +++ b/app/Http/Controllers/AuthController.php @@ -0,0 +1,68 @@ +validate([ + 'email' => ['required', 'email'], + 'password' => ['required'], + ]); + + $remember = $request->boolean('remember'); + + if (Auth::attempt($credentials, $remember)) { + $request->session()->regenerate(); + return redirect()->intended(route('index')); + } + + return back()->withErrors(['email' => 'Email atau password salah.'])->withInput(); + } + + public function showRegister() + { + return view('pages.authentication.sign-up-cover'); + } + + public function register(Request $request): RedirectResponse + { + $data = $request->validate([ + 'name' => ['required', 'string', 'max:255'], + 'email' => ['required', 'email', 'max:255', 'unique:users,email'], + 'password' => ['required', 'confirmed', Password::min(8)], + ]); + + $user = User::create([ + 'name' => $data['name'], + 'email' => $data['email'], + 'password' => Hash::make($data['password']), + ]); + + Auth::login($user); + + return redirect()->route('index'); + } + + public function logout(Request $request): RedirectResponse + { + Auth::logout(); + $request->session()->invalidate(); + $request->session()->regenerateToken(); + + return redirect()->route('login'); + } +} diff --git a/resources/views/pages/authentication/sign-in-cover.blade.php b/resources/views/pages/authentication/sign-in-cover.blade.php new file mode 100644 index 0000000..3cb24a6 --- /dev/null +++ b/resources/views/pages/authentication/sign-in-cover.blade.php @@ -0,0 +1,111 @@ + +@extends('layouts.custom-master') + +@php +// Passing the bodyClass variable from the view to the layout +$bodyClass = 'bg-white'; +@endphp + +@section('styles') + + + +@endsection + +@section('content') + +
+
+
+
+
+
+
+

Hi,Welcome back!

+

Please enter your credentials

+
+
+ @csrf +
+
+ + + @error('email') {{ $message }} @enderror +
+
+ +
+ + + @error('password') {{ $message }} @enderror +
+
+
+ + +
+
+
+
+
+ +
+
+
+ OR +
+
+ + +
+
+ Dont have an account? Register Here +
+
+
+
+
+
+
+
+ +
+ +
+
+
+

Welcome to Dashboard

+

Manage your website and content with ease using our powerful admin tools.

+
+
+ +
+
+
+
+
+ +@endsection + +@section('scripts') + + + + +@endsection diff --git a/resources/views/pages/authentication/sign-up-cover.blade.php b/resources/views/pages/authentication/sign-up-cover.blade.php new file mode 100644 index 0000000..858d62a --- /dev/null +++ b/resources/views/pages/authentication/sign-up-cover.blade.php @@ -0,0 +1,120 @@ + +@extends('layouts.custom-master') + +@php +// Passing the bodyClass variable from the view to the layout +$bodyClass = 'bg-white'; +@endphp + +@section('styles') + + + +@endsection + +@section('content') + +
+
+
+
+
+
+
+

Buat Akun Baru

+

Daftarkan akun untuk mulai mengelola aset.

+
+
+ @csrf +
+
+ + + @error('name') {{ $message }} @enderror +
+
+ + + @error('email') {{ $message }} @enderror +
+
+ +
+ + + @error('password') {{ $message }} @enderror +
+
+
+ + +
+
+
+ + +
+
+
+
+ +
+
+
+ OR +
+
+ + +
+
+ Already have a account? Login Here +
+
+
+
+
+
+
+
+ +
+ +
+
+
+

Welcome to Dashboard

+

Manage your website and content with ease using our powerful admin tools.

+
+
+ +
+
+
+
+
+ +@endsection + +@section('scripts') + + + + +@endsection diff --git a/routes/web.php b/routes/web.php index 47e11e6..983c231 100644 --- a/routes/web.php +++ b/routes/web.php @@ -22,6 +22,7 @@ use App\Http\Controllers\AssetAuditController; use App\Http\Controllers\AssetTransactionPageController; use App\Http\Controllers\ReportController; use App\Http\Controllers\AssetMaintenanceController; +use App\Http\Controllers\AuthController; use App\Http\Controllers\Controller; Route::get('/', function () { @@ -65,3 +66,9 @@ Route::get('reports/movements', [ReportController::class, 'movements'])->name('r Route::get('reports/disposals', [ReportController::class, 'disposals'])->name('reports.disposals'); Route::get('reports/audits', [ReportController::class, 'audits'])->name('reports.audits'); Route::resource('asset-maintenances', AssetMaintenanceController::class)->only(['index','store','update','destroy']); + +Route::get('login', [AuthController::class, 'showLogin'])->name('login'); +Route::post('login', [AuthController::class, 'login']); +Route::get('register', [AuthController::class, 'showRegister'])->name('register'); +Route::post('register', [AuthController::class, 'register']); +Route::post('logout', [AuthController::class, 'logout'])->name('logout');