aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--actions/useradd.php7
-rw-r--r--engine/lib/sessions.php2
2 files changed, 4 insertions, 5 deletions
diff --git a/actions/useradd.php b/actions/useradd.php
index f7a96b037..b59dc36b1 100644
--- a/actions/useradd.php
+++ b/actions/useradd.php
@@ -35,12 +35,11 @@
) &&
($guid = register_user($username, $password, $name, $email, true))
) {
+ $new_user = get_entity($guid);
if (($guid) && ($admin))
- {
-
- $new_user = get_entity($guid);
$new_user->admin = 'yes';
- }
+
+ $new_user->admin_created = true;
system_message(sprintf(elgg_echo("adduser:ok"),$CONFIG->sitename));
} else {
diff --git a/engine/lib/sessions.php b/engine/lib/sessions.php
index 54cd6169e..f909ae60f 100644
--- a/engine/lib/sessions.php
+++ b/engine/lib/sessions.php
@@ -78,7 +78,7 @@
if ($user = get_user_by_username($credentials['username'])) {
// Let admins log in without validating their email, but normal users must have validated their email
- if ((!$user->admin) && (!$user->validated_email))
+ if ((!$user->admin) && (!$user->validated_email) && (!$user->admin_created))
return false;
if ($user->password == generate_user_password($user, $credentials['password'])) {