Skip to content

Commit

Permalink
Merge branch 'QA_4_4'
Browse files Browse the repository at this point in the history
  • Loading branch information
madhuracj committed May 8, 2015
2 parents f931072 + 470d61a commit c59aef5
Show file tree
Hide file tree
Showing 5 changed files with 56 additions and 30 deletions.
1 change: 1 addition & 0 deletions ChangeLog
Expand Up @@ -34,6 +34,7 @@ phpMyAdmin - ChangeLog
4.4.7.0 (not yet released)
- bug #4876 Settings issues (Favorite tables shown twice in Settings)
- bug #4896 Non-styled error page when following results link
- bug #4894 Deleting without confirmation

4.4.6.0 (2015-05-07)
- bug #4890 webkitStorageInfo and webkitIndexedDB is deprecated
Expand Down
23 changes: 17 additions & 6 deletions js/functions.js
Expand Up @@ -3831,13 +3831,10 @@ AJAX.registerOnload('functions.js', function () {
* Enables the text generated by PMA_Util::linkOrButton() to be clickable
*/
$(document).on('click', 'a.formLinkSubmit', function (e) {

if ($(this).attr('href').indexOf('=') != -1) {
var data = $(this).attr('href').substr($(this).attr('href').indexOf('#') + 1).split('=', 2);
$(this).parents('form').append('<input type="hidden" name="' + data[0] + '" value="' + data[1] + '"/>');
if (! $(this).hasClass('requireConfirm')) {
submitFormLink($(this));
return false;
}
$(this).parents('form').submit();
return false;
});

if ($('#update_recent_tables').length) {
Expand Down Expand Up @@ -3873,6 +3870,20 @@ AJAX.registerOnload('functions.js', function () {
}
}); // end of $()

/**
* Submits the form placed in place of a link due to the excessive url length
*
* @param $link anchor
* @returns {Boolean}
*/
function submitFormLink($link)
{
if ($link.attr('href').indexOf('=') != -1) {
var data = $link.attr('href').substr($link.attr('href').indexOf('#') + 1).split('=', 2);
$link.parents('form').append('<input type="hidden" name="' + data[0] + '" value="' + data[1] + '"/>');
}
$link.parents('form').submit();
}

/**
* Initializes slider effect.
Expand Down
20 changes: 12 additions & 8 deletions js/sql.js
Expand Up @@ -156,14 +156,18 @@ AJAX.registerOnload('sql.js', function () {
var $link = $(this);
$link.PMA_confirm(question, $link.attr('href'), function (url) {
$msgbox = PMA_ajaxShowMessage();
$.get(url, {'ajax_request': true, 'is_js_confirmed': true}, function (data) {
if (data.success) {
PMA_ajaxShowMessage(data.message);
$link.closest('tr').remove();
} else {
PMA_ajaxShowMessage(data.error, false);
}
});
if ($link.hasClass('formLinkSubmit')) {
submitFormLink($link);
} else {
$.get(url, {'ajax_request': true, 'is_js_confirmed': true}, function (data) {
if (data.success) {
PMA_ajaxShowMessage(data.message);
$link.closest('tr').remove();
} else {
PMA_ajaxShowMessage(data.error, false);
}
});
}
});
});

Expand Down
2 changes: 1 addition & 1 deletion libraries/DisplayResults.class.php
Expand Up @@ -5604,7 +5604,7 @@ private function _getDeleteLink($del_url, $del_str, $js_conf, $class)
$ajax = PMA_Response::getInstance()->isAjax() ? ' ajax' : '';
$ret .= 'center" ' . ' >'
. PMA_Util::linkOrButton(
$del_url, $del_str, array('class' => 'delete_row' . $ajax), false
$del_url, $del_str, array('class' => 'delete_row requireConfirm' . $ajax), false
)
. '<div class="hide">' . $js_conf . '</div>'
. '</td>';
Expand Down
40 changes: 25 additions & 15 deletions libraries/Util.class.php
Expand Up @@ -1847,15 +1847,6 @@ public static function linkOrButton(
$tag_params['target'] = htmlentities($target);
}

$tag_params_strings = array();
foreach ($tag_params as $par_name => $par_value) {
// htmlspecialchars() only on non javascript
$par_value = /*overload*/mb_substr($par_name, 0, 2) == 'on'
? $par_value
: htmlspecialchars($par_value);
$tag_params_strings[] = $par_name . '="' . $par_value . '"';
}

$displayed_message = '';
// Add text if not already added
if (stristr($message, '<img')
Expand Down Expand Up @@ -1891,6 +1882,15 @@ public static function linkOrButton(
if (($url_length <= $GLOBALS['cfg']['LinkLengthLimit'])
&& $in_suhosin_limits
) {
$tag_params_strings = array();
foreach ($tag_params as $par_name => $par_value) {
// htmlspecialchars() only on non javascript
$par_value = /*overload*/mb_substr($par_name, 0, 2) == 'on'
? $par_value
: htmlspecialchars($par_value);
$tag_params_strings[] = $par_name . '="' . $par_value . '"';
}

// no whitespace within an <a> else Safari will make it part of the link
$ret = "\n" . '<a href="' . $url . '" '
. implode(' ', $tag_params_strings) . '>'
Expand All @@ -1900,11 +1900,6 @@ public static function linkOrButton(
// or after the hidden fields
// IE will display them all

// add class=link to submit button
if (empty($tag_params['class'])) {
$tag_params['class'] = 'link';
}

if (! isset($query_parts)) {
$query_parts = self::splitURLQuery($url);
}
Expand Down Expand Up @@ -1939,7 +1934,22 @@ public static function linkOrButton(
. htmlspecialchars(urldecode($eachval)) . '" />';
} // end while

$ret .= "\n" . '<a href="' . $submit_link . '" class="formLinkSubmit" '
if (empty($tag_params['class'])) {
$tag_params['class'] = 'formLinkSubmit';
} else {
$tag_params['class'] .= ' formLinkSubmit';
}

$tag_params_strings = array();
foreach ($tag_params as $par_name => $par_value) {
// htmlspecialchars() only on non javascript
$par_value = /*overload*/mb_substr($par_name, 0, 2) == 'on'
? $par_value
: htmlspecialchars($par_value);
$tag_params_strings[] = $par_name . '="' . $par_value . '"';
}

$ret .= "\n" . '<a href="' . $submit_link . '" '
. implode(' ', $tag_params_strings) . '>'
. $message . ' ' . $displayed_message . '</a>' . "\n";

Expand Down

0 comments on commit c59aef5

Please sign in to comment.