diff --git a/libraries/Advisor.class.php b/libraries/Advisor.class.php index ca9fb6f61f..bf4fd41b73 100644 --- a/libraries/Advisor.class.php +++ b/libraries/Advisor.class.php @@ -69,9 +69,11 @@ class Advisor $this->variables['value'] = $value; try { - if($this->ruleExprEvaluate($rule['test'])) + if ($this->ruleExprEvaluate($rule['test'])) { $this->addRule('fired', $rule); - else $this->addRule('notfired', $rule); + } else { + $this->addRule('notfired', $rule); + } } catch(Exception $e) { $this->runResult['errors'][] = 'Failed running test for rule \''.$rule['name'].'\'. PHP threw following error: '.$e->getMessage(); } diff --git a/libraries/config.default.php b/libraries/config.default.php index d8367e5839..c40e784f83 100644 --- a/libraries/config.default.php +++ b/libraries/config.default.php @@ -2753,325 +2753,49 @@ $cfg['DBG']['sql'] = false; * Column types; * VARCHAR, TINYINT, TEXT and DATE are listed first, based on estimated popularity * + * This variable is filled in data_*.inc.php + * * @global array $cfg['ColumnTypes'] */ -$cfg['ColumnTypes'] = array( - // most used - 'INT', - 'VARCHAR', - 'TEXT', - 'DATE', - - // numeric - 'NUMERIC' => array( - 'TINYINT', - 'SMALLINT', - 'MEDIUMINT', - 'INT', - 'BIGINT', - '-', - 'DECIMAL', - 'FLOAT', - 'DOUBLE', - 'REAL', - '-', - 'BIT', - 'BOOLEAN', - 'SERIAL', - ), - - - // Date/Time - 'DATE and TIME' => array( - 'DATE', - 'DATETIME', - 'TIMESTAMP', - 'TIME', - 'YEAR', - ), - - // Text - 'STRING' => array( - 'CHAR', - 'VARCHAR', - '-', - 'TINYTEXT', - 'TEXT', - 'MEDIUMTEXT', - 'LONGTEXT', - '-', - 'BINARY', - 'VARBINARY', - '-', - 'TINYBLOB', - 'MEDIUMBLOB', - 'BLOB', - 'LONGBLOB', - '-', - 'ENUM', - 'SET', - ), - - 'SPATIAL' => array( - 'GEOMETRY', - 'POINT', - 'LINESTRING', - 'POLYGON', - 'MULTIPOINT', - 'MULTILINESTRING', - 'MULTIPOLYGON', - 'GEOMETRYCOLLECTION', - ), -); +$cfg['ColumnTypes'] = array(); /** * Attributes * + * This variable is filled in data_*.inc.php + * * @global array $cfg['AttributeTypes'] */ -$cfg['AttributeTypes'] = array( - '', - 'BINARY', - 'UNSIGNED', - 'UNSIGNED ZEROFILL', - 'on update CURRENT_TIMESTAMP', -); +$cfg['AttributeTypes'] = array(); if ($cfg['ShowFunctionFields']) { /** * Available functions * + * This variable is filled in data_*.inc.php + * * @global array $cfg['Functions'] */ - $cfg['Functions'] = array( - 'ABS', - 'ACOS', - 'ASCII', - 'ASIN', - 'ATAN', - 'BIN', - 'BIT_COUNT', - 'BIT_LENGTH', - 'CEILING', - 'CHAR', - 'CHAR_LENGTH', - 'COMPRESS', - 'COS', - 'COT', - 'CRC32', - 'CURDATE', - 'CURRENT_USER', - 'CURTIME', - 'DATE', - 'DAYNAME', - 'DEGREES', - 'DES_DECRYPT', - 'DES_ENCRYPT', - 'ENCRYPT', - 'EXP', - 'FLOOR', - 'FROM_DAYS', - 'FROM_UNIXTIME', - 'HEX', - 'INET_ATON', - 'INET_NTOA', - 'LENGTH', - 'LN', - 'LOG', - 'LOG10', - 'LOG2', - 'LOWER', - 'MD5', - 'NOW', - 'OCT', - 'OLD_PASSWORD', - 'ORD', - 'PASSWORD', - 'RADIANS', - 'RAND', - 'REVERSE', - 'ROUND', - 'SEC_TO_TIME', - 'SHA1', - 'SOUNDEX', - 'SPACE', - 'SQRT', - 'STDDEV_POP', - 'STDDEV_SAMP', - 'TAN', - 'TIMESTAMP', - 'TIME_TO_SEC', - 'UNCOMPRESS', - 'UNHEX', - 'UNIX_TIMESTAMP', - 'UPPER', - 'USER', - 'UTC_DATE', - 'UTC_TIME', - 'UTC_TIMESTAMP', - 'UUID', - 'VAR_POP', - 'VAR_SAMP', - 'YEAR', - ); + $cfg['Functions'] = array(); /** * Which column types will be mapped to which Group? * + * This variable is filled in data_*.inc.php + * * @global array $cfg['RestrictColumnTypes'] */ - $cfg['RestrictColumnTypes'] = array( - 'TINYINT' => 'FUNC_NUMBER', - 'SMALLINT' => 'FUNC_NUMBER', - 'MEDIUMINT' => 'FUNC_NUMBER', - 'INT' => 'FUNC_NUMBER', - 'BIGINT' => 'FUNC_NUMBER', - 'DECIMAL' => 'FUNC_NUMBER', - 'FLOAT' => 'FUNC_NUMBER', - 'DOUBLE' => 'FUNC_NUMBER', - 'REAL' => 'FUNC_NUMBER', - 'BIT' => 'FUNC_NUMBER', - 'BOOLEAN' => 'FUNC_NUMBER', - 'SERIAL' => 'FUNC_NUMBER', - - 'DATE' => 'FUNC_DATE', - 'DATETIME' => 'FUNC_DATE', - 'TIMESTAMP' => 'FUNC_DATE', - 'TIME' => 'FUNC_DATE', - 'YEAR' => 'FUNC_DATE', - - 'CHAR' => 'FUNC_CHAR', - 'VARCHAR' => 'FUNC_CHAR', - 'TINYTEXT' => 'FUNC_CHAR', - 'TEXT' => 'FUNC_CHAR', - 'MEDIUMTEXT' => 'FUNC_CHAR', - 'LONGTEXT' => 'FUNC_CHAR', - 'BINARY' => 'FUNC_CHAR', - 'VARBINARY' => 'FUNC_CHAR', - 'TINYBLOB' => 'FUNC_CHAR', - 'MEDIUMBLOB' => 'FUNC_CHAR', - 'BLOB' => 'FUNC_CHAR', - 'LONGBLOB' => 'FUNC_CHAR', - 'ENUM' => '', - 'SET' => '', - - 'GEOMETRY' => 'FUNC_SPATIAL', - 'POINT' => 'FUNC_SPATIAL', - 'LINESTRING' => 'FUNC_SPATIAL', - 'POLYGON' => 'FUNC_SPATIAL', - 'MULTIPOINT' => 'FUNC_SPATIAL', - 'MULTILINESTRING' => 'FUNC_SPATIAL', - 'MULTIPOLYGON' => 'FUNC_SPATIAL', - 'GEOMETRYCOLLECTION' => 'FUNC_SPATIAL', - - ); + $cfg['RestrictColumnTypes'] = array(); /** * Map above defined groups to any function * + * This variable is filled in data_*.inc.php + * * @global array $cfg['RestrictFunctions'] */ - $cfg['RestrictFunctions'] = array( - 'FUNC_CHAR' => array( - 'BIN', - 'CHAR', - 'CURRENT_USER', - 'COMPRESS', - 'DAYNAME', - 'DES_DECRYPT', - 'DES_ENCRYPT', - 'ENCRYPT', - 'HEX', - 'INET_NTOA', - 'LOWER', - 'MD5', - 'OLD_PASSWORD', - 'PASSWORD', - 'REVERSE', - 'SHA1', - 'SOUNDEX', - 'SPACE', - 'UNCOMPRESS', - 'UNHEX', - 'UPPER', - 'USER', - 'UUID', - ), - - 'FUNC_DATE' => array( - 'CURDATE', - 'CURTIME', - 'DATE', - 'FROM_DAYS', - 'FROM_UNIXTIME', - 'NOW', - 'SEC_TO_TIME', - 'TIMESTAMP', - 'UTC_DATE', - 'UTC_TIME', - 'UTC_TIMESTAMP', - 'YEAR', - ), - - 'FUNC_NUMBER' => array( - 'ABS', - 'ACOS', - 'ASCII', - 'ASIN', - 'ATAN', - 'BIT_LENGTH', - 'BIT_COUNT', - 'CEILING', - 'CHAR_LENGTH', - 'COS', - 'COT', - 'CRC32', - 'DEGREES', - 'EXP', - 'FLOOR', - 'INET_ATON', - 'LENGTH', - 'LN', - 'LOG', - 'LOG2', - 'LOG10', - 'OCT', - 'ORD', - 'RADIANS', - 'RAND', - 'ROUND', - 'SQRT', - 'STDDEV_POP', - 'STDDEV_SAMP', - 'TAN', - 'TIME_TO_SEC', - 'UNIX_TIMESTAMP', - 'VAR_POP', - 'VAR_SAMP', - ), - - 'FUNC_SPATIAL' => array( - 'GeomFromText', - 'GeomFromWKB', - - 'GeomCollFromText', - 'LineFromText', - 'MLineFromText', - 'PointFromText', - 'MPointFromText', - 'PolyFromText', - 'MPolyFromText', - - 'GeomCollFromWKB', - 'LineFromWKB', - 'MLineFromWKB', - 'PointFromWKB', - 'MPointFromWKB', - 'PolyFromWKB', - 'MPolyFromWKB', - ), - ); + $cfg['RestrictFunctions'] = array(); /** * Default functions for above defined groups @@ -3085,8 +2809,6 @@ if ($cfg['ShowFunctionFields']) { 'first_timestamp' => 'NOW', 'pk_char36' => 'UUID', ); - - } // end if /** diff --git a/libraries/relation.lib.php b/libraries/relation.lib.php index c24c2491e7..44117434b9 100644 --- a/libraries/relation.lib.php +++ b/libraries/relation.lib.php @@ -1068,10 +1068,9 @@ function PMA_REL_renameField($db, $table, $field, $new_name) * @param string $newpage * @param array $cfgRelation * @param string $db - * @param string $query_default_option * @return string $pdf_page_number */ -function PMA_REL_create_page($newpage, $cfgRelation, $db, $query_default_option) +function PMA_REL_create_page($newpage, $cfgRelation, $db) { if (! isset($newpage) || $newpage == '') { $newpage = __('no description'); @@ -1079,7 +1078,7 @@ function PMA_REL_create_page($newpage, $cfgRelation, $db, $query_default_option) $ins_query = 'INSERT INTO ' . PMA_backquote($GLOBALS['cfgRelation']['db']) . '.' . PMA_backquote($cfgRelation['pdf_pages']) . ' (db_name, page_descr)' . ' VALUES (\'' . PMA_sqlAddSlashes($db) . '\', \'' . PMA_sqlAddSlashes($newpage) . '\')'; - PMA_query_as_controluser($ins_query, false, $query_default_option); + PMA_query_as_controluser($ins_query, false); return PMA_DBI_insert_id(isset($GLOBALS['controllink']) ? $GLOBALS['controllink'] : ''); } ?> diff --git a/libraries/schema/User_Schema.class.php b/libraries/schema/User_Schema.class.php index 2ea0a2b42a..aa17c4717b 100644 --- a/libraries/schema/User_Schema.class.php +++ b/libraries/schema/User_Schema.class.php @@ -38,31 +38,52 @@ class PMA_User_Schema public function processUserChoice() { - global $action_choose,$db,$cfgRelation,$cfg,$query_default_option; + global $action_choose,$db,$cfgRelation,$cfg; if (isset($this->action)) { switch ($this->action) { case 'selectpage': $this->chosenPage = $_REQUEST['chpage']; if ($action_choose=="1") { - $this->deleteCoordinates($db, $cfgRelation, $this->chosenPage, $query_default_option); - $this->deletePages($db, $cfgRelation, $this->chosenPage, $query_default_option); + $this->deleteCoordinates( + $db, + $cfgRelation, + $this->chosenPage + ); + $this->deletePages( + $db, + $cfgRelation, + $this->chosenPage + ); $this->chosenPage = 0; } break; case 'createpage': - $this->pageNumber = PMA_REL_create_page($_POST['newpage'], $cfgRelation, $db, $query_default_option); + $this->pageNumber = PMA_REL_create_page( + $_POST['newpage'], + $cfgRelation, + $db + ); $this->autoLayoutForeign = isset($_POST['auto_layout_foreign']) ? "1":NULL; $this->autoLayoutInternal = isset($_POST['auto_layout_internal']) ? "1":NULL; - $this->processRelations($db, $this->pageNumber,$cfgRelation,$query_default_option); + $this->processRelations( + $db, + $this->pageNumber, + $cfgRelation + ); break; case 'edcoord': $this->chosenPage = $_POST['chpage']; $this->c_table_rows = $_POST['c_table_rows']; - $this->_editCoordinates($db, $cfgRelation,$query_default_option); + $this->_editCoordinates($db, $cfgRelation); break; case 'delete_old_references': - $this->_deleteTableRows($delrow,$cfgRelation,$db,$this->chosenPage); + $this->_deleteTableRows( + $delrow, + $cfgRelation, + $db, + $this->chosenPage + ); break; case 'process_export': $this->_processExportSchema(); @@ -132,10 +153,10 @@ class PMA_User_Schema */ public function selectPage() { - global $db,$table,$query_default_option,$cfgRelation; + global $db,$table,$cfgRelation; $page_query = 'SELECT * FROM ' . PMA_backquote($GLOBALS['cfgRelation']['db']) . '.' . PMA_backquote($cfgRelation['pdf_pages']) . ' WHERE db_name = \'' . PMA_sqlAddSlashes($db) . '\''; - $page_rs = PMA_query_as_controluser($page_query, false, $query_default_option); + $page_rs = PMA_query_as_controluser($page_query, false, PMA_DBI_QUERY_STORE); if ($page_rs && PMA_DBI_num_rows($page_rs) > 0) { ?>