diff --git a/db_export.php b/db_export.php index 2b2fde41db..1b86a328c1 100644 --- a/db_export.php +++ b/db_export.php @@ -85,6 +85,6 @@ $multi_values .= "\n"; $multi_values .= ''; $export_type = 'database'; -require_once 'libraries/display_export.lib.php'; +require_once 'libraries/display_export.inc.php'; ?> diff --git a/libraries/DisplayResults.class.php b/libraries/DisplayResults.class.php index dbba518ba5..c7eead24be 100644 --- a/libraries/DisplayResults.class.php +++ b/libraries/DisplayResults.class.php @@ -5279,7 +5279,7 @@ class PMA_DisplayResults // Export link // (the url_query has extra parameters that won't be used to export) - // (the single_table parameter is used in display_export.lib.php + // (the single_table parameter is used in display_export.inc.php // to hide the SQL and the structure export dialogs) // If the parser found a PROCEDURE clause // (most probably PROCEDURE ANALYSE()) it makes no sense to diff --git a/libraries/display_export.inc.php b/libraries/display_export.inc.php new file mode 100644 index 0000000000..5f71e68640 --- /dev/null +++ b/libraries/display_export.inc.php @@ -0,0 +1,72 @@ + $export_type, + 'single_table' => isset($single_table) + ) +); + +/* Fail if we didn't find any plugin */ +if (empty($export_list)) { + PMA_Message::error( + __('Could not load export plugins, please check your installation!') + )->display(); + exit; +} + +$html = '
'; + +//output Hidden Inputs +$single_table_str = isset($single_table)? $single_table : ''; +$sql_query_str = isset($sql_query)? $sql_query : ''; +$html .= PMA_getHtmlForHiddenInput( + $export_type, + $db, + $table, + $single_table_str, + $sql_query_str +); + +//output Export Options +$num_tables_str = isset($num_tables)? $num_tables : ''; +$unlim_num_rows_str = isset($unlim_num_rows)? $unlim_num_rows : ''; +$multi_values_str = isset($multi_values)? $multi_values : ''; +$html .= PMA_getHtmlForExportOptions( + $export_type, + $db, + $table, + $multi_values_str, + $num_tables_str, + $export_list, + $unlim_num_rows_str +); + +$html .= '
'; + +$response = PMA_Response::getInstance(); +$response->addHTML($html); diff --git a/libraries/display_export.lib.php b/libraries/display_export.lib.php index baa83c6db0..9fd9aa4678 100644 --- a/libraries/display_export.lib.php +++ b/libraries/display_export.lib.php @@ -1,72 +1,708 @@ '; + $multi_values .= ''; + $multi_values .= __('Select All'); + $multi_values .= ''; + $multi_values .= ' / '; + $multi_values .= ''; + $multi_values .= __('Unselect All') . '
'; + + $multi_values .= ''; -/* Scan for plugins */ -$export_list = PMA_getPlugins( - "export", - 'libraries/plugins/export/', - array( - 'export_type' => $export_type, - 'single_table' => isset($single_table) - ) -); - -/* Fail if we didn't find any plugin */ -if (empty($export_list)) { - PMA_Message::error( - __('Could not load export plugins, please check your installation!') - )->display(); - exit; + return $multi_values; } -$html = '
'; +/** + * Prints Html For Export Hidden Input + * + * @param String $export_type Selected Export Type + * @param String $db Selected DB + * @param String $table Selected Table + * @param String $single_table Single Table + * @param String $sql_query Sql Query + * + * @return string + */ +function PMA_getHtmlForHiddenInput( + $export_type, $db, $table, $single_table, $sql_query +) { + global $cfg; + $html = ""; + if ($export_type == 'server') { + $html .= PMA_generate_common_hidden_inputs('', '', 1); + } elseif ($export_type == 'database') { + $html .= PMA_generate_common_hidden_inputs($db, '', 1); + } else { + $html .= PMA_generate_common_hidden_inputs($db, $table, 1); + } + + // just to keep this value for possible next display of this form after saving + // on server + if (!empty($single_table)) { + $html .= '' + . "\n"; + } + + $html .= ''; + $html .= "\n"; + + // If the export method was not set, the default is quick + if (isset($_GET['export_method'])) { + $cfg['Export']['method'] = $_GET['export_method']; + } elseif (! isset($cfg['Export']['method'])) { + $cfg['Export']['method'] = 'quick'; + } + // The export method (quick, custom or custom-no-form) + $html .= ''; + + + if (isset($_GET['sql_query'])) { + $html .= '' . "\n"; + } elseif (! empty($sql_query)) { + $html .= '' . "\n"; + } + + return $html; +} -//output Hidden Inputs -$single_table_str = isset($single_table)? $single_table : ''; -$sql_query_str = isset($sql_query)? $sql_query : ''; -$html .= PMA_getHtmlForHiddenInput( - $export_type, - $db, - $table, - $single_table_str, - $sql_query_str -); +/** + * Prints Html For Export Options Header + * + * @param String $export_type Selected Export Type + * @param String $db Selected DB + * @param String $table Selected Table + * + * @return string + */ +function PMA_getHtmlForExportOptionHeader($export_type, $db, $table) +{ + $html = ''; + + return $html; +} -//output Export Options -$num_tables_str = isset($num_tables)? $num_tables : ''; -$unlim_num_rows_str = isset($unlim_num_rows)? $unlim_num_rows : ''; -$multi_values_str = isset($multi_values)? $multi_values : ''; -$html .= PMA_getHtmlForExportOptions( - $export_type, - $db, - $table, - $multi_values_str, - $num_tables_str, - $export_list, - $unlim_num_rows_str -); +/** + * Prints Html For Export Options Method + * + * @return string + */ +function PMA_getHtmlForExportOptionsMethod() +{ + global $cfg; + if (isset($_GET['quick_or_custom'])) { + $export_method = $_GET['quick_or_custom']; + } else { + $export_method = $cfg['Export']['method']; + } + + $html = '
'; + $html .= '

