diff options
author | Chaoyi Zha <summermontreal@gmail.com> | 2017-03-25 22:59:42 +0300 |
---|---|---|
committer | Chaoyi Zha <summermontreal@gmail.com> | 2017-03-25 23:04:01 +0300 |
commit | 7e0d404c7277f8708c11b2783d791bfb4cbe010a (patch) | |
tree | 452c43424780577182d2d77eaf5a20e79a01efcd /app | |
parent | 44f69c3910e79012e4f242b76e72aaa9ca046763 (diff) |
Implement email domain restriction option in env template and SetupController
Diffstat (limited to 'app')
-rw-r--r-- | app/Http/Controllers/SetupController.php | 10 | ||||
-rw-r--r-- | app/Http/Controllers/UserController.php | 13 |
2 files changed, 12 insertions, 11 deletions
diff --git a/app/Http/Controllers/SetupController.php b/app/Http/Controllers/SetupController.php index f0431c9..12a898b 100644 --- a/app/Http/Controllers/SetupController.php +++ b/app/Http/Controllers/SetupController.php @@ -22,7 +22,7 @@ class SetupController extends Controller { private static function setupAlreadyRan() { return view('error', [ - 'message' => 'Sorry, but you have already ran the setup script previously.' + 'message' => 'Sorry, but you have already completed the setup process.' ]); } @@ -112,8 +112,8 @@ class SetupController extends Controller { $st_index_redirect = $request->input('setting:index_redirect'); $st_redirect_404 = $request->input('setting:redirect_404'); $st_password_recov = $request->input('setting:password_recovery'); - $st_specify_email = $request->input('setting:specify_email') - $st_allowed_email = $request->input('setting:allowed_email_domains') + $st_restrict_email_domain = $request->input('setting:restrict_email_domain'); + $st_allowed_email_domains = $request->input('setting:allowed_email_domains'); $st_base = $request->input('setting:base'); $st_auto_api_key = $request->input('setting:auto_api_key'); @@ -157,8 +157,8 @@ class SetupController extends Controller { 'ST_INDEX_REDIRECT' => $st_index_redirect, 'ST_REDIRECT_404' => $st_redirect_404, 'ST_PASSWORD_RECOV' => $st_password_recov, - 'ST_SPECIFY_EMAIL' => $st_specify_email, - 'ST_ALLOWED_EMAIL' => $st_allowed_email, + 'ST_RESTRICT_EMAIL_DOMAIN' => $st_restrict_email_domain, + 'ST_ALLOWED_EMAIL_DOMAINS' => $st_allowed_email_domains, 'MAIL_ENABLED' => $mail_enabled, 'MAIL_HOST' => $mail_host, diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index a23f1bf..4d4a34c 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -67,12 +67,13 @@ class UserController extends Controller { $username = $request->input('username'); $password = $request->input('password'); $email = $request->input('email'); - $email_domain = explode("@", $email)[1]; - - if (env('ST_RESTRICT_EMAIL_DOMAIN')) { - if ($email_domain != env('ST_RESTRICT_EMAIL_DOMAIN_NAME')) { - // ... throw an error - return redirect(route('signup'))->with('error', 'Sorry, your email domain is not allowed to register. Try again.'); + + if (env('SETTING_RESTRICT_EMAIL_DOMAIN')) { + $email_domain = explode('@', $email)[1]; + $permitted_email_domains = explode(',', env('SETTING_ALLOWED_EMAIL_DOMAINS')); + + if (!in_array($email_domain, $permitted_email_domains)) { + return redirect(route('signup'))->with('error', 'Sorry, your email\'s domain is not permitted to create new accounts.'); } } |