diff --git a/ChangeLog b/ChangeLog index bf99259817..bc2ec78ad1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -83,7 +83,21 @@ $Id$ + [core] Include Content Security Policy HTTP headers. - bug #3004216 [CSS] Field attributes use inline CSS - patch #2999595, rfe #2998130 [interface] Cleanup navigation frame. -- [core] Update library PHPExcel to version 1.7.3c +- patch #3025161 [core] Prevent sending of unnecessary cookies, + thanks to Piotr Przybylski - crackpl +- bug [password] Generate password only available if JS is enabled + (fixed for Privileges and Change password) +- [core] RecodingEngine now accepts none as valid option. ++ [core] Dropped AllowAnywhereRecoding configuration variable. +- rfe #3016457 [interface] Define tab order in SQL form to allow easier tab + navigation. ++ [code] Centralized format string expansion, @VARIABLES@ are recommended way + now. ++ [validator] SQL validator works also with SOAP PHP extension. +- [interface] Better formatting for SQL validator results. + +3.3.6.0 (not yet released) +- bug #3031705 [core] Do not use CONCAT for DECIMAL fields. 3.3.5.0 (not yet released) - patch #2932113 [information_schema] Slow export when having lots of @@ -93,6 +107,13 @@ $Id$ - bug [replication] Do not offer information_schema in the list of databases - bug [js] Avoid loading twice a js file - bug #3024344 [setup] Setup forces numeric MemoryLimit +- bug #3025975 [auth] Odd LoginCookieValidity default value +- bug #3026400 [PHP] ereg functions are deprecated +- bug #3027557 [PHP] split() deprecated in PHP 5.3 (backport fixes from master) +- bug #3023507 [core] No result set display from stored procedure SELECT +- bug [export] CSV for MS Excel (Windows) should have semi-colon as separator +- [core] Update library PHPExcel to version 1.7.3c +- bug #2994885, bug #3029168 [import] Convert Excel column name correctly 3.3.4.0 (2010-06-28) - bug #2996161 [import] properly escape import value diff --git a/Documentation.html b/Documentation.html index 7e945dba2d..c35cfae27c 100644 --- a/Documentation.html +++ b/Documentation.html @@ -340,7 +340,8 @@ rm -rf config # remove not needed directory FAQ 1.23).

If you already had this infrastructure and upgraded to MySQL 4.1.2 - or newer, please use ./scripts/upgrade_tables_mysql_4_1_2+.sql.

+ or newer, please use ./scripts/upgrade_tables_mysql_4_1_2+.sql + and then create new tables by importing ./scripts/create_tables.sql.

