예제 #1
0
 protected static function getCookie($tracker)
 {
     //проверяем заполнены ли учётные данные
     if (Database::checkTrackersCredentialsExist($tracker)) {
         //получаем учётные данные
         $credentials = Database::getCredentials($tracker);
         $login = iconv("utf-8", "windows-1251", $credentials['login']);
         $password = $credentials['password'];
         nnmclub::$page = nnmclub::login($login, $password);
         if (!empty(nnmclub::$page)) {
             //проверяем подходят ли учётные данные
             if (preg_match("/login\\.php\\?redirect=/", nnmclub::$page, $array)) {
                 //устанавливаем варнинг
                 if (nnmclub::$warning == NULL) {
                     nnmclub::$warning = TRUE;
                     Errors::setWarnings($tracker, 'credential_wrong');
                 }
                 //останавливаем процесс выполнения, т.к. не может работать без кук
                 nnmclub::$exucution = FALSE;
             } else {
                 //если подходят - получаем куки
                 if (preg_match_all("/Set-Cookie: (.*);/iU", nnmclub::$page, $array)) {
                     nnmclub::$sess_cookie = implode("; ", $array[1]);
                     Database::setCookie($tracker, nnmclub::$sess_cookie);
                     //запускам процесс выполнения, т.к. не может работать без кук
                     nnmclub::$exucution = TRUE;
                 }
             }
         } else {
             //устанавливаем варнинг
             if (nnmclub::$warning == NULL) {
                 nnmclub::$warning = TRUE;
                 Errors::setWarnings($tracker, 'not_available');
             }
             //останавливаем процесс выполнения, т.к. не может работать без кук
             nnmclub::$exucution = FALSE;
         }
     } else {
         //устанавливаем варнинг
         if (nnmclub::$warning == NULL) {
             nnmclub::$warning = TRUE;
             Errors::setWarnings($tracker, 'credential_miss');
         }
         //останавливаем процесс выполнения, т.к. не может работать без кук
         nnmclub::$exucution = FALSE;
     }
 }