'+central_column_list[db+'_'+table][i].col_name+
+ ' '+central_column_list[db+'_'+table][i].col_type;
+ if(central_column_list[db+'_'+table][i].col_length !== '') {
+ fields += '('+central_column_list[db+'_'+table][i].col_length+') ';
+ }
+ fields += central_column_list[db+'_'+table][i].col_extra+''+
+ ' | | ';
+ }
+ var result_pointer = i;
+ var search_in = '';
+ if (fields === '') {
+ fields = $.sprintf(PMA_messages.strEmptyCentralList, "'"+db+"'");
+ search_in = '';
+ }
+ var seeMore = '';
+ if (list_size > maxRows) {
+ seeMore = "";
+ }
+ var central_columns_dialog = "" +
+ "
"+
+ seeMore+
+ "
";
+
+ var width = parseInt(
+ (parseInt($('html').css('font-size'), 10) / 13) * 500,
+ 10
+ );
+ if (! width) {
+ width = 500;
+ }
+ var buttonOptions = {};
+ var $central_columns_dialog = $(central_columns_dialog).dialog({
+ minWidth: width,
+ modal: true,
+ title: PMA_messages.pickColumnTitle,
+ buttons: buttonOptions,
+ open: function () {
+ $('#col_list').on("click",".pick", function(){
+ $central_columns_dialog.remove();
+ });
+ $(".filter_rows").on("keyup", function () {
+ $.uiTableFilter($("#col_list"), $(this).val());
+ });
+ $("#seeMore").click(function() {
+ fields = '';
+ min = (list_size<=maxRows+result_pointer)?list_size:maxRows+result_pointer;
+ for (i = result_pointer; i < min; i++) {
+ fields += ''+central_column_list[db+'_'+table][i].col_name+
+ ' '+central_column_list[db+'_'+table][i].col_type;
+ if(central_column_list[db+'_'+table][i].col_length !== '') {
+ fields += '('+central_column_list[db+'_'+table][i].col_length+') ';
+ }
+ fields += central_column_list[db+'_'+table][i].col_extra+''+
+ ' | |
';
+ }
+ $("#col_list").append(fields);
+ result_pointer = i;
+ if (result_pointer === list_size) {
+ $('.tblFooters').hide();
+ }
+ return false;
+ });
+ $(this).closest('.ui-dialog').find('.ui-dialog-buttonpane button:first').focus();
+ },
+ close: function () {
+ $('#col_list').off("click",".pick");
+ $(".filter_rows").off("keyup");
+ $(this).remove();
+ }
+ });
+ return false;
+ });
+
// When "add a new value" is clicked, append an empty text field
$("input.add_value").live('click', function (e) {
e.preventDefault();
diff --git a/js/messages.php b/js/messages.php
index 5c31c098f7..59b82aab48 100644
--- a/js/messages.php
+++ b/js/messages.php
@@ -275,6 +275,12 @@ $js_messages['strEdit'] = __('Edit');
$js_messages['strNotValidRowNumber'] = __('%d is not valid row number.');
$js_messages['strBrowseForeignValues'] = __('Browse foreign values');
+/* For Central list of columns */
+$js_messages['pickColumn'] = __('Pick');
+$js_messages['pickColumnTitle'] = __('Column selector');
+$js_messages['searchList'] = __('Search this list');
+$js_messages['strEmptyCentralList'] = __('No columns in the central list. Make sure Central columns list for database %s has columns that is not present in current table.');
+$js_messages['seeMore'] = __('See more');
/* For server_variables.js */
$js_messages['strSave'] = __('Save');
diff --git a/libraries/central_columns.lib.php b/libraries/central_columns.lib.php
index 384b8d582c..da430125c9 100644
--- a/libraries/central_columns.lib.php
+++ b/libraries/central_columns.lib.php
@@ -71,6 +71,17 @@ function PMA_getColumnsList($db, $from=0, $num=25)
return $has_list;
}
+/* to do block, need to complete
+function PMA_getCentralColumnsCount($db)
+{
+ $pmadb = $GLOBALS['cfg']['Server']['pmadb'];
+ $GLOBALS['dbi']->selectDb($pmadb);
+ $central_list_table = $GLOBALS['cfg']['Server']['central_columns'];
+ $query = 'SELECT count(db_name) FROM ' .
+ * PMA_Util::backquote($central_list_table) . ' '
+ . 'WHERE db_name = \'' . $db . '\';';
+ return $GLOBALS['dbi']->fetchResult($query);
+}*/
/**
* return the existing columns in central list among the given list of columns
*
@@ -523,7 +534,7 @@ function PMA_getHTMLforTableDropdown($db)
$tables = $GLOBALS['dbi']->getTables($db);
$selectHtml = '