This repository was archived by the owner on Nov 23, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 282
Expand file tree
/
Copy pathMyAccountController.php
More file actions
85 lines (70 loc) · 2.23 KB
/
Copy pathMyAccountController.php
File metadata and controls
85 lines (70 loc) · 2.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
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
<?php
namespace Backpack\Base\app\Http\Controllers\Auth;
use Alert;
use Auth;
use Backpack\Base\app\Http\Controllers\Controller;
use Backpack\Base\app\Http\Requests\AccountInfoRequest;
use Backpack\Base\app\Http\Requests\ChangePasswordRequest;
use Illuminate\Support\Facades\Hash;
class MyAccountController extends Controller
{
protected $data = [];
public function __construct()
{
$this->middleware(backpack_auth());
}
/**
* Show the user a form to change his personal information.
*/
public function getAccountInfoForm()
{
$this->data['title'] = trans('backpack::base.my_account');
$this->data['user'] = $this->guard()->user();
return view('backpack::auth.account.update_info', $this->data);
}
/**
* Save the modified personal information for a user.
*/
public function postAccountInfoForm(AccountInfoRequest $request)
{
$result = $this->guard()->user()->update($request->except(['_token']));
if ($result) {
Alert::success(trans('backpack::base.account_updated'))->flash();
} else {
Alert::error(trans('backpack::base.error_saving'))->flash();
}
return redirect()->back();
}
/**
* Show the user a form to change his login password.
*/
public function getChangePasswordForm()
{
$this->data['title'] = trans('backpack::base.my_account');
$this->data['user'] = $this->guard()->user();
return view('backpack::auth.account.change_password', $this->data);
}
/**
* Save the new password for a user.
*/
public function postChangePasswordForm(ChangePasswordRequest $request)
{
$user = $this->guard()->user();
$user->password = Hash::make($request->new_password);
if ($user->save()) {
Alert::success(trans('backpack::base.account_updated'))->flash();
} else {
Alert::error(trans('backpack::base.error_saving'))->flash();
}
return redirect()->back();
}
/**
* Get the guard to be used for account manipulation.
*
* @return \Illuminate\Contracts\Auth\StatefulGuard
*/
protected function guard()
{
return Auth::guard();
}
}