diff options
author | Jason <jason.daurus@gmail.com> | 2015-07-20 19:15:08 +0300 |
---|---|---|
committer | Jason <jason.daurus@gmail.com> | 2015-07-23 06:29:53 +0300 |
commit | 66361530713fcf99b9e090b82ccd016dc3c287b2 (patch) | |
tree | 28979a0d42010532affb6740b4b6388ab7cd49cf /tbl_zoom_select.php | |
parent | 465a9ed5f2dd649e96c8d45bfa109e959a39fcd8 (diff) |
Resolve conflicts from upstream
Signed-off-by: Jason <jason.daurus@gmail.com>
Diffstat (limited to 'tbl_zoom_select.php')
-rw-r--r-- | tbl_zoom_select.php | 168 |
1 files changed, 15 insertions, 153 deletions
diff --git a/tbl_zoom_select.php b/tbl_zoom_select.php index 0e110f950f..5a1cc217ab 100644 --- a/tbl_zoom_select.php +++ b/tbl_zoom_select.php @@ -12,160 +12,22 @@ * Gets some core libraries */ require_once './libraries/common.inc.php'; -require_once './libraries/mysql_charsets.inc.php'; -require_once './libraries/TableSearch.class.php'; -require_once './libraries/tbl_info.inc.php'; +include_once 'libraries/tbl_common.inc.php'; +require_once './libraries/di/Container.class.php'; +require_once './libraries/controllers/TableSearchController.class.php'; -$response = PMA_Response::getInstance(); -$header = $response->getHeader(); -$scripts = $header->getScripts(); -$scripts->addFile('makegrid.js'); -$scripts->addFile('sql.js'); -$scripts->addFile('jqplot/jquery.jqplot.js'); -$scripts->addFile('jqplot/plugins/jqplot.canvasTextRenderer.js'); -$scripts->addFile('jqplot/plugins/jqplot.canvasAxisLabelRenderer.js'); -$scripts->addFile('jqplot/plugins/jqplot.dateAxisRenderer.js'); -$scripts->addFile('jqplot/plugins/jqplot.highlighter.js'); -$scripts->addFile('jqplot/plugins/jqplot.cursor.js'); -$scripts->addFile('canvg/canvg.js'); -$scripts->addFile('jquery/jquery-ui-timepicker-addon.js'); -$scripts->addFile('tbl_zoom_plot_jqplot.js'); -$scripts->addFile('tbl_change.js'); +use PMA\DI; -$table_search = new PMA_TableSearch($db, $table, "zoom"); +$container = DI\Container::getDefaultContainer(); +$container->factory('PMA\Controllers\Table\TableSearchController'); +$container->alias('TableSearchController', 'PMA\Controllers\Table\TableSearchController'); -/** - * Handle AJAX request for data row on point select - * @var post_params Object containing parameters for the POST request - */ - -if (isset($_REQUEST['get_data_row']) && $_REQUEST['get_data_row'] == true) { - $extra_data = array(); - $row_info_query = 'SELECT * FROM `' . $_REQUEST['db'] . '`.`' - . $_REQUEST['table'] . '` WHERE ' . $_REQUEST['where_clause']; - $result = $GLOBALS['dbi']->query( - $row_info_query . ";", null, PMA_DatabaseInterface::QUERY_STORE - ); - $fields_meta = $GLOBALS['dbi']->getFieldsMeta($result); - while ($row = $GLOBALS['dbi']->fetchAssoc($result)) { - // for bit fields we need to convert them to printable form - $i = 0; - foreach ($row as $col => $val) { - if ($fields_meta[$i]->type == 'bit') { - $row[$col] = PMA_Util::printableBitValue( - $val, $fields_meta[$i]->length - ); - } - $i++; - } - $extra_data['row_info'] = $row; - } - PMA_Response::getInstance()->addJSON($extra_data); - exit; -} - -/** - * Handle AJAX request for changing field information - * (value,collation,operators,field values) in input form - * @var post_params Object containing parameters for the POST request - */ - -if (isset($_REQUEST['change_tbl_info']) && $_REQUEST['change_tbl_info'] == true) { - $response = PMA_Response::getInstance(); - $field = $_REQUEST['field']; - if ($field == 'pma_null') { - $response->addJSON('field_type', ''); - $response->addJSON('field_collation', ''); - $response->addJSON('field_operators', ''); - $response->addJSON('field_value', ''); - exit; - } - $key = array_search($field, $table_search->getColumnNames()); - $properties = $table_search->getColumnProperties($_REQUEST['it'], $key); - $response->addJSON('field_type', htmlspecialchars($properties['type'])); - $response->addJSON('field_collation', $properties['collation']); - $response->addJSON('field_operators', $properties['func']); - $response->addJSON('field_value', $properties['value']); - exit; -} - -// Gets some core libraries -require_once './libraries/tbl_common.inc.php'; -$url_query .= '&goto=tbl_select.php&back=tbl_select.php'; - -// Gets tables information -require_once './libraries/tbl_info.inc.php'; - -if (! isset($goto)) { - $goto = PMA_Util::getScriptNameForOption( - $GLOBALS['cfg']['DefaultTabTable'], 'table' - ); -} -// Defines the url to return to in case of error in the next sql statement -$err_url = $goto . PMA_URL_getCommon(array('db' => $db, 'table' => $table)); - -//Set default datalabel if not selected -if (!isset($_POST['zoom_submit']) || $_POST['dataLabel'] == '') { - $dataLabel = PMA_getDisplayField($db, $table); -} else { - $dataLabel = $_POST['dataLabel']; -} - -// Displays the zoom search form -$response->addHTML($table_search->getSecondaryTabs()); -$response->addHTML($table_search->getSelectionForm($goto, $dataLabel)); - -/* - * Handle the input criteria and generate the query result - * Form for displaying query results - */ -if (isset($_POST['zoom_submit']) - && $_POST['criteriaColumnNames'][0] != 'pma_null' - && $_POST['criteriaColumnNames'][1] != 'pma_null' - && $_POST['criteriaColumnNames'][0] != $_POST['criteriaColumnNames'][1] -) { - //Query generation part - $sql_query = $table_search->buildSqlQuery(); - $sql_query .= ' LIMIT ' . $_POST['maxPlotLimit']; - - //Query execution part - $result = $GLOBALS['dbi']->query( - $sql_query . ";", null, PMA_DatabaseInterface::QUERY_STORE - ); - $fields_meta = $GLOBALS['dbi']->getFieldsMeta($result); - $data = array(); - while ($row = $GLOBALS['dbi']->fetchAssoc($result)) { - //Need a row with indexes as 0,1,2 for the getUniqueCondition - // hence using a temporary array - $tmpRow = array(); - foreach ($row as $val) { - $tmpRow[] = $val; - } - //Get unique condition on each row (will be needed for row update) - $uniqueCondition = PMA_Util::getUniqueCondition( - $result, // handle - count($table_search->getColumnNames()), // fields_cnt - $fields_meta, // fields_meta - $tmpRow, // row - true, // force_unique - false, // restrict_to_table - null // analyzed_sql_results - ); - //Append it to row array as where_clause - $row['where_clause'] = $uniqueCondition[0]; - - $tmpData = array( - $_POST['criteriaColumnNames'][0] => - $row[$_POST['criteriaColumnNames'][0]], - $_POST['criteriaColumnNames'][1] => - $row[$_POST['criteriaColumnNames'][1]], - 'where_clause' => $uniqueCondition[0] - ); - $tmpData[$dataLabel] = ($dataLabel) ? $row[$dataLabel] : ''; - $data[] = $tmpData; - } - unset($tmpData); +/* Define dependencies for the concerned controller */ +$dependency_definitions = array( + 'searchType' => 'zoom', + 'url_query' => &$url_query +); - //Displays form for point data and scatter plot - $response->addHTML($table_search->getZoomResultsForm($goto, $data)); -} +/** @var PMA\Controllers\Table\TableSearchController $controller */ +$controller = $container->get('TableSearchController', $dependency_definitions); +$controller->indexAction(); |