update password

This commit is contained in:
afiq
2022-01-25 10:05:24 +08:00
6 changed files with 162 additions and 9 deletions
@@ -0,0 +1,53 @@
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use App\Rules\MatchOldPassword;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Http;
use App\User;
class ChangePasswordController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Contracts\Support\Renderable
*/
public function index()
{
$auth_user = Auth::user();
$cawangan_info = Http::get(config('api.url') . '/api/cawangan/'. $auth_user['cawangan'])->json();
return view('user.update_password',compact('cawangan_info'));
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Contracts\Support\Renderable
*/
public function store(Request $request)
{
$request->validate([
'current_password' => ['required', new MatchOldPassword],
'new_password' => ['required'],
'new_confirm_password' => ['same:new_password'],
]);
User::find(auth()->user()->id)->update(['password'=> Hash::make($request->new_password)]);
return redirect()->route('profile');
}
}
+1 -1
View File
@@ -2693,7 +2693,7 @@ class KhazanahController extends Controller
if($bakilelong['rugilelong'] != 0) array_push($tanggungansemasa,['glcode' => '3000/020','descpt' => 'Kerugian Lelong','amaun' => $bakilelong['rugilelong']]);
if($wtd > 0) array_push($tanggungansemasa,['glcode' => '3000/021','descpt' => 'Wang Tak Dituntut','amaun' => $wtd]);
if($cajlelong > 0) array_push($tanggungansemasa,['glcode' => '5000/213','descpt' => 'Pendapatan Caj Lelong','amaun' => $cajlelong]);
if($untungrugiterkumpul > 0) array_push($tanggungansemasa,['glcode' => '7000/101','descpt' => 'Untung/Rugi Terkumpul','amaun' => $untungrugiterkumpul]);
if($untungrugiterkumpul != 0) array_push($tanggungansemasa,['glcode' => '7000/101','descpt' => 'Untung/Rugi Terkumpul','amaun' => $untungrugiterkumpul]);
if($cajperkhidmatan > 0) array_push($tanggungansemasa,['glcode' => '5000/213','descpt' => 'Caj Perkhidmatan Terkumpul','amaun' => $cajperkhidmatan]);
if($cajlelongxtra > 0) array_push($tanggungansemasa,['glcode' => '5000/313','descpt' => 'Pendapatan Caj Lelong Xtra ','amaun' => $cajlelongxtra]);
if($upahsimpanxtra > 0) array_push($tanggungansemasa,['glcode' => '5000/413','descpt' => 'Upah Simpan Xtra - Koperasi PKB','amaun' => $upahsimpanxtra]);
+31
View File
@@ -0,0 +1,31 @@
<?php
namespace App\Rules;
use Illuminate\Contracts\Validation\Rule;
use Illuminate\Support\Facades\Hash;
class MatchOldPassword implements Rule
{
/**
* Determine if the validation rule passes.
*
* @param string $attribute
* @param mixed $value
* @return bool
*/
public function passes($attribute, $value)
{
return Hash::check($value, auth()->user()->password);
}
/**
* Get the validation error message.
*
* @return string
*/
public function message()
{
return 'The :attribute is match with old password.';
}
}
+13 -8
View File
@@ -14,24 +14,29 @@
<div class="card-body text-center">
<div class="col-md-12" style="margin-right:auto;margin-left:auto">
<div class="row form-group">
<div class="col-md-12">
<div class="col-md-6">
<div class="row form-group">
<div class="col-md-6">NAMA</div>
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ $auth_user->name }}"></div>
<div class="col-md-6">NO TELEFON</div>
<div class="col-md-6">Nama</div>
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ strtoupper($auth_user->name) }}"></div>
<div class="col-md-6">No Telefon</div>
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ $auth_user->no_telefon }}"></div>
<div class="col-md-6">Email</div>
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ $auth_user->email }}"></div>
</div>
</div>
<div class="col-md-12">
<div class="col-md-6">
<div class="row form-group">
<div class="col-md-6">NO KP</div>
<div class="col-md-6">No Kad Pengenalan</div>
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ $auth_user->no_kp }}"></div>
<div class="col-md-6">JAWATAN</div>
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ $auth_user->role_harian }}"></div>
<div class="col-md-6">Jawatan</div>
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ strtoupper($auth_user->role_harian) }}"></div>
<div class="col-md-6">Baki Perubatan</div>
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ 'RM '. number_format($auth_user->perubatan,2) }}"></div>
</div>
</div>
</div>
</div>
<a href="{{ route('user.password') }}" class="btn btn-primary">Kemaskini Katalaluan</a>
</div>
</div>
</div>
@@ -0,0 +1,62 @@
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col-md-8">
<nav aria-label="breadcrumb">
<ol class="breadcrumb pb-3">
<li class="breadcrumb-item"><a href="{{ route('home') }}">Home</a></li>
<li class="breadcrumb-item"><a href="{{ route('profile') }}">Maklumat Pengguna</a></li>
<li class="breadcrumb-item active" aria-current="page">Kemaskini Katalaluan</li>
</ol>
</nav>
<div class="card">
<div class="card-body">
<form method="POST" action="{{ route('change.password') }}">
@csrf
@foreach ($errors->all() as $error)
<p class="text-danger">{{ $error }}</p>
@endforeach
<div class="form-group row">
<label for="password" class="col-md-4 col-form-label text-md-right">Current Password</label>
<div class="col-md-6">
<input id="password" type="password" class="form-control" name="current_password" autocomplete="current-password">
</div>
</div>
<div class="form-group row">
<label for="password" class="col-md-4 col-form-label text-md-right">New Password</label>
<div class="col-md-6">
<input id="new_password" type="password" class="form-control" name="new_password" autocomplete="current-password">
</div>
</div>
<div class="form-group row">
<label for="password" class="col-md-4 col-form-label text-md-right">New Confirm Password</label>
<div class="col-md-6">
<input id="new_confirm_password" type="password" class="form-control" name="new_confirm_password" autocomplete="current-password">
</div>
</div>
<div class="form-group row mb-0">
<div class="col-md-8 offset-md-4">
<button type="submit" class="btn btn-primary">
Simpan Katalaluan
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
+2
View File
@@ -38,6 +38,8 @@ Route::get('test', function () {
});
Route::get('logs', '\Rap2hpoutre\LaravelLogViewer\LogViewerController@index');
Route::get('change-password', ['as'=>'user.password','uses'=>'ChangePasswordController@index']);
Route::post('change-password', ['as'=>'change.password','uses'=>'ChangePasswordController@store']);
Route::get('/welcome',function(){