' . __('Export Method:') . '

'; + $html .= '
'; + + return $html; +} -$response = PMA_Response::getInstance(); -$response->addHTML($html); +/** + * Prints Html For Export Options Format + * + * @param String $export_list Export List + * + * @return string + */ +function PMA_getHtmlForExportOptionsFormat($export_list) +{ + $html = '
'; + $html .= '

' . __('Format:') . '

'; + $html .= PMA_pluginGetChoice('Export', 'what', $export_list, 'format'); + $html .= '
'; + + $html .= '
'; + $html .= '

' . __('Format-specific options:') . '

'; + $html .= '

'; + $html .= __( + 'Scroll down to fill in the options for the selected format ' + . 'and ignore the options for other formats.' + ); + $html .= '

'; + $html .= PMA_pluginGetOptions('Export', $export_list); + $html .= '
'; + + if (function_exists('PMA_Kanji_encodingForm')) { + // Encoding setting form appended by Y.Kawada + // Japanese encoding setting + $html .= '
'; + $html .= '

' . __('Encoding Conversion:') . '

'; + $html .= PMA_Kanji_encodingForm(); + $html .= '
'; + } + + $html .= '
'; + + $html .= PMA_Util::getExternalBug( + __('SQL compatibility mode'), 'mysql', '50027', '14515' + ); + + $html .= ''; + $html .= '
'; + + return $html; +} +/** + * Prints Html For Export Options Rows + * + * @param String $db Selected DB + * @param String $table Selected Table + * @param String $unlim_num_rows Num of Rows + * + * @return string + */ +function PMA_getHtmlForExportOptionsRows($db, $table, $unlim_num_rows) +{ + $html = '
'; + $html .= '

' . __('Rows:') . '

'; + $html .= ''; + $html .= '
'; + return $html; +} + +/** + * Prints Html For Export Options Quick Export + * + * @return string + */ +function PMA_getHtmlForExportOptionsQuickExport() +{ + global $cfg; + $html = '
'; + $html .= '

' . __('Output:') . '

