X-Git-Url: https://git-public.kairo.at/?p=authserver.git;a=blobdiff_plain;f=app%2Findex.php;h=ba0d0247e7e42bc500b84eb6181b717661e0c8f7;hp=b9820504ffbf9aea27c3645e9fd445a2d5c23a28;hb=3875e0fb8b2b31d82809bd20880f1d206db4cb2c;hpb=9b32cdebaf8f89db6c365d8c4b108c5fe682006b diff --git a/app/index.php b/app/index.php index b982050..ba0d024 100644 --- a/app/index.php +++ b/app/index.php @@ -28,7 +28,7 @@ if (!count($errors)) { $session['logged_in'] = 0; } elseif (array_key_exists('email', $_POST)) { - if (!preg_match('/^[^@]+@[^@]+\.[^@]+$/', $_POST['email'])) { + if (!preg_match('/^[^@]+@([^@]+\.[^@]+|localhost)$/', $_POST['email'])) { $errors[] = _('The email address is invalid.'); } elseif ($utils->verifyTimeCode(@$_POST['tcode'], $session)) { @@ -195,7 +195,7 @@ if (!count($errors)) { } elseif (array_key_exists('reset', $_GET)) { if ($session['logged_in']) { - $result = $db->prepare('SELECT `id`,`email` FROM `auth_users` WHERE `id` = :userid;'); + $result = $db->prepare('SELECT `id`,`email`,`group_id` FROM `auth_users` WHERE `id` = :userid;'); $result->execute(array(':userid' => $session['user'])); $user = $result->fetch(PDO::FETCH_ASSOC); if (!$user['id']) { @@ -209,7 +209,7 @@ if (!count($errors)) { } } elseif (array_key_exists('verification_code', $_GET)) { - $result = $db->prepare('SELECT `id`,`email` FROM `auth_users` WHERE `email` = :email AND `status` = \'unverified\' AND `verify_hash` = :vcode;'); + $result = $db->prepare('SELECT `id`,`email`,`group_id` FROM `auth_users` WHERE `email` = :email AND `status` = \'unverified\' AND `verify_hash` = :vcode;'); $result->execute(array(':email' => @$_GET['email'], ':vcode' => $_GET['verification_code'])); $user = $result->fetch(PDO::FETCH_ASSOC); if ($user['id']) { @@ -226,7 +226,7 @@ if (!count($errors)) { } elseif (array_key_exists('reset_code', $_GET)) { $reset_fail = true; - $result = $db->prepare('SELECT `id`,`email`,`verify_hash` FROM `auth_users` WHERE `email` = :email'); + $result = $db->prepare('SELECT `id`,`email`,`verify_hash`,`group_id` FROM `auth_users` WHERE `email` = :email'); $result->execute(array(':email' => @$_GET['email'])); $user = $result->fetch(PDO::FETCH_ASSOC); if ($user['id']) { @@ -261,7 +261,7 @@ if (!count($errors)) { } } elseif (array_key_exists('clients', $_GET)) { - $result = $db->prepare('SELECT `id`,`email` FROM `auth_users` WHERE `id` = :userid;'); + $result = $db->prepare('SELECT `id`,`email`,`group_id` FROM `auth_users` WHERE `id` = :userid;'); $result->execute(array(':userid' => $session['user'])); $user = $result->fetch(PDO::FETCH_ASSOC); if ($session['logged_in'] && $user['id']) { @@ -462,7 +462,7 @@ if (!count($errors)) { $link = $litem->appendLink('./?logout', _('Log out')); $litem = $ulist->appendElement('li'); $link = $litem->appendLink('./?addemail', _('Add another email address')); - if (in_array($user['email'], $utils->client_reg_email_whitelist)) { + if (($utils->client_reg_email_whitelist === false) || (in_array($user['email'], $utils->client_reg_email_whitelist))) { $litem = $ulist->appendElement('li'); $link = $litem->appendLink('./?clients', _('Manage OAuth2 clients')); }