Skip to content

Commit bc03365

Browse files
author
Tony Lea
committed
Adding beginning to profile settings
1 parent b1f50d5 commit bc03365

File tree

19 files changed

+1008
-143
lines changed

19 files changed

+1008
-143
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
/storage/*.key
77
/storage/pail
88
/vendor
9+
.DS_Store
910
.env
1011
.env.backup
1112
.env.production
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
<?php
2+
3+
namespace App\Http\Controllers\Settings;
4+
5+
use App\Http\Controllers\Controller;
6+
use App\Http\Requests\ProfileUpdateRequest;
7+
use Illuminate\Contracts\Auth\MustVerifyEmail;
8+
use Illuminate\Http\RedirectResponse;
9+
use Illuminate\Http\Request;
10+
use Illuminate\Support\Facades\Auth;
11+
use Illuminate\Support\Facades\Redirect;
12+
use Inertia\Inertia;
13+
use Inertia\Response;
14+
15+
class ProfileController extends Controller
16+
{
17+
/**
18+
* Display the user's profile form.
19+
*/
20+
public function edit(Request $request): Response
21+
{
22+
return Inertia::render('Settings/Profile', [
23+
'mustVerifyEmail' => $request->user() instanceof MustVerifyEmail,
24+
'status' => session('status'),
25+
]);
26+
}
27+
28+
/**
29+
* Update the user's profile information.
30+
*/
31+
public function update(ProfileUpdateRequest $request): RedirectResponse
32+
{
33+
$request->user()->fill($request->validated());
34+
35+
if ($request->user()->isDirty('email')) {
36+
$request->user()->email_verified_at = null;
37+
}
38+
39+
$request->user()->save();
40+
41+
return Redirect::route('profile.edit');
42+
}
43+
44+
/**
45+
* Delete the user's account.
46+
*/
47+
public function destroy(Request $request): RedirectResponse
48+
{
49+
$request->validate([
50+
'password' => ['required', 'current_password'],
51+
]);
52+
53+
$user = $request->user();
54+
55+
Auth::logout();
56+
57+
$user->delete();
58+
59+
$request->session()->invalidate();
60+
$request->session()->regenerateToken();
61+
62+
return Redirect::to('/');
63+
}
64+
}

app/dashboard/page.tsx

Lines changed: 0 additions & 52 deletions
This file was deleted.

package-lock.json

Lines changed: 160 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
"vite": "^6.0"
2121
},
2222
"dependencies": {
23+
"@headlessui/react": "^2.2.0",
2324
"@radix-ui/react-avatar": "^1.1.2",
2425
"@radix-ui/react-collapsible": "^1.1.2",
2526
"@radix-ui/react-dialog": "^1.1.3",

0 commit comments

Comments
 (0)