Initial commit
This commit is contained in:
326
#pma/setup/frames/index.inc.php
Normal file
326
#pma/setup/frames/index.inc.php
Normal file
@ -0,0 +1,326 @@
|
||||
<?php
|
||||
/* vim: set expandtab sw=4 ts=4 sts=4: */
|
||||
/**
|
||||
* Overview (main page)
|
||||
*
|
||||
* @package PhpMyAdmin-Setup
|
||||
*/
|
||||
|
||||
use PMA\libraries\config\ConfigFile;
|
||||
use PMA\libraries\config\FormDisplay;
|
||||
use PMA\libraries\config\ServerConfigChecks;
|
||||
use PMA\libraries\LanguageManager;
|
||||
|
||||
if (!defined('PHPMYADMIN')) {
|
||||
exit;
|
||||
}
|
||||
|
||||
/**
|
||||
* Core libraries.
|
||||
*/
|
||||
require_once './libraries/display_select_lang.lib.php';
|
||||
require_once './setup/lib/index.lib.php';
|
||||
require_once './libraries/config/FormDisplay.tpl.php';
|
||||
|
||||
// prepare unfiltered language list
|
||||
$all_languages = LanguageManager::getInstance()->sortedLanguages();
|
||||
|
||||
/** @var ConfigFile $cf */
|
||||
$cf = $GLOBALS['ConfigFile'];
|
||||
$separator = PMA_URL_getArgSeparator('html');
|
||||
|
||||
// message handling
|
||||
PMA_messagesBegin();
|
||||
|
||||
//
|
||||
// Check phpMyAdmin version
|
||||
//
|
||||
if (isset($_GET['version_check'])) {
|
||||
PMA_versionCheck();
|
||||
}
|
||||
|
||||
//
|
||||
// Perform various security, compatibility and consistency checks
|
||||
//
|
||||
$configChecker = new ServerConfigChecks($GLOBALS['ConfigFile']);
|
||||
$configChecker->performConfigChecks();
|
||||
|
||||
//
|
||||
// Check whether we can read/write configuration
|
||||
//
|
||||
$config_readable = false;
|
||||
$config_writable = false;
|
||||
$config_exists = false;
|
||||
PMA_checkConfigRw($config_readable, $config_writable, $config_exists);
|
||||
if (!$config_writable || !$config_readable) {
|
||||
PMA_messagesSet(
|
||||
'error', 'config_rw', __('Cannot load or save configuration'),
|
||||
PMA_sanitize(
|
||||
__(
|
||||
'Please create web server writable folder [em]config[/em] in '
|
||||
. 'phpMyAdmin top level directory as described in '
|
||||
. '[doc@setup_script]documentation[/doc]. Otherwise you will be '
|
||||
. 'only able to download or display it.'
|
||||
)
|
||||
)
|
||||
);
|
||||
}
|
||||
//
|
||||
// Check https connection
|
||||
//
|
||||
$is_https = !empty($_SERVER['HTTPS'])
|
||||
&& mb_strtolower($_SERVER['HTTPS']) == 'on';
|
||||
if (!$is_https) {
|
||||
$text = __(
|
||||
'You are not using a secure connection; all data (including potentially '
|
||||
. 'sensitive information, like passwords) is transferred unencrypted!'
|
||||
);
|
||||
|
||||
$text .= ' <a href="#" onclick="window.location.href = \'https:\' + window.location.href.substring(window.location.protocol.length);">';
|
||||
|
||||
// Temporary workaround to use tranlated message in older releases
|
||||
$text .= str_replace(
|
||||
array('[a@%s]', '[/a]'),
|
||||
array('', ''),
|
||||
__(
|
||||
'If your server is also configured to accept HTTPS requests '
|
||||
. 'follow [a@%s]this link[/a] to use a secure connection.'
|
||||
)
|
||||
);
|
||||
$text .= '</a>';
|
||||
PMA_messagesSet('notice', 'no_https', __('Insecure connection'), $text);
|
||||
}
|
||||
|
||||
echo '<form id="select_lang" method="post" action="'
|
||||
, htmlspecialchars($_SERVER['REQUEST_URI']) , '">';
|
||||
echo PMA_URL_getHiddenInputs();
|
||||
echo '<bdo lang="en" dir="ltr"><label for="lang">';
|
||||
echo __('Language') , (__('Language') != 'Language' ? ' - Language' : '');
|
||||
echo '</label></bdo><br />';
|
||||
echo '<select id="lang" name="lang" class="autosubmit" lang="en" dir="ltr">';
|
||||
|
||||
// create language list
|
||||
$lang_list = array();
|
||||
foreach ($all_languages as $each_lang) {
|
||||
//Is current one active?
|
||||
$selected = $each_lang->isActive() ? ' selected="selected"' : '';
|
||||
echo '<option value="' , $each_lang->getCode() , '"' , $selected , '>' , $each_lang->getName()
|
||||
, '</option>' , "\n";
|
||||
}
|
||||
|
||||
echo '</select>';
|
||||
echo '</form>';
|
||||
|
||||
// Check for done action info and set notice message if present
|
||||
switch ($action_done) {
|
||||
case 'config_saved':
|
||||
/* Use uniqid to display this message every time configuration is saved */
|
||||
PMA_messagesSet(
|
||||
'notice', uniqid('config_saved'), __('Configuration saved.'),
|
||||
PMA_sanitize(
|
||||
__(
|
||||
'Configuration saved to file config/config.inc.php in phpMyAdmin '
|
||||
. 'top level directory, copy it to top level one and delete '
|
||||
. 'directory config to use it.'
|
||||
)
|
||||
)
|
||||
);
|
||||
break;
|
||||
case 'config_not_saved':
|
||||
/* Use uniqid to display this message every time configuration is saved */
|
||||
PMA_messagesSet(
|
||||
'notice', uniqid('config_not_saved'), __('Configuration not saved!'),
|
||||
PMA_sanitize(
|
||||
__(
|
||||
'Please create web server writable folder [em]config[/em] in '
|
||||
. 'phpMyAdmin top level directory as described in '
|
||||
. '[doc@setup_script]documentation[/doc]. Otherwise you will be '
|
||||
. 'only able to download or display it.'
|
||||
)
|
||||
)
|
||||
);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
echo '<h2>' , __('Overview') , '</h2>';
|
||||
|
||||
// message handling
|
||||
PMA_messagesEnd();
|
||||
PMA_messagesShowHtml();
|
||||
|
||||
echo '<a href="#" id="show_hidden_messages" style="display:none">';
|
||||
echo __('Show hidden messages (#MSG_COUNT)');
|
||||
echo '</a>';
|
||||
|
||||
echo '<fieldset class="simple"><legend>';
|
||||
echo __('Servers');
|
||||
echo '</legend>';
|
||||
|
||||
//
|
||||
// Display server list
|
||||
//
|
||||
echo PMA_displayFormTop(
|
||||
'index.php', 'get',
|
||||
array(
|
||||
'page' => 'servers',
|
||||
'mode' => 'add'
|
||||
)
|
||||
);
|
||||
echo '<div class="form">';
|
||||
if ($cf->getServerCount() > 0) {
|
||||
echo '<table cellspacing="0" class="datatable" style="table-layout: fixed">';
|
||||
echo '<tr>';
|
||||
echo '<th>#</th>';
|
||||
echo '<th>' , __('Name') , '</th>';
|
||||
echo '<th>' , __('Authentication type') , '</th>';
|
||||
echo '<th colspan="2">DSN</th>';
|
||||
echo '</tr>';
|
||||
|
||||
foreach ($cf->getServers() as $id => $server) {
|
||||
echo '<tr>';
|
||||
echo '<td>' , $id , '</td>';
|
||||
echo '<td>' , htmlspecialchars($cf->getServerName($id)) , '</td>';
|
||||
echo '<td>'
|
||||
, htmlspecialchars($cf->getValue("Servers/$id/auth_type"))
|
||||
, '</td>';
|
||||
echo '<td>' , htmlspecialchars($cf->getServerDSN($id)) , '</td>';
|
||||
echo '<td style="white-space: nowrap">';
|
||||
echo '<small>';
|
||||
echo '<a href="' , PMA_URL_getCommon() , $separator , 'page=servers'
|
||||
, $separator , 'mode=edit' , $separator , 'id=' , $id , '">'
|
||||
, __('Edit') , '</a>';
|
||||
echo ' | ';
|
||||
echo '<a href="' , PMA_URL_getCommon() , $separator , 'page=servers'
|
||||
, $separator , 'mode=remove' , $separator , 'id=' , $id , '">'
|
||||
, __('Delete') , '</a>';
|
||||
echo '</small>';
|
||||
echo '</td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
echo '</table>';
|
||||
} else {
|
||||
echo '<table width="100%">';
|
||||
echo '<tr>';
|
||||
echo '<td>';
|
||||
echo '<i>' , __('There are no configured servers') , '</i>';
|
||||
echo '</td>';
|
||||
echo '</tr>';
|
||||
echo '</table>';
|
||||
}
|
||||
|
||||
echo '<table width="100%">';
|
||||
echo '<tr>';
|
||||
echo '<td class="lastrow" style="text-align: left">';
|
||||
echo '<input type="submit" name="submit" value="' , __('New server') , '" />';
|
||||
echo '</td>';
|
||||
echo '</tr>';
|
||||
echo '</table>';
|
||||
echo '</div>';
|
||||
|
||||
echo PMA_displayFormBottom();
|
||||
|
||||
echo '</fieldset>';
|
||||
|
||||
echo '<fieldset class="simple"><legend>' , __('Configuration file') , '</legend>';
|
||||
|
||||
//
|
||||
// Display config file settings and load/save form
|
||||
//
|
||||
$form_display = new FormDisplay($cf);
|
||||
|
||||
echo PMA_displayFormTop('config.php');
|
||||
echo '<table width="100%" cellspacing="0">';
|
||||
|
||||
// Display language list
|
||||
$opts = array(
|
||||
'doc' => $form_display->getDocLink('DefaultLang'),
|
||||
'values' => array(),
|
||||
'values_escaped' => true);
|
||||
foreach ($all_languages as $each_lang) {
|
||||
$opts['values'][$each_lang->getCode()] = $each_lang->getName();
|
||||
}
|
||||
echo PMA_displayInput(
|
||||
'DefaultLang', __('Default language'), 'select',
|
||||
$cf->getValue('DefaultLang'), '', true, $opts
|
||||
);
|
||||
|
||||
// Display server list
|
||||
$opts = array(
|
||||
'doc' => $form_display->getDocLink('ServerDefault'),
|
||||
'values' => array(),
|
||||
'values_disabled' => array());
|
||||
if ($cf->getServerCount() > 0) {
|
||||
$opts['values']['0'] = __('let the user choose');
|
||||
$opts['values']['-'] = '------------------------------';
|
||||
if ($cf->getServerCount() == 1) {
|
||||
$opts['values_disabled'][] = '0';
|
||||
}
|
||||
$opts['values_disabled'][] = '-';
|
||||
|
||||
foreach ($cf->getServers() as $id => $server) {
|
||||
$opts['values'][(string)$id] = $cf->getServerName($id) . " [$id]";
|
||||
}
|
||||
} else {
|
||||
$opts['values']['1'] = __('- none -');
|
||||
$opts['values_escaped'] = true;
|
||||
}
|
||||
echo PMA_displayInput(
|
||||
'ServerDefault', __('Default server'), 'select',
|
||||
$cf->getValue('ServerDefault'), '', true, $opts
|
||||
);
|
||||
|
||||
// Display EOL list
|
||||
$opts = array(
|
||||
'values' => array(
|
||||
'unix' => 'UNIX / Linux (\n)',
|
||||
'win' => 'Windows (\r\n)'),
|
||||
'values_escaped' => true);
|
||||
$eol = PMA_ifSetOr($_SESSION['eol'], (PMA_IS_WINDOWS ? 'win' : 'unix'));
|
||||
echo PMA_displayInput(
|
||||
'eol', __('End of line'), 'select',
|
||||
$eol, '', true, $opts
|
||||
);
|
||||
|
||||
echo '<tr>';
|
||||
echo '<td colspan="2" class="lastrow" style="text-align: left">';
|
||||
echo '<input type="submit" name="submit_display" value="' , __('Display') , '" />';
|
||||
echo '<input type="submit" name="submit_download" value="' , __('Download') , '" />';
|
||||
echo ' ';
|
||||
|
||||
echo '<input type="submit" name="submit_save" value="' , __('Save') , '"';
|
||||
if (!$config_writable) {
|
||||
echo ' disabled="disabled"';
|
||||
}
|
||||
echo '/>';
|
||||
|
||||
echo '<input type="submit" name="submit_load" value="' , __('Load') , '"';
|
||||
if (!$config_exists) {
|
||||
echo ' disabled="disabled"';
|
||||
}
|
||||
echo '/>';
|
||||
|
||||
echo '<input type="submit" name="submit_delete" value="' , __('Delete') , '"';
|
||||
if (!$config_exists || !$config_writable) {
|
||||
echo ' disabled="disabled"';
|
||||
}
|
||||
echo '/>';
|
||||
|
||||
echo ' ';
|
||||
echo '<input type="submit" name="submit_clear" value="' , __('Clear')
|
||||
, '" class="red" />';
|
||||
echo '</td>';
|
||||
echo '</tr>';
|
||||
echo '</table>';
|
||||
|
||||
echo PMA_displayFormBottom();
|
||||
|
||||
echo '</fieldset>';
|
||||
echo '<div id="footer">';
|
||||
echo '<a href="../url.php?url=https://www.phpmyadmin.net/">' , __('phpMyAdmin homepage') , '</a>';
|
||||
echo '<a href="../url.php?url=https://www.phpmyadmin.net/donate/">'
|
||||
, __('Donate') , '</a>';
|
||||
echo '<a href="' , PMA_URL_getCommon() , $separator , 'version_check=1">'
|
||||
, __('Check for latest version') , '</a>';
|
||||
echo '</div>';
|
Reference in New Issue
Block a user