/**
  * Выполняет тесты совместимости
  */
 private function runTests()
 {
     if ($this->checkDone(__METHOD__)) {
         return true;
     }
     $this->flushLog("Проверка системных требований...");
     $tests = $this->temp_dir . "/installer.service/testhost.php";
     if (!is_file($tests)) {
         throw new Exception('Не удается найти запрошенный файл: ' . $tests);
     }
     include $tests;
     if ($this->getParam('guiUpdate') && is_file('config.ini')) {
         $ini = parse_ini_file('config.ini');
         $host = $ini['core.host'];
         $port = $ini['core.port'];
         $login = $ini['core.login'];
         $password = $ini['core.password'];
         $dbname = $ini['core.dbname'];
         $domain = $_SERVER['HTTP_HOST'];
     } else {
         $host = $this->getConfigOption('DB', 'host', "localhost");
         $port = $this->getConfigOption('DB', 'port', "");
         $login = $this->getConfigOption('DB', 'user', "root");
         $password = $this->getConfigOption('DB', 'password', "");
         $dbname = $this->getConfigOption('DB', 'dbname', null, "В install.ini не указано имя базы данных.");
         $domain = $this->getConfigOption('LICENSE', 'domain');
     }
     $host = (string) trim($host);
     $port = (string) trim($port);
     $host .= $port === "" ? "" : ":" . $port;
     $tests = new testHost(array(), $domain);
     $tests->setConnect($host, $login, $password, $dbname);
     $tests->getResults();
     if (0 != count($tests->listErrors)) {
         $critical_errors = false;
         foreach ($tests->listErrors as $key => $value) {
             if ($value[1] == 1) {
                 throw new Exception(' Cервер не соответствует системным требованиям для установки UMI.CMS. Подробное описание ошибки и способы её устранения доступны по ссылке <a href="http://errors.umi-cms.ru/' . $value[0] . '/" target="_blank">http://errors.umi-cms.ru/' . $value[0] . '/</a>');
             } else {
                 $this->flushLog("Ошибка #" . $value[0] . " Сервер не соответствует системным требованиям для установки UMI.CMS. Подробная информация по ссылке http://errors.umi-cms.ru/" . $value[0] . "/");
             }
         }
     }
     $this->flushLog("завершено.");
     $this->setDone(__METHOD__);
     return true;
 }
 private function runTests()
 {
     if ($this->checkDone(__METHOD__)) {
         return true;
     }
     $this->flushLog("Проверка системных требований...");
     $vb61a6d542f9036550ba9c401c80f00ef = $this->temp_dir . "/installer.service/testhost.php";
     if (!is_file($vb61a6d542f9036550ba9c401c80f00ef)) {
         throw new Exception('Не удается найти запрошенный файл: ' . $vb61a6d542f9036550ba9c401c80f00ef);
     }
     include $vb61a6d542f9036550ba9c401c80f00ef;
     if ($this->getParam('guiUpdate') && is_file('config.ini')) {
         $v4d90362d661461e558408e982aaa49d3 = parse_ini_file('config.ini');
         $v67b3dba8bc6778101892eb77249db32e = $v4d90362d661461e558408e982aaa49d3['core.host'];
         $v901555fb06e346cb065ceb9808dcfc25 = $v4d90362d661461e558408e982aaa49d3['core.port'];
         $vd56b699830e77ba53855679cb1d252da = $v4d90362d661461e558408e982aaa49d3['core.login'];
         $v5f4dcc3b5aa765d61d8327deb882cf99 = $v4d90362d661461e558408e982aaa49d3['core.password'];
         $v4cd4a49f25984e26fe708c1fbd896653 = $v4d90362d661461e558408e982aaa49d3['core.dbname'];
         $vad5f82e879a9c5d6b5b442eb37e50551 = $_SERVER['HTTP_HOST'];
     } else {
         $v67b3dba8bc6778101892eb77249db32e = $this->getConfigOption('DB', 'host', "localhost");
         $v901555fb06e346cb065ceb9808dcfc25 = $this->getConfigOption('DB', 'port', "");
         $vd56b699830e77ba53855679cb1d252da = $this->getConfigOption('DB', 'user', "root");
         $v5f4dcc3b5aa765d61d8327deb882cf99 = $this->getConfigOption('DB', 'password', "");
         $v4cd4a49f25984e26fe708c1fbd896653 = $this->getConfigOption('DB', 'dbname', null, "В install.ini не указано имя базы данных.");
         $vad5f82e879a9c5d6b5b442eb37e50551 = $this->getConfigOption('LICENSE', 'domain');
     }
     $v67b3dba8bc6778101892eb77249db32e = (string) trim($v67b3dba8bc6778101892eb77249db32e);
     $v901555fb06e346cb065ceb9808dcfc25 = (string) trim($v901555fb06e346cb065ceb9808dcfc25);
     $v67b3dba8bc6778101892eb77249db32e .= $v901555fb06e346cb065ceb9808dcfc25 === "" ? "" : ":" . $v901555fb06e346cb065ceb9808dcfc25;
     $vb61a6d542f9036550ba9c401c80f00ef = new testHost(array(), $vad5f82e879a9c5d6b5b442eb37e50551);
     $vb61a6d542f9036550ba9c401c80f00ef->setConnect($v67b3dba8bc6778101892eb77249db32e, $vd56b699830e77ba53855679cb1d252da, $v5f4dcc3b5aa765d61d8327deb882cf99, $v4cd4a49f25984e26fe708c1fbd896653);
     $vb61a6d542f9036550ba9c401c80f00ef->getResults();
     if (0 != count($vb61a6d542f9036550ba9c401c80f00ef->listErrors)) {
         $v02f4657ea7070d169aa861a2688a0763 = false;
         foreach ($vb61a6d542f9036550ba9c401c80f00ef->listErrors as $v3c6e0b8a9c15224a8228b9a98ca1531d => $v2063c1608d6e0baf80249c42e2be5804) {
             if ($v2063c1608d6e0baf80249c42e2be5804[1] == 1) {
                 throw new Exception(' Cервер не соответствует системным требованиям для установки UMI.CMS. Подробное описание ошибки и способы её устранения доступны по ссылке <a href="http://errors.umi-cms.ru/' . $v2063c1608d6e0baf80249c42e2be5804[0] . '/" target="_blank">http://errors.umi-cms.ru/' . $v2063c1608d6e0baf80249c42e2be5804[0] . '/</a>');
             } else {
                 $this->flushLog("Ошибка #" . $v2063c1608d6e0baf80249c42e2be5804[0] . " Сервер не соответствует системным требованиям для установки UMI.CMS. Подробная информация по ссылке http://errors.umi-cms.ru/" . $v2063c1608d6e0baf80249c42e2be5804[0] . "/");
             }
         }
     }
     $this->flushLog("завершено.");
     $this->setDone(__METHOD__);
     return true;
 }
