message('error', 'Reading of version failed. Maybe you\'re offline or the upgrade server does not respond.'); break; } /* Format: version\ndate\n(download\n)* */ $data_list = split("\n", $data); if (count($data_list) > 0) { $version = $data_list[0]; } else { $version = ''; } $version_upstream = version_to_int($version); if ($version_upstream === FALSE) { message('error', 'Got invalid version string from server.'); break; } $version_local = version_to_int($PMA_Config_Setup->get('PMA_VERSION')); if ($version_local === FALSE) { message('error', 'Unparsable version string.'); break; } if ($version_upstream > $version_local) { message('notice', 'New version of phpMyAdmin is available, you should consider upgrade. New version is ' . htmlspecialchars($version) . '.'); } else { if ($version_local % 100 == 0) { message('notice', 'You are using subversion version, run <code>svn update</code> :-). However latest released version is ' . htmlspecialchars($version) . '.'); } else { message('notice', 'No newer stable version is available.'); } } break; case 'seteol':
/** * Checks for newest phpMyAdmin version and sets result as a new notice */ function PMA_version_check() { // version check messages should always be visible so let's make // a unique message id each time we run it $message_id = uniqid('version_check'); // wait 3s at most for server response, it's enough to get information // from a working server $connection_timeout = 3; $url = 'http://phpmyadmin.net/home_page/version.php'; $context = stream_context_create(array( 'http' => array( 'timeout' => $connection_timeout))); $data = @file_get_contents($url, null, $context); if ($data === false) { if (function_exists('curl_init')) { $ch = curl_init($url); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_TIMEOUT, $connection_timeout); $data = curl_exec($ch); curl_close($ch); } else { messages_set( 'error', $message_id, __('Version check'), __('Neither URL wrapper nor CURL is available. Version check is not possible.')); return; } } if (empty($data)) { messages_set( 'error', $message_id, __('Version check'), __('Reading of version failed. Maybe you\'re offline or the upgrade server does not respond.')); return; } /* Format: version\ndate\n(download\n)* */ $data_list = explode("\n", $data); if (count($data_list) > 1) { $version = $data_list[0]; $date = $data_list[1]; } else { $version = $date = ''; } $version_upstream = version_to_int($version); if ($version_upstream === false) { messages_set( 'error', $message_id, __('Version check'), __('Got invalid version string from server')); return; } $version_local = version_to_int($GLOBALS['PMA_Config']->get('PMA_VERSION')); if ($version_local === false) { messages_set( 'error', $message_id, __('Version check'), __('Unparsable version string')); return; } if ($version_upstream > $version_local) { $version = htmlspecialchars($version); $date = htmlspecialchars($date); messages_set( 'notice', $message_id, __('Version check'), sprintf(__('A newer version of phpMyAdmin is available and you should consider upgrading. The newest version is %s, released on %s.'), $version, $date)); } else { if ($version_local % 100 == 0) { messages_set( 'notice', $message_id, __('Version check'), PMA_sanitize(sprintf(__('You are using Git version, run [kbd]git pull[/kbd] :-)[br]The latest stable version is %s, released on %s.'), $version, $date))); } else { messages_set( 'notice', $message_id, __('Version check'), __('No newer stable version is available')); } } }
////////////////////////////////////////////////////////////////////////////////////////////////////////////// if (isset($_REQUEST['password'])) { $PROPAGATE['password_hash'] = md5(REATESTER_PASSWORD_SALT . $_REQUEST['password']); redirect(); } if (!isset($_REQUEST['password_hash']) || $_REQUEST['password_hash'] != md5(REATESTER_PASSWORD_SALT . REATESTER_SETUP_PASSWORD)) { if (isset($_REQUEST['password_hash'])) { echo "<h1>Неверный пароль</h1>"; } else { echo "<h1>Введите пароль к программе установки</h1>"; } die("<p>Пароль задается константой <code>REATESTER_SETUP_PASSWORD</code> в файле конфигурации <code>config/config.inc.php</code>.</p>" . "<form><p>Пароль: <input id='password' type='password' name='password' /> <input type='submit' value='Продолжить установку' /></p></form>" . "<script> jQuery(function(\$) { \$('#password').focus(); }); </script>"); } $PROPAGATE['password_hash'] = $_REQUEST['password_hash']; ////////////////////////////////////////////////////////////////////////////////////////////////////////////// if (version_to_int(phpversion()) < version_to_int(REQUIRED_PHP_VERSION) && !isset($_REQUEST['skipvercheck'])) { die("<h1>Неподдерживаемая версия PHP</h1>" . "<p>У вас стоит PHP версии " . phpversion() . ", тогда как требуется версия " . REQUIRED_PHP_VERSION . ".</p>"); } if (isset($_REQUEST['skipvercheck'])) { $PROPAGATE['skipvercheck'] = '1'; } ////////////////////////////////////////////////////////////////////////////////////////////////////////////// if (!isset($_REQUEST['rewriteok'])) { $fail_url = addslashes("setup.php?rewriteok=0&" . propagate_query_string()); $ok_url = addslashes("setup.php?rewriteok=1&" . propagate_query_string()); die("<h1>Проверка работы mod_rewrite</h1>" . "<p>Пожалуйста, подождите несколько секунд…</p>" . "<script>jQuery(function(\$) { window.setTimeout(function() { \$.ajax({ url: '/setup-rewrite-check/'," . " success: function(data) { window.location.href = (data == 'OK' ? '{$ok_url}' : '{$fail_url}'); }," . " error: function() { window.location.href = '{$fail_url}'; }" . " }); }, 1000); });</script>"); } if ($_REQUEST['rewriteok'] == '1') { $PROPAGATE['rewriteok'] = $_REQUEST['rewriteok']; } else { die("<h1>Ошибка: mod_rewrite не работает</h1>" . "<p>Обнаружено, что mod_rewrite не работает, или ваш Apache не интерпретирует <code>.htaccess</code>, или вы пользуетесь не Apache.</p>" . "<p>В любом случае, для работы re:tester необходим mod_rewrite. Обратитесь к квалифицированному администратору для его установки и настройки.</p>" . "<p><a href='/setup.php?" . htmlentities(propagate_query_string()) . "'>Повторить проверку</a></p>");
/** * Checks for newest phpMyAdmin version and sets result as a new notice */ function PMA_version_check() { // version check messages should always be visible so let's make // a unique message id each time we run it $message_id = uniqid('version_check'); // wait 3s at most for server response, it's enough to get information // from a working server $connection_timeout = 3; $url = 'http://phpmyadmin.net/home_page/version.php'; $context = stream_context_create(array('http' => array('timeout' => $connection_timeout))); $data = @file_get_contents($url, null, $context); if ($data === false) { if (function_exists('curl_init')) { $ch = curl_init($url); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_TIMEOUT, $connection_timeout); $data = curl_exec($ch); curl_close($ch); } else { messages_set('error', $message_id, 'VersionCheck', PMA_lang('VersionCheckWrapperError')); return; } } if (empty($data)) { messages_set('error', $message_id, 'VersionCheck', PMA_lang('VersionCheckDataError')); return; } /* Format: version\ndate\n(download\n)* */ $data_list = explode("\n", $data); if (count($data_list) > 1) { $version = $data_list[0]; $date = $data_list[1]; } else { $version = $date = ''; } $version_upstream = version_to_int($version); if ($version_upstream === false) { messages_set('error', $message_id, 'VersionCheck', PMA_lang('VersionCheckInvalid')); return; } $version_local = version_to_int($_SESSION['PMA_Config']->get('PMA_VERSION')); if ($version_local === false) { messages_set('error', $message_id, 'VersionCheck', PMA_lang('VersionCheckUnparsable')); return; } if ($version_upstream > $version_local) { $version = htmlspecialchars($version); $date = htmlspecialchars($date); messages_set('notice', $message_id, 'VersionCheck', PMA_lang('VersionCheckNewAvailable', $version, $date)); } else { if ($version_local % 100 == 0) { messages_set('notice', $message_id, 'VersionCheck', PMA_lang('VersionCheckNewAvailableSvn', $version, $date)); } else { messages_set('notice', $message_id, 'VersionCheck', PMA_lang('VersionCheckNone')); } } }
message('error', 'Reading of version failed. Maybe you\'re offline or server does not respond.'); break; } /* Format: version\ndate\n(download\n)* */ $data_list = split("\n", $data); if (count($data_list) > 0) { $version = $data_list[0]; } else { $version = ''; } $version_upstream = version_to_int($version); if ($version_upstream === FALSE) { message('error', 'Got invalid version string from server.'); break; } $version_local = version_to_int($GLOBALS['PMA_Config']->get('PMA_VERSION')); if ($version_local === FALSE) { message('error', 'Unparsable version string.'); break; } if ($version_upstream > $version_local) { message('notice', 'New version of phpMyAdmin is available, you should consider upgrade. New version is ' . htmlspecialchars($version) . '.'); } else { if ($version_local % 100 == 0) { message('notice', 'You are using CVS version, run <code>cvs update</code> :-). However latest released version is ' . htmlspecialchars($version) . '.'); } else { message('notice', 'No newer stable version is available.'); } } break; case 'clear':