From 9c32b05638ed31b0d018bb134d4cc57d1cc60aed Mon Sep 17 00:00:00 2001 From: Conkley Date: Mon, 11 Jul 2022 19:01:25 +1000 Subject: [PATCH] profile bios --- app/Http/Controllers/PageController.php | 20 ++- resources/views/misc/settings.blade.php | 168 +++++++++++++----------- resources/views/pages/profile.blade.php | 8 +- routes/web.php | 1 + 4 files changed, 112 insertions(+), 85 deletions(-) diff --git a/app/Http/Controllers/PageController.php b/app/Http/Controllers/PageController.php index b5e5f9c..451dd01 100644 --- a/app/Http/Controllers/PageController.php +++ b/app/Http/Controllers/PageController.php @@ -5,6 +5,7 @@ namespace App\Http\Controllers; use Illuminate\Support\Facades\DB; use Illuminate\Http\Request; use App\Models\User; +use Illuminate\Support\Facades\Auth; class PageController extends Controller @@ -63,19 +64,32 @@ class PageController extends Controller public function users(Request $request) { if ($request->has('q')) { - $users = DB::table('users')->where('name', 'LIKE', '%'.$request->q.'%')->paginate(10); + $users = DB::table('users')->where('name', 'LIKE', '%' . $request->q . '%')->paginate(10); } else { $users = User::paginate(10); } return view('pages.users')->with('users', $users); } - + public function settings() { return view('misc.settings'); } - + + public function change_settings(Request $request) + { + $request->validate([ + 'bio' => 'required|min:3|max:2000' + ]); + + $user = Auth::user(); + $user->blurb = $request->bio; + $user->save(); + + return redirect()->back()->with('success', 'Your bio has been updated.'); + } + public function download() { return view('pages.download'); diff --git a/resources/views/misc/settings.blade.php b/resources/views/misc/settings.blade.php index 8880e83..365ddce 100644 --- a/resources/views/misc/settings.blade.php +++ b/resources/views/misc/settings.blade.php @@ -1,104 +1,114 @@ @extends('layouts.app') @section('title') -Settings - {{ env('APP_NAME') }} + Settings - {{ env('APP_NAME') }} @endsection @section('titlediscord') - + @endsection @section('descdiscord') @endsection @section('popup_content') -
- @endsection @section('content') -

Settings

-
-
-

Bio

- - -
+

Settings

+
+ @csrf +
+
+

Bio

+ + @if ($errors->any()) + {{ $errors->first() }} + @endif + @if(session()->has('success')) + {{ session()->get('success') }} + @endif + + +
-

Username: OnlyTwentyCharacters

-

E-Mail: t****@ex********.com

-

Date of Birth: 01/01/01

+

Username: {{ Auth::user()->name }}

+

E-Mail: {{ Auth::user()->email }}

+

Date of Birth: {{ Auth::user()->dob }}

Password: ********

Date Display Preference: D/M/YY

Time Display Preference: 12 Hour

-
-
-
-

Invite Keys

-

You can only create 1 invite every week.
Manage your keys and key history below.

-

-
-

Theme

-

Selected Theme: SKEUOMORPHIC

-
-
- +
+
+

Invite Keys

+

You can only create 1 invite every week.
Manage your keys and key history below.

+

+
+
+

Theme

+

Selected Theme: SKEUOMORPHIC

+
+
+ +
+
-
-
-
-
-

DANGER ZONE

-

These are inactive for now.
In order to delete your account, please ask one of the Developers.

-

These buttons can fully delete data. Use with caution!

-

- - - -

-
-@endsection \ No newline at end of file +
+
+

DANGER ZONE

+

These are inactive for now.
In order to delete your account, please ask one of the + Developers.

+

These buttons can fully delete data. Use with caution!

+

+ + + +

+
+@endsection diff --git a/resources/views/pages/profile.blade.php b/resources/views/pages/profile.blade.php index 220e649..ead5b3d 100644 --- a/resources/views/pages/profile.blade.php +++ b/resources/views/pages/profile.blade.php @@ -47,7 +47,9 @@

"I'm new to ARCHBLOX!"

profile image -

{{ $data['user']->blurb }}

+
+ {!! nl2br(e($data['user']->blurb)) !!}

Joined: {{ $data['user']->created_at->format('d/m/Y') }}

@@ -82,8 +84,8 @@

Friends ({{ $data['user']->getFriendsCount() }})

@if ($data['user']->getFriendsCount() > 0) - +
diff --git a/routes/web.php b/routes/web.php index 058d281..a559546 100644 --- a/routes/web.php +++ b/routes/web.php @@ -29,6 +29,7 @@ Route::middleware(['auth'])->group(function () { Route::get('/users', [App\Http\Controllers\PageController::class, 'users'])->name('users'); Route::post('/users', [App\Http\Controllers\PageController::class, 'users'])->name('users'); Route::get('/my/settings', [App\Http\Controllers\PageController::class, 'settings'])->name('settings'); + Route::post('/my/settings', [App\Http\Controllers\PageController::class, 'change_settings'])->name('change_settings'); Route::get('/my/invites', [App\Http\Controllers\KeyController::class, 'index'])->name('key_index'); Route::post('/my/invites', [App\Http\Controllers\KeyController::class, 'create'])->name('key_create'); Route::get('/download', [App\Http\Controllers\PageController::class, 'download'])->name('download');