Index: trunk/core/units/users/users_event_handler.php =================================================================== diff -u -r2070 -r2082 --- trunk/core/units/users/users_event_handler.php (.../users_event_handler.php) (revision 2070) +++ trunk/core/units/users/users_event_handler.php (.../users_event_handler.php) (revision 2082) @@ -36,7 +36,9 @@ $object->Load($user_id); if( $object->GetDBField('Status') == STATUS_ACTIVE ) { - $sql = 'SELECT DISTINCT GroupId FROM '.TABLE_PREFIX.'UserGroup WHERE PortalUserId = '.$user_id; + $sql = 'SELECT GroupId FROM %s WHERE (PortalUserId = %s) AND ( (MembershipExpires IS NULL) OR ( MembershipExpires >= UNIX_TIMESTAMP() ) )'; + $sql = sprintf($sql, TABLE_PREFIX.'UserGroup', $user_id); + $groups = $this->Conn->GetCol($sql); if(!$groups) $groups = Array(); array_push($groups, $this->Application->ConfigValue('User_LoggedInGroup') );