Beispiel #3
0
$v571ab1ed8c284a6c0cd17b70c34d017a = isset($_REQUEST['db-host']) ? $_REQUEST['db-host'] : false;
$v345e16ef0ed4dac2a4ec1acfdf82a56c = isset($_REQUEST['db-user']) ? $_REQUEST['db-user'] : false;
$vb7e619c665a519627ecbc20c4cc2489a = isset($_REQUEST['db-password']) ? $_REQUEST['db-password'] : false;
$ve44cd6dd02c2edf46ddd6cceb4cbcd2e = isset($_REQUEST['db-name']) ? $_REQUEST['db-name'] : false;
$v532902f2815d229ecd121a3a28f37533 = isset($_REQUEST['user-email']) ? $_REQUEST['user-email'] : false;
$va0f0f917e8e13d7da3c10328aa1df1a6 = isset($_REQUEST['user-key']) ? $_REQUEST['user-key'] : false;
echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
if ($v2764ca9d34e90313978d044f27ae433b == 'test-results') {
    if ($v571ab1ed8c284a6c0cd17b70c34d017a == false || $v345e16ef0ed4dac2a4ec1acfdf82a56c == false || $vb7e619c665a519627ecbc20c4cc2489a == false || $ve44cd6dd02c2edf46ddd6cceb4cbcd2e == false) {
        echo <<<XML
\t\t\t<response type="test-mode">
\t\t\t<error><![CDATA[13042]]></error>
\t\t\t</response>
XML;
    } else {
        $v098f6bcd4621d373cade4e832627b4f6 = new testHost();
        $v098f6bcd4621d373cade4e832627b4f6->setConnect($v571ab1ed8c284a6c0cd17b70c34d017a, $v345e16ef0ed4dac2a4ec1acfdf82a56c, $vb7e619c665a519627ecbc20c4cc2489a, $ve44cd6dd02c2edf46ddd6cceb4cbcd2e, $va7df597feb89d482ec50398728fe2fdc);
        $v098f6bcd4621d373cade4e832627b4f6->getResults();
        if ($va7df597feb89d482ec50398728fe2fdc == 'install') {
            echo '<response type="test-complete">';
            if (count($v098f6bcd4621d373cade4e832627b4f6->listErrors) != 0) {
                foreach ($v098f6bcd4621d373cade4e832627b4f6->listErrors as $v3c6e0b8a9c15224a8228b9a98ca1531d => $v2063c1608d6e0baf80249c42e2be5804) {
                    if ($v2063c1608d6e0baf80249c42e2be5804[1] == 1) {
                        $v9dc0bceb3dc0ce762d1a35b7e3798054 = 'is-critical="1"';
                    } else {
                        $v9dc0bceb3dc0ce762d1a35b7e3798054 = '';
                    }
                    echo '<error ' . $v9dc0bceb3dc0ce762d1a35b7e3798054 . ' params="' . $v2063c1608d6e0baf80249c42e2be5804[2] . '"><![CDATA[' . $v2063c1608d6e0baf80249c42e2be5804[0] . ']]></error>';
                }
            }
            echo '</response>';
    header("Content-type: text/xml; charset=utf-8");
    $v572d4e421e5e6b9bc11d815e8a027112 = 'aHR0cDovL2luc3RhbGwudW1pLWNtcy5ydS9maWxlcy90ZXN0aG9zdC5waHA=';
    $result = umiRemoteFileGetter::get(base64_decode($v572d4e421e5e6b9bc11d815e8a027112), dirname(__FILE__) . '/testhost.php');
    $v9a0364b9e99bb480dd25e1f0284c8555 = "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
    if ($result->getSize() == 0) {
        $v9a0364b9e99bb480dd25e1f0284c8555 .= "<result><error>Не удается загрузить тесты хостинга.</error></result>";
    } else {
        $v9a0364b9e99bb480dd25e1f0284c8555 .= "<result>ok</result>";
    }
    echo $v9a0364b9e99bb480dd25e1f0284c8555;
    exit;
}
if ($vd4579b2688d675235f402f6b4b43bcbf == 'test') {
    header("Content-type: text/xml; charset=utf-8");
    require dirname(__FILE__) . '/testhost.php';
    $vb61a6d542f9036550ba9c401c80f00ef = new testHost();
    $vb73674ad3d854f330d408d3028f19efb = ConnectionPool::getInstance()->getConnection()->getConnectionInfo();
    $v67b3dba8bc6778101892eb77249db32e = $vb73674ad3d854f330d408d3028f19efb['host'];
    $v67b3dba8bc6778101892eb77249db32e .= strlen(trim($vb73674ad3d854f330d408d3028f19efb['port'])) ? ':' . $vb73674ad3d854f330d408d3028f19efb['port'] : '';
    $vb61a6d542f9036550ba9c401c80f00ef->setConnect($v67b3dba8bc6778101892eb77249db32e, $vb73674ad3d854f330d408d3028f19efb['user'], $vb73674ad3d854f330d408d3028f19efb['password'], $vb73674ad3d854f330d408d3028f19efb['dbname']);
    $result = $vb61a6d542f9036550ba9c401c80f00ef->getResults();
    $v9a0364b9e99bb480dd25e1f0284c8555 = "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
    $v9a0364b9e99bb480dd25e1f0284c8555 .= "<result>";
    if (count($result) > 0) {
        foreach ($result as $vcb5e100e5a9a3e7f6d1fd97512215282) {
            $ve2a0ca64b9696e59b6741d935f7fcfbe = "http://errors.umi-cms.ru/upage://" . $vcb5e100e5a9a3e7f6d1fd97512215282[0] . "/";
            $vc887d69eddcd7c7f58c08995042fa392 = simplexml_load_string(umiRemoteFileGetter::get($ve2a0ca64b9696e59b6741d935f7fcfbe));
            $vea6db7e7b60eac0c99920c4c09e2b0c6 = $vc887d69eddcd7c7f58c08995042fa392->xpath('//property[@name = "short_description"]/value');
            $v9a0364b9e99bb480dd25e1f0284c8555 .= '<error code="' . $vcb5e100e5a9a3e7f6d1fd97512215282[0] . '" critical="' . $vcb5e100e5a9a3e7f6d1fd97512215282[1] . '"><![CDATA[' . (string) $vea6db7e7b60eac0c99920c4c09e2b0c6[0] . ']]></error>';
        }
    } else {