You can use your phpMyAdmin to create the tables for you. Please be aware that you may need special (administrator) privileges to create the database @@ -396,7 +397,7 @@ rm -rf config # remove not needed directory In cookie mode, the password is stored, encrypted with the blowfish algorithm, in a temporary cookie. -

  • Note: starting with phpMyAdmin 2.6.1, this section is only applicable if +
  • Note: this section is only applicable if your MySQL server is running with --skip-show-database.

    For 'HTTP' and 'cookie' @@ -715,7 +716,7 @@ since this link provides funding for phpMyAdmin.
    This special account is used for 2 distinct purposes: to make possible all relational features (see $cfg['Servers'][$i]['pmadb']) - and, for a MySQL server previous to 4.1.2 or running with + and, for a MySQL server running with --skip-show-database, to enable a multi-user installation (HTTP or cookie authentication mode).

    @@ -1361,8 +1362,8 @@ CREATE DATABASE,ALTER DATABASE,DROP DATABASE
    Define how long is login cookie valid. Please note that php configuration option session.gc_maxlifetime might limit session validity and if session is lost, login cookie is - also invalidated. So it is good idea to set session.gc_maxlifetime - at least as high is $cfg['LoginCookieValidity'] is set.
    + also invalidated. So it is a good idea to set session.gc_maxlifetime + not lower than the value of $cfg['LoginCookieValidity'].
    $cfg['LoginCookieStore'] integer [number of seconds]
    Define how long is login cookie should be stored in browser. Default 0 @@ -1683,27 +1684,6 @@ CREATE DATABASE,ALTER DATABASE,DROP DATABASE expression. For example if you want only Czech and English, you should set filter to '^(cs|en)'.
    -
    $cfg['DefaultCharset'] string
    -
    Default character set to use for recoding of MySQL queries. This must be - enabled and it's described by - $cfg['AllowAnywhereRecoding'] - option.
    - You can give here any character set which is in - $cfg['AvailableCharsets'] - array and this is just default choice, user can select any of them.
    - -
    $cfg['AllowAnywhereRecoding'] boolean
    -
    Allow character set recoding of MySQL queries. You need recode or iconv - support (compiled in or module) in PHP to allow MySQL queries recoding - and used language file must have it enabled (by default only these - which are in Unicode, just to avoid losing some characters).

    - - Setting this to TRUE also activates a pull-down menu - in the Export and Import pages, to choose the character set when - exporting a file. The default value in this menu comes from - $cfg['Export']['charset'] and $cfg['Import']['charset']. -
    -
    $cfg['RecodingEngine'] string
    You can select here which functions will be used for character set conversion. Possible values are: @@ -1711,8 +1691,15 @@ CREATE DATABASE,ALTER DATABASE,DROP DATABASE iconv, then recode)
  • iconv - use iconv or libiconv functions
  • recode - use recode_string function
  • +
  • none - disable encoding conversion
  • Default is auto. +
    + Enabled charset conversion activates a pull-down menu + in the Export and Import pages, to choose the character set when + exporting a file. The default value in this menu comes from + $cfg['Export']['charset'] and $cfg['Import']['charset']. +
    $cfg['IconvExtraParams'] string
    Specify some parameters for iconv used in charset conversion. See @@ -1867,7 +1854,7 @@ $cfg['TrustedProxies'] = editing.
    $cfg['LimitChars'] integer
    -
    Maximum number of characters showen in any non-numeric column on browse view. +
    Maximum number of characters shown in any non-numeric field on browse view. Can be turned off by a toggle button on the browse page.
    $cfg['ModifyDeleteAtLeft'] boolean @@ -2163,24 +2150,8 @@ setfacl -d -m "g:www-data:rwx" tmp
    $cfg['TitleDatabase'] string
    $cfg['TitleServer'] string
    $cfg['TitleDefault'] string
    -
    Allows you to specify window's title bar. Following magic string can - be used to get special values: -
    -
    @HTTP_HOST@
    -
    HTTP host that runs phpMyAdmin
    -
    @SERVER@
    -
    MySQL server name
    -
    @VERBOSE@
    -
    Verbose MySQL server name as defined in server configuration
    -
    @VSERVER@
    -
    Verbose MySQL server name if set, otherwise normal
    -
    @DATABASE@
    -
    Currently opened database
    -
    @TABLE@
    -
    Currently opened table
    -
    @PHPMYADMIN@
    -
    phpMyAdmin with version
    -
    +
    Allows you to specify window's title bar. You can use + format string expansion.
    $cfg['ErrorIconic'] boolean
    @@ -4137,25 +4108,34 @@ INSERT INTO REL_towns VALUES ('M', 'Montréal'); 6.14 How do I set up the SQL Validator? -

    To use it, you need a very recent version of PHP, 4.3.0 recommended, with +

    + To use SQL Validator, you need PHP with XML, PCRE and PEAR support. - On your system command line, run "pear install Net_Socket Net_URL - HTTP_Request Mail_Mime Net_DIME SOAP" to get the necessary - PEAR modules - for usage.
    - On a more recent pear version, I had problems with the state of Net_DIME - being beta, so this single command - "pear -d preferred_state=beta install -a SOAP" installed all the - needed modules.
    + In addition you need a SOAP support, either as a PHP extension or as a PEAR SOAP + module. +

    + +

    + To install PEAR SOAP module, run "pear install Net_Socket Net_URL + HTTP_Request Mail_Mime Net_DIME SOAP" to get the necessary PEAR modules for + usage. +

    + +

    If you use the Validator, you should be aware that any SQL statement you submit will be stored anonymously (database/table/column names, strings, numbers replaced with generic values). The Mimer SQL Validator itself, is © 2001 Upright Database Technology. - We utilize it as free SOAP service.

    + We utilize it as free SOAP service. +

    6.15 I want to add a BLOB column and put an index on @@ -4343,6 +4323,33 @@ chmod o+rwx tmp

    Click the first row of the range, hold the shift key and click the last row of the range. This works everywhere you see rows, for example in Browse mode or on the Structure page.

    +

    + 6.27 What format strings can I use?

    + +

    + In all places where phpMyAdmin accepts format strings, you can use + @VARIABLE@ expansion and + strftime format strings. The + expanded variables depend on a context (eg. if you don't have chosen + table, you can not get table name), but following variables can be used: +

    +
    +
    @HTTP_HOST@
    +
    HTTP host that runs phpMyAdmin
    +
    @SERVER@
    +
    MySQL server name
    +
    @VERBOSE@
    +
    Verbose MySQL server name as defined in server configuration
    +
    @VSERVER@
    +
    Verbose MySQL server name if set, otherwise normal
    +
    @DATABASE@
    +
    Currently opened database
    +
    @TABLE@
    +
    Currently opened table
    +
    @PHPMYADMIN@
    +
    phpMyAdmin with version
    +
    +

    phpMyAdmin project

    diff --git a/browse_foreigners.php b/browse_foreigners.php index 714d8676d3..0f39cb4feb 100644 --- a/browse_foreigners.php +++ b/browse_foreigners.php @@ -3,7 +3,6 @@ /** * display selection for relational field values * - * @version $Id$ * @package phpMyAdmin */ diff --git a/bs_change_mime_type.php b/bs_change_mime_type.php index b8fea6b55c..8ad8d1abc4 100644 --- a/bs_change_mime_type.php +++ b/bs_change_mime_type.php @@ -1,7 +1,6 @@ %s" %s:') - * @uses __('%s match(es) inside table %s') - * @uses __('Browse') - * @uses __('Delete') - * @uses __('Total: %s match(es)') - * @uses __('Search in database') - * @uses __('Word(s) or value(s) to search for (wildcard: "%"):') - * @uses __('Find:') - * @uses __('Words are separated by a space character (" ").') - * @uses __('Inside table(s):') - * @uses __('Unselect All') - * @uses __('Select All') * @uses PMA_DBI_get_tables() * @uses PMA_sqlAddslashes() * @uses PMA_getSearchSqls() @@ -46,7 +29,6 @@ * @uses array_intersect() * @uses sprintf() * @uses in_array() - * @version $Id$ * @package phpMyAdmin */ @@ -257,7 +239,7 @@ if (isset($_REQUEST['submit_search'])) { $sql_query .= $newsearchsqls['select_count']; echo '' - .'' . sprintf(__('%s match(es) inside table %s'), $res_cnt, + .'' . sprintf(_ngettext('%s match inside table %s', '%s matches inside table %s', $res_cnt), $res_cnt, htmlspecialchars($each_table)) . "\n"; if ($res_cnt > 0) { @@ -282,7 +264,7 @@ if (isset($_REQUEST['submit_search'])) { echo '' . "\n"; if (count($tables_selected) > 1) { - echo '

    ' . sprintf(__('Total: %s match(es)'), + echo '

    ' . sprintf(_ngettext('Total: %s match', 'Total: %s matches', $num_search_result_total), $num_search_result_total) . '

    ' . "\n"; } } // end 1. diff --git a/db_sql.php b/db_sql.php index 2ac198bda5..27194b08dc 100644 --- a/db_sql.php +++ b/db_sql.php @@ -2,7 +2,6 @@ /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * - * @version $Id$ * @package phpMyAdmin */ diff --git a/db_structure.php b/db_structure.php index 65b78b7080..9a6ee24ec2 100644 --- a/db_structure.php +++ b/db_structure.php @@ -2,7 +2,6 @@ /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * - * @version $Id$ * @package phpMyAdmin */ @@ -360,24 +359,24 @@ foreach ($tables as $keyname => $each_table) { ) { $do = true; } - foreach ($server_slave_Wild_Do_Table as $table) { - if (($db == PMA_replication_strout($table)) && (ereg("^".substr(PMA_replication_strout($table, true), 0, strlen(PMA_replication_strout($table, true))-1), $truename))) + foreach ($server_slave_Wild_Do_Table as $db_table) { + $table_part = PMA_extract_db_or_table($db_table, 'table'); + if (($db == PMA_extract_db_or_table($db_table, 'db')) && (preg_match("@^" . substr($table_part, 0, strlen($table_part) - 1) . "@", $truename))) { $do = true; + } } //////////////////////////////////////////////////////////////////// if ((strlen(array_search($truename, $server_slave_Ignore_Table)) > 0) || (strlen(array_search($db, $server_slave_Ignore_DB)) > 0)) { $ignored = true; } - foreach ($server_slave_Wild_Ignore_Table as $table) { - if (($db == PMA_replication_strout($table)) && (ereg("^".substr(PMA_replication_strout($table, true), 0, strlen(PMA_replication_strout($table, true))-1), $truename))) + foreach ($server_slave_Wild_Ignore_Table as $db_table) { + $table_part = PMA_extract_db_or_table($db_table, 'table'); + if (($db == PMA_extract_db_or_table($db_table)) && (preg_match("@^" . substr($table_part, 0, strlen($table_part) - 1) . "@", $truename))) { $ignored = true; + } } - }/* elseif ($server_master_status) { - if ((strlen(array_search($db, $server_master_Do_DB))>0) || count($server_master_Do_DB)==1) - $do = true; - elseif ((strlen(array_search($db, $server_master_Ignore_DB))>0) || count($server_master_Ignore_DB)==1) - $ignored = true; - }*/ + unset($table_part); + } ?> diff --git a/db_tracking.php b/db_tracking.php index 68faafec3f..f18b9b8210 100644 --- a/db_tracking.php +++ b/db_tracking.php @@ -1,7 +1,6 @@ setCookie('pma_server_filename_template', $filename_template); } - $filename = str_replace('__SERVER__', $GLOBALS['cfg']['Server']['host'], strftime($filename_template)); } elseif ($export_type == 'database') { if (isset($remember_template)) { $GLOBALS['PMA_Config']->setCookie('pma_db_filename_template', $filename_template); } - $filename = str_replace('__DB__', $db, str_replace('__SERVER__', $GLOBALS['cfg']['Server']['host'], strftime($filename_template))); } else { if (isset($remember_template)) { $GLOBALS['PMA_Config']->setCookie('pma_table_filename_template', $filename_template); } - $filename = str_replace('__TABLE__', $table, str_replace('__DB__', $db, str_replace('__SERVER__', $GLOBALS['cfg']['Server']['host'], strftime($filename_template)))); } + $filename = PMA_expandUserString($filename_template); // convert filename to iso-8859-1, it is safer - if (!(isset($cfg['AllowAnywhereRecoding']) && $cfg['AllowAnywhereRecoding'] )) { - $filename = PMA_convert_string($charset, 'iso-8859-1', $filename); - } else { - $filename = PMA_convert_string($convcharset, 'iso-8859-1', $filename); - } + $filename = PMA_convert_string($charset, 'iso-8859-1', $filename); // Grab basic dump extension and mime type $filename .= '.' . $export_list[$type]['extension']; diff --git a/import.php b/import.php index 4d45a59d8d..b123064191 100644 --- a/import.php +++ b/import.php @@ -4,7 +4,6 @@ * Core script for import, this is just the glue around all other stuff * * @uses PMA_Bookmark_getList() - * @version $Id$ * @package phpMyAdmin */ @@ -343,7 +342,7 @@ if ($import_file != 'none' && !$error) { //$_SESSION['Import_message'] = $message->getDisplay(); // Convert the file's charset if necessary -if ($cfg['AllowAnywhereRecoding'] && isset($charset_of_file)) { +if ($GLOBALS['PMA_recoding_engine'] != PMA_CHARSET_NONE && isset($charset_of_file)) { if ($charset_of_file != $charset) { $charset_conversion = TRUE; } @@ -451,7 +450,7 @@ if (isset($my_die)) { if (! empty($last_query_with_results)) { // but we want to show intermediate results too $disp_query = $sql_query; - $disp_message = __('Your SQL query has been executed successfully'); + $disp_message = __('Your SQL query has been executed successfully'); $sql_query = $last_query_with_results; $go_sql = true; } diff --git a/import_status.php b/import_status.php index 4125eadeab..d739009ee9 100644 --- a/import_status.php +++ b/import_status.php @@ -2,7 +2,6 @@ /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * - * @version $Id$ * @package phpMyAdmin */ diff --git a/index.php b/index.php index d2d16fa783..3b16ec7d2e 100644 --- a/index.php +++ b/index.php @@ -3,8 +3,6 @@ /** * forms frameset * - * @version $Id$ - * @uses __('phpMyAdmin is more friendly with a frames-capable browser.') * @uses $GLOBALS['cfg']['QueryHistoryDB'] * @uses $GLOBALS['cfg']['Server']['user'] * @uses $GLOBALS['cfg']['DefaultTabServer'] as src for the mainframe @@ -63,7 +61,7 @@ unset($cfgRelation); /** * pass variables to child pages */ -$drops = array('lang', 'server', 'convcharset', 'collation_connection', +$drops = array('lang', 'server', 'collation_connection', 'db', 'table'); foreach ($drops as $each_drop) { diff --git a/js/functions.js b/js/functions.js index 0479e8421c..8e6cca96c7 100644 --- a/js/functions.js +++ b/js/functions.js @@ -194,7 +194,7 @@ function confirmQuery(theForm1, sqlQuery1) * Displays a confirmation box before disabling the BLOB repository for a given database. * This function is called while clicking links * - * @param object the database + * @param object the database * * @return boolean whether to disable the repository or not */ @@ -282,10 +282,10 @@ function checkSqlQuery(theForm) // Global variable row_class is set to even var row_class = 'even'; -/** +/** * Generates a row dynamically in the differences table displaying -* the complete statistics of difference in table like number of -* rows to be updated, number of rows to be inserted, number of +* the complete statistics of difference in table like number of +* rows to be updated, number of rows to be inserted, number of * columns to be added, number of columns to be removed, etc. * * @param index index of matching table @@ -294,17 +294,17 @@ var row_class = 'even'; * @param remove_size number of columns to be removed * @param insert_index number of indexes to be inserted * @param remove_index number of indexes to be removed -* @param img_obj image object +* @param img_obj image object * @param table_name name of the table */ function showDetails(i, update_size, insert_size, remove_size, insert_index, remove_index, img_obj, table_name) -{ +{ // The path of the image is split to facilitate comparison - var relative_path = (img_obj.src).split("themes/"); - + var relative_path = (img_obj.src).split("themes/"); + // The image source is changed when the showDetails function is called. - if (relative_path[1] == 'original/img/new_data_hovered.jpg') { + if (relative_path[1] == 'original/img/new_data_hovered.jpg') { img_obj.src = "./themes/original/img/new_data_selected_hovered.jpg"; img_obj.alt = PMA_messages['strClickToUnselect']; //only for IE browser } else if (relative_path[1] == 'original/img/new_struct_hovered.jpg') { @@ -313,76 +313,76 @@ function showDetails(i, update_size, insert_size, remove_size, insert_index, rem } else if (relative_path[1] == 'original/img/new_struct_selected_hovered.jpg') { img_obj.src = "./themes/original/img/new_struct_hovered.jpg"; img_obj.alt = PMA_messages['strClickToSelect']; - } else if (relative_path[1] == 'original/img/new_data_selected_hovered.jpg') { + } else if (relative_path[1] == 'original/img/new_data_selected_hovered.jpg') { img_obj.src = "./themes/original/img/new_data_hovered.jpg"; img_obj.alt = PMA_messages['strClickToSelect']; - } - - var div = document.getElementById("list"); - var table = div.getElementsByTagName("table")[0]; + } + + var div = document.getElementById("list"); + var table = div.getElementsByTagName("table")[0]; var table_body = table.getElementsByTagName("tbody")[0]; - + //Global variable row_class is being used if (row_class == 'even') { row_class = 'odd'; } else { - row_class = 'even'; + row_class = 'even'; } - // If the red or green button against a table name is pressed then append a new row to show the details of differences of this table. - if ((relative_path[1] != 'original/img/new_struct_selected_hovered.jpg') && (relative_path[1] != 'original/img/new_data_selected_hovered.jpg')) { - - var newRow = document.createElement("tr"); + // If the red or green button against a table name is pressed then append a new row to show the details of differences of this table. + if ((relative_path[1] != 'original/img/new_struct_selected_hovered.jpg') && (relative_path[1] != 'original/img/new_data_selected_hovered.jpg')) { + + var newRow = document.createElement("tr"); newRow.setAttribute("class", row_class); - newRow.className = row_class; - // Id assigned to this row element is same as the index of this table name in the matching_tables/source_tables_uncommon array + newRow.className = row_class; + // Id assigned to this row element is same as the index of this table name in the matching_tables/source_tables_uncommon array newRow.setAttribute("id" , i); - + var table_name_cell = document.createElement("td"); table_name_cell.align = "center"; table_name_cell.innerHTML = table_name ; - + newRow.appendChild(table_name_cell); - + var create_table = document.createElement("td"); create_table.align = "center"; - + var add_cols = document.createElement("td"); add_cols.align = "center"; - + var remove_cols = document.createElement("td"); remove_cols.align = "center"; - + var alter_cols = document.createElement("td"); alter_cols.align = "center"; - + var add_index = document.createElement("td"); add_index.align = "center"; - + var delete_index = document.createElement("td"); delete_index.align = "center"; - + var update_rows = document.createElement("td"); update_rows.align = "center"; - + var insert_rows = document.createElement("td"); insert_rows.align = "center"; - + var tick_image = document.createElement("img"); - tick_image.src = "./themes/original/img/s_success.png"; + tick_image.src = "./themes/original/img/s_success.png"; if (update_size == '' && insert_size == '' && remove_size == '') { /** - This is the case when the table needs to be created in target database. + This is the case when the table needs to be created in target database. */ create_table.appendChild(tick_image); add_cols.innerHTML = "--"; - remove_cols.innerHTML = "--"; + remove_cols.innerHTML = "--"; alter_cols.innerHTML = "--"; delete_index.innerHTML = "--"; add_index.innerHTML = "--"; update_rows.innerHTML = "--"; insert_rows.innerHTML = "--"; - + newRow.appendChild(create_table); newRow.appendChild(add_cols); newRow.appendChild(remove_cols); @@ -391,43 +391,21 @@ function showDetails(i, update_size, insert_size, remove_size, insert_index, rem newRow.appendChild(add_index); newRow.appendChild(update_rows); newRow.appendChild(insert_rows); - + } else if (update_size == '' && remove_size == '') { /** - This is the case when data difference is displayed in the - table which is present in source but absent from target database + This is the case when data difference is displayed in the + table which is present in source but absent from target database */ create_table.innerHTML = "--"; add_cols.innerHTML = "--"; - remove_cols.innerHTML = "--"; + remove_cols.innerHTML = "--"; alter_cols.innerHTML = "--"; add_index.innerHTML = "--"; delete_index.innerHTML = "--"; update_rows.innerHTML = "--"; insert_rows.innerHTML = insert_size; - - newRow.appendChild(create_table); - newRow.appendChild(add_cols); - newRow.appendChild(remove_cols); - newRow.appendChild(alter_cols); - newRow.appendChild(delete_index); - newRow.appendChild(add_index); - newRow.appendChild(update_rows); - newRow.appendChild(insert_rows); - - } else if (remove_size == '') { - /** - This is the case when data difference between matching_tables is displayed. - */ - create_table.innerHTML = "--"; - add_cols.innerHTML = "--"; - remove_cols.innerHTML = "--"; - alter_cols.innerHTML = "--"; - add_index.innerHTML = "--"; - delete_index.innerHTML = "--"; - update_rows.innerHTML = update_size; - insert_rows.innerHTML = insert_size; - + newRow.appendChild(create_table); newRow.appendChild(add_cols); newRow.appendChild(remove_cols); @@ -436,41 +414,63 @@ function showDetails(i, update_size, insert_size, remove_size, insert_index, rem newRow.appendChild(add_index); newRow.appendChild(update_rows); newRow.appendChild(insert_rows); - + + } else if (remove_size == '') { + /** + This is the case when data difference between matching_tables is displayed. + */ + create_table.innerHTML = "--"; + add_cols.innerHTML = "--"; + remove_cols.innerHTML = "--"; + alter_cols.innerHTML = "--"; + add_index.innerHTML = "--"; + delete_index.innerHTML = "--"; + update_rows.innerHTML = update_size; + insert_rows.innerHTML = insert_size; + + newRow.appendChild(create_table); + newRow.appendChild(add_cols); + newRow.appendChild(remove_cols); + newRow.appendChild(alter_cols); + newRow.appendChild(delete_index); + newRow.appendChild(add_index); + newRow.appendChild(update_rows); + newRow.appendChild(insert_rows); + } else { /** This is the case when structure difference between matching_tables id displayed */ create_table.innerHTML = "--"; add_cols.innerHTML = insert_size; - remove_cols.innerHTML = remove_size; + remove_cols.innerHTML = remove_size; alter_cols.innerHTML = update_size; delete_index.innerHTML = remove_index; add_index.innerHTML = insert_index; update_rows.innerHTML = "--"; insert_rows.innerHTML = "--"; - + newRow.appendChild(create_table); newRow.appendChild(add_cols); newRow.appendChild(remove_cols); - newRow.appendChild(alter_cols); + newRow.appendChild(alter_cols); newRow.appendChild(delete_index); newRow.appendChild(add_index); newRow.appendChild(update_rows); newRow.appendChild(insert_rows); } table_body.appendChild(newRow); - + } else if ((relative_path[1] != 'original/img/new_struct_hovered.jpg') && (relative_path[1] != 'original/img/new_data_hovered.jpg')) { //The case when the row showing the details need to be removed from the table i.e. the difference button is deselected now. var table_rows = table_body.getElementsByTagName("tr"); var j; var index = 0; - for (j=0; j < table_rows.length; j++) - { - if (table_rows[j].id == i) { + for (j=0; j < table_rows.length; j++) + { + if (table_rows[j].id == i) { index = j; - table_rows[j].parentNode.removeChild(table_rows[j]); + table_rows[j].parentNode.removeChild(table_rows[j]); } } //The table row css is being adjusted. Class "odd" for odd rows and "even" for even rows should be maintained. @@ -481,11 +481,11 @@ function showDetails(i, update_size, insert_size, remove_size, insert_index, rem table_rows[index].setAttribute("class","odd"); // for Mozilla firefox table_rows[index].className = "odd"; // for IE browser } else { - table_rows[index].setAttribute("class","even"); // for Mozilla firefox - table_rows[index].className = "even"; // for IE browser + table_rows[index].setAttribute("class","even"); // for Mozilla firefox + table_rows[index].className = "even"; // for IE browser } - } - } + } + } } /** @@ -494,35 +494,35 @@ function showDetails(i, update_size, insert_size, remove_size, insert_index, rem * @param img_obj the image object whose source needs to be changed * */ - + function change_Image(img_obj) { - var relative_path = (img_obj.src).split("themes/"); - - if (relative_path[1] == 'original/img/new_data.jpg') { - img_obj.src = "./themes/original/img/new_data_hovered.jpg"; + var relative_path = (img_obj.src).split("themes/"); + + if (relative_path[1] == 'original/img/new_data.jpg') { + img_obj.src = "./themes/original/img/new_data_hovered.jpg"; } else if (relative_path[1] == 'original/img/new_struct.jpg') { img_obj.src = "./themes/original/img/new_struct_hovered.jpg"; } else if (relative_path[1] == 'original/img/new_struct_hovered.jpg') { img_obj.src = "./themes/original/img/new_struct.jpg"; - } else if (relative_path[1] == 'original/img/new_data_hovered.jpg') { - img_obj.src = "./themes/original/img/new_data.jpg"; - } else if (relative_path[1] == 'original/img/new_data_selected.jpg') { - img_obj.src = "./themes/original/img/new_data_selected_hovered.jpg"; - } else if(relative_path[1] == 'original/img/new_struct_selected.jpg') { - img_obj.src = "./themes/original/img/new_struct_selected_hovered.jpg"; - } else if (relative_path[1] == 'original/img/new_struct_selected_hovered.jpg') { - img_obj.src = "./themes/original/img/new_struct_selected.jpg"; - } else if (relative_path[1] == 'original/img/new_data_selected_hovered.jpg') { - img_obj.src = "./themes/original/img/new_data_selected.jpg"; + } else if (relative_path[1] == 'original/img/new_data_hovered.jpg') { + img_obj.src = "./themes/original/img/new_data.jpg"; + } else if (relative_path[1] == 'original/img/new_data_selected.jpg') { + img_obj.src = "./themes/original/img/new_data_selected_hovered.jpg"; + } else if(relative_path[1] == 'original/img/new_struct_selected.jpg') { + img_obj.src = "./themes/original/img/new_struct_selected_hovered.jpg"; + } else if (relative_path[1] == 'original/img/new_struct_selected_hovered.jpg') { + img_obj.src = "./themes/original/img/new_struct_selected.jpg"; + } else if (relative_path[1] == 'original/img/new_data_selected_hovered.jpg') { + img_obj.src = "./themes/original/img/new_data_selected.jpg"; } } /** - * Generates the URL containing the list of selected table ids for synchronization and - * a variable checked for confirmation of deleting previous rows from target tables + * Generates the URL containing the list of selected table ids for synchronization and + * a variable checked for confirmation of deleting previous rows from target tables * - * @param token the token generated for each PMA form + * @param token the token generated for each PMA form * */ @@ -536,15 +536,15 @@ function ApplySelectedChanges(token) var x = table_rows.length; var i; /** - Append the token at the beginning of the query string followed by - Table_ids that shows that "Apply Selected Changes" button is pressed + Append the token at the beginning of the query string followed by + Table_ids that shows that "Apply Selected Changes" button is pressed */ var append_string = "?token="+token+"&Table_ids="+1; for(i=0; i $js_message) { PMA_printJsValue("PMA_messages['" . $name . "']", $js_message); diff --git a/js/password_generation.js b/js/password_generation.js new file mode 100644 index 0000000000..9153cc9b5a --- /dev/null +++ b/js/password_generation.js @@ -0,0 +1,10 @@ +/* vim: set expandtab sw=4 ts=4 sts=4: */ +/** + * for libraries/display_change_password.lib.php + * + */ + +$(document).ready(function() { + $('#tr_element_before_generate_password').parent().append('' + PMA_messages['strGeneratePassword'] + ''); + $('#div_element_before_generate_password').parent().append('
    '); +}); diff --git a/libraries/Config.class.php b/libraries/Config.class.php index c0090aa7fb..225977bef4 100644 --- a/libraries/Config.class.php +++ b/libraries/Config.class.php @@ -3,7 +3,6 @@ /** * * - * @version $Id$ * @package phpMyAdmin */ @@ -994,7 +993,6 @@ class PMA_Config * @uses $GLOBALS['PMA_Config'] * @uses PMA_Config::get() * @uses PMA_Config::_getFontsizeOptions() - * @uses __('Font size') * @static * @param string $current_size currently slected font size with unit * @return string html selectbox @@ -1031,7 +1029,6 @@ class PMA_Config * * @uses PMA_generate_common_hidden_inputs() * @uses PMA_Config::_getFontsizeSelection() - * @uses __('Go') * @static * @param string $current_size currently slected font size with unit * @return string html selectbox @@ -1086,10 +1083,13 @@ class PMA_Config if ($validity == null) { $validity = 2592000; } - if (strlen($value) && null !== $default && $value === $default - && isset($_COOKIE[$cookie])) { - // remove cookie, default value is used - return $this->removeCookie($cookie); + if (strlen($value) && null !== $default && $value === $default) { + // default value is used + if (isset($_COOKIE[$cookie])) { + // remove cookie + return $this->removeCookie($cookie); + } + return false; } if (! strlen($value) && isset($_COOKIE[$cookie])) { diff --git a/libraries/Error.class.php b/libraries/Error.class.php index 849287e43c..b063995bec 100644 --- a/libraries/Error.class.php +++ b/libraries/Error.class.php @@ -3,7 +3,6 @@ /** * Holds class PMA_Error * - * @version $Id$ * @package phpMyAdmin */ diff --git a/libraries/Error_Handler.class.php b/libraries/Error_Handler.class.php index fab7a39867..0b9089833d 100644 --- a/libraries/Error_Handler.class.php +++ b/libraries/Error_Handler.class.php @@ -3,7 +3,6 @@ /** * Holds class PMA_Error_Handler * - * @version $Id$ * @package phpMyAdmin */ diff --git a/libraries/File.class.php b/libraries/File.class.php index 9dfe5687b0..a6a515f444 100644 --- a/libraries/File.class.php +++ b/libraries/File.class.php @@ -3,7 +3,6 @@ /** * file upload functions * - * @version $Id$ * @package phpMyAdmin */ @@ -259,13 +258,6 @@ class PMA_File * @uses PMA_File::setRecentBLOBReference() * @uses curl_setopt_array() * @uses PMA_File::$_error_message - * @uses __('The uploaded file exceeds the upload_max_filesize directive in php.ini.') - * @uses __('The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.') - * @uses __('The uploaded file was only partially uploaded.') - * @uses __('Missing a temporary folder.') - * @uses __('Failed to write file to disk.') - * @uses __('File upload stopped by extension.') - * @uses __('Unknown error in file upload.') * @uses $_FILES * @param string $key a numeric key used to identify the different rows * @param string $primary_key @@ -832,7 +824,6 @@ class PMA_File /** * * @access public - * @uses __('File could not be read') * @uses PMA_File::setName() * @uses PMA_securePath() * @uses PMA_userDir() @@ -881,7 +872,6 @@ class PMA_File * @todo move check of $cfg['TempDir'] into PMA_Config? * @access public * @uses $cfg['TempDir'] - * @uses __('Error moving the uploaded file, see [a@./Documentation.html#faq1_11@Documentation]FAQ 1.11[/a]') * @uses PMA_File::isReadable() * @uses PMA_File::getName() * @uses PMA_File::setName() @@ -937,7 +927,6 @@ class PMA_File * * @todo move file read part into readChunk() or getChunk() * @todo add support for compression plugins - * @uses __('File could not be read') * @uses PMA_File::$_compression to set it * @uses PMA_File::getName() * @uses fopen() diff --git a/libraries/Index.class.php b/libraries/Index.class.php index 66a2114ba3..f2033899c1 100644 --- a/libraries/Index.class.php +++ b/libraries/Index.class.php @@ -3,7 +3,6 @@ /** * holds the database index class * - * @version $Id$ * @package phpMyAdmin */ @@ -539,7 +538,6 @@ class PMA_Index /** * Function to check over array of indexes and look for common problems * - * @uses __('The indexes %1 and %2 seem to be equal and one of them could possibly be removed.') * @uses is_string() * @uses is_array() * @uses count() diff --git a/libraries/List.class.php b/libraries/List.class.php index 029b6fc3d7..65ac7fc5a0 100644 --- a/libraries/List.class.php +++ b/libraries/List.class.php @@ -3,7 +3,6 @@ /** * hold the PMA_List base class * - * @version $Id$ * @package phpMyAdmin */ diff --git a/libraries/List_Database.class.php b/libraries/List_Database.class.php index 397a6db326..f793ed4244 100644 --- a/libraries/List_Database.class.php +++ b/libraries/List_Database.class.php @@ -3,7 +3,6 @@ /** * holds the PMA_List_Database class * - * @version $Id$ * @package phpMyAdmin */ diff --git a/libraries/Message.class.php b/libraries/Message.class.php index ffddb87e06..68d32bcfc9 100644 --- a/libraries/Message.class.php +++ b/libraries/Message.class.php @@ -3,7 +3,6 @@ /** * Holds class PMA_Message * - * @version $Id$ * @package phpMyAdmin */ diff --git a/libraries/Partition.class.php b/libraries/Partition.class.php index cd696338a6..c2b14a4e39 100644 --- a/libraries/Partition.class.php +++ b/libraries/Partition.class.php @@ -3,7 +3,6 @@ /** * Library for extracting information about the partitions * - * @version $Id$ * @package phpMyAdmin */ diff --git a/libraries/StorageEngine.class.php b/libraries/StorageEngine.class.php index 711f709e1b..2ae125a3ef 100644 --- a/libraries/StorageEngine.class.php +++ b/libraries/StorageEngine.class.php @@ -3,7 +3,6 @@ /** * Library for extracting information about the available storage engines * - * @version $Id$ * @package phpMyAdmin */ @@ -155,7 +154,6 @@ class PMA_StorageEngine * @uses PMA_ENGINE_DETAILS_TYPE_SIZE * @uses PMA_ENGINE_DETAILS_TYPE_NUMERIC * @uses PMA_StorageEngine::getVariablesStatus() - * @uses __('There is no detailed status information available for this storage engine.') * @uses PMA_showHint() * @uses PMA_formatByteDown() * @uses PMA_formatNumber() @@ -335,11 +333,6 @@ class PMA_StorageEngine /** * public String getSupportInformationMessage() * - * @uses __('%s is the default storage engine on this MySQL server.') - * @uses __('%s is available on this MySQL server.') - * @uses __('%s has been disabled for this MySQL server.') - * @uses __('This MySQL server does not support the %s storage engine.') - * @uses __('This MySQL server does not support the %s storage engine.') * @uses PMA_ENGINE_SUPPORT_DEFAULT * @uses PMA_ENGINE_SUPPORT_YES * @uses PMA_ENGINE_SUPPORT_DISABLED diff --git a/libraries/Table.class.php b/libraries/Table.class.php index ef522f9676..7839107e81 100644 --- a/libraries/Table.class.php +++ b/libraries/Table.class.php @@ -2,7 +2,6 @@ /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * - * @version $Id$ * @package phpMyAdmin */ diff --git a/libraries/Theme.class.php b/libraries/Theme.class.php index cf8f0a5b45..09f46e2853 100644 --- a/libraries/Theme.class.php +++ b/libraries/Theme.class.php @@ -3,7 +3,6 @@ /** * hold PMA_Theme class * - * @version $Id$ * @package phpMyAdmin */ @@ -145,7 +144,6 @@ class PMA_Theme { * @uses PMA_Theme::setImgPath() * @uses PMA_Theme::getName() * @uses $GLOBALS['cfg']['ThemePath'] - * @uses __('No valid image path for theme %s found!') * @uses is_dir() * @uses sprintf() */ @@ -357,8 +355,6 @@ class PMA_Theme { * @uses PMA_Theme::getVersion() * @uses PMA_Theme::getId() * @uses PMA_Theme::getPath() - * @uses __('No preview available.') - * @uses __('take it') * @uses PMA_generate_common_url() * @uses addslashes() * @uses file_exists() diff --git a/libraries/Theme_Manager.class.php b/libraries/Theme_Manager.class.php index 9adb7c54cf..c5298f378b 100644 --- a/libraries/Theme_Manager.class.php +++ b/libraries/Theme_Manager.class.php @@ -2,7 +2,6 @@ /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * - * @version $Id$ * @package phpMyAdmin */ diff --git a/libraries/Tracker.class.php b/libraries/Tracker.class.php index e909e76b8e..82deb43fe1 100644 --- a/libraries/Tracker.class.php +++ b/libraries/Tracker.class.php @@ -2,7 +2,6 @@ /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * - * @version $Id$ * @package phpMyAdmin */ diff --git a/libraries/auth/config.auth.lib.php b/libraries/auth/config.auth.lib.php index 71e9a62cd2..e16d1894f8 100644 --- a/libraries/auth/config.auth.lib.php +++ b/libraries/auth/config.auth.lib.php @@ -4,7 +4,6 @@ * Set of functions used to run config authentication (ie no authentication). * * @package phpMyAdmin-Auth-Config - * @version $Id$ */ diff --git a/libraries/auth/cookie.auth.lib.php b/libraries/auth/cookie.auth.lib.php index d524e1cb13..a9644557c2 100644 --- a/libraries/auth/cookie.auth.lib.php +++ b/libraries/auth/cookie.auth.lib.php @@ -4,7 +4,6 @@ * Set of functions used to run cookie based authentication. * * @package phpMyAdmin-Auth-Cookie - * @version $Id$ */ if (! defined('PHPMYADMIN')) { @@ -115,17 +114,6 @@ function PMA_get_blowfish_secret() { * @uses $GLOBALS['target'] * @uses $GLOBALS['db'] * @uses $GLOBALS['table'] - * @uses __('Welcome to %s') - * @uses __('The configuration file now needs a secret passphrase (blowfish_secret).') - * @uses __('Error') - * @uses __('Log in') - * @uses __('Server:') - * @uses __('Username:') - * @uses __('Password:') - * @uses __('Server Choice') - * @uses __('Go') - * @uses __('Cookies must be enabled past this point.') - * @uses __('phpMyAdmin documentation') * @uses $GLOBALS['pmaThemeImage'] * @uses $cfg['Servers'] * @uses $cfg['LoginCookieRecall'] @@ -184,14 +172,14 @@ function PMA_auth() ?> - + - +?> + @@ -324,22 +312,6 @@ if (top != self) { } ?> - removeCookie() diff --git a/libraries/auth/http.auth.lib.php b/libraries/auth/http.auth.lib.php index 7ccea39e38..b3d305a10d 100644 --- a/libraries/auth/http.auth.lib.php +++ b/libraries/auth/http.auth.lib.php @@ -5,7 +5,6 @@ * NOTE: Requires PHP loaded as a Apache module. * * @package phpMyAdmin-Auth-HTTP - * @version $Id$ */ diff --git a/libraries/auth/signon.auth.lib.php b/libraries/auth/signon.auth.lib.php index 2f828bda84..4215408af7 100644 --- a/libraries/auth/signon.auth.lib.php +++ b/libraries/auth/signon.auth.lib.php @@ -4,7 +4,6 @@ * Set of functions used to run single signon authentication. * * @package phpMyAdmin-Auth-Signon - * @version $Id$ */ diff --git a/libraries/blowfish.php b/libraries/blowfish.php index 1dc3dcda0c..ae85f43358 100644 --- a/libraries/blowfish.php +++ b/libraries/blowfish.php @@ -11,7 +11,6 @@ * See the enclosed file COPYING for license information (LGPL). If you * did not receive this file, see http://www.fsf.org/copyleft/lgpl.html. * - * @version $Id$ * @since Horde 2.2 * @package horde.cipher */ diff --git a/libraries/bookmark.lib.php b/libraries/bookmark.lib.php index 73a9665b90..fa6b4bfcda 100644 --- a/libraries/bookmark.lib.php +++ b/libraries/bookmark.lib.php @@ -3,7 +3,6 @@ /** * Set of functions used with the bookmark feature * - * @version $Id$ * @package phpMyAdmin */ diff --git a/libraries/charset_conversion.lib.php b/libraries/charset_conversion.lib.php index dbcb4fdc79..9acd1843a4 100644 --- a/libraries/charset_conversion.lib.php +++ b/libraries/charset_conversion.lib.php @@ -3,116 +3,50 @@ /** * Charset conversion functions. * - * @version $Id$ * @package phpMyAdmin */ if (! defined('PHPMYADMIN')) { exit; } -/** - * Failure on loading recode/iconv extensions. - */ -function PMA_failRecoding() { - PMA_fatalError(__('Couldn\'t load the iconv or recode extension needed for charset conversion. Either configure PHP to enable these extensions or disable charset conversion in phpMyAdmin.')); -} - -/** - * Loads the recode or iconv extensions if any of it is not loaded yet - */ -if (isset($cfg['AllowAnywhereRecoding']) - && $cfg['AllowAnywhereRecoding']) { - - if ($cfg['RecodingEngine'] == 'recode') { - if (!@extension_loaded('recode')) { - PMA_failRecoding(); - } - $PMA_recoding_engine = 'recode'; - } elseif ($cfg['RecodingEngine'] == 'iconv') { - if (!@extension_loaded('iconv')) { - PMA_failRecoding(); - } - $PMA_recoding_engine = 'iconv'; - } else { - if (@extension_loaded('iconv')) { - $PMA_recoding_engine = 'iconv'; - } elseif (@extension_loaded('recode')) { - $PMA_recoding_engine = 'recode'; - } else { - PMA_failRecoding(); - } - } -} // end load recode/iconv extension - define('PMA_CHARSET_NONE', 0); define('PMA_CHARSET_ICONV', 1); -define('PMA_CHARSET_LIBICONV', 2); -define('PMA_CHARSET_RECODE', 3); -define('PMA_CHARSET_ICONV_AIX', 4); - -if (!isset($cfg['IconvExtraParams'])) { - $cfg['IconvExtraParams'] = ''; -} +define('PMA_CHARSET_RECODE', 2); +define('PMA_CHARSET_ICONV_AIX', 3); // Finally detect which function we will use: -if (isset($cfg['AllowAnywhereRecoding']) - && $cfg['AllowAnywhereRecoding']) { - - if (!isset($PMA_recoding_engine)) { - $PMA_recoding_engine = $cfg['RecodingEngine']; - } - if ($PMA_recoding_engine == 'iconv') { - if (@function_exists('iconv')) { - if ((@stristr(PHP_OS, 'AIX')) && (@strcasecmp(ICONV_IMPL, 'unknown') == 0) && (@strcasecmp(ICONV_VERSION, 'unknown') == 0)) { - $PMA_recoding_engine = PMA_CHARSET_ICONV_AIX; - } else { - $PMA_recoding_engine = PMA_CHARSET_ICONV; - } - } elseif (@function_exists('libiconv')) { - $PMA_recoding_engine = PMA_CHARSET_LIBICONV; +if ($cfg['RecodingEngine'] == 'iconv') { + if (@function_exists('iconv')) { + if ((@stristr(PHP_OS, 'AIX')) && (@strcasecmp(ICONV_IMPL, 'unknown') == 0) && (@strcasecmp(ICONV_VERSION, 'unknown') == 0)) { + $PMA_recoding_engine = PMA_CHARSET_ICONV_AIX; } else { - $PMA_recoding_engine = PMA_CHARSET_NONE; - - if (!isset($GLOBALS['is_header_sent'])) { - include './libraries/header.inc.php'; - } - echo __('Couldn\'t use the iconv, libiconv, or recode_string functions, although the necessary extensions appear to be loaded. Check your PHP configuration.'); - require_once './libraries/footer.inc.php'; - exit(); - } - } elseif ($PMA_recoding_engine == 'recode') { - if (@function_exists('recode_string')) { - $PMA_recoding_engine = PMA_CHARSET_RECODE; - } else { - $PMA_recoding_engine = PMA_CHARSET_NONE; - - require_once './libraries/header.inc.php'; - echo __('Couldn\'t use the iconv, libiconv, or recode_string functions, although the necessary extensions appear to be loaded. Check your PHP configuration.'); - require_once './libraries/footer.inc.php'; - exit; + $PMA_recoding_engine = PMA_CHARSET_ICONV; } } else { - if (@function_exists('iconv')) { - if ((@stristr(PHP_OS, 'AIX')) && (@strcasecmp(ICONV_IMPL, 'unknown') == 0) && (@strcasecmp(ICONV_VERSION, 'unknown') == 0)) { - $PMA_recoding_engine = PMA_CHARSET_ICONV_AIX; - } else { - $PMA_recoding_engine = PMA_CHARSET_ICONV; - } - } elseif (@function_exists('libiconv')) { - $PMA_recoding_engine = PMA_CHARSET_LIBICONV; - } elseif (@function_exists('recode_string')) { - $PMA_recoding_engine = PMA_CHARSET_RECODE; + $PMA_recoding_engine = PMA_CHARSET_NONE; + PMA_warnMissingExtension('iconv'); + } +} elseif ($cfg['RecodingEngine'] == 'recode') { + if (@function_exists('recode_string')) { + $PMA_recoding_engine = PMA_CHARSET_RECODE; + } else { + $PMA_recoding_engine = PMA_CHARSET_NONE; + PMA_warnMissingExtension('recode'); + } +} elseif ($cfg['RecodingEngine'] == 'auto') { + if (@function_exists('iconv')) { + if ((@stristr(PHP_OS, 'AIX')) && (@strcasecmp(ICONV_IMPL, 'unknown') == 0) && (@strcasecmp(ICONV_VERSION, 'unknown') == 0)) { + $PMA_recoding_engine = PMA_CHARSET_ICONV_AIX; } else { - $PMA_recoding_engine = PMA_CHARSET_NONE; - - require_once './libraries/header.inc.php'; - echo __('Couldn\'t use the iconv, libiconv, or recode_string functions, although the necessary extensions appear to be loaded. Check your PHP configuration.'); - require_once './libraries/footer.inc.php'; - exit; + $PMA_recoding_engine = PMA_CHARSET_ICONV; } + } elseif (@function_exists('recode_string')) { + $PMA_recoding_engine = PMA_CHARSET_RECODE; + } else { + $PMA_recoding_engine = PMA_CHARSET_NONE; } } else { - $PMA_recoding_engine = PMA_CHARSET_NONE; + $PMA_recoding_engine = PMA_CHARSET_NONE; } /* Load AIX iconv wrapper if needed */ @@ -120,43 +54,6 @@ if ($PMA_recoding_engine == PMA_CHARSET_ICONV_AIX) { require_once './libraries/iconv_wrapper.lib.php'; } -/** - * Converts encoding of text according to current settings. - * - * @param string what to convert - * - * @return string converted text - * - * @global array the configuration array - * @global boolean whether recoding is allowed or not - * @global string the current charset - * @global array the charset to convert to - * - * @access public - * - */ -function PMA_convert_charset($what) { - global $cfg, $charset, $convcharset; - - if (!(isset($cfg['AllowAnywhereRecoding']) && $cfg['AllowAnywhereRecoding'] ) - || $convcharset == $charset) { // if input and output charset are the same, we don't have to do anything... - return $what; - } else { - switch ($GLOBALS['PMA_recoding_engine']) { - case PMA_CHARSET_RECODE: - return recode_string($charset . '..' . $convcharset, $what); - case PMA_CHARSET_ICONV: - return iconv($charset, $convcharset . $cfg['IconvExtraParams'], $what); - case PMA_CHARSET_ICONV_AIX: - return PMA_aix_iconv_wrapper($charset, $convcharset . $cfg['IconvExtraParams'], $what); - case PMA_CHARSET_LIBICONV: - return libiconv($charset, $convcharset . $GLOBALS['cfg']['IconvExtraParams'], $what); - default: - return $what; - } - } -} // end of the "PMA_convert_charset()" function - /** * Converts encoding of text according to parameters with detected * conversion function. @@ -181,59 +78,9 @@ function PMA_convert_string($src_charset, $dest_charset, $what) { return iconv($src_charset, $dest_charset . $GLOBALS['cfg']['IconvExtraParams'], $what); case PMA_CHARSET_ICONV_AIX: return PMA_aix_iconv_wrapper($src_charset, $dest_charset . $GLOBALS['cfg']['IconvExtraParams'], $what); - case PMA_CHARSET_LIBICONV: - return libiconv($src_charset, $dest_charset, $what); default: return $what; } } // end of the "PMA_convert_string()" function - -/** - * Converts encoding of file according to parameters with detected - * conversion function. The old file will be unlinked and new created and - * its file name is returned. - * - * @param string source charset - * @param string target charset - * @param string file to convert - * - * @return string new temporay file - * - * @access public - * - */ -function PMA_convert_file($src_charset, $dest_charset, $file) { - switch ($GLOBALS['PMA_recoding_engine']) { - case PMA_CHARSET_RECODE: - case PMA_CHARSET_ICONV: - case PMA_CHARSET_LIBICONV: - $tmpfname = tempnam('', 'PMA_convert_file'); - $fin = fopen($file, 'r'); - $fout = fopen($tmpfname, 'w'); - if ($GLOBALS['PMA_recoding_engine'] == PMA_CHARSET_RECODE) { - recode_file($src_charset . '..' . $dest_charset, $fin, $fout); - } else { - while (!feof($fin)) { - $line = fgets($fin, 4096); - if ($GLOBALS['PMA_recoding_engine'] == PMA_CHARSET_ICONV) { - $dist = iconv($src_charset, $dest_charset . $GLOBALS['cfg']['IconvExtraParams'], $line); - } elseif ($GLOBALS['PMA_recoding_engine'] == PMA_CHARSET_ICONV_AIX) { - $dist = PMA_aix_iconv_wrapper($src_charset, $dest_charset . $GLOBALS['cfg']['IconvExtraParams'], $line); - } else { - $dist = libiconv($src_charset, $dest_charset . $GLOBALS['cfg']['IconvExtraParams'], $line); - } - fputs($fout, $dist); - } // end while - } - fclose($fin); - fclose($fout); - unlink($file); - - return $tmpfname; - default: - return $file; - } -} // end of the "PMA_convert_file()" function - ?> diff --git a/libraries/check_user_privileges.lib.php b/libraries/check_user_privileges.lib.php index 398101bf67..6dbc251e45 100644 --- a/libraries/check_user_privileges.lib.php +++ b/libraries/check_user_privileges.lib.php @@ -3,7 +3,6 @@ /** * Get user's global privileges and some db-specific privileges * - * @version $Id$ * @package phpMyAdmin */ if (! defined('PHPMYADMIN')) { diff --git a/libraries/cleanup.lib.php b/libraries/cleanup.lib.php index 2bd1ef88c9..b77fd315e0 100644 --- a/libraries/cleanup.lib.php +++ b/libraries/cleanup.lib.php @@ -3,7 +3,6 @@ /** * Functions for cleanup of user input. * - * @version $Id$ * @package phpMyAdmin */ diff --git a/libraries/common.inc.php b/libraries/common.inc.php index 5366c18ec4..abbd663721 100644 --- a/libraries/common.inc.php +++ b/libraries/common.inc.php @@ -28,7 +28,6 @@ * - db connection * - authentication work * - * @version $Id$ * @package phpMyAdmin */ @@ -454,7 +453,7 @@ if (PMA_checkPageValidity($_REQUEST['back'], $goto_whitelist)) { * f.e. PMA_Config: fontsize * * @todo variables should be handled by their respective owners (objects) - * f.e. lang, server, convcharset, collation_connection in PMA_Config + * f.e. lang, server, collation_connection in PMA_Config */ if (! PMA_isValid($_REQUEST['token']) || $_SESSION[' PMA_token '] != $_REQUEST['token']) { /** @@ -468,7 +467,7 @@ if (! PMA_isValid($_REQUEST['token']) || $_SESSION[' PMA_token '] != $_REQUEST[' /* Session ID */ 'phpMyAdmin', /* Cookie preferences */ - 'pma_lang', 'pma_charset', 'pma_collation_connection', + 'pma_lang', 'pma_collation_connection', /* Possible login form */ 'pma_servername', 'pma_username', 'pma_password', /* for playing blobstreamable media */ @@ -488,14 +487,6 @@ if (! PMA_isValid($_REQUEST['token']) || $_SESSION[' PMA_token '] != $_REQUEST[' } -/** - * @global string $GLOBALS['convcharset'] - * @see select_lang.lib.php - */ -if (isset($_REQUEST['convcharset'])) { - $GLOBALS['convcharset'] = strip_tags($_REQUEST['convcharset']); -} - /** * current selected database * @global string $GLOBALS['db'] @@ -793,7 +784,6 @@ if (! defined('PMA_MINIMUM_COMMON')) { * @todo should be done in PMA_Config */ $GLOBALS['PMA_Config']->setCookie('pma_lang', $GLOBALS['lang']); - $GLOBALS['PMA_Config']->setCookie('pma_charset', $GLOBALS['convcharset']); $GLOBALS['PMA_Config']->setCookie('pma_collation_connection', $GLOBALS['collation_connection']); $_SESSION['PMA_Theme_Manager']->setThemeCookie(); diff --git a/libraries/common.lib.php b/libraries/common.lib.php index 6591715ec4..7e79faf847 100644 --- a/libraries/common.lib.php +++ b/libraries/common.lib.php @@ -3,7 +3,6 @@ /** * Misc functions used all over the scripts. * - * @version $Id$ * @package phpMyAdmin */ @@ -130,7 +129,6 @@ function PMA_getIcon($icon, $alternate = '', $container = false, $force_text = f /** * Displays the maximum size for an upload * - * @uses __('Max: %s%s') * @uses PMA_formatByteDown() * @uses sprintf() * @param integer the size @@ -346,7 +344,6 @@ function PMA_formatSql($parsed_sql, $unparsed_sql = '') * @uses $cfg['MySQLManualType'] * @uses $cfg['MySQLManualBase'] * @uses $cfg['ReplaceHelpImg'] - * @uses __('Documentation') * @uses $GLOBALS['pmaThemeImage'] * @uses PMA_MYSQL_INT_VERSION * @uses strtolower() @@ -501,11 +498,7 @@ function PMA_showHint($message, $bbcode = false, $type = 'notice') * @uses footer.inc.php * @uses header.inc.php * @uses $GLOBALS['sql_query'] - * @uses __('Error') - * @uses __('SQL query') * @uses $GLOBALS['pmaThemeImage'] - * @uses __('Edit') - * @uses __('MySQL said: ') * @uses $GLOBALS['cfg']['PropertiesIconic'] * @uses $GLOBALS['cfg']['MaxCharactersInDisplayedSQL'] * @uses PMA_backquote() @@ -1137,7 +1130,11 @@ function PMA_showMessage($message, $sql_query = null, $type = 'notice', $is_view if (! empty($GLOBALS['show_as_php'])) { $query_base = '$sql = "' . $query_base; } elseif (! empty($GLOBALS['validatequery'])) { - $query_base = PMA_validateSQL($query_base); + try { + $query_base = PMA_validateSQL($query_base); + } catch (Exception $e) { + PMA_Message::error(__('Failed to connect to SQL validator!'))->display(); + } } elseif (isset($parsed_sql)) { $query_base = PMA_formatSql($parsed_sql, $query_base); } @@ -1253,7 +1250,11 @@ function PMA_showMessage($message, $sql_query = null, $type = 'notice', $is_view $validate_link = ''; } //validator - echo ''; + if (!empty($GLOBALS['validatequery'])) { + echo '
    '; + } else { + echo ''; + } if ($query_too_big) { echo $shortened_query_base; } else { @@ -1264,7 +1265,11 @@ function PMA_showMessage($message, $sql_query = null, $type = 'notice', $is_view if (! empty($GLOBALS['show_as_php'])) { echo '";'; } - echo ''; + if (!empty($GLOBALS['validatequery'])) { + echo '
    '; + } else { + echo '
    '; + } echo '
    '; // avoid displaying a Profiling checkbox that could @@ -1614,8 +1619,6 @@ function PMA_localisedDate($timestamp = -1, $format = '') * If the variables $link and $args ar left empty, an inactive tab is created * * @uses $GLOBALS['PMA_PHP_SELF'] - * @uses __('Empty') - * @uses __('Drop') * @uses $GLOBALS['active_page'] * @uses $GLOBALS['url_query'] * @uses $cfg['MainPageIconic'] @@ -1882,7 +1885,6 @@ function PMA_linkOrButton($url, $message, $tag_params = array(), /** * Returns a given timespan value in a readable format. * - * @uses __('%s days, %s hours, %s minutes and %s seconds') * @uses sprintf() * @uses floor() * @param int the timespan @@ -2191,7 +2193,6 @@ function PMA_buttonOrImage($button_name, $button_class, $image_name, $text, * Generate a pagination selector for browsing resultsets * * @todo $url is not javascript escaped!? - * @uses __('Page number:') * @uses range() * @param string URL for the JavaScript * @param string Number of rows in the pagination set @@ -2295,7 +2296,6 @@ function PMA_pageselector($url, $rows, $pageNow = 1, $nbTotalPage = 1, * Generate navigation for a list * * @todo use $pos from $_url_params - * @uses __('Page number:') * @uses range() * @param integer number of elements in the list * @param integer current position in the list @@ -2406,7 +2406,6 @@ function PMA_userDir($dir) * * @uses $cfg['DefaultTabDatabase'] * @uses $GLOBALS['db'] - * @uses __('Jump to database "%s".') * @uses PMA_generate_common_url() * @uses PMA_unescape_mysql_wildcards() * @uses strlen() @@ -2436,7 +2435,6 @@ function PMA_getDbLink($database = null) * that affects a functionality * * @uses PMA_MYSQL_INT_VERSION - * @uses __('The %s functionality is affected by a known bug, see %s') * @uses PMA_showHint() * @uses sprintf() * @param string $functionality localized message explaining the func. @@ -2826,7 +2824,7 @@ function PMA_getTitleForTarget($target) { $mapping = array( // Values for $cfg['DefaultTabTable'] - 'tbl_structure.php' => __('Structure'), + 'tbl_structure.php' => __('Structure'), 'tbl_sql.php' => __('SQL'), 'tbl_select.php' =>__('Search'), 'tbl_change.php' =>__('Insert'), @@ -2841,19 +2839,54 @@ $mapping = array( return $mapping[$target]; } -function PMA_js($code, $print=true) -{ - // these generated newlines are needed - $out = ''; - $out .= ''."\n"; +/** + * Formats user string, expading @VARIABLES@, accepting strftime format string. + * + * @param string Text where to do expansion. + * @param function Function to call for escaping variable values. + * @param array Array with overrides for default parameters (obtained from GLOBALS). + */ +function PMA_expandUserString($string, $escape = NULL, $updates = array()) { + /* Content */ + $vars['http_host'] = PMA_getenv('HTTP_HOST') ? PMA_getenv('HTTP_HOST') : ''; + $vars['server_name'] = $GLOBALS['cfg']['Server']['host']; + $vars['server_verbose'] = $GLOBALS['cfg']['Server']['verbose']; + $vars['server_verbose_or_name'] = !empty($GLOBALS['cfg']['Server']['verbose']) ? $GLOBALS['cfg']['Server']['verbose'] : $GLOBALS['cfg']['Server']['host']; + $vars['database'] = $GLOBALS['db']; + $vars['table'] = $GLOBALS['table']; + $vars['phpmyadmin_version'] = 'phpMyAdmin ' . PMA_VERSION; - if ($print) - echo $out; + /* Update forced variables */ + foreach($updates as $key => $val) { + $vars[$key] = $val; + } - return $out; + /* Replacement mapping */ + /* + * The __VAR__ ones are for backward compatibility, because user + * might still have it in cookies. + */ + $replace = array( + '@HTTP_HOST@' => $vars['http_host'], + '@SERVER@' => $vars['server_name'], + '__SERVER__' => $vars['server_name'], + '@VERBOSE@' => $vars['server_verbose'], + '@VSERVER@' => $vars['server_verbose_or_name'], + '@DATABASE@' => $vars['database'], + '__DB__' => $vars['database'], + '@TABLE@' => $vars['table'], + '__TABLE__' => $vars['table'], + '@PHPMYADMIN@' => $vars['phpmyadmin_version'], + ); + + /* Optional escaping */ + if (!is_null($escape)) { + foreach($replace as $key => $val) { + $replace[$key] = $escape($val); + } + } + + /* Do the replacement */ + return str_replace(array_keys($replace), array_values($replace), strftime($string)); } ?> diff --git a/libraries/config.default.php b/libraries/config.default.php index be034c8cb9..7ec7c5dc5a 100644 --- a/libraries/config.default.php +++ b/libraries/config.default.php @@ -16,7 +16,6 @@ * * All directives are explained in Documentation.html * - * @version $Id$ * @package phpMyAdmin */ @@ -544,7 +543,7 @@ $cfg['SessionSavePath'] = ''; /** * maximum allocated bytes ('0' for no limit) * this is a string because '16M' is a valid value; we must put here - * a string as the default value so that /setup accepts strings + * a string as the default value so that /setup accepts strings * * @global string $cfg['MemoryLimit'] */ @@ -587,7 +586,8 @@ $cfg['Confirm'] = true; $cfg['LoginCookieRecall'] = true; /** - * validity of cookie login (in seconds) + * validity of cookie login (in seconds; 1440 matches php.ini's + * session.gc_maxlifetime) * * @global integer $cfg['LoginCookieValidity'] */ @@ -1116,21 +1116,21 @@ $cfg['Export']['remember_file_template'] = true; * * @global string $cfg['Export']['file_template_table'] */ -$cfg['Export']['file_template_table'] = '__TABLE__'; +$cfg['Export']['file_template_table'] = '@TABLE@'; /** * * * @global string $cfg['Export']['file_template_database'] */ -$cfg['Export']['file_template_database'] = '__DB__'; +$cfg['Export']['file_template_database'] = '@DB@'; /** * * * @global string $cfg['Export']['file_template_server'] */ -$cfg['Export']['file_template_server'] = '__SERVER__'; +$cfg['Export']['file_template_server'] = '@SERVER@'; /** * @@ -1431,14 +1431,14 @@ $cfg['Export']['latex_data_continued_caption'] = 'strLatexContent strLatexContin * * @global string $cfg['Export']['latex_data_label'] */ -$cfg['Export']['latex_data_label'] = 'tab:__TABLE__-data'; +$cfg['Export']['latex_data_label'] = 'tab:@TABLE@-data'; /** * * * @global string $cfg['Export']['latex_structure_label'] */ -$cfg['Export']['latex_structure_label'] = 'tab:__TABLE__-structure'; +$cfg['Export']['latex_structure_label'] = 'tab:@TABLE@-structure'; /** * @@ -1949,26 +1949,6 @@ $cfg['DefaultConnectionCollation'] = 'utf8_general_ci'; */ $cfg['FilterLanguages'] = ''; -/** - * Default character set to use for recoding of MySQL queries, does not take - * any effect when character sets recoding is switched off by - * $cfg['AllowAnywhereRecoding'] or in language file - * (see $cfg['AvailableCharsets'] to possible choices, you can add your own) - * - * @global string $cfg['DefaultCharset'] - */ -$cfg['DefaultCharset'] = 'utf-8'; - -/** - * Allow character set recoding of MySQL queries, must be also enabled in language - * file to make harder using other language files than Unicode. - * Default value is false to avoid problems on servers without the iconv - * extension - * - * @global boolean $cfg['AllowAnywhereRecoding'] - */ -$cfg['AllowAnywhereRecoding'] = false; - /** * You can select here which functions will be used for character set conversion. * Possible values are: @@ -1976,6 +1956,7 @@ $cfg['AllowAnywhereRecoding'] = false; * recode) * iconv - use iconv or libiconv functions * recode - use recode_string function + * none - disable encoding conversion * * @global string $cfg['RecodingEngine'] */ @@ -2277,14 +2258,6 @@ $cfg['InitialSlidersState'] = 'closed'; -//----------------------------------------------------------------------------- -// custom-setup by mkkeck: 2004-05-04 -// some specials for new icons and scrolling -/** - * @todo We need to rearrange these variables. - */ - - /******************************************************************************* * Window title settings */ diff --git a/libraries/core.lib.php b/libraries/core.lib.php index 12e28c531d..5e85d69052 100644 --- a/libraries/core.lib.php +++ b/libraries/core.lib.php @@ -5,7 +5,6 @@ * This script is distinct from libraries/common.inc.php because this * script is called from /test. * - * @version $Id$ * @package phpMyAdmin */ @@ -202,7 +201,6 @@ function PMA_securePath($path) * @todo use detected argument separator (PMA_Config) * @uses $GLOBALS['session_name'] * @uses $GLOBALS['text_dir'] - * @uses __('Error') * @uses $GLOBALS['available_languages'] * @uses $GLOBALS['lang'] * @uses $GLOBALS['PMA_Config']->removeCookie() @@ -226,7 +224,7 @@ function PMA_fatalError($error_message, $message_args = null) if (! isset($GLOBALS['available_languages'])) { $GLOBALS['cfg'] = array( 'DefaultLang' => 'en', - 'AllowAnywhereRecoding' => false); + ); // Loads the language file require_once './libraries/select_lang.lib.php'; @@ -281,7 +279,8 @@ function PMA_fatalError($error_message, $message_args = null) */ function PMA_warnMissingExtension($extension, $fatal = false, $extra = '') { - $message = sprintf(__('Cannot load [a@http://php.net/%1$s@Documentation][em]%1$s[/em][/a] extension. Please check your PHP configuration.'), $extension); + $message = sprintf(__('The %s extension is missing. Please check your PHP configuration.'), + sprintf('[a@http://php.net/%1$s@Documentation][em]%1$s[/em][/a]', $extension)); if ($extra != '') { $message .= ' ' . $extra; } diff --git a/libraries/database_interface.lib.php b/libraries/database_interface.lib.php index de65d12b80..2f24e4fb72 100644 --- a/libraries/database_interface.lib.php +++ b/libraries/database_interface.lib.php @@ -3,7 +3,6 @@ /** * Common Option Constants For DBI Functions * - * @version $Id$ * @package phpMyAdmin */ if (! defined('PHPMYADMIN')) { diff --git a/libraries/db_common.inc.php b/libraries/db_common.inc.php index 955e7c8c52..b9a4a97d4a 100644 --- a/libraries/db_common.inc.php +++ b/libraries/db_common.inc.php @@ -2,7 +2,6 @@ /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * - * @version $Id$ * @package phpMyAdmin */ if (! defined('PHPMYADMIN')) { @@ -37,12 +36,19 @@ $err_url = $cfg['DefaultTabDatabase'] . '?' . PMA_generate_common_url($db); * Ensures the database exists (else move to the "parent" script) and displays * headers */ -if (!isset($is_db) || !$is_db) { - // Not a valid db name -> back to the welcome page +if (! isset($is_db) || ! $is_db) { if (strlen($db)) { $is_db = PMA_DBI_select_db($db); + // This "Command out of sync" 2014 error may happen, for example + // after calling a MySQL procedure; at this point we can't select + // the db but it's not necessarily wrong + if (PMA_DBI_getError() && $GLOBALS['errno'] == 2014) { + $is_db = true; + unset($GLOBALS['errno']); + } } - if (! strlen($db) || !$is_db) { + // Not a valid db name -> back to the welcome page + if (! strlen($db) || ! $is_db) { PMA_sendHeaderLocation($cfg['PmaAbsoluteUri'] . 'main.php?' . PMA_generate_common_url('', '', '&') . (isset($message) ? '&message=' . urlencode($message) : '') . '&reload=1'); exit; } diff --git a/libraries/db_events.inc.php b/libraries/db_events.inc.php index 33c5d1798d..a72c7eb24e 100644 --- a/libraries/db_events.inc.php +++ b/libraries/db_events.inc.php @@ -2,7 +2,6 @@ /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * - * @version $Id$ * @package phpMyAdmin */ if (! defined('PHPMYADMIN')) { diff --git a/libraries/db_info.inc.php b/libraries/db_info.inc.php index 20dff36ba3..969af04e32 100644 --- a/libraries/db_info.inc.php +++ b/libraries/db_info.inc.php @@ -31,7 +31,6 @@ * @uses strnatcasecmp() * @uses count() * @uses addslashes() - * @version $Id$ * @package phpMyAdmin */ if (! defined('PHPMYADMIN')) { @@ -59,7 +58,6 @@ $pos = $_SESSION['tmp_user_values']['table_limit_offset']; * fills given tooltip arrays * * @uses $cfg['ShowTooltipAliasTB'] - * @uses __('Creation') * @uses PMA_localisedDate() * @uses strtotime() * @param array $tooltip_truename tooltip data diff --git a/libraries/db_links.inc.php b/libraries/db_links.inc.php index 1010eac930..a86bcf5595 100644 --- a/libraries/db_links.inc.php +++ b/libraries/db_links.inc.php @@ -2,7 +2,6 @@ /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * - * @version $Id$ * @package phpMyAdmin */ if (! defined('PHPMYADMIN')) { diff --git a/libraries/db_routines.inc.php b/libraries/db_routines.inc.php index 5235ab518d..8af21970a7 100644 --- a/libraries/db_routines.inc.php +++ b/libraries/db_routines.inc.php @@ -12,7 +12,6 @@ * our current sql.php. * Of course the interface would need a way to pass calling parameters. * Also, support DEFINER (like we do in export). - * @version $Id$ * @package phpMyAdmin */ if (! defined('PHPMYADMIN')) { diff --git a/libraries/db_structure.lib.php b/libraries/db_structure.lib.php index 2b6f420343..6f91d448c8 100644 --- a/libraries/db_structure.lib.php +++ b/libraries/db_structure.lib.php @@ -2,7 +2,6 @@ /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * - * @version $Id$ * @package phpMyAdmin */ if (! defined('PHPMYADMIN')) { @@ -17,14 +16,6 @@ if (! defined('PHPMYADMIN')) { * @uses PMA_showHint() * @uses $GLOBALS['cfg']['PropertiesNumColumns'] * @uses $GLOBALS['is_show_stats'] - * @uses __('Table') - * @uses __('Action') - * @uses __('Rows') - * @uses __('May be approximate. See [a@./Documentation.html#faq3_11@Documentation]FAQ 3.11[/a]') - * @uses __('Type') - * @uses __('Collation') - * @uses __('Size') - * @uses __('Overhead') * @uses $GLOBALS['colspan_for_structure'] * @uses PMA_SortableTableHeader() * @param boolean $db_is_information_schema diff --git a/libraries/db_table_exists.lib.php b/libraries/db_table_exists.lib.php index d1ae16a344..1110dc52df 100644 --- a/libraries/db_table_exists.lib.php +++ b/libraries/db_table_exists.lib.php @@ -4,7 +4,6 @@ * Ensure the database and the table exist (else move to the "parent" script) * and display headers * - * @version $Id$ * @package phpMyAdmin */ if (! defined('PHPMYADMIN')) { diff --git a/libraries/dbg/setup.php b/libraries/dbg/setup.php index 07732dfd6b..7b80ce2d18 100644 --- a/libraries/dbg/setup.php +++ b/libraries/dbg/setup.php @@ -1,7 +1,6 @@ addParam('DBG'); + $message = PMA_Message::error(__('The %s extension is missing. Please check your PHP configuration.'), + $message->addParam(sprintf('[a@http://php.net/%1$s@Documentation][em]%1$s[/em][/a]', 'dbg')); $message->addMessage('', false); $message->addString(__('Documentation')); $message->addMessage('', false); diff --git a/libraries/dbi/mysql.dbi.lib.php b/libraries/dbi/mysql.dbi.lib.php index 360f1db2ba..fdd83f8aa4 100644 --- a/libraries/dbi/mysql.dbi.lib.php +++ b/libraries/dbi/mysql.dbi.lib.php @@ -4,7 +4,6 @@ * Interface to the classic MySQL extension * * @package phpMyAdmin-DBI-MySQL - * @version $Id$ */ if (! defined('PHPMYADMIN')) { exit; @@ -308,9 +307,6 @@ function PMA_DBI_get_client_info() * @uses PMA_DBI_convert_message() * @uses $GLOBALS['errno'] * @uses $GLOBALS['userlink'] - * @uses __('The server is not responding') - * @uses __('(or the local MySQL server's socket is not correctly configured)') - * @uses __('Details...') * @uses mysql_errno() * @uses mysql_error() * @uses defined() diff --git a/libraries/dbi/mysqli.dbi.lib.php b/libraries/dbi/mysqli.dbi.lib.php index 2a59ed57fc..de90cac080 100644 --- a/libraries/dbi/mysqli.dbi.lib.php +++ b/libraries/dbi/mysqli.dbi.lib.php @@ -4,7 +4,6 @@ * Interface to the improved MySQL extension (MySQLi) * * @package phpMyAdmin-DBI-MySQLi - * @version $Id$ */ if (! defined('PHPMYADMIN')) { exit; @@ -144,7 +143,6 @@ function PMA_DBI_connect($user, $password, $is_controluser = false, $server = nu * selects given database * * @uses $GLOBALS['userlink'] - * @uses PMA_convert_charset() * @uses mysqli_select_db() * @param string $dbname database name to select * @param object mysqli $link the mysqli object @@ -168,7 +166,6 @@ function PMA_DBI_select_db($dbname, $link = null) * @uses PMA_DBI_QUERY_STORE * @uses PMA_DBI_QUERY_UNBUFFERED * @uses $GLOBALS['userlink'] - * @uses PMA_convert_charset() * @uses MYSQLI_STORE_RESULT * @uses MYSQLI_USE_RESULT * @uses mysqli_query() @@ -366,8 +363,6 @@ function PMA_DBI_get_client_info() * @uses PMA_DBI_convert_message() * @uses $GLOBALS['errno'] * @uses $GLOBALS['userlink'] - * @uses __('The server is not responding') - * @uses __('(or the local MySQL server's socket is not correctly configured)') * @uses mysqli_errno() * @uses mysqli_error() * @uses mysqli_connect_errno() @@ -493,8 +488,8 @@ function PMA_DBI_get_fields_meta($result) { // Build an associative array for a type look up $typeAr = array(); - $typeAr[MYSQLI_TYPE_DECIMAL] = 'real'; - $typeAr[MYSQLI_TYPE_NEWDECIMAL] = 'real'; + $typeAr[MYSQLI_TYPE_DECIMAL] = 'decimal'; + $typeAr[MYSQLI_TYPE_NEWDECIMAL] = 'decimal'; $typeAr[MYSQLI_TYPE_BIT] = 'int'; $typeAr[MYSQLI_TYPE_TINY] = 'int'; $typeAr[MYSQLI_TYPE_SHORT] = 'int'; diff --git a/libraries/display_change_password.lib.php b/libraries/display_change_password.lib.php index b541aa5282..43a61f6ef2 100644 --- a/libraries/display_change_password.lib.php +++ b/libraries/display_change_password.lib.php @@ -3,7 +3,6 @@ /** * Displays form for password change * - * @version $Id$ * @package phpMyAdmin */ if (! defined('PHPMYADMIN')) { @@ -58,7 +57,7 @@ $chg_evt_handler = (PMA_USR_BROWSER_AGENT == 'IE' && PMA_USR_BROWSER_VER >= 5) - +   @@ -67,15 +66,6 @@ $chg_evt_handler = (PMA_USR_BROWSER_AGENT == 'IE' && PMA_USR_BROWSER_VER >= 5) - - - - - - - - -