public function LOGINAUTH($AUTHDATA) { $this->AR['LOG']->LSET("USERClass: LOGINAUTH(" . $AUTHDATA['LOGIN'] . ", " . $AUTHDATA['PASS'] . ")"); if (strcmp($AUTHDATA['LOGIN'], "") != 0 and strcmp($AUTHDATA['PASS'], "") != 0) { // Если параметры и не пустые $LOGIN = clean($this->AR, $AUTHDATA['LOGIN'], "S"); $PASS = clean($this->AR, $AUTHDATA['PASS'], "S"); $USERINF = $this->USERINFO("n", $LOGIN); if ($USERINF) { if (strcmp($USERINF['PASS'], $PASS) == 0) { session_start(); // Старт сесий $_SESSION['LCMS_USERSES_CODE'] = GenHashe($LOGIN); // Генерируем сесионный хеш //$_SESSION['LCMS_USERSES_NAME'] = $LOGIN; // Генерируем сесионный хеш $RESHASH = API_USER_SETSESION($this->AR, $USERINF['NAME'], $_SESSION['LCMS_USERSES_CODE']); // Устанавливаем хеш пользователю if ($RESHASH) { header("location: " . INDEX_FILE . ""); exit; } else { unset($_SESSION['LCMS_USERSES_CODE']); // Убираем переменную session_destroy(); // Уничтожаем сесию $this->AR['MSG']->SHOW($this->AR['LNG']->LP['e_usenoin'], "W"); // Ошибка установки сесии } } else { // Неверный пароль $this->AR['MSG']->SHOW($this->AR['LNG']->LP['w_nopass'], "W"); } } else { // Нет такого пользователя $this->AR['MSG']->SHOW($this->AR['LNG']->LP['w_nouser'], "W"); } } else { // Пустые строки $this->AR['MSG']->SHOW($this->AR['LNG']->LP['w_dataisbad'], "W"); } }
public function AUTH() { if (isset($_POST['login']) and isset($_POST['password'])) { $LOGIN = clean($this->AR, $_POST['login'], "S"); // Clean login $PASS = clean($this->AR, $_POST['password'], "S"); // Clean passwords $USERINF = $this::USERINFO($LOGIN, "N"); // Get user info if ($USERINF) { // If have user $this->AR['LOG']->WR("USERSClass: User " . $LOGIN . " found"); //$this->AR['LOG']->WR("USERSClass: GenPass test is ".GenPass($PASS, $PASS."ota")." <-"); if (strcmp($USERINF['PASS'], GenPass($PASS, $PASS . "ota")) == 0) { session_start(); $_SESSION['USERSES_CODE'] = GenHashe($LOGIN, "ota"); $this->AR['LOG']->WR("USERSClass: SESION is " . $_SESSION['USERSES_CODE'] . " for " . $LOGIN . ""); $DATAS['SESSION'] = $_SESSION['USERSES_CODE']; // Sesion $DATAS['NAME'] = $LOGIN; // Login name $RESHASH = USER_SET_API($DATAS, "S", $this->AR); // Sets session to db if ($RESHASH == 1) { $this->AR['LOG']->WR("USERSClass: SESION is " . $_SESSION['USERSES_CODE'] . " for " . $LOGIN . " updated"); header("location: " . INDEX_FILE . ""); exit; } else { unset($_SESSION['USERSES_CODE']); // Del session session_destroy(); // Destroy $this->AR['LOG']->WR("USERSClass: SESION is " . $_SESSION['USERSES_CODE'] . " for " . $LOGIN . " ERROR"); $this->AR['MENU']->SET($this->AR['LNG']->STR['m_nazad'], "javascript:history.go(-1);", "R"); // Create menu $this->AR['MSG']->SHOW($this->AR['LNG']->STR['msg_no_sesionset'], "I"); } } else { $this->AR['MENU']->SET($this->AR['LNG']->STR['m_nazad'], "javascript:history.go(-1);", "R"); // Create menu $this->AR['MSG']->SHOW($this->AR['LNG']->STR['msg_bed_bass'], "I"); } } else { // If no user $this->AR['LOG']->WR("USERSClass: User " . $LOGIN . " not found"); $this->AR['MENU']->SET($this->AR['LNG']->STR['m_nazad'], "javascript:history.go(-1);", "R"); // Create menu $this->AR['MSG']->SHOW($this->AR['LNG']->STR['msg_no_user'], "I"); } } else { $this->AR['MENU']->SET($this->AR['LNG']->STR['m_nazad'], "javascript:history.go(-1);", "R"); // Create menu $this->AR['MSG']->SHOW($this->AR['LNG']->STR['msg_no_data'], "I"); } }