Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
47c8d85e81
@ -19,11 +19,13 @@ phpMyAdmin - ChangeLog
|
||||
+ rfe #1433 Support relations with ndbcluster
|
||||
- bug #3962 Proper escaping of JSON export
|
||||
+ rfe #1328 Optional ReCAPTCHA support
|
||||
+ rfe #1434 Improvements to the table browsing navigation bar
|
||||
|
||||
4.0.5.0 (not yet released)
|
||||
- bug #3977 Not detected configuration storage
|
||||
- bug #3970 Pressing enter in the filter field reloads page
|
||||
- bug #3984 Cannot insert in this table (PHP < 5.4)
|
||||
- bug #3989 Reloading privileges does not update the interface
|
||||
|
||||
4.0.4.0 (2013-06-17)
|
||||
- bug #3959 Using DefaultTabDatabase in NavigationTree for Database Click
|
||||
|
||||
@ -1559,11 +1559,11 @@ Browse mode
|
||||
.. config:option:: $cfg['MaxRows']
|
||||
|
||||
:type: integer
|
||||
:default: 30
|
||||
:default: 25
|
||||
|
||||
Number of rows displayed when browsing a result set and no LIMIT
|
||||
clause is used. If the result set contains more rows, "Previous" and
|
||||
"Next" links will be shown.
|
||||
"Next" links will be shown. Possible values: 25,50,100,250,500.
|
||||
|
||||
.. config:option:: $cfg['Order']
|
||||
|
||||
|
||||
@ -170,7 +170,6 @@ AJAX.registerTeardown('server_privileges.js', function () {
|
||||
$("#fieldset_add_user_login input[name='username']").die("focusout");
|
||||
$("#fieldset_add_user a.ajax").die("click");
|
||||
$('form[name=usersForm]').unbind('submit');
|
||||
$("#reload_privileges_anchor.ajax").die("click");
|
||||
$("#fieldset_delete_user_footer #buttonGo.ajax").die('click');
|
||||
$("a.edit_user_anchor.ajax").die('click');
|
||||
$("#edit_user_dialog").find("form.ajax").die('submit');
|
||||
@ -252,29 +251,6 @@ AJAX.registerOnload('server_privileges.js', function () {
|
||||
|
||||
});//end of Add New User AJAX event handler
|
||||
|
||||
|
||||
/**
|
||||
* Ajax event handler for 'Reload Privileges' anchor
|
||||
*
|
||||
* @see PMA_ajaxShowMessage()
|
||||
* @memberOf jQuery
|
||||
* @name reload_privileges_click
|
||||
*/
|
||||
$("#reload_privileges_anchor.ajax").live("click", function (event) {
|
||||
event.preventDefault();
|
||||
|
||||
var $msgbox = PMA_ajaxShowMessage(PMA_messages.strReloadingPrivileges);
|
||||
|
||||
$.get($(this).attr("href"), {'ajax_request': true}, function (data) {
|
||||
if (data.success === true) {
|
||||
PMA_ajaxRemoveMessage($msgbox);
|
||||
} else {
|
||||
PMA_ajaxShowMessage(data.error, false);
|
||||
}
|
||||
}); //end $.get()
|
||||
|
||||
}); //end of Reload Privileges Ajax event handler
|
||||
|
||||
/**
|
||||
* AJAX handler for 'Revoke User'
|
||||
*
|
||||
|
||||
@ -874,8 +874,8 @@ class PMA_DisplayResults
|
||||
|
||||
|
||||
/**
|
||||
* Prepare feilds followed by Show button for table navigation
|
||||
* Start row, Number of rows, Headers every
|
||||
* Prepare fields followed by Show button for table navigation
|
||||
* Start row, Number of rows
|
||||
*
|
||||
* @param string $html_sql_query the sql encoded by html special
|
||||
* characters
|
||||
@ -898,22 +898,26 @@ class PMA_DisplayResults
|
||||
. 'value="' . $html_sql_query . '" />'
|
||||
. '<input type="hidden" name="goto" value="' . $this->__get('goto')
|
||||
. '" />'
|
||||
. '<input type="submit" name="navig"'
|
||||
. ' class="ajax"'
|
||||
. ' value="' . __('Show:') . '" />'
|
||||
. __('Start row:') . ' ' . "\n"
|
||||
. '<input type="text" name="pos" size="3" value="'
|
||||
. '<input type="hidden" name="pos" size="3" value="'
|
||||
. (($pos_next >= $this->__get('unlim_num_rows')) ? 0 : $pos_next)
|
||||
. '" class="textfield" onfocus="this.select()" />'
|
||||
. __('Number of rows:') . ' ' . "\n"
|
||||
. '<input type="text" name="session_max_rows" size="3" value="'
|
||||
. (($_SESSION['tmp_user_values']['max_rows'] != self::ALL_ROWS)
|
||||
? $_SESSION['tmp_user_values']['max_rows']
|
||||
: $GLOBALS['cfg']['MaxRows'])
|
||||
. '" class="textfield" onfocus="this.select()" />';
|
||||
. '" />'
|
||||
. __('Number of rows:') . ' '
|
||||
. '<select name="session_max_rows" class="autosubmit">';
|
||||
|
||||
$numberOfRowsChoices = array(25,50,100,250,500);
|
||||
foreach($numberOfRowsChoices as $oneNumberOfRowsChoice) {
|
||||
$additional_fields_html .= '<option value="'
|
||||
. $oneNumberOfRowsChoice . '"';
|
||||
|
||||
if ($oneNumberOfRowsChoice == $_SESSION['tmp_user_values']['max_rows']) {
|
||||
$additional_fields_html .= ' selected="selected"';
|
||||
}
|
||||
$additional_fields_html .= '>' . $oneNumberOfRowsChoice . '</option>';
|
||||
}
|
||||
$additional_fields_html .= '</select>';
|
||||
|
||||
if ($GLOBALS['cfg']['ShowDisplayDirection']) {
|
||||
// Display mode (horizontal/vertical and repeat headers)
|
||||
// Display mode (horizontal/vertical)
|
||||
$additional_fields_html .= __('Mode:') . ' ' . "\n";
|
||||
$choices = array(
|
||||
'horizontal' => __('horizontal'),
|
||||
@ -929,13 +933,6 @@ class PMA_DisplayResults
|
||||
unset($choices);
|
||||
}
|
||||
|
||||
$additional_fields_html .= sprintf(
|
||||
__('Headers every %s rows'),
|
||||
'<input type="text" size="3" name="repeat_cells" value="'
|
||||
. $_SESSION['tmp_user_values']['repeat_cells']
|
||||
. '" class="textfield" onfocus="this.select()" /> '
|
||||
);
|
||||
|
||||
return $additional_fields_html;
|
||||
|
||||
} // end of the '_getAdditionalFieldsForTableNavigation()' function
|
||||
@ -4229,11 +4226,7 @@ class PMA_DisplayResults
|
||||
= $GLOBALS['cfg']['DefaultDisplay'];
|
||||
}
|
||||
|
||||
if (PMA_isValid($_REQUEST['repeat_cells'], 'numeric')) {
|
||||
$_SESSION['tmp_user_values']['query'][$sql_md5]['repeat_cells']
|
||||
= $_REQUEST['repeat_cells'];
|
||||
unset($_REQUEST['repeat_cells']);
|
||||
} elseif (
|
||||
if (
|
||||
empty($_SESSION['tmp_user_values']['query'][$sql_md5]['repeat_cells'])
|
||||
) {
|
||||
$_SESSION['tmp_user_values']['query'][$sql_md5]['repeat_cells']
|
||||
|
||||
@ -3318,7 +3318,9 @@ class PMA_Util
|
||||
|
||||
/* Fetch columns list if required */
|
||||
if (strpos($string, '@COLUMNS@') !== false) {
|
||||
$columns_list = $GLOBALS['dbi']->getColumns($GLOBALS['db'], $GLOBALS['table']);
|
||||
$columns_list = $GLOBALS['dbi']->getColumns(
|
||||
$GLOBALS['db'], $GLOBALS['table']
|
||||
);
|
||||
|
||||
// sometimes the table no longer exists at this point
|
||||
if (! is_null($columns_list)) {
|
||||
|
||||
@ -1040,10 +1040,11 @@ $cfg['ShowAll'] = false;
|
||||
/**
|
||||
* Number of rows displayed when browsing a result set. If the result
|
||||
* set contains more rows, "Previous" and "Next".
|
||||
* Possible values: 25,50,100,250,500
|
||||
*
|
||||
* @global integer $cfg['MaxRows']
|
||||
*/
|
||||
$cfg['MaxRows'] = 30;
|
||||
$cfg['MaxRows'] = 25;
|
||||
|
||||
/**
|
||||
* default for 'ORDER BY' clause (valid values are 'ASC', 'DESC' or 'SMART' -ie
|
||||
|
||||
@ -50,6 +50,7 @@ $cfg_db['NavigationBarIconic'] = array(
|
||||
false => __('Text'),
|
||||
'both' => __('Both')
|
||||
);
|
||||
$cfg_db['MaxRows'] = array(25,50,100,250,500);
|
||||
$cfg_db['Order'] = array('ASC', 'DESC', 'SMART');
|
||||
$cfg_db['RowActionLinks'] = array(
|
||||
'none' => __('Nowhere'),
|
||||
|
||||
@ -886,12 +886,9 @@ class PMA_NavigationTree
|
||||
'indexes'
|
||||
);
|
||||
$parent = $node->parents(false, true);
|
||||
$isNewView = $parent[0]->real_name == 'views' && $node->isNew == true;
|
||||
if ($parent[0]->type == Node::CONTAINER
|
||||
&& (in_array($parent[0]->real_name, $haveAjax)
|
||||
|| ($parent[0]->real_name == 'views'
|
||||
&& $node->isNew == true
|
||||
)
|
||||
)
|
||||
&& (in_array($parent[0]->real_name, $haveAjax) || $isNewView)
|
||||
) {
|
||||
$linkClass = ' class="ajax"';
|
||||
}
|
||||
|
||||
@ -82,7 +82,9 @@ class Node_Database extends Node
|
||||
);
|
||||
$query .= "%'";
|
||||
}
|
||||
$retval = $GLOBALS['dbi']->numRows($GLOBALS['dbi']->tryQuery($query));
|
||||
$retval = $GLOBALS['dbi']->numRows(
|
||||
$GLOBALS['dbi']->tryQuery($query)
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'views':
|
||||
@ -113,7 +115,9 @@ class Node_Database extends Node
|
||||
);
|
||||
$query .= "%'";
|
||||
}
|
||||
$retval = $GLOBALS['dbi']->numRows($GLOBALS['dbi']->tryQuery($query));
|
||||
$retval = $GLOBALS['dbi']->numRows(
|
||||
$GLOBALS['dbi']->tryQuery($query)
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'procedures':
|
||||
@ -141,7 +145,9 @@ class Node_Database extends Node
|
||||
);
|
||||
$query .= "%'";
|
||||
}
|
||||
$retval = $GLOBALS['dbi']->numRows($GLOBALS['dbi']->tryQuery($query));
|
||||
$retval = $GLOBALS['dbi']->numRows(
|
||||
$GLOBALS['dbi']->tryQuery($query)
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'functions':
|
||||
@ -169,7 +175,9 @@ class Node_Database extends Node
|
||||
);
|
||||
$query .= "%'";
|
||||
}
|
||||
$retval = $GLOBALS['dbi']->numRows($GLOBALS['dbi']->tryQuery($query));
|
||||
$retval = $GLOBALS['dbi']->numRows(
|
||||
$GLOBALS['dbi']->tryQuery($query)
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'events':
|
||||
@ -196,7 +204,9 @@ class Node_Database extends Node
|
||||
);
|
||||
$query .= "%'";
|
||||
}
|
||||
$retval = $GLOBALS['dbi']->numRows($GLOBALS['dbi']->tryQuery($query));
|
||||
$retval = $GLOBALS['dbi']->numRows(
|
||||
$GLOBALS['dbi']->tryQuery($query)
|
||||
);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
||||
@ -69,14 +69,18 @@ class Node_Table extends Node
|
||||
$db = PMA_Util::backquote($db);
|
||||
$table = PMA_Util::backquote($table);
|
||||
$query = "SHOW COLUMNS FROM $table FROM $db";
|
||||
$retval = (int)$GLOBALS['dbi']->numRows($GLOBALS['dbi']->tryQuery($query));
|
||||
$retval = (int)$GLOBALS['dbi']->numRows(
|
||||
$GLOBALS['dbi']->tryQuery($query)
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'indexes':
|
||||
$db = PMA_Util::backquote($db);
|
||||
$table = PMA_Util::backquote($table);
|
||||
$query = "SHOW INDEXES FROM $table FROM $db";
|
||||
$retval = (int)$GLOBALS['dbi']->numRows($GLOBALS['dbi']->tryQuery($query));
|
||||
$retval = (int)$GLOBALS['dbi']->numRows(
|
||||
$GLOBALS['dbi']->tryQuery($query)
|
||||
);
|
||||
break;
|
||||
case 'triggers':
|
||||
if (! $GLOBALS['cfg']['Servers'][$GLOBALS['server']]['DisableIS']) {
|
||||
@ -91,7 +95,9 @@ class Node_Table extends Node
|
||||
$db = PMA_Util::backquote($db);
|
||||
$table = PMA_Util::sqlAddSlashes($table);
|
||||
$query = "SHOW TRIGGERS FROM $db WHERE `Table` = '$table'";
|
||||
$retval = (int)$GLOBALS['dbi']->numRows($GLOBALS['dbi']->tryQuery($query));
|
||||
$retval = (int)$GLOBALS['dbi']->numRows(
|
||||
$GLOBALS['dbi']->tryQuery($query)
|
||||
);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
||||
@ -2991,8 +2991,7 @@ function PMA_getHtmlForDisplayUserOverviewPage($link_edit, $pmaThemeImage,
|
||||
PMA_Message::NOTICE
|
||||
);
|
||||
$flushLink = '<a href="server_privileges.php?' . $GLOBALS['url_query'] . '&'
|
||||
. 'flush_privileges=1" id="reload_privileges_anchor" '
|
||||
. 'class="' . $conditional_class . '">';
|
||||
. 'flush_privileges=1" id="reload_privileges_anchor">';
|
||||
$flushnote->addParam(
|
||||
$flushLink,
|
||||
false
|
||||
|
||||
942
po/be@latin.po
942
po/be@latin.po
File diff suppressed because it is too large
Load Diff
990
po/en_GB.po
990
po/en_GB.po
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
1004
po/pt_BR.po
1004
po/pt_BR.po
File diff suppressed because it is too large
Load Diff
914
po/sr@latin.po
914
po/sr@latin.po
File diff suppressed because it is too large
Load Diff
1043
po/uz@latin.po
1043
po/uz@latin.po
File diff suppressed because it is too large
Load Diff
920
po/zh_CN.po
920
po/zh_CN.po
File diff suppressed because it is too large
Load Diff
921
po/zh_TW.po
921
po/zh_TW.po
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user