Skip to content

Commit 1950ba2

Browse files
committed
Now forcing usernames to be unique
Now forcing usernames to be unique in regard to capitalization.
1 parent 75e60a9 commit 1950ba2

File tree

2 files changed

+17
-6
lines changed

2 files changed

+17
-6
lines changed

app/Http/Controllers/UserController.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -510,18 +510,18 @@ public function showPage(request $request)
510510
public function editPage(request $request)
511511
{
512512
$request->validate([
513-
'littlelink_name' => 'string|max:255|unique:users',
514-
'name' => 'string|max:255|unique:users',
513+
'littlelink_name' => 'max:255|string|isunique:users',
514+
'name' => 'max:255|string',
515515
]);
516516

517517
$userId = Auth::user()->id;
518518
$littlelink_name = Auth::user()->littlelink_name;
519519

520520
$profilePhoto = $request->file('image');
521-
$pageName = $request->pageName;
521+
$pageName = $request->littlelink_name;
522522
$pageDescription = strip_tags($request->pageDescription,'<a><p><strong><i><ul><ol><li><blockquote><h2><h3><h4>');
523523
$pageDescription = preg_replace("/<a([^>]*)>/i", "<a $1 rel=\"noopener noreferrer nofollow\">", $pageDescription);
524-
$name = $request->Name;
524+
$name = $request->name;
525525

526526
User::where('id', $userId)->update(['littlelink_name' => $pageName, 'littlelink_description' => $pageDescription, 'name' => $name]);
527527

app/Providers/AppServiceProvider.php

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@
22

33
namespace App\Providers;
44

5+
use Illuminate\Support\Facades\Validator;
56
use Illuminate\Support\ServiceProvider;
6-
77
use Illuminate\Pagination\Paginator;
8+
use Illuminate\Support\Facades\DB;
89

910
class AppServiceProvider extends ServiceProvider
1011
{
@@ -25,6 +26,16 @@ public function register()
2526
*/
2627
public function boot()
2728
{
28-
Paginator::useBootstrap();
29+
Paginator::useBootstrap();
30+
Validator::extend('isunique', function ($attribute, $value, $parameters, $validator) {
31+
$value = strtolower($value);
32+
$query = DB::table($parameters[0])->whereRaw("LOWER({$attribute}) = ?", [$value]);
33+
34+
if (isset($parameters[1])) {
35+
$query->where($parameters[1], '!=', $parameters[2]);
36+
}
37+
38+
return $query->count() === 0;
39+
});
2940
}
3041
}

0 commit comments

Comments
 (0)