$_SESSION['user'] = cmsUser::createUser($user);
Собственно, вопрос: как теперь правильно работать с логином пользователей? сам поковырял — не нашел как в самом инстанте это сейчас реализовано.
Можно, конечно, оставить и так, но не повлияет ли это на безопасность?
ЗЫ
что б не пришлось лезть в плагин и ядро:
в плагине вызывается вот это:
$sql = "SELECT * FROM cms_users WHERE id = '{$user_id}'"; $result = $inDB->query($sql); if ($inDB->num_rows($result) == 1) { $current_ip = $_SERVER['REMOTE_ADDR']; $user = $inDB->fetch_assoc($result); if (!cmsUser::isBanned($user['id'])) { $main_id = $user['main_id']; $sql = "SELECT * FROM cms_users WHERE id = '{$main_id}'"; $result = $inDB->query($sql); if ($inDB->num_rows($result) == 1) { $main_user = $inDB->fetch_assoc($result); if (!cmsUser::isBanned($user['id'])) { $user = $main_user; $user_id = $main_id; }else{ $inDB->query("UPDATE cms_banlist SET ip = '$current_ip' WHERE user_id = " . $user['id'] . " AND status = 1"); break; } }else{ break; } } $_SESSION['user'] = cmsUser::createUser($user); cmsCore::callEvent('USER_LOGIN', $_SESSION['user']);
public static function createUser($_userdata){ $inDB = cmsDatabase::getInstance(); $user = $_userdata; $sql = "SELECT alias, access, is_admin FROM cms_user_groups WHERE id = ".$user['group_id']; $result = $inDB->query($sql); $_groupdata = $inDB->fetch_assoc($result); $user['group'] = $_groupdata['alias']; $user['access'] = $access; $user['is_admin'] = $_groupdata['is_admin']; return $user; }