From 04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa Mon Sep 17 00:00:00 2001 From: Charles Date: Thu, 9 Jan 2020 10:55:03 +0100 Subject: phpmyadmin working --- srcs/phpmyadmin/libraries/classes/IndexColumn.php | 188 ++++++++++++++++++++++ 1 file changed, 188 insertions(+) create mode 100644 srcs/phpmyadmin/libraries/classes/IndexColumn.php (limited to 'srcs/phpmyadmin/libraries/classes/IndexColumn.php') diff --git a/srcs/phpmyadmin/libraries/classes/IndexColumn.php b/srcs/phpmyadmin/libraries/classes/IndexColumn.php new file mode 100644 index 0000000..3248a6c --- /dev/null +++ b/srcs/phpmyadmin/libraries/classes/IndexColumn.php @@ -0,0 +1,188 @@ +set($params); + } + + /** + * Sets parameters of the index column + * + * @param array $params an array containing the parameters of the index column + * + * @return void + */ + public function set(array $params) + { + if (isset($params['Column_name'])) { + $this->_name = $params['Column_name']; + } + if (isset($params['Seq_in_index'])) { + $this->_seq_in_index = $params['Seq_in_index']; + } + if (isset($params['Collation'])) { + $this->_collation = $params['Collation']; + } + if (isset($params['Cardinality'])) { + $this->_cardinality = $params['Cardinality']; + } + if (isset($params['Sub_part'])) { + $this->_sub_part = $params['Sub_part']; + } + if (isset($params['Null'])) { + $this->_null = $params['Null']; + } + } + + /** + * Returns the column name + * + * @return string column name + */ + public function getName() + { + return $this->_name; + } + + /** + * Return the column collation + * + * @return string column collation + */ + public function getCollation() + { + return $this->_collation; + } + + /** + * Returns the cardinality of the column + * + * @return int cardinality of the column + */ + public function getCardinality() + { + return $this->_cardinality; + } + + /** + * Returns whether the column is nullable + * + * @param boolean $as_text whether to returned the string representation + * + * @return mixed nullability of the column. True/false or Yes/No depending + * on the value of the $as_text parameter + */ + public function getNull($as_text = false) + { + if ($as_text) { + if (! $this->_null || $this->_null == 'NO') { + return __('No'); + } + + return __('Yes'); + } + + return $this->_null; + } + + /** + * Returns the sequence number of the column in the index + * + * @return int sequence number of the column in the index + */ + public function getSeqInIndex() + { + return $this->_seq_in_index; + } + + /** + * Returns the number of indexed characters if the column is only + * partly indexed + * + * @return int the number of indexed characters + */ + public function getSubPart() + { + return $this->_sub_part; + } + + /** + * Gets the properties in an array for comparison purposes + * + * @return array an array containing the properties of the index column + */ + public function getCompareData() + { + return [ + 'Column_name' => $this->_name, + 'Seq_in_index' => $this->_seq_in_index, + 'Collation' => $this->_collation, + 'Sub_part' => $this->_sub_part, + 'Null' => $this->_null, + ]; + } +} -- cgit