<?php /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * Central Columns view/edit * * @package PhpMyAdmin */ use PhpMyAdmin\CentralColumns; use PhpMyAdmin\Core; use PhpMyAdmin\Message; use PhpMyAdmin\Response; use PhpMyAdmin\Url; /** * Gets some core libraries */ require_once 'libraries/common.inc.php'; $centralColumns = new CentralColumns($GLOBALS['dbi']); if (isset($_POST['edit_save']) || isset($_POST['add_new_column'])) { $col_name = $_POST['col_name']; if (isset($_POST['edit_save'])) { $orig_col_name = $_POST['orig_col_name']; } $col_default = $_POST['col_default']; if ($col_default == 'NONE' && $_POST['col_default_sel'] != 'USER_DEFINED') { $col_default = ""; } $col_extra = isset($_POST['col_extra']) ? $_POST['col_extra'] : ''; $col_isNull = isset($_POST['col_isNull'])?1:0; $col_length = $_POST['col_length']; $col_attribute = $_POST['col_attribute']; $col_type = $_POST['col_type']; $collation = $_POST['collation']; if (isset($orig_col_name) && $orig_col_name) { echo $centralColumns->updateOneColumn( $db, $orig_col_name, $col_name, $col_type, $col_attribute, $col_length, $col_isNull, $collation, $col_extra, $col_default ); exit; } else { $tmp_msg = $centralColumns->updateOneColumn( $db, "", $col_name, $col_type, $col_attribute, $col_length, $col_isNull, $collation, $col_extra, $col_default ); } } if (isset($_POST['populateColumns'])) { $selected_tbl = $_POST['selectedTable']; echo $centralColumns->getHtmlForColumnDropdown( $db, $selected_tbl ); exit; } if (isset($_POST['getColumnList'])) { echo $centralColumns->getListRaw( $db, $_POST['cur_table'] ); exit; } if (isset($_POST['add_column'])) { $selected_col = array(); $selected_tbl = $_POST['table-select']; $selected_col[] = $_POST['column-select']; $tmp_msg = $centralColumns->syncUniqueColumns( $selected_col, false, $selected_tbl ); } $response = Response::getInstance(); $header = $response->getHeader(); $scripts = $header->getScripts(); $scripts->addFile('vendor/jquery/jquery.uitablefilter.js'); $scripts->addFile('vendor/jquery/jquery.tablesorter.js'); $scripts->addFile('db_central_columns.js'); $cfgCentralColumns = $centralColumns->getParams(); $pmadb = $cfgCentralColumns['db']; $pmatable = $cfgCentralColumns['table']; $max_rows = intval($GLOBALS['cfg']['MaxRows']); if (isset($_POST['edit_central_columns_page'])) { $selected_fld = $_POST['selected_fld']; $selected_db = $_POST['db']; $edit_central_column_page = $centralColumns->getHtmlForEditingPage( $selected_fld, $selected_db ); $response->addHTML($edit_central_column_page); exit; } if (isset($_POST['multi_edit_central_column_save'])) { $message = $centralColumns->updateMultipleColumn(); if (!is_bool($message)) { $response->setRequestStatus(false); $response->addJSON('message', $message); } } if (isset($_POST['delete_save'])) { $col_name = array(); parse_str($_POST['col_name'], $col_name); $tmp_msg = $centralColumns->deleteColumnsFromList( $col_name['selected_fld'], false ); } if (!empty($_POST['total_rows']) && Core::isValid($_POST['total_rows'], 'integer') ) { $total_rows = $_POST['total_rows']; } else { $total_rows = $centralColumns->getCount($db); } if (Core::isValid($_POST['pos'], 'integer')) { $pos = intval($_POST['pos']); } else { $pos = 0; } $addNewColumn = $centralColumns->getHtmlForAddNewColumn($db, $total_rows); $response->addHTML($addNewColumn); if ($total_rows <= 0) { $response->addHTML( '<fieldset>' . __( 'The central list of columns for the current database is empty.' ) . '</fieldset>' ); $columnAdd = $centralColumns->getHtmlForAddColumn($total_rows, $pos, $db); $response->addHTML($columnAdd); exit; } $table_navigation_html = $centralColumns->getHtmlForTableNavigation( $total_rows, $pos, $db ); $response->addHTML($table_navigation_html); $columnAdd = $centralColumns->getHtmlForAddColumn($total_rows, $pos, $db); $response->addHTML($columnAdd); $deleteRowForm = '<form method="post" id="del_form" action="db_central_columns.php">' . Url::getHiddenInputs( $db ) . '<input id="del_col_name" type="hidden" name="col_name" value="">' . '<input type="hidden" name="pos" value="' . $pos . '">' . '<input type="hidden" name="delete_save" value="delete"></form>'; $response->addHTML($deleteRowForm); $table_struct = '<div id="tableslistcontainer">' . '<form name="tableslistcontainer">' . '<table id="table_columns" class="tablesorter" ' . 'class="data">'; $response->addHTML($table_struct); $tableheader = $centralColumns->getTableHeader( 'column_heading', __('Click to sort.'), 2 ); $response->addHTML($tableheader); $result = $centralColumns->getColumnsList($db, $pos, $max_rows); $row_num = 0; foreach ($result as $row) { $tableHtmlRow = $centralColumns->getHtmlForTableRow( $row, $row_num, $db ); $response->addHTML($tableHtmlRow); $row_num++; } $response->addHTML('</table>'); $tablefooter = $centralColumns->getTableFooter($pmaThemeImage, $text_dir); $response->addHTML($tablefooter); $response->addHTML('</form></div>'); $message = Message::success( sprintf(__('Showing rows %1$s - %2$s.'), ($pos + 1), ($pos + count($result))) ); if (isset($tmp_msg) && $tmp_msg !== true) { $message = $tmp_msg; }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
doc | Folder | 0755 |
|
|
js | Folder | 0755 |
|
|
libraries | Folder | 0755 |
|
|
locale | Folder | 0755 |
|
|
sql | Folder | 0755 |
|
|
templates | Folder | 0755 |
|
|
themes | Folder | 0755 |
|
|
ajax.php | File | 1.52 KB | 0644 |
|
autoload.php | File | 43.03 KB | 0644 |
|
browse_foreigners.php | File | 1.71 KB | 0644 |
|
changelog.php | File | 3.12 KB | 0644 |
|
chk_rel.php | File | 856 B | 0644 |
|
config.sample.inc.php | File | 4.41 KB | 0644 |
|
db_central_columns.php | File | 5.54 KB | 0644 |
|
db_datadict.php | File | 5.74 KB | 0644 |
|
db_designer.php | File | 7.53 KB | 0644 |
|
db_events.php | File | 271 B | 0644 |
|
db_export.php | File | 4.52 KB | 0644 |
|
db_import.php | File | 899 B | 0644 |
|
db_multi_table_query.php | File | 1.01 KB | 0644 |
|
db_operations.php | File | 9.63 KB | 0644 |
|
db_qbe.php | File | 4.75 KB | 0644 |
|
db_routines.php | File | 365 B | 0644 |
|
db_search.php | File | 1.95 KB | 0644 |
|
db_sql.php | File | 952 B | 0644 |
|
db_sql_autocomplete.php | File | 746 B | 0644 |
|
db_sql_format.php | File | 485 B | 0644 |
|
db_structure.php | File | 1011 B | 0644 |
|
db_tracking.php | File | 4.31 KB | 0644 |
|
db_triggers.php | File | 273 B | 0644 |
|
error_report.php | File | 4.5 KB | 0644 |
|
export.php | File | 15.55 KB | 0644 |
|
favicon.ico | File | 21.96 KB | 0644 |
|
gis_data_editor.php | File | 15.61 KB | 0644 |
|
import.php | File | 23.41 KB | 0644 |
|
import_status.php | File | 3.38 KB | 0644 |
|
index.php | File | 19.78 KB | 0644 |
|
license.php | File | 894 B | 0644 |
|
lint.php | File | 1.4 KB | 0644 |
|
logout.php | File | 311 B | 0644 |
|
navigation.php | File | 2.25 KB | 0644 |
|
normalization.php | File | 4.05 KB | 0644 |
|
phpinfo.php | File | 507 B | 0644 |
|
phpmyadmin.css.php | File | 740 B | 0644 |
|
prefs_forms.php | File | 2.43 KB | 0644 |
|
prefs_manage.php | File | 14.02 KB | 0644 |
|
prefs_twofactor.php | File | 1.56 KB | 0644 |
|
print.css | File | 1.18 KB | 0644 |
|
schema_export.php | File | 653 B | 0644 |
|
server_binlog.php | File | 785 B | 0644 |
|
server_collations.php | File | 818 B | 0644 |
|
server_databases.php | File | 798 B | 0644 |
|
server_engines.php | File | 784 B | 0644 |
|
server_export.php | File | 1.06 KB | 0644 |
|
server_import.php | File | 634 B | 0644 |
|
server_plugins.php | File | 784 B | 0644 |
|
server_privileges.php | File | 13.85 KB | 0644 |
|
server_replication.php | File | 2.38 KB | 0644 |
|
server_sql.php | File | 698 B | 0644 |
|
server_status.php | File | 897 B | 0644 |
|
server_status_advisor.php | File | 862 B | 0644 |
|
server_status_monitor.php | File | 2.89 KB | 0644 |
|
server_status_processes.php | File | 1.83 KB | 0644 |
|
server_status_queries.php | File | 1.39 KB | 0644 |
|
server_status_variables.php | File | 1.53 KB | 0644 |
|
server_user_groups.php | File | 1.83 KB | 0644 |
|
server_variables.php | File | 798 B | 0644 |
|
show_config_errors.php | File | 1.06 KB | 0644 |
|
sql.php | File | 6.2 KB | 0644 |
|
tbl_addfield.php | File | 3.67 KB | 0644 |
|
tbl_change.php | File | 6.19 KB | 0644 |
|
tbl_chart.php | File | 972 B | 0644 |
|
tbl_create.php | File | 3.29 KB | 0644 |
|
tbl_export.php | File | 2.37 KB | 0644 |
|
tbl_find_replace.php | File | 999 B | 0644 |
|
tbl_get_field.php | File | 1.72 KB | 0644 |
|
tbl_gis_visualization.php | File | 1.5 KB | 0644 |
|
tbl_import.php | File | 684 B | 0644 |
|
tbl_indexes.php | File | 1.37 KB | 0644 |
|
tbl_operations.php | File | 15.08 KB | 0644 |
|
tbl_recent_favorite.php | File | 452 B | 0644 |
|
tbl_relation.php | File | 2.32 KB | 0644 |
|
tbl_replace.php | File | 16.57 KB | 0644 |
|
tbl_row_action.php | File | 4.89 KB | 0644 |
|
tbl_select.php | File | 1.1 KB | 0644 |
|
tbl_sql.php | File | 1.15 KB | 0644 |
|
tbl_structure.php | File | 1.99 KB | 0644 |
|
tbl_tracking.php | File | 5.66 KB | 0644 |
|
tbl_triggers.php | File | 141 B | 0644 |
|
tbl_zoom_select.php | File | 1.02 KB | 0644 |
|
themes.php | File | 956 B | 0644 |
|
transformation_overview.php | File | 1.87 KB | 0644 |
|
transformation_wrapper.php | File | 4.51 KB | 0644 |
|
url.php | File | 1.27 KB | 0644 |
|
user_password.php | File | 1.89 KB | 0644 |
|
version_check.php | File | 1.06 KB | 0644 |
|
view_create.php | File | 6.45 KB | 0644 |
|
view_operations.php | File | 3.78 KB | 0644 |
|