| Total Complexity | 8 |
| Total Lines | 121 |
| Duplicated Lines | 0 % |
| Changes | 1 | ||
| Bugs | 0 | Features | 0 |
| 1 | <?php |
||
| 16 | class SettingsController extends Controller |
||
| 17 | { |
||
| 18 | |||
| 19 | /** |
||
| 20 | * Show the form for editing the logged-in User's settings |
||
| 21 | * |
||
| 22 | * @param \Illuminate\Http\Request $request Incoming request. |
||
| 23 | * @return \Illuminate\Http\Response |
||
| 24 | */ |
||
| 25 | public function editAuthenticated(Request $request) |
||
| 28 | } |
||
| 29 | |||
| 30 | |||
| 31 | /** |
||
| 32 | * Display the specified resource. |
||
| 33 | * |
||
| 34 | * @param \Illuminate\Http\Request $request Incoming request. |
||
| 35 | * @param \App\Models\User $user Incoming User. |
||
|
2 ignored issues
–
show
|
|||
| 36 | * @return \Illuminate\Http\Response |
||
| 37 | */ |
||
| 38 | public function edit(Request $request, User $user) |
||
| 61 | ); |
||
| 62 | } |
||
| 63 | |||
| 64 | /** |
||
| 65 | * Update personal information |
||
| 66 | * |
||
| 67 | * @param \Illuminate\Http\Request $request Incoming request. |
||
|
1 ignored issue
–
show
|
|||
| 68 | * @param \App\Models\User $user Incoming User. |
||
|
2 ignored issues
–
show
|
|||
| 69 | * @return \Illuminate\Http\Response |
||
| 70 | */ |
||
| 71 | public function updatePersonal(Request $request, User $user) |
||
| 72 | { |
||
| 73 | $validData = $request->validate([ |
||
| 74 | 'first_name' => 'required|string|max:191', |
||
| 75 | 'last_name' => 'required|string|max:191', |
||
| 76 | 'email' => [ |
||
| 77 | 'required', |
||
| 78 | 'email:rfc', |
||
| 79 | 'max:191', |
||
| 80 | // Email may match existing email for this user, must be unique if changed. |
||
| 81 | Rule::unique('users', 'email')->ignore($user->id) |
||
| 82 | ] |
||
| 83 | ]); |
||
| 84 | |||
| 85 | if ($validData) { |
||
| 86 | $user->update([ |
||
| 87 | 'first_name' => $validData['first_name'], |
||
| 88 | 'last_name' => $validData['last_name'], |
||
| 89 | 'email' => $validData['email'], |
||
| 90 | ]); |
||
| 91 | } |
||
| 92 | |||
| 93 | return redirect()->route(WhichPortal::prefixRoute('settings.edit'))->withSuccess(Lang::get('success.update_personal')); |
||
| 94 | } |
||
| 95 | |||
| 96 | /** |
||
| 97 | * Update password. |
||
| 98 | * |
||
| 99 | * @param \Illuminate\Http\Request $request Incoming request. |
||
|
1 ignored issue
–
show
|
|||
| 100 | * @param \App\Models\User $user Incoming User. |
||
|
2 ignored issues
–
show
|
|||
| 101 | * @return \Illuminate\Http\Response |
||
| 102 | */ |
||
| 103 | public function updatePassword(Request $request, User $user) |
||
| 104 | { |
||
| 105 | $validData = $request->validate([ |
||
| 106 | 'current_password' => ['required', new PasswordCorrectRule], |
||
| 107 | 'new_password' => ['required', new PasswordFormatRule], |
||
| 108 | 'new_confirm_password' => ['required', 'same:new_password'] |
||
| 109 | ]); |
||
| 110 | |||
| 111 | if ($validData) { |
||
| 112 | $user->update(['password'=> Hash::make($validData['new_password'])]); |
||
| 113 | } |
||
| 114 | |||
| 115 | return redirect()->route(WhichPortal::prefixRoute('settings.edit'))->withSuccess(Lang::get('success.update_password')); |
||
| 116 | } |
||
| 117 | |||
| 118 | /** |
||
| 119 | * Update government information. |
||
| 120 | * |
||
| 121 | * @param \Illuminate\Http\Request $request Incoming request. |
||
|
1 ignored issue
–
show
|
|||
| 122 | * @param \App\Models\User $user Incoming User. |
||
|
2 ignored issues
–
show
|
|||
| 123 | * @return \Illuminate\Http\Response |
||
| 124 | */ |
||
| 125 | public function updateGovernment(Request $request, User $user) |
||
| 137 | } |
||
| 138 | } |
||
| 139 |