Newer
Older
<?php
namespace App\Http\Controllers\API;
use App\Http\Controllers\Controller;
use App\User;
use Illuminate\Http\Request;
class UserController extends Controller
{
public function allUsers()
{
return response()->json(['users' => User::all()], 200);
}
public function getProfile()
{
return response()->json(['user' => Auth::user()], 201);
}
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
public function getUser($id)
{
try {
$user = User::findOrFail($id);
return response()->json(['user' => $user], 200);
} catch (\Exception $e) {
return response()->json(['message' => 'user not found!'], 404);
}
}
public function updateProfile(Request $request)
{
$this->validate($request, [
'name' => 'required|string',
'email' => 'required|email|',
'password' => 'confirmed',
]);
try {
$user = Auth::user();
if( $user->name != $request->name) {
$user->name = $request->name;
}
if( $user->email != $request->email){
$this->validate($request, [
'email' => 'unique:users']);
$user->email = $request->email;
}
if( isset($request->password)) {
$plainPassword = $request->input('password');
$user->password = app('hash')->make($plainPassword);
}
$user->save();
return response()->json(['user' => $user], 200);
} catch (\Exception $e) {
return response()->json(['message' => 'user not found!'], 404);
}
}
public function updateUser(Request $request, $id)
{
$this->validate($request, [
'name' => 'required|string',
'role' => 'required|string',
'email' => 'required|email|',
'password' => 'confirmed',
]);
try {
$user = User::findOrFail($id);
if( $user->name != $request->name) {
$user->name = $request->name;
}
if( $user->email != $request->email){
$this->validate($request, [
'email' => 'unique:users']);
$user->email = $request->email;
}
if( isset($request->password)) {
$plainPassword = $request->input('password');
$user->password = app('hash')->make($plainPassword);
}
$user->save();
return response()->json(['user' => $user], 200);
} catch (\Exception $e) {
return response()->json(['message' => 'user not found!'], 404);
}
}
public function deleteUser($id)
{
try {
$user = User::findOrFail($id);
$user->delete();
return response()->json(['message' => 'user successfully deleted'], 404);
} catch (\Exception $e) {
return response()->json(['message' => 'user not found!'], 404);
}
}
}