Index: branches/5.2.x/core/units/users/users_event_handler.php =================================================================== diff -u -N -r14617 -r14630 --- branches/5.2.x/core/units/users/users_event_handler.php (.../users_event_handler.php) (revision 14617) +++ branches/5.2.x/core/units/users/users_event_handler.php (.../users_event_handler.php) (revision 14630) @@ -1,6 +1,6 @@ SetFieldsFromHash( $this->getSubmittedFields($event) ); $username = $object->GetDBField('UserLogin'); $password = $object->GetDBField('UserPassword'); - $rember_login = $object->GetDBField('UserRememberLogin') == 1; + $remember_login = $object->GetDBField('UserRememberLogin') == 1; $user_helper =& $this->Application->recallObject('UserHelper'); /* @var $user_helper UserHelper */ $user_helper->event =& $event; - $result = $user_helper->loginUser($username, $password, false, $rember_login); + $result = $user_helper->loginUser($username, $password, false, $remember_login); if ($result != LoginResult::OK) { $event->status = kEvent::erFAIL; @@ -460,6 +460,8 @@ if ( !$user_helper->checkBanRules($object) ) { $object->SetError('Login', 'banned'); } + + $object->SetDBField('IPAddress', $_SERVER['REMOTE_ADDR']); } /** @@ -696,7 +698,6 @@ } $object->SetDBField('Status', STATUS_ACTIVE); // make user subscriber Active by default - $object->SetDBField('ip', $_SERVER['REMOTE_ADDR']); if ( $object->Create() ) { $this->AddSubscriberGroup($object); @@ -1181,11 +1182,14 @@ function checkItemStatus(&$event) { $object =& $event->getObject(); - if (!$object->isLoaded()) { + /* @var $object kDBItem */ + + if ( !$object->isLoaded() ) { return true; } $virtual_users = Array (USER_ROOT, USER_GUEST); + return ($object->GetDBField('Status') == STATUS_ACTIVE) || in_array($object->GetID(), $virtual_users); }