MIF_E31212289/app/Http/Controllers/UsersController.php

91 lines
2.3 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\Users;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use App\Helpers\EncryptionHelper;
class UsersController extends Controller
{
public function index()
{
$data = Users::all();
$type_menu = "Users Management";
return view('users.index', compact('type_menu', 'data'));
}
public function create()
{
$type_menu = "Users Management";
return view('users.create', compact('type_menu'));
}
public function store(Request $request)
{
$request->validate([
'name' => 'required|string|max:255',
'email' => 'required|email|unique:users,email'
]);
Users::create([
'name' => $request->name,
'email' => $request->email,
'password' => bcrypt($request->password),
]);
return redirect()->route('users.index')->with('success', 'Users added successfully!');
}
public function edit($id)
{
$id = EncryptionHelper::decryptId($id);
$users = Users::findOrFail($id);
$type_menu = "Users Management";
return view('users.edit', compact('type_menu', 'users'));
}
public function update(Request $request, $id)
{
$users = Users::findOrFail($id);
// die(var_dump($users));
$request->validate([
'name' => 'required',
'email' => 'required',
]);
$update = [
'name' => $request->name,
'email' => $request->email
];
if($request->password !=''){
$users->update([
'name' => $request->name,
'email' => $request->email,
'password' => bcrypt($request->password)
]);
}else{
$users->update([
'name' => $request->name,
'email' => $request->email
]);
}
// return redirect()->route('users.index')->with('success', 'Users added successfully!');
return redirect()->route('users.index')->with('success', 'Users updated successfully!');
}
public function destroy($id)
{
$users = Users::findOrFail($id);
$users->delete();
return redirect()->route('users.index')->with('success', 'Users deleted successfully!');
}
}