Bug #3178949 [Interface] Copy feature in vertical mode

This commit is contained in:
Madhura Jayaratne
2011-02-13 11:04:26 +05:30
parent 968efc4c4e
commit fce601daa8

View File

@@ -1074,6 +1074,7 @@ function PMA_displayTableBody(&$dt_result, &$is_display, $map, $analyzed_sql) {
} }
$row_no = 0; $row_no = 0;
$vertical_display['edit'] = array(); $vertical_display['edit'] = array();
$vertical_display['copy'] = array();
$vertical_display['delete'] = array(); $vertical_display['delete'] = array();
$vertical_display['data'] = array(); $vertical_display['data'] = array();
$vertical_display['row_delete'] = array(); $vertical_display['row_delete'] = array();
@@ -1455,6 +1456,7 @@ function PMA_displayTableBody(&$dt_result, &$is_display, $map, $analyzed_sql) {
// output // output
if (!isset($vertical_display['edit'][$row_no])) { if (!isset($vertical_display['edit'][$row_no])) {
$vertical_display['edit'][$row_no] = ''; $vertical_display['edit'][$row_no] = '';
$vertical_display['copy'][$row_no] = '';
$vertical_display['delete'][$row_no] = ''; $vertical_display['delete'][$row_no] = '';
$vertical_display['row_delete'][$row_no] = ''; $vertical_display['row_delete'][$row_no] = '';
} }
@@ -1478,6 +1480,12 @@ function PMA_displayTableBody(&$dt_result, &$is_display, $map, $analyzed_sql) {
unset($vertical_display['edit'][$row_no]); unset($vertical_display['edit'][$row_no]);
} }
if (isset($copy_url)) {
$vertical_display['copy'][$row_no] .= PMA_generateCopyLink($copy_url, $copy_str, $where_clause, $where_clause_html, $alternating_color_class . $vertical_class);
} else {
unset($vertical_display['copy'][$row_no]);
}
if (isset($del_url)) { if (isset($del_url)) {
if (! isset($js_conf)) { if (! isset($js_conf)) {
$js_conf = ''; $js_conf = '';
@@ -1547,6 +1555,24 @@ function PMA_displayVerticalTable()
echo '</tr>' . "\n"; echo '</tr>' . "\n";
} // end if } // end if
// Displays "copy" link at top if required
if ($GLOBALS['cfg']['ModifyDeleteAtLeft'] && is_array($vertical_display['copy']) && (count($vertical_display['copy']) > 0 || !empty($vertical_display['textbtn']))) {
echo '<tr>' . "\n";
if (!is_array($vertical_display['row_delete'])) {
echo $vertical_display['textbtn'];
}
$foo_counter = 0;
foreach ($vertical_display['copy'] as $val) {
if (($foo_counter != 0) && ($_SESSION['tmp_user_values']['repeat_cells'] != 0) && !($foo_counter % $_SESSION['tmp_user_values']['repeat_cells'])) {
echo ' <th></th>' . "\n";
}
echo $val;
$foo_counter++;
} // end while
echo '</tr>' . "\n";
} // end if
// Displays "delete" link at top if required // Displays "delete" link at top if required
if ($GLOBALS['cfg']['ModifyDeleteAtLeft'] && is_array($vertical_display['delete']) && (count($vertical_display['delete']) > 0 || !empty($vertical_display['textbtn']))) { if ($GLOBALS['cfg']['ModifyDeleteAtLeft'] && is_array($vertical_display['delete']) && (count($vertical_display['delete']) > 0 || !empty($vertical_display['textbtn']))) {
echo '<tr>' . "\n"; echo '<tr>' . "\n";
@@ -1618,6 +1644,24 @@ function PMA_displayVerticalTable()
echo '</tr>' . "\n"; echo '</tr>' . "\n";
} // end if } // end if
// Displays "copy" link at bottom if required
if ($GLOBALS['cfg']['ModifyDeleteAtRight'] && is_array($vertical_display['copy']) && (count($vertical_display['copy']) > 0 || !empty($vertical_display['textbtn']))) {
echo '<tr>' . "\n";
if (!is_array($vertical_display['row_delete'])) {
echo $vertical_display['textbtn'];
}
$foo_counter = 0;
foreach ($vertical_display['copy'] as $val) {
if (($foo_counter != 0) && ($_SESSION['tmp_user_values']['repeat_cells'] != 0) && !($foo_counter % $_SESSION['tmp_user_values']['repeat_cells'])) {
echo '<th></th>' . "\n";
}
echo $val;
$foo_counter++;
} // end while
echo '</tr>' . "\n";
} // end if
// Displays "delete" link at bottom if required // Displays "delete" link at bottom if required
if ($GLOBALS['cfg']['ModifyDeleteAtRight'] && is_array($vertical_display['delete']) && (count($vertical_display['delete']) > 0 || !empty($vertical_display['textbtn']))) { if ($GLOBALS['cfg']['ModifyDeleteAtRight'] && is_array($vertical_display['delete']) && (count($vertical_display['delete']) > 0 || !empty($vertical_display['textbtn']))) {
echo '<tr>' . "\n"; echo '<tr>' . "\n";
@@ -2516,10 +2560,14 @@ function PMA_generateEditLink($edit_url, $class, $edit_str, $where_clause, $wher
* @param string $where_clause_html * @param string $where_clause_html
* @return string the generated HTML * @return string the generated HTML
*/ */
function PMA_generateCopyLink($copy_url, $copy_str, $where_clause, $where_clause_html) { function PMA_generateCopyLink($copy_url, $copy_str, $where_clause, $where_clause_html, $class) {
$ret = ''; $ret = '';
if (! empty($copy_url)) { if (! empty($copy_url)) {
$ret .= '<td align="center" ' . ' ><span class="nowrap">' $ret .= '<td ';
if (! empty($class)) {
$ret .= 'class="' . $class . '" ';
}
$ret .= 'align="center" ' . ' ><span class="nowrap">'
. PMA_linkOrButton($copy_url, $copy_str, array(), FALSE); . PMA_linkOrButton($copy_url, $copy_str, array(), FALSE);
/* /*
* Where clause for selecting this row uniquely is provided as * Where clause for selecting this row uniquely is provided as
@@ -2564,6 +2612,7 @@ function PMA_generateDeleteLink($del_url, $del_str, $js_conf, $class) {
* @uses PMA_generateCheckboxForMulti() * @uses PMA_generateCheckboxForMulti()
* @uses PMA_generateEditLink() * @uses PMA_generateEditLink()
* @uses PMA_generateDeleteLink() * @uses PMA_generateDeleteLink()
* @uses PMA_generateCopyLink()
* @param string $position * @param string $position
* @param string $del_url * @param string $del_url
* @param array $is_display * @param array $is_display