62 lines
1.8 KiB
PHP
62 lines
1.8 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\DB;
|
|
use Illuminate\Support\Facades\Session;
|
|
|
|
class AkunController extends Controller
|
|
{
|
|
public function index()
|
|
{
|
|
$id_petugas = session('petugas_id');
|
|
|
|
if (!$id_petugas) {
|
|
return redirect('/')->with('error', 'Silahkan login terlebih dahulu');
|
|
}
|
|
|
|
$petugas = DB::table('petugas')
|
|
->where('id_petugas', $id_petugas)
|
|
->first();
|
|
|
|
if (!$petugas) {
|
|
return redirect('/')->with('error', 'Data petugas tidak ditemukan');
|
|
}
|
|
|
|
return view('akun', compact('petugas'));
|
|
}
|
|
|
|
public function forgotPasswordPetugas(Request $request)
|
|
{
|
|
$request->validate([
|
|
'id_petugas' => 'required',
|
|
'email' => 'required|email',
|
|
'password' => 'required|min:8|confirmed',
|
|
], [
|
|
'id_petugas.required' => 'ID Petugas wajib diisi.',
|
|
'email.required' => 'Email wajib diisi.',
|
|
'email.email' => 'Format email tidak valid.',
|
|
'password.required' => 'Password baru wajib diisi.',
|
|
'password.min' => 'Password minimal 8 karakter.',
|
|
'password.confirmed' => 'Konfirmasi password tidak cocok.'
|
|
]);
|
|
|
|
$petugas = DB::table('petugas')
|
|
->where('id_petugas', $request->id_petugas)
|
|
->where('email', $request->email)
|
|
->first();
|
|
|
|
if (!$petugas) {
|
|
return redirect('/')->with('error', 'Data tidak cocok.');
|
|
}
|
|
|
|
DB::table('petugas')
|
|
->where('id_petugas', $request->id_petugas)
|
|
->update([
|
|
'password' => bcrypt($request->password)
|
|
]);
|
|
|
|
return redirect('/')->with('success', 'Password berhasil diperbarui. Silakan login.');
|
|
}
|
|
} |