|
|
|
|
@ -58,9 +58,6 @@ class RegisterController extends Controller
|
|
|
|
|
$data['email'] = strtolower($data['email']);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$this->validateUsername($data['username']);
|
|
|
|
|
$this->validateEmail($data['email']);
|
|
|
|
|
|
|
|
|
|
$usernameRules = [
|
|
|
|
|
'required',
|
|
|
|
|
'min:2',
|
|
|
|
|
@ -87,6 +84,25 @@ class RegisterController extends Controller
|
|
|
|
|
if(!ctype_alnum($val)) {
|
|
|
|
|
return $fail('Username is invalid. Username must be alpha-numeric and may contain dashes (-), periods (.) and underscores (_).');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$restricted = RestrictedNames::get();
|
|
|
|
|
if (in_array($value, $restricted)) {
|
|
|
|
|
return $fail('Username cannot be used.');
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
$emailRules = [
|
|
|
|
|
'required',
|
|
|
|
|
'string',
|
|
|
|
|
'email',
|
|
|
|
|
'max:255',
|
|
|
|
|
'unique:users',
|
|
|
|
|
function ($attribute, $value, $fail) {
|
|
|
|
|
$banned = EmailService::isBanned($value);
|
|
|
|
|
if($banned) {
|
|
|
|
|
return $fail('Email is invalid.');
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
@ -94,7 +110,7 @@ class RegisterController extends Controller
|
|
|
|
|
'agecheck' => 'required|accepted',
|
|
|
|
|
'name' => 'nullable|string|max:'.config('pixelfed.max_name_length'),
|
|
|
|
|
'username' => $usernameRules,
|
|
|
|
|
'email' => 'required|string|email|max:255|unique:users',
|
|
|
|
|
'email' => $emailRules,
|
|
|
|
|
'password' => 'required|string|min:12|confirmed',
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
@ -123,23 +139,6 @@ class RegisterController extends Controller
|
|
|
|
|
]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function validateUsername($username)
|
|
|
|
|
{
|
|
|
|
|
$restricted = RestrictedNames::get();
|
|
|
|
|
|
|
|
|
|
if (in_array($username, $restricted)) {
|
|
|
|
|
return abort(403);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function validateEmail($email)
|
|
|
|
|
{
|
|
|
|
|
$banned = EmailService::isBanned($email);
|
|
|
|
|
if($banned) {
|
|
|
|
|
return abort(403, 'Invalid email.');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Show the application registration form.
|
|
|
|
|
*
|
|
|
|
|
|