'; + $html .= '
'; - - return $multi_values; -} - -/** - * Prints Html For Export Hidden Input - * - * @param String $export_type Selected Export Type - * @param String $db Selected DB - * @param String $table Selected Table - * @param String $single_table Single Table - * @param String $sql_query Sql Query - * - * @return string - */ -function PMA_getHtmlForHiddenInput( - $export_type, $db, $table, $single_table, $sql_query -) { - global $cfg; - $html = ""; - if ($export_type == 'server') { - $html .= PMA_generate_common_hidden_inputs('', '', 1); - } elseif ($export_type == 'database') { - $html .= PMA_generate_common_hidden_inputs($db, '', 1); - } else { - $html .= PMA_generate_common_hidden_inputs($db, $table, 1); - } - - // just to keep this value for possible next display of this form after saving - // on server - if (!empty($single_table)) { - $html .= '' - . "\n"; - } - - $html .= ''; - $html .= "\n"; - - // If the export method was not set, the default is quick - if (isset($_GET['export_method'])) { - $cfg['Export']['method'] = $_GET['export_method']; - } elseif (! isset($cfg['Export']['method'])) { - $cfg['Export']['method'] = 'quick'; - } - // The export method (quick, custom or custom-no-form) - $html .= ''; - - - if (isset($_GET['sql_query'])) { - $html .= '' . "\n"; - } elseif (! empty($sql_query)) { - $html .= '' . "\n"; - } - - return $html; -} - -/** - * Prints Html For Export Options Header - * - * @param String $export_type Selected Export Type - * @param String $db Selected DB - * @param String $table Selected Table - * - * @return string - */ -function PMA_getHtmlForExportOptionHeader($export_type, $db, $table) -{ - $html = ''; - - return $html; -} - -/** - * Prints Html For Export Options Method - * - * @return string - */ -function PMA_getHtmlForExportOptionsMethod() -{ - global $cfg; - if (isset($_GET['quick_or_custom'])) { - $export_method = $_GET['quick_or_custom']; - } else { - $export_method = $cfg['Export']['method']; - } - - $html = '
'; - $html .= '

' . __('Export Method:') . '

'; - $html .= '
'; - - return $html; -} - -/** - * Prints Html For Export Options Format - * - * @param String $export_list Export List - * - * @return string - */ -function PMA_getHtmlForExportOptionsFormat($export_list) -{ - $html = '
'; - $html .= '

' . __('Format:') . '

'; - $html .= PMA_pluginGetChoice('Export', 'what', $export_list, 'format'); - $html .= '
'; - - $html .= '
'; - $html .= '

' . __('Format-specific options:') . '

'; - $html .= '

'; - $html .= __( - 'Scroll down to fill in the options for the selected format ' - . 'and ignore the options for other formats.' - ); - $html .= '

'; - $html .= PMA_pluginGetOptions('Export', $export_list); - $html .= '
'; - - if (function_exists('PMA_Kanji_encodingForm')) { - // Encoding setting form appended by Y.Kawada - // Japanese encoding setting - $html .= '
'; - $html .= '

' . __('Encoding Conversion:') . '

'; - $html .= PMA_Kanji_encodingForm(); - $html .= '
'; - } - - $html .= '
'; - - $html .= PMA_Util::getExternalBug( - __('SQL compatibility mode'), 'mysql', '50027', '14515' - ); - - $html .= ''; - $html .= '
'; - - return $html; -} -/** - * Prints Html For Export Options Rows - * - * @param String $db Selected DB - * @param String $table Selected Table - * @param String $unlim_num_rows Num of Rows - * - * @return string - */ -function PMA_getHtmlForExportOptionsRows($db, $table, $unlim_num_rows) -{ - $html = '
'; - $html .= '

' . __('Rows:') . '

'; - $html .= ''; - $html .= '
'; - return $html; -} - -/** - * Prints Html For Export Options Quick Export - * - * @return string - */ -function PMA_getHtmlForExportOptionsQuickExport() -{ - global $cfg; - $html = '
'; - $html .= '

' . __('Output:') . '

'; - $html .= '