From e636a19206c6a44e731773c4b296271987d0375e Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 11:41:32 +0530 Subject: [PATCH 01/27] added method PMA_getRowDataForFieldsMetaSet --- libraries/tbl_columns_definition_form.inc.php | 33 ++-------------- libraries/tbl_columns_definition_form.lib.php | 39 +++++++++++++++++++ 2 files changed, 43 insertions(+), 29 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 0fe95993b4..97308f8c14 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -89,35 +89,10 @@ for ($i = 0; $i < $num_fields; $i++) { $comments_map, $mime_map ); } elseif (isset($fields_meta[$i])) { - $row = $fields_meta[$i]; - switch ($row['Default']) { - case null: - if ($row['Null'] == 'YES') { - $row['DefaultType'] = 'NULL'; - $row['DefaultValue'] = ''; - // SHOW FULL COLUMNS does not report the case - // when there is a DEFAULT value which is empty so we need to use the - // results of SHOW CREATE TABLE - } elseif (isset($row) - && isset($analyzed_sql[0]['create_table_fields'][$row['Field']] - ['default_value']) - ) { - $row['DefaultType'] = 'USER_DEFINED'; - $row['DefaultValue'] = $row['Default']; - } else { - $row['DefaultType'] = 'NONE'; - $row['DefaultValue'] = ''; - } - break; - case 'CURRENT_TIMESTAMP': - $row['DefaultType'] = 'CURRENT_TIMESTAMP'; - $row['DefaultValue'] = ''; - break; - default: - $row['DefaultType'] = 'USER_DEFINED'; - $row['DefaultValue'] = $row['Default']; - break; - } + $row = PMA_getRowDataForFieldsMetaSet( + $fields_meta[$i], isset($analyzed_sql[0]['create_table_fields'] + [$row['Field']]['default_value']) + ); } if (isset($row['Type'])) { diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index 71b2a91ba1..fa943cd201 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -507,4 +507,43 @@ function PMA_handleRegeneration($submit_fulltext, $comments_map, $mime_map) $comments_map, $mime_map ); } + +/** + * Function to get row data for $fields_meta set + * + * @param array $row row + * @param bool $isDefault whether the row value is default + * + * @return array + */ +function PMA_getRowDataForFieldsMetaSet($row, $isDefault) +{ + switch ($row['Default']) { + case null: + if ($row['Null'] == 'YES') { + $row['DefaultType'] = 'NULL'; + $row['DefaultValue'] = ''; + // SHOW FULL COLUMNS does not report the case + // when there is a DEFAULT value which is empty so we need to use the + // results of SHOW CREATE TABLE + } elseif ($isDefault) { + $row['DefaultType'] = 'USER_DEFINED'; + $row['DefaultValue'] = $row['Default']; + } else { + $row['DefaultType'] = 'NONE'; + $row['DefaultValue'] = ''; + } + break; + case 'CURRENT_TIMESTAMP': + $row['DefaultType'] = 'CURRENT_TIMESTAMP'; + $row['DefaultValue'] = ''; + break; + default: + $row['DefaultType'] = 'USER_DEFINED'; + $row['DefaultValue'] = $row['Default']; + break; + } + + return $row; +} ?> From 10d2c79e6118f1497a00099cbbc421a1799ef3e0 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 11:46:16 +0530 Subject: [PATCH 02/27] error corrected --- libraries/tbl_columns_definition_form.inc.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 97308f8c14..7929de3f48 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -91,7 +91,7 @@ for ($i = 0; $i < $num_fields; $i++) { } elseif (isset($fields_meta[$i])) { $row = PMA_getRowDataForFieldsMetaSet( $fields_meta[$i], isset($analyzed_sql[0]['create_table_fields'] - [$row['Field']]['default_value']) + [$fields_meta[$i]['Field']]['default_value']) ); } @@ -102,6 +102,7 @@ for ($i = 0; $i < $num_fields; $i++) { = PMA_Util::convertBitDefaultValue($row['Default']); } } + // Cell index: If certain fields get left out, the counter shouldn't change. $ci = 0; // Everytime a cell shall be left out the STRG-jumping feature, $ci_offset From f92b24d3b3dcae7bc88354c1b80e18a6b16fca42 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 12:21:49 +0530 Subject: [PATCH 03/27] added PMA_getHtmlForColumnType, PMA_getHtmlForColumnName --- libraries/tbl_columns_definition_form.inc.php | 25 +++++------ libraries/tbl_columns_definition_form.lib.php | 42 +++++++++++++++++++ 2 files changed, 52 insertions(+), 15 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 7929de3f48..db246fcd5d 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -119,19 +119,12 @@ for ($i = 0; $i < $num_fields; $i++) { } // column name - $content_cells[$i][$ci] = ''; + $content_cells[$i][$ci] = PMA_getHtmlForColumnName( + $i, $ci, $ci_offset, isset($row) ? $row : null + ); + $ci++; - // column type - $select_id = 'field_' . $i . '_' . ($ci - $ci_offset); - $content_cells[$i][$ci] = ''; + + // column type + $content_cells[$i][$ci] = PMA_getHtmlForColumnType( + $i, $ci, $ci_offset, $type_upper + ); + $ci++; // old column length diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index fa943cd201..0bc7fa04cc 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -546,4 +546,46 @@ function PMA_getRowDataForFieldsMetaSet($row, $isDefault) return $row; } + +/** + * Function to get html for the column name + * + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param array $row row + * + * @return string + */ +function PMA_getHtmlForColumnName($i, $ci, $ci_offset, $row) +{ + $html = ''; + + return $html; +} + +/** + * Function to get html for the column type + * + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * + * @return string + */ +function PMA_getHtmlForColumnType($i, $ci, $ci_offset, $type_upper) +{ + $select_id = 'field_' . $i . '_' . ($ci - $ci_offset); + $html = ''; + + return $html; +} ?> From dba6f67a18118307cd6bd15aaa4a35ea12540788 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 19:55:43 +0530 Subject: [PATCH 04/27] added method PMA_getHtmlForTransformationOption --- libraries/tbl_columns_definition_form.inc.php | 16 ++++------- libraries/tbl_columns_definition_form.lib.php | 28 +++++++++++++++++++ 2 files changed, 33 insertions(+), 11 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index db246fcd5d..fa4b11d968 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -477,17 +477,11 @@ for ($i = 0; $i < $num_fields; $i++) { $content_cells[$i][$ci] .= ''; $ci++; - $val = isset($row['Field']) - && isset($mime_map[$row['Field']]['transformation_options']) - ? htmlspecialchars($mime_map[$row['Field']]['transformation_options']) - : ''; - $content_cells[$i][$ci] = ''; - //$ci++; + // column Transformation options + $content_cells[$i][$ci] = PMA_getHtmlForTransformationOption( + $i, $ci, $ci_offset, isset($row) ? $row : null, + isset($mime_map) ? $mime_map : null + ); } } // end for diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index 0bc7fa04cc..ff0fdd5a4e 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -588,4 +588,32 @@ function PMA_getHtmlForColumnType($i, $ci, $ci_offset, $type_upper) return $html; } + +/** + * Function to get html for transhormation option + * + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param array $row row + * @param array $mime_map mime map + * + * @return string + */ +function PMA_getHtmlForTransformationOption($i, $ci, $ci_offset, $row, $mime_map) +{ + $val = isset($row['Field']) + && isset($mime_map[$row['Field']]['transformation_options']) + ? htmlspecialchars($mime_map[$row['Field']]['transformation_options']) + : ''; + + $html = ''; + + return $html; +} ?> From ff0de8e52b97fff3cc172a240e0e019fab19cb70 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 20:51:18 +0530 Subject: [PATCH 05/27] added method PMA_getHtmlForMimeType --- libraries/tbl_columns_definition_form.inc.php | 24 ++--------- libraries/tbl_columns_definition_form.lib.php | 40 ++++++++++++++++++- 2 files changed, 43 insertions(+), 21 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index fa4b11d968..8242116f25 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -421,30 +421,14 @@ for ($i = 0; $i < $num_fields; $i++) { $ci++; } - // column MIME-types if ($cfgRelation['mimework'] && $GLOBALS['cfg']['BrowseMIME'] && $cfgRelation['commwork'] ) { - $content_cells[$i][$ci] = ''; + // Column Mime-type + $content_cells[$i][$ci] = PMA_getHtmlForMimeType( + $i, $ci, $ci_offset, $available_mime, $row, $mime_map + ); $ci++; $content_cells[$i][$ci] = ''; + + return $html; +} ?> From 9b9d67d370cf8c5d8ffc6ae91cda47b199017a9e Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 21:05:47 +0530 Subject: [PATCH 06/27] added PMA_getHtmlForBrowserTransformation --- libraries/tbl_columns_definition_form.inc.php | 32 ++----------- libraries/tbl_columns_definition_form.lib.php | 47 +++++++++++++++++++ 2 files changed, 51 insertions(+), 28 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 8242116f25..24054c1130 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -431,34 +431,10 @@ for ($i = 0; $i < $num_fields; $i++) { ); $ci++; - $content_cells[$i][$ci] = ''; + // Column Browser transformation + $content_cells[$i][$ci] = PMA_getHtmlForBrowserTransformation( + $i, $ci, $mi, $available_mime, $row, $mime_map + ); $ci++; // column Transformation options diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index 3a675acd8c..9d3174e676 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -654,4 +654,51 @@ function PMA_getHtmlForMimeType($i, $ci, $ci_offset, return $html; } + +/** + * Function to get html for browser transformation + * + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param array $available_mime available mime + * @param array $row row + * @param array $mime_map mime map + * + * @return string + */ +function PMA_getHtmlForBrowserTransformation($i, $ci, $ci_offset, + $available_mime, $row, $mime_map +) { + $html = ''; + + return $html; +} ?> From 3d10342c87f5b5512726f9c401499531531495b2 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 21:06:17 +0530 Subject: [PATCH 07/27] comment error corrected --- libraries/tbl_columns_definition_form.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index 9d3174e676..88da272804 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -618,7 +618,7 @@ function PMA_getHtmlForTransformationOption($i, $ci, $ci_offset, $row, $mime_map } /** - * Function to get html for browser transformation + * Function to get html for mime type * * @param int $i field number * @param int $ci cell index From 90c16952b09e4533c71fb4eb49239291711ec78b Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 21:17:20 +0530 Subject: [PATCH 08/27] added PMA_getHtmlForMoveColumn --- libraries/tbl_columns_definition_form.inc.php | 39 ++------------ libraries/tbl_columns_definition_form.lib.php | 52 +++++++++++++++++++ 2 files changed, 55 insertions(+), 36 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 24054c1130..98fb6e2b10 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -382,42 +382,9 @@ for ($i = 0; $i < $num_fields; $i++) { // move column if (isset($fields_meta)) { - $content_cells[$i][$ci] = ''; + $content_cells[$i][$ci] = PMA_getHtmlForMoveColumn( + $i, $ci, $ci_offset, $move_columns, $row + ); $ci++; } diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index 88da272804..ad65035181 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -701,4 +701,56 @@ function PMA_getHtmlForBrowserTransformation($i, $ci, $ci_offset, return $html; } + +/** + * Function to get html for move column + * + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param array $move_columns move columns + * @param array $row row + * + * @return string + */ +function PMA_getHtmlForMoveColumn($i, $ci, $ci_offset, $move_columns, $row) +{ + $html = ''; + + return $html; +} ?> From 08e3b43e0eba98f88a14fe3753a7a29d5046c451 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 21:32:17 +0530 Subject: [PATCH 09/27] added method PMA_getHtmlForBrowserTransformation --- libraries/tbl_columns_definition_form.inc.php | 11 +++----- libraries/tbl_columns_definition_form.lib.php | 25 +++++++++++++++++++ 2 files changed, 28 insertions(+), 8 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 98fb6e2b10..f1b20df924 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -370,14 +370,9 @@ for ($i = 0; $i < $num_fields; $i++) { $ci++; // column comments - $content_cells[$i][$ci] = ''; + $content_cells[$i][$ci] = PMA_getHtmlForColumnComment( + $i, $ci, $ci_offset, isset($row) ? $row : null, $comments_map + ); $ci++; // move column diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index ad65035181..673234d99d 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -753,4 +753,29 @@ function PMA_getHtmlForMoveColumn($i, $ci, $ci_offset, $move_columns, $row) return $html; } + +/** + * Function to get html for column comment + * + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param array $row row + * @param array $comments_map comments map + * + * @return string + */ +function PMA_getHtmlForColumnComment($i, $ci, $ci_offset, $row, $comments_map) +{ + $html = ''; + + return $html; +} ?> From 1f4373112d44347264f04d717257613b6bed3cdf Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 21:32:52 +0530 Subject: [PATCH 10/27] error corrected --- libraries/tbl_columns_definition_form.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index f1b20df924..dbdd3e59e9 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -395,7 +395,7 @@ for ($i = 0; $i < $num_fields; $i++) { // Column Browser transformation $content_cells[$i][$ci] = PMA_getHtmlForBrowserTransformation( - $i, $ci, $mi, $available_mime, $row, $mime_map + $i, $ci, $ci_offset, $available_mime, $row, $mime_map ); $ci++; From 1294d34a01e53bf4181b913750ef3434e1385c64 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 21:46:28 +0530 Subject: [PATCH 11/27] added method PMA_getHtmlForColumnAutoIncrement --- libraries/tbl_columns_definition_form.inc.php | 11 +++------ libraries/tbl_columns_definition_form.lib.php | 23 +++++++++++++++++++ 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index dbdd3e59e9..007a6ea087 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -359,14 +359,9 @@ for ($i = 0; $i < $num_fields; $i++) { } // end if ($action ==...) // column auto_increment - $content_cells[$i][$ci] = ' From 5cf3bceb5398539e60d96cb13dd13958eb9ab412 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 21:57:11 +0530 Subject: [PATCH 12/27] added method PMA_getHtmlForColumnIndexes --- libraries/tbl_columns_definition_form.inc.php | 40 ++------------- libraries/tbl_columns_definition_form.lib.php | 51 +++++++++++++++++++ 2 files changed, 55 insertions(+), 36 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 007a6ea087..fec7d6241c 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -318,43 +318,11 @@ for ($i = 0; $i < $num_fields; $i++) { $ci++; // column indexes - // See my other comment about removing this 'if'. + // See my other comment about this 'if'. if (!$is_backup) { - $content_cells[$i][$ci] = ' From d8afc1f544bf237118533f4f8900a3c88a2343c2 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 22:53:17 +0530 Subject: [PATCH 14/27] added method PMA_getHtmlForColumnAttribute --- libraries/tbl_columns_definition_form.inc.php | 66 ++-------------- libraries/tbl_columns_definition_form.lib.php | 79 +++++++++++++++++++ 2 files changed, 87 insertions(+), 58 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index cc40973e64..7127f7f7ea 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -243,64 +243,14 @@ for ($i = 0; $i < $num_fields; $i++) { $ci++; // column attribute - $content_cells[$i][$ci] = ''; + $content_cells[$i][$ci] = PMA_getHtmlForColumnAttribute($i, $ci, $ci_offset, + isset($extracted_columnspec) ? $extracted_columnspec : null, + isset($row) ? $row : null, + isset($submit_attribute) ? $submit_attribute : null, + isset($analyzed_sql) ? $analyzed_sql : null, + isset($submit_default_current_timestamp) + ? $submit_default_current_timestamp : null + ); $ci++; // column NULL diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index 16e956e9b9..56ce350ebe 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -878,4 +878,83 @@ function PMA_getHtmlForColumnNull($i, $ci, $ci_offset, $row) return $html; } + +/** + * Function to get html for column attribute + * + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param array $extracted_columnspec extracted column + * @param array $row row + * @param bool $submit_attribute submit attribute + * @param array $analyzed_sql analyzed sql + * @param bool $submit_default_current_timestamp submit default current time stamp + * + * @return string + */ +function PMA_getHtmlForColumnAttribute($i, $ci, $ci_offset, $extracted_columnspec, + $row, $submit_attribute, $analyzed_sql, $submit_default_current_timestamp +) { + $html = ''; + + return $html; +} ?> From 507ca058a456999929a5561639088a53ad270241 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 23:08:51 +0530 Subject: [PATCH 15/27] added method PMA_getHtmlForColumnCollation --- libraries/tbl_columns_definition_form.inc.php | 7 ++----- libraries/tbl_columns_definition_form.lib.php | 21 +++++++++++++++++++ 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 7127f7f7ea..382ce156a2 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -234,12 +234,9 @@ for ($i = 0; $i < $num_fields; $i++) { $ci++; // column collation - $tmp_collation = empty($row['Collation']) ? null : $row['Collation']; - $content_cells[$i][$ci] = PMA_generateCharsetDropdownBox( - PMA_CSDROPDOWN_COLLATION, 'field_collation[' . $i . ']', - 'field_' . $i . '_' . ($ci - $ci_offset), $tmp_collation, false + $content_cells[$i][$ci] = PMA_getHtmlForColumnCollation( + $i, $ci, $ci_offset, $row ); - unset($tmp_collation); $ci++; // column attribute diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index 56ce350ebe..ea565ff4b8 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -957,4 +957,25 @@ function PMA_getHtmlForColumnAttribute($i, $ci, $ci_offset, $extracted_columnspe return $html; } + +/** + * Function to get html for column collation + * + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param array $row row + * + * @return string + */ +function PMA_getHtmlForColumnCollation($i, $ci, $ci_offset, $row) +{ + $tmp_collation = empty($row['Collation']) ? null : $row['Collation']; + $html = PMA_generateCharsetDropdownBox( + PMA_CSDROPDOWN_COLLATION, 'field_collation[' . $i . ']', + 'field_' . $i . '_' . ($ci - $ci_offset), $tmp_collation, false + ); + + return $html; +} ?> From adec74d49f53106cf69f5f938f1583d6e2dab2f8 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 23:15:25 +0530 Subject: [PATCH 16/27] added method PMA_getHtmlForColumnLength --- libraries/tbl_columns_definition_form.inc.php | 18 ++--------- libraries/tbl_columns_definition_form.lib.php | 31 +++++++++++++++++++ 2 files changed, 34 insertions(+), 15 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 382ce156a2..58bbbee33e 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -164,21 +164,9 @@ for ($i = 0; $i < $num_fields; $i++) { } // column length - $length_to_display = $length; - - $content_cells[$i][$ci] = '' - . '

'; - $content_cells[$i][$ci] .= __('ENUM or SET data too long?') - . ' ' - . __('Get more editing space') . '' - . '

'; + $content_cells[$i][$ci] = PMA_getHtmlForColumnLength( + $i, $ci, $ci_offset, $length_values_input_size, $length + ); $ci++; // column default diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index ea565ff4b8..ea25cda3f6 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -978,4 +978,35 @@ function PMA_getHtmlForColumnCollation($i, $ci, $ci_offset, $row) return $html; } + +/** + * Function get html for column length + * + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param int $length_values_input_size length values input size + * @param int $length_to_display length to disply + * + * @return string + */ +function PMA_getHtmlForColumnLength($i, $ci, $ci_offset, $length_values_input_size, + $length_to_display +) { + $html = '' + . '

'; + $html .= __('ENUM or SET data too long?') + . ' ' + . __('Get more editing space') . '' + . '

'; + + return $html; +} ?> From b629d5c6dde7b00f4e2487ea654c1116ede79b7c Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 23:31:49 +0530 Subject: [PATCH 17/27] added method PMA_getHtmlForColumnDefault --- libraries/tbl_columns_definition_form.inc.php | 50 ++------------- libraries/tbl_columns_definition_form.lib.php | 61 +++++++++++++++++++ 2 files changed, 66 insertions(+), 45 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 58bbbee33e..3a075fbabd 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -121,8 +121,7 @@ for ($i = 0; $i < $num_fields; $i++) { // column name $content_cells[$i][$ci] = PMA_getHtmlForColumnName( $i, $ci, $ci_offset, isset($row) ? $row : null - ); - + ); $ci++; if (empty($row['Type'])) { @@ -170,55 +169,16 @@ for ($i = 0; $i < $num_fields; $i++) { $ci++; // column default - // old column default if ($is_backup) { $_form_params['field_default_orig[' . $i . ']'] = (isset($row['Default']) ? $row['Default'] : ''); } - - // here we put 'NONE' as the default value of drop-down; otherwise - // users would have problems if they forget to enter the default - // value (example, for an INT) - $default_options = array( - 'NONE' => _pgettext('for default', 'None'), - 'USER_DEFINED' => __('As defined:'), - 'NULL' => 'NULL', - 'CURRENT_TIMESTAMP' => 'CURRENT_TIMESTAMP', + $content_cells[$i][$ci] = PMA_getHtmlForColumnDefault($i, $ci, $ci_offset, + isset($type_upper) ? $type_upper : null, + isset($default_current_timestamp) ? $default_current_timestamp : null, + isset($row) ? $row : null ); - - // for a TIMESTAMP, do not show the string "CURRENT_TIMESTAMP" as a default value - if ($type_upper == 'TIMESTAMP' - && ! empty($default_current_timestamp) - && isset($row['Default']) - ) { - $row['Default'] = ''; - } - - if ($type_upper == 'BIT') { - $row['DefaultValue'] - = PMA_Util::convertBitDefaultValue($row['DefaultValue']); - } - - $content_cells[$i][$ci] = ''; - $content_cells[$i][$ci] .= '
'; - $content_cells[$i][$ci] .= ''; $ci++; // column collation diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index ea25cda3f6..d1ca2c2818 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -1009,4 +1009,65 @@ function PMA_getHtmlForColumnLength($i, $ci, $ci_offset, $length_values_input_si return $html; } + +/** + * Function to get html for the default column + * + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param string $type_upper type upper + * @param string $default_current_timestamp default current timestamp + * @param array $row row + * + * @return string + */ +function PMA_getHtmlForColumnDefault($i, $ci, $ci_offset, $type_upper, + $default_current_timestamp, $row +) { + // here we put 'NONE' as the default value of drop-down; otherwise + // users would have problems if they forget to enter the default + // value (example, for an INT) + $default_options = array( + 'NONE' => _pgettext('for default', 'None'), + 'USER_DEFINED' => __('As defined:'), + 'NULL' => 'NULL', + 'CURRENT_TIMESTAMP' => 'CURRENT_TIMESTAMP', + ); + + // for a TIMESTAMP, do not show the string "CURRENT_TIMESTAMP" as a default value + if ($type_upper == 'TIMESTAMP' + && ! empty($default_current_timestamp) + && isset($row['Default']) + ) { + $row['Default'] = ''; + } + + if ($type_upper == 'BIT') { + $row['DefaultValue'] + = PMA_Util::convertBitDefaultValue($row['DefaultValue']); + } + + $html = ''; + $html .= '
'; + $html .= ''; + + return $html; +} ?> From f9a43b7ddc5b2edea05463d86d11858744d20452 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Mon, 5 Aug 2013 23:43:00 +0530 Subject: [PATCH 18/27] phpcs errors corrected --- libraries/tbl_columns_definition_form.inc.php | 16 +++-- libraries/tbl_columns_definition_form.lib.php | 68 ++++++++++--------- 2 files changed, 44 insertions(+), 40 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 3a075fbabd..529b27ab9f 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -174,7 +174,8 @@ for ($i = 0; $i < $num_fields; $i++) { $_form_params['field_default_orig[' . $i . ']'] = (isset($row['Default']) ? $row['Default'] : ''); } - $content_cells[$i][$ci] = PMA_getHtmlForColumnDefault($i, $ci, $ci_offset, + $content_cells[$i][$ci] = PMA_getHtmlForColumnDefault( + $i, $ci, $ci_offset, isset($type_upper) ? $type_upper : null, isset($default_current_timestamp) ? $default_current_timestamp : null, isset($row) ? $row : null @@ -188,13 +189,14 @@ for ($i = 0; $i < $num_fields; $i++) { $ci++; // column attribute - $content_cells[$i][$ci] = PMA_getHtmlForColumnAttribute($i, $ci, $ci_offset, + $content_cells[$i][$ci] = PMA_getHtmlForColumnAttribute( + $i, $ci, $ci_offset, isset($extracted_columnspec) ? $extracted_columnspec : null, isset($row) ? $row : null, isset($submit_attribute) ? $submit_attribute : null, isset($analyzed_sql) ? $analyzed_sql : null, isset($submit_default_current_timestamp) - ? $submit_default_current_timestamp : null + ? $submit_default_current_timestamp : null ); $ci++; @@ -208,14 +210,14 @@ for ($i = 0; $i < $num_fields; $i++) { // See my other comment about this 'if'. if (!$is_backup) { $content_cells[$i][$ci] = PMA_getHtmlForColumnIndexes( - $i, $ci, $ci_offset, $row + $i, $ci, $ci_offset, $row ); $ci++; } // end if ($action ==...) // column auto_increment $content_cells[$i][$ci] = PMA_getHtmlForColumnAutoIncrement( - $i, $ci, $ci_offset, $row + $i, $ci, $ci_offset, $row ); $ci++; @@ -251,8 +253,8 @@ for ($i = 0; $i < $num_fields; $i++) { // column Transformation options $content_cells[$i][$ci] = PMA_getHtmlForTransformationOption( - $i, $ci, $ci_offset, isset($row) ? $row : null, - isset($mime_map) ? $mime_map : null + $i, $ci, $ci_offset, isset($row) ? $row : null, + isset($mime_map) ? $mime_map : null ); } } // end for diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index d1ca2c2818..1ca3bf27ba 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -519,29 +519,29 @@ function PMA_handleRegeneration($submit_fulltext, $comments_map, $mime_map) function PMA_getRowDataForFieldsMetaSet($row, $isDefault) { switch ($row['Default']) { - case null: - if ($row['Null'] == 'YES') { - $row['DefaultType'] = 'NULL'; - $row['DefaultValue'] = ''; - // SHOW FULL COLUMNS does not report the case - // when there is a DEFAULT value which is empty so we need to use the - // results of SHOW CREATE TABLE - } elseif ($isDefault) { - $row['DefaultType'] = 'USER_DEFINED'; - $row['DefaultValue'] = $row['Default']; - } else { - $row['DefaultType'] = 'NONE'; - $row['DefaultValue'] = ''; - } - break; - case 'CURRENT_TIMESTAMP': - $row['DefaultType'] = 'CURRENT_TIMESTAMP'; + case null: + if ($row['Null'] == 'YES') { + $row['DefaultType'] = 'NULL'; $row['DefaultValue'] = ''; - break; - default: + // SHOW FULL COLUMNS does not report the case + // when there is a DEFAULT value which is empty so we need to use the + // results of SHOW CREATE TABLE + } elseif ($isDefault) { $row['DefaultType'] = 'USER_DEFINED'; $row['DefaultValue'] = $row['Default']; - break; + } else { + $row['DefaultType'] = 'NONE'; + $row['DefaultValue'] = ''; + } + break; + case 'CURRENT_TIMESTAMP': + $row['DefaultType'] = 'CURRENT_TIMESTAMP'; + $row['DefaultValue'] = ''; + break; + default: + $row['DefaultType'] = 'USER_DEFINED'; + $row['DefaultValue'] = $row['Default']; + break; } return $row; @@ -550,10 +550,10 @@ function PMA_getRowDataForFieldsMetaSet($row, $isDefault) /** * Function to get html for the column name * - * @param int $i field number - * @param int $ci cell index - * @param int $ci_offset cell index offset - * @param array $row row + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param array $row row * * @return string */ @@ -572,10 +572,11 @@ function PMA_getHtmlForColumnName($i, $ci, $ci_offset, $row) /** * Function to get html for the column type * - * @param int $i field number - * @param int $ci cell index - * @param int $ci_offset cell index offset - * + * @param int $i field number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param string $type_upper type inuppercase + * * @return string */ function PMA_getHtmlForColumnType($i, $ci, $ci_offset, $type_upper) @@ -916,11 +917,12 @@ function PMA_getHtmlForColumnAttribute($i, $ci, $ci_offset, $extracted_columnspe // here, we have a TIMESTAMP that SHOW FULL COLUMNS reports as having the // NULL attribute, but SHOW CREATE TABLE says the contrary. Believe // the latter. + $create_table_fields = $analyzed_sql[0]['create_table_fields']; if (PMA_MYSQL_INT_VERSION < 50025 && isset($row['Field']) - && isset($analyzed_sql[0]['create_table_fields'][$row['Field']]['type']) - && $analyzed_sql[0]['create_table_fields'][$row['Field']]['type'] == 'TIMESTAMP' - && $analyzed_sql[0]['create_table_fields'][$row['Field']]['timestamp_not_null'] == true + && isset($create_table_fields[$row['Field']]['type']) + && $create_table_fields[$row['Field']]['type'] == 'TIMESTAMP' + && $create_table_fields[$row['Field']]['timestamp_not_null'] == true ) { $row['Null'] = ''; } @@ -928,12 +930,12 @@ function PMA_getHtmlForColumnAttribute($i, $ci, $ci_offset, $extracted_columnspe // MySQL 4.1.2+ TIMESTAMP options // (if on_update_current_timestamp is set, then it's TRUE) if (isset($row['Field']) - && isset($analyzed_sql[0]['create_table_fields'][$row['Field']]['on_update_current_timestamp']) + && isset($create_table_fields[$row['Field']]['on_update_current_timestamp']) ) { $attribute = 'on update CURRENT_TIMESTAMP'; } if ((isset($row['Field']) - && isset($analyzed_sql[0]['create_table_fields'][$row['Field']]['default_current_timestamp'])) + && isset($create_table_fields[$row['Field']]['default_current_timestamp'])) || (isset($submit_default_current_timestamp) && $submit_default_current_timestamp) ) { From 6d1788e455e2ddfcc9ab6be2fcc300df7270da54 Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Wed, 7 Aug 2013 10:05:34 +0530 Subject: [PATCH 19/27] added missing parameter --- libraries/tbl_columns_definition_form.lib.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index 1ca3bf27ba..c8c07c7797 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -366,11 +366,12 @@ function PMA_getMoveColumns($db, $table) /** * Function to get row data for regenerating previous when error occured. * + * @param int $i coulmn number * @param array $submit_fulltext submit full text * * @return array */ -function PMA_getRowDataForRegeneration($submit_fulltext) +function PMA_getRowDataForRegeneration($i, $submit_fulltext) { $row['Field'] = isset($_REQUEST['field_name'][$i]) ? $_REQUEST['field_name'][$i] @@ -442,9 +443,11 @@ function PMA_getRowDataForRegeneration($submit_fulltext) /** * Function to get submit properties for regenerating previous when error occured. * + * @param int $i coulmn number + * * @return array */ -function PMA_getSubmitPropertiesForRegeneration() +function PMA_getSubmitPropertiesForRegeneration($i) { $submit_length = (isset($_REQUEST['field_length'][$i]) @@ -469,13 +472,14 @@ function PMA_getSubmitPropertiesForRegeneration() * An error happened with previous inputs, so we will restore the data * to embed it once again in this form. * + * @param int $i coulmn number * @param array $submit_fulltext submit full text * @param array $comments_map comments map * @param array $mime_map mime map * * @return array */ -function PMA_handleRegeneration($submit_fulltext, $comments_map, $mime_map) +function PMA_handleRegeneration($i, $submit_fulltext, $comments_map, $mime_map) { $row = PMA_getRowDataForRegeneration( isset($submit_fulltext) ? $submit_fulltext : null From da87506972c1ec69389e7c2db7bba9281608a7eb Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Wed, 7 Aug 2013 11:07:44 +0530 Subject: [PATCH 20/27] renamed variables to better reflect their purpose. --- libraries/tbl_columns_definition_form.inc.php | 96 ++-- libraries/tbl_columns_definition_form.lib.php | 440 +++++++++--------- 2 files changed, 273 insertions(+), 263 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 529b27ab9f..7c9a150464 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -80,26 +80,26 @@ if (isset($field_fulltext) && is_array($field_fulltext)) { } } -for ($i = 0; $i < $num_fields; $i++) { +for ($columnNumber = 0; $columnNumber < $num_fields; $columnNumber++) { if (! empty($regenerate)) { - list($row, $submit_length, $submit_attribute, + list($columnMeta, $submit_length, $submit_attribute, $submit_default_current_timestamp, $comments_map, $mime_map) = PMA_handleRegeneration( isset($available_mime) ? $mime_map : null, $comments_map, $mime_map ); - } elseif (isset($fields_meta[$i])) { - $row = PMA_getRowDataForFieldsMetaSet( - $fields_meta[$i], isset($analyzed_sql[0]['create_table_fields'] - [$fields_meta[$i]['Field']]['default_value']) + } elseif (isset($fields_meta[$columnNumber])) { + $columnMeta = PMA_getRowDataForFieldsMetaSet( + $fields_meta[$columnNumber], isset($analyzed_sql[0]['create_table_fields'] + [$fields_meta[$columnNumber]['Field']]['default_value']) ); } - if (isset($row['Type'])) { - $extracted_columnspec = PMA_Util::extractColumnSpec($row['Type']); + if (isset($columnMeta['Type'])) { + $extracted_columnspec = PMA_Util::extractColumnSpec($columnMeta['Type']); if ($extracted_columnspec['type'] == 'bit') { - $row['Default'] - = PMA_Util::convertBitDefaultValue($row['Default']); + $columnMeta['Default'] + = PMA_Util::convertBitDefaultValue($columnMeta['Default']); } } @@ -111,22 +111,22 @@ for ($i = 0; $i < $num_fields; $i++) { // old column name if ($is_backup) { - if (isset($row['Field'])) { - $_form_params['field_orig[' . $i . ']'] = $row['Field']; + if (isset($columnMeta['Field'])) { + $_form_params['field_orig[' . $columnNumber . ']'] = $columnMeta['Field']; } else { - $_form_params['field_orig[' . $i . ']'] = ''; + $_form_params['field_orig[' . $columnNumber . ']'] = ''; } } // column name - $content_cells[$i][$ci] = PMA_getHtmlForColumnName( - $i, $ci, $ci_offset, isset($row) ? $row : null + $content_cells[$columnNumber][$ci] = PMA_getHtmlForColumnName( + $columnNumber, $ci, $ci_offset, isset($columnMeta) ? $columnMeta : null ); $ci++; - if (empty($row['Type'])) { + if (empty($columnMeta['Type'])) { // creating a column - $row['Type'] = ''; + $columnMeta['Type'] = ''; $type = ''; $length = ''; } else { @@ -151,48 +151,48 @@ for ($i = 0; $i < $num_fields; $i++) { $type_upper = strtoupper($type); // column type - $content_cells[$i][$ci] = PMA_getHtmlForColumnType( - $i, $ci, $ci_offset, $type_upper + $content_cells[$columnNumber][$ci] = PMA_getHtmlForColumnType( + $columnNumber, $ci, $ci_offset, $type_upper ); $ci++; // old column length if ($is_backup) { - $_form_params['field_length_orig[' . $i . ']'] = $length; + $_form_params['field_length_orig[' . $columnNumber . ']'] = $length; } // column length - $content_cells[$i][$ci] = PMA_getHtmlForColumnLength( - $i, $ci, $ci_offset, $length_values_input_size, $length + $content_cells[$columnNumber][$ci] = PMA_getHtmlForColumnLength( + $columnNumber, $ci, $ci_offset, $length_values_input_size, $length ); $ci++; // column default // old column default if ($is_backup) { - $_form_params['field_default_orig[' . $i . ']'] - = (isset($row['Default']) ? $row['Default'] : ''); + $_form_params['field_default_orig[' . $columnNumber . ']'] + = (isset($columnMeta['Default']) ? $columnMeta['Default'] : ''); } - $content_cells[$i][$ci] = PMA_getHtmlForColumnDefault( - $i, $ci, $ci_offset, + $content_cells[$columnNumber][$ci] = PMA_getHtmlForColumnDefault( + $columnNumber, $ci, $ci_offset, isset($type_upper) ? $type_upper : null, isset($default_current_timestamp) ? $default_current_timestamp : null, - isset($row) ? $row : null + isset($columnMeta) ? $columnMeta : null ); $ci++; // column collation - $content_cells[$i][$ci] = PMA_getHtmlForColumnCollation( - $i, $ci, $ci_offset, $row + $content_cells[$columnNumber][$ci] = PMA_getHtmlForColumnCollation( + $columnNumber, $ci, $ci_offset, $columnMeta ); $ci++; // column attribute - $content_cells[$i][$ci] = PMA_getHtmlForColumnAttribute( - $i, $ci, $ci_offset, + $content_cells[$columnNumber][$ci] = PMA_getHtmlForColumnAttribute( + $columnNumber, $ci, $ci_offset, isset($extracted_columnspec) ? $extracted_columnspec : null, - isset($row) ? $row : null, + isset($columnMeta) ? $columnMeta : null, isset($submit_attribute) ? $submit_attribute : null, isset($analyzed_sql) ? $analyzed_sql : null, isset($submit_default_current_timestamp) @@ -201,36 +201,36 @@ for ($i = 0; $i < $num_fields; $i++) { $ci++; // column NULL - $content_cells[$i][$ci] = PMA_getHtmlForColumnNull( - $i, $ci, $ci_offset, isset($row) ? $row : null + $content_cells[$columnNumber][$ci] = PMA_getHtmlForColumnNull( + $columnNumber, $ci, $ci_offset, isset($columnMeta) ? $columnMeta : null ); $ci++; // column indexes // See my other comment about this 'if'. if (!$is_backup) { - $content_cells[$i][$ci] = PMA_getHtmlForColumnIndexes( - $i, $ci, $ci_offset, $row + $content_cells[$columnNumber][$ci] = PMA_getHtmlForColumnIndexes( + $columnNumber, $ci, $ci_offset, $columnMeta ); $ci++; } // end if ($action ==...) // column auto_increment - $content_cells[$i][$ci] = PMA_getHtmlForColumnAutoIncrement( - $i, $ci, $ci_offset, $row + $content_cells[$columnNumber][$ci] = PMA_getHtmlForColumnAutoIncrement( + $columnNumber, $ci, $ci_offset, $columnMeta ); $ci++; // column comments - $content_cells[$i][$ci] = PMA_getHtmlForColumnComment( - $i, $ci, $ci_offset, isset($row) ? $row : null, $comments_map + $content_cells[$columnNumber][$ci] = PMA_getHtmlForColumnComment( + $columnNumber, $ci, $ci_offset, isset($columnMeta) ? $columnMeta : null, $comments_map ); $ci++; // move column if (isset($fields_meta)) { - $content_cells[$i][$ci] = PMA_getHtmlForMoveColumn( - $i, $ci, $ci_offset, $move_columns, $row + $content_cells[$columnNumber][$ci] = PMA_getHtmlForMoveColumn( + $columnNumber, $ci, $ci_offset, $move_columns, $columnMeta ); $ci++; } @@ -240,20 +240,20 @@ for ($i = 0; $i < $num_fields; $i++) { && $cfgRelation['commwork'] ) { // Column Mime-type - $content_cells[$i][$ci] = PMA_getHtmlForMimeType( - $i, $ci, $ci_offset, $available_mime, $row, $mime_map + $content_cells[$columnNumber][$ci] = PMA_getHtmlForMimeType( + $columnNumber, $ci, $ci_offset, $available_mime, $columnMeta, $mime_map ); $ci++; // Column Browser transformation - $content_cells[$i][$ci] = PMA_getHtmlForBrowserTransformation( - $i, $ci, $ci_offset, $available_mime, $row, $mime_map + $content_cells[$columnNumber][$ci] = PMA_getHtmlForBrowserTransformation( + $columnNumber, $ci, $ci_offset, $available_mime, $columnMeta, $mime_map ); $ci++; // column Transformation options - $content_cells[$i][$ci] = PMA_getHtmlForTransformationOption( - $i, $ci, $ci_offset, isset($row) ? $row : null, + $content_cells[$columnNumber][$ci] = PMA_getHtmlForTransformationOption( + $columnNumber, $ci, $ci_offset, isset($columnMeta) ? $columnMeta : null, isset($mime_map) ? $mime_map : null ); } diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index c8c07c7797..db5e757dae 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -366,100 +366,100 @@ function PMA_getMoveColumns($db, $table) /** * Function to get row data for regenerating previous when error occured. * - * @param int $i coulmn number + * @param int $columnNumber coulmn number * @param array $submit_fulltext submit full text * * @return array */ -function PMA_getRowDataForRegeneration($i, $submit_fulltext) +function PMA_getRowDataForRegeneration($columnNumber, $submit_fulltext) { - $row['Field'] = isset($_REQUEST['field_name'][$i]) - ? $_REQUEST['field_name'][$i] + $columnMeta['Field'] = isset($_REQUEST['field_name'][$columnNumber]) + ? $_REQUEST['field_name'][$columnNumber] : false; - $row['Type'] = isset($_REQUEST['field_type'][$i]) - ? $_REQUEST['field_type'][$i] + $columnMeta['Type'] = isset($_REQUEST['field_type'][$columnNumber]) + ? $_REQUEST['field_type'][$columnNumber] : false; - $row['Collation'] = isset($_REQUEST['field_collation'][$i]) - ? $_REQUEST['field_collation'][$i] + $columnMeta['Collation'] = isset($_REQUEST['field_collation'][$columnNumber]) + ? $_REQUEST['field_collation'][$columnNumber] : ''; - $row['Null'] = isset($_REQUEST['field_null'][$i]) - ? $_REQUEST['field_null'][$i] + $columnMeta['Null'] = isset($_REQUEST['field_null'][$columnNumber]) + ? $_REQUEST['field_null'][$columnNumber] : ''; - if (isset($_REQUEST['field_key'][$i]) - && $_REQUEST['field_key'][$i] == 'primary_' . $i + if (isset($_REQUEST['field_key'][$columnNumber]) + && $_REQUEST['field_key'][$columnNumber] == 'primary_' . $columnNumber ) { - $row['Key'] = 'PRI'; - } elseif (isset($_REQUEST['field_key'][$i]) - && $_REQUEST['field_key'][$i] == 'index_' . $i + $columnMeta['Key'] = 'PRI'; + } elseif (isset($_REQUEST['field_key'][$columnNumber]) + && $_REQUEST['field_key'][$columnNumber] == 'index_' . $columnNumber ) { - $row['Key'] = 'MUL'; - } elseif (isset($_REQUEST['field_key'][$i]) - && $_REQUEST['field_key'][$i] == 'unique_' . $i + $columnMeta['Key'] = 'MUL'; + } elseif (isset($_REQUEST['field_key'][$columnNumber]) + && $_REQUEST['field_key'][$columnNumber] == 'unique_' . $columnNumber ) { - $row['Key'] = 'UNI'; - } elseif (isset($_REQUEST['field_key'][$i]) - && $_REQUEST['field_key'][$i] == 'fulltext_' . $i + $columnMeta['Key'] = 'UNI'; + } elseif (isset($_REQUEST['field_key'][$columnNumber]) + && $_REQUEST['field_key'][$columnNumber] == 'fulltext_' . $columnNumber ) { - $row['Key'] = 'FULLTEXT'; + $columnMeta['Key'] = 'FULLTEXT'; } else { - $row['Key'] = ''; + $columnMeta['Key'] = ''; } // put None in the drop-down for Default, when someone adds a field - $row['DefaultType'] = isset($_REQUEST['field_default_type'][$i]) - ? $_REQUEST['field_default_type'][$i] + $columnMeta['DefaultType'] = isset($_REQUEST['field_default_type'][$columnNumber]) + ? $_REQUEST['field_default_type'][$columnNumber] : 'NONE'; - $row['DefaultValue'] = isset($_REQUEST['field_default_value'][$i]) - ? $_REQUEST['field_default_value'][$i] + $columnMeta['DefaultValue'] = isset($_REQUEST['field_default_value'][$columnNumber]) + ? $_REQUEST['field_default_value'][$columnNumber] : ''; - switch ($row['DefaultType']) { + switch ($columnMeta['DefaultType']) { case 'NONE' : - $row['Default'] = null; + $columnMeta['Default'] = null; break; case 'USER_DEFINED' : - $row['Default'] = $row['DefaultValue']; + $columnMeta['Default'] = $columnMeta['DefaultValue']; break; case 'NULL' : case 'CURRENT_TIMESTAMP' : - $row['Default'] = $row['DefaultType']; + $columnMeta['Default'] = $columnMeta['DefaultType']; break; } - $row['Extra'] - = (isset($_REQUEST['field_extra'][$i]) - ? $_REQUEST['field_extra'][$i] + $columnMeta['Extra'] + = (isset($_REQUEST['field_extra'][$columnNumber]) + ? $_REQUEST['field_extra'][$columnNumber] : false); - $row['Comment'] - = (isset($submit_fulltext[$i]) - && ($submit_fulltext[$i] == $i) + $columnMeta['Comment'] + = (isset($submit_fulltext[$columnNumber]) + && ($submit_fulltext[$columnNumber] == $columnNumber) ? 'FULLTEXT' : false); - return $row; + return $columnMeta; } /** * Function to get submit properties for regenerating previous when error occured. * - * @param int $i coulmn number + * @param int $columnNumber coulmn number * * @return array */ -function PMA_getSubmitPropertiesForRegeneration($i) +function PMA_getSubmitPropertiesForRegeneration($columnNumber) { $submit_length - = (isset($_REQUEST['field_length'][$i]) - ? $_REQUEST['field_length'][$i] + = (isset($_REQUEST['field_length'][$columnNumber]) + ? $_REQUEST['field_length'][$columnNumber] : false); $submit_attribute - = (isset($_REQUEST['field_attribute'][$i]) - ? $_REQUEST['field_attribute'][$i] + = (isset($_REQUEST['field_attribute'][$columnNumber]) + ? $_REQUEST['field_attribute'][$columnNumber] : false); $submit_default_current_timestamp - = (isset($_REQUEST['field_default_current_timestamp'][$i]) + = (isset($_REQUEST['field_default_current_timestamp'][$columnNumber]) ? true : false); @@ -472,42 +472,44 @@ function PMA_getSubmitPropertiesForRegeneration($i) * An error happened with previous inputs, so we will restore the data * to embed it once again in this form. * - * @param int $i coulmn number + * @param int $columnNumber coulmn number * @param array $submit_fulltext submit full text * @param array $comments_map comments map * @param array $mime_map mime map * * @return array */ -function PMA_handleRegeneration($i, $submit_fulltext, $comments_map, $mime_map) -{ - $row = PMA_getRowDataForRegeneration( +function PMA_handleRegeneration($columnNumber, $submit_fulltext, $comments_map, + $mime_map +) { + $columnMeta = PMA_getRowDataForRegeneration( isset($submit_fulltext) ? $submit_fulltext : null ); list($submit_length, $submit_attribute, $submit_default_current_timestamp) = PMA_getSubmitPropertiesForRegeneration(); - if (isset($_REQUEST['field_comments'][$i])) { - $comments_map[$row['Field']] = $_REQUEST['field_comments'][$i]; + if (isset($_REQUEST['field_comments'][$columnNumber])) { + $comments_map[$columnMeta['Field']] = $_REQUEST['field_comments'][$columnNumber]; } - if (isset($_REQUEST['field_mimetype'][$i])) { - $mime_map[$row['Field']]['mimetype'] = $_REQUEST['field_mimetype'][$i]; + if (isset($_REQUEST['field_mimetype'][$columnNumber])) { + $mime_map[$columnMeta['Field']]['mimetype'] + = $_REQUEST['field_mimetype'][$columnNumber]; } - if (isset($_REQUEST['field_transformation'][$i])) { - $mime_map[$row['Field']]['transformation'] - = $_REQUEST['field_transformation'][$i]; + if (isset($_REQUEST['field_transformation'][$columnNumber])) { + $mime_map[$columnMeta['Field']]['transformation'] + = $_REQUEST['field_transformation'][$columnNumber]; } - if (isset($_REQUEST['field_transformation_options'][$i])) { - $mime_map[$row['Field']]['transformation_options'] - = $_REQUEST['field_transformation_options'][$i]; + if (isset($_REQUEST['field_transformation_options'][$columnNumber])) { + $mime_map[$columnMeta['Field']]['transformation_options'] + = $_REQUEST['field_transformation_options'][$columnNumber]; } return array( - $row, $submit_length, $submit_attribute, $submit_default_current_timestamp, + $columnMeta, $submit_length, $submit_attribute, $submit_default_current_timestamp, $comments_map, $mime_map ); } @@ -515,59 +517,60 @@ function PMA_handleRegeneration($i, $submit_fulltext, $comments_map, $mime_map) /** * Function to get row data for $fields_meta set * - * @param array $row row - * @param bool $isDefault whether the row value is default + * @param array $columnMeta column meta + * @param bool $isDefault whether the row value is default * * @return array */ -function PMA_getRowDataForFieldsMetaSet($row, $isDefault) +function PMA_getRowDataForFieldsMetaSet($columnMeta, $isDefault) { - switch ($row['Default']) { + switch ($columnMeta['Default']) { case null: - if ($row['Null'] == 'YES') { - $row['DefaultType'] = 'NULL'; - $row['DefaultValue'] = ''; + if ($columnMeta['Null'] == 'YES') { + $columnMeta['DefaultType'] = 'NULL'; + $columnMeta['DefaultValue'] = ''; // SHOW FULL COLUMNS does not report the case // when there is a DEFAULT value which is empty so we need to use the // results of SHOW CREATE TABLE } elseif ($isDefault) { - $row['DefaultType'] = 'USER_DEFINED'; - $row['DefaultValue'] = $row['Default']; + $columnMeta['DefaultType'] = 'USER_DEFINED'; + $columnMeta['DefaultValue'] = $columnMeta['Default']; } else { - $row['DefaultType'] = 'NONE'; - $row['DefaultValue'] = ''; + $columnMeta['DefaultType'] = 'NONE'; + $columnMeta['DefaultValue'] = ''; } break; case 'CURRENT_TIMESTAMP': - $row['DefaultType'] = 'CURRENT_TIMESTAMP'; - $row['DefaultValue'] = ''; + $columnMeta['DefaultType'] = 'CURRENT_TIMESTAMP'; + $columnMeta['DefaultValue'] = ''; break; default: - $row['DefaultType'] = 'USER_DEFINED'; - $row['DefaultValue'] = $row['Default']; + $columnMeta['DefaultType'] = 'USER_DEFINED'; + $columnMeta['DefaultValue'] = $columnMeta['Default']; break; } - return $row; + return $columnMeta; } /** * Function to get html for the column name * - * @param int $i field number - * @param int $ci cell index - * @param int $ci_offset cell index offset - * @param array $row row + * @param int $columnNumber column number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param array $columnMeta column meta * * @return string */ -function PMA_getHtmlForColumnName($i, $ci, $ci_offset, $row) +function PMA_getHtmlForColumnName($columnNumber, $ci, $ci_offset, $columnMeta) { - $html = ''; return $html; @@ -576,18 +579,18 @@ function PMA_getHtmlForColumnName($i, $ci, $ci_offset, $row) /** * Function to get html for the column type * - * @param int $i field number - * @param int $ci cell index - * @param int $ci_offset cell index offset - * @param string $type_upper type inuppercase + * @param int $columnNumber column number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param string $type_upper type inuppercase * * @return string */ -function PMA_getHtmlForColumnType($i, $ci, $ci_offset, $type_upper) +function PMA_getHtmlForColumnType($columnNumber, $ci, $ci_offset, $type_upper) { - $select_id = 'field_' . $i . '_' . ($ci - $ci_offset); + $select_id = 'field_' . $columnNumber . '_' . ($ci - $ci_offset); $html = ''; @@ -597,24 +600,25 @@ function PMA_getHtmlForColumnType($i, $ci, $ci_offset, $type_upper) /** * Function to get html for transformation option * - * @param int $i field number - * @param int $ci cell index - * @param int $ci_offset cell index offset - * @param array $row row - * @param array $mime_map mime map + * @param int $columnNumber column number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param array $columnMeta column meta + * @param array $mime_map mime map * * @return string */ -function PMA_getHtmlForTransformationOption($i, $ci, $ci_offset, $row, $mime_map) -{ - $val = isset($row['Field']) - && isset($mime_map[$row['Field']]['transformation_options']) - ? htmlspecialchars($mime_map[$row['Field']]['transformation_options']) +function PMA_getHtmlForTransformationOption($columnNumber, $ci, $ci_offset, $columnMeta, + $mime_map +) { + $val = isset($columnMeta['Field']) + && isset($mime_map[$columnMeta['Field']]['transformation_options']) + ? htmlspecialchars($mime_map[$columnMeta['Field']]['transformation_options']) : ''; - $html = ''; @@ -625,27 +629,28 @@ function PMA_getHtmlForTransformationOption($i, $ci, $ci_offset, $row, $mime_map /** * Function to get html for mime type * - * @param int $i field number + * @param int $columnNumber column number * @param int $ci cell index * @param int $ci_offset cell index offset * @param array $available_mime available mime - * @param array $row row + * @param array $columnMeta column meta * @param array $mime_map mime map * * @return string */ -function PMA_getHtmlForMimeType($i, $ci, $ci_offset, - $available_mime, $row, $mime_map +function PMA_getHtmlForMimeType($columnNumber, $ci, $ci_offset, + $available_mime, $columnMeta, $mime_map ) { - $html = ''; $html .= ' '; if (is_array($available_mime['mimetype'])) { foreach ($available_mime['mimetype'] as $mimetype) { - $checked = (isset($row['Field']) - && isset($mime_map[$row['Field']]['mimetype']) - && ($mime_map[$row['Field']]['mimetype'] + $checked = (isset($columnMeta['Field']) + && isset($mime_map[$columnMetaw['Field']]['mimetype']) + && ($mime_map[$columnMeta['Field']]['mimetype'] == str_replace('/', '_', $mimetype)) ? 'selected ' : ''); @@ -663,32 +668,32 @@ function PMA_getHtmlForMimeType($i, $ci, $ci_offset, /** * Function to get html for browser transformation * - * @param int $i field number + * @param int $columnNumber column number * @param int $ci cell index * @param int $ci_offset cell index offset * @param array $available_mime available mime - * @param array $row row + * @param array $columnMeta column meta * @param array $mime_map mime map * * @return string */ -function PMA_getHtmlForBrowserTransformation($i, $ci, $ci_offset, - $available_mime, $row, $mime_map +function PMA_getHtmlForBrowserTransformation($columnNumber, $ci, $ci_offset, + $available_mime, $columnMeta, $mime_map ) { - $html = '' . ''; // find index of current column $current_index = 0; for ($mi = 0, $cols = count($move_columns); $mi < $cols; $mi++) { - if ($move_columns[$mi]->name == $row['Field']) { + if ($move_columns[$mi]->name == $columnMeta['Field']) { $current_index = $mi; break; } @@ -762,22 +768,24 @@ function PMA_getHtmlForMoveColumn($i, $ci, $ci_offset, $move_columns, $row) /** * Function to get html for column comment * - * @param int $i field number + * @param int $columnNumber column number * @param int $ci cell index * @param int $ci_offset cell index offset - * @param array $row row + * @param array $columnMeta column meta * @param array $comments_map comments map * * @return string */ -function PMA_getHtmlForColumnComment($i, $ci, $ci_offset, $row, $comments_map) -{ - $html = ''; @@ -787,18 +795,18 @@ function PMA_getHtmlForColumnComment($i, $ci, $ci_offset, $row, $comments_map) /** * Function get html for column auto increment * - * @param int $i field number - * @param int $ci cell index - * @param int $ci_offset cell index offset - * @param array $row row + * @param int $columnNumber column number + * @param int $ci cell index + * @param int $ci_offset cell index offset + * @param array $columnMeta column meta * * @return string */ -function PMA_getHtmlForColumnAutoIncrement($i, $ci, $ci_offset, $row) +function PMA_getHtmlForColumnAutoIncrement($columnNumber, $ci, $ci_offset, $columnMeta) { - $html = ''; - $html .= ''; + $html = '' - . '

'; $html .= __('ENUM or SET data too long?') . ' ' @@ -1019,17 +1029,17 @@ function PMA_getHtmlForColumnLength($i, $ci, $ci_offset, $length_values_input_si /** * Function to get html for the default column * - * @param int $i field number + * @param int $columnNumber column number * @param int $ci cell index * @param int $ci_offset cell index offset * @param string $type_upper type upper * @param string $default_current_timestamp default current timestamp - * @param array $row row + * @param array $columnMeta column meta * * @return string */ -function PMA_getHtmlForColumnDefault($i, $ci, $ci_offset, $type_upper, - $default_current_timestamp, $row +function PMA_getHtmlForColumnDefault($columnNumber, $ci, $ci_offset, $type_upper, + $default_current_timestamp, $columnMeta ) { // here we put 'NONE' as the default value of drop-down; otherwise // users would have problems if they forget to enter the default @@ -1044,23 +1054,23 @@ function PMA_getHtmlForColumnDefault($i, $ci, $ci_offset, $type_upper, // for a TIMESTAMP, do not show the string "CURRENT_TIMESTAMP" as a default value if ($type_upper == 'TIMESTAMP' && ! empty($default_current_timestamp) - && isset($row['Default']) + && isset($columnMeta['Default']) ) { - $row['Default'] = ''; + $columnMeta['Default'] = ''; } if ($type_upper == 'BIT') { - $row['DefaultValue'] - = PMA_Util::convertBitDefaultValue($row['DefaultValue']); + $columnMeta['DefaultValue'] + = PMA_Util::convertBitDefaultValue($columnMeta['DefaultValue']); } - $html = ''; $html .= '
'; $html .= ''; From c89d2b394254b107259b670ce8c56faf0d9dd01c Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Wed, 7 Aug 2013 11:08:30 +0530 Subject: [PATCH 21/27] renamed function --- libraries/tbl_columns_definition_form.inc.php | 2 +- libraries/tbl_columns_definition_form.lib.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 7c9a150464..520ae1a39b 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -89,7 +89,7 @@ for ($columnNumber = 0; $columnNumber < $num_fields; $columnNumber++) { $comments_map, $mime_map ); } elseif (isset($fields_meta[$columnNumber])) { - $columnMeta = PMA_getRowDataForFieldsMetaSet( + $columnMeta = PMA_getColumnMetaForDefault( $fields_meta[$columnNumber], isset($analyzed_sql[0]['create_table_fields'] [$fields_meta[$columnNumber]['Field']]['default_value']) ); diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index db5e757dae..b6e271c743 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -522,7 +522,7 @@ function PMA_handleRegeneration($columnNumber, $submit_fulltext, $comments_map, * * @return array */ -function PMA_getRowDataForFieldsMetaSet($columnMeta, $isDefault) +function PMA_getColumnMetaForDefault($columnMeta, $isDefault) { switch ($columnMeta['Default']) { case null: From 632689f7390cf8baa759a4013aac9b4089aca70c Mon Sep 17 00:00:00 2001 From: Spun Nakandala Date: Wed, 7 Aug 2013 23:45:48 +0530 Subject: [PATCH 22/27] extracted more smaller methods --- libraries/tbl_columns_definition_form.lib.php | 114 +++++++++++++----- 1 file changed, 86 insertions(+), 28 deletions(-) diff --git a/libraries/tbl_columns_definition_form.lib.php b/libraries/tbl_columns_definition_form.lib.php index b6e271c743..1e51a8678e 100644 --- a/libraries/tbl_columns_definition_form.lib.php +++ b/libraries/tbl_columns_definition_form.lib.php @@ -830,35 +830,13 @@ function PMA_getHtmlForColumnIndexes($columnNumber, $ci, $ci_offset, $columnMeta $html = '' - . '

'; $html .= __('ENUM or SET data too long?') . ' ' @@ -1109,7 +1123,8 @@ function PMA_getHtmlForColumnDefault($columnNumber, $ci, $ci_offset, $type_upper 'CURRENT_TIMESTAMP' => 'CURRENT_TIMESTAMP', ); - // for a TIMESTAMP, do not show the string "CURRENT_TIMESTAMP" as a default value + // for a TIMESTAMP, do not show the string "CURRENT_TIMESTAMP" as a default + // value if ($type_upper == 'TIMESTAMP' && ! empty($default_current_timestamp) && isset($columnMeta['Default']) @@ -1128,7 +1143,9 @@ function PMA_getHtmlForColumnDefault($columnNumber, $ci, $ci_offset, $type_upper foreach ($default_options as $key => $value) { $html .= '