From 5bf66662a9bdd62c5bccab15e607cd95cfb8fcab Mon Sep 17 00:00:00 2001 From: Charles Cabergs Date: Mon, 27 Jul 2020 10:05:23 +0200 Subject: Removed wordpress and phpmyadmin, my server doesn't handle it well and it brings shame on my familly --- .../libraries/classes/RecentFavoriteTable.php | 405 --------------------- 1 file changed, 405 deletions(-) delete mode 100644 srcs/phpmyadmin/libraries/classes/RecentFavoriteTable.php (limited to 'srcs/phpmyadmin/libraries/classes/RecentFavoriteTable.php') diff --git a/srcs/phpmyadmin/libraries/classes/RecentFavoriteTable.php b/srcs/phpmyadmin/libraries/classes/RecentFavoriteTable.php deleted file mode 100644 index 4976b8d..0000000 --- a/srcs/phpmyadmin/libraries/classes/RecentFavoriteTable.php +++ /dev/null @@ -1,405 +0,0 @@ -relation = new Relation($GLOBALS['dbi']); - $this->_tableType = $type; - $server_id = $GLOBALS['server']; - if (! isset($_SESSION['tmpval'][$this->_tableType . 'Tables'][$server_id]) - ) { - $_SESSION['tmpval'][$this->_tableType . 'Tables'][$server_id] - = $this->_getPmaTable() ? $this->getFromDb() : []; - } - $this->_tables - =& $_SESSION['tmpval'][$this->_tableType . 'Tables'][$server_id]; - } - - /** - * Returns class instance. - * - * @param string $type the table type - * - * @return RecentFavoriteTable - */ - public static function getInstance($type) - { - if (! array_key_exists($type, self::$_instances)) { - self::$_instances[$type] = new RecentFavoriteTable($type); - } - return self::$_instances[$type]; - } - - /** - * Returns the recent/favorite tables array - * - * @return array - */ - public function getTables() - { - return $this->_tables; - } - - /** - * Returns recently used tables or favorite from phpMyAdmin database. - * - * @return array - */ - public function getFromDb() - { - // Read from phpMyAdmin database, if recent tables is not in session - $sql_query - = " SELECT `tables` FROM " . $this->_getPmaTable() . - " WHERE `username` = '" . $GLOBALS['dbi']->escapeString($GLOBALS['cfg']['Server']['user']) . "'"; - - $return = []; - $result = $this->relation->queryAsControlUser($sql_query, false); - if ($result) { - $row = $GLOBALS['dbi']->fetchArray($result); - if (isset($row[0])) { - $return = json_decode($row[0], true); - } - } - return $return; - } - - /** - * Save recent/favorite tables into phpMyAdmin database. - * - * @return true|Message - */ - public function saveToDb() - { - $username = $GLOBALS['cfg']['Server']['user']; - $sql_query - = " REPLACE INTO " . $this->_getPmaTable() . " (`username`, `tables`)" . - " VALUES ('" . $GLOBALS['dbi']->escapeString($username) . "', '" - . $GLOBALS['dbi']->escapeString( - json_encode($this->_tables) - ) . "')"; - - $success = $GLOBALS['dbi']->tryQuery($sql_query, DatabaseInterface::CONNECT_CONTROL); - - if (! $success) { - $error_msg = ''; - switch ($this->_tableType) { - case 'recent': - $error_msg = __('Could not save recent table!'); - break; - - case 'favorite': - $error_msg = __('Could not save favorite table!'); - break; - } - $message = Message::error($error_msg); - $message->addMessage( - Message::rawError( - $GLOBALS['dbi']->getError(DatabaseInterface::CONNECT_CONTROL) - ), - '

' - ); - return $message; - } - return true; - } - - /** - * Trim recent.favorite table according to the - * NumRecentTables/NumFavoriteTables configuration. - * - * @return boolean True if trimming occurred - */ - public function trim() - { - $max = max( - $GLOBALS['cfg']['Num' . ucfirst($this->_tableType) . 'Tables'], - 0 - ); - $trimming_occurred = count($this->_tables) > $max; - while (count($this->_tables) > $max) { - array_pop($this->_tables); - } - return $trimming_occurred; - } - - /** - * Return HTML ul. - * - * @return string - */ - public function getHtmlList() - { - $html = ''; - if (count($this->_tables)) { - if ($this->_tableType == 'recent') { - foreach ($this->_tables as $table) { - $html .= ''; - } - } else { - foreach ($this->_tables as $table) { - $html .= ''; - } - } - } else { - $html .= ''; - } - return $html; - } - - /** - * Return HTML. - * - * @return string - */ - public function getHtml() - { - $html = '
'; - if ($this->_tableType == 'recent') { - $html .= '
'; - return $html; - } - - /** - * Add recently used or favorite tables. - * - * @param string $db database name where the table is located - * @param string $table table name - * - * @return true|Message True if success, Message if not - */ - public function add($db, $table) - { - // If table does not exist, do not add._getPmaTable() - if (! $GLOBALS['dbi']->getColumns($db, $table)) { - return true; - } - - $table_arr = []; - $table_arr['db'] = $db; - $table_arr['table'] = $table; - - // add only if this is new table - if (! isset($this->_tables[0]) || $this->_tables[0] != $table_arr) { - array_unshift($this->_tables, $table_arr); - $this->_tables = array_merge(array_unique($this->_tables, SORT_REGULAR)); - $this->trim(); - if ($this->_getPmaTable()) { - return $this->saveToDb(); - } - } - return true; - } - - /** - * Removes recent/favorite tables that don't exist. - * - * @param string $db database - * @param string $table table - * - * @return boolean|Message True if invalid and removed, False if not invalid, - * Message if error while removing - */ - public function removeIfInvalid($db, $table) - { - foreach ($this->_tables as $tbl) { - if ($tbl['db'] == $db && $tbl['table'] == $table) { - // TODO Figure out a better way to find the existence of a table - if (! $GLOBALS['dbi']->getColumns($tbl['db'], $tbl['table'])) { - return $this->remove($tbl['db'], $tbl['table']); - } - } - } - return false; - } - - /** - * Remove favorite tables. - * - * @param string $db database name where the table is located - * @param string $table table name - * - * @return true|Message True if success, Message if not - */ - public function remove($db, $table) - { - foreach ($this->_tables as $key => $value) { - if ($value['db'] == $db && $value['table'] == $table) { - unset($this->_tables[$key]); - } - } - if ($this->_getPmaTable()) { - return $this->saveToDb(); - } - return true; - } - - /** - * Generate Html for sync Favorite tables anchor. (from localStorage to pmadb) - * - * @return string - */ - public function getHtmlSyncFavoriteTables() - { - $retval = ''; - $server_id = $GLOBALS['server']; - if ($server_id == 0) { - return ''; - } - $cfgRelation = $this->relation->getRelationsParam(); - // Not to show this once list is synchronized. - if ($cfgRelation['favoritework'] && ! isset($_SESSION['tmpval']['favorites_synced'][$server_id])) { - $params = [ - 'ajax_request' => true, - 'favorite_table' => true, - 'sync_favorite_tables' => true, - ]; - $url = 'db_structure.php' . Url::getCommon($params); - $retval = ''; - } - return $retval; - } - - /** - * Generate Html to update recent tables. - * - * @return string html - */ - public static function getHtmlUpdateRecentTables() - { - $params = [ - 'ajax_request' => true, - 'recent_table' => true, - ]; - $url = 'index.php' . Url::getCommon($params); - $retval = ''; - return $retval; - } - - /** - * Return the name of the configuration storage table - * - * @return string|null pma table name - */ - private function _getPmaTable(): ?string - { - $cfgRelation = $this->relation->getRelationsParam(); - if (! $cfgRelation['recentwork']) { - return null; - } - - if (! empty($cfgRelation['db']) - && ! empty($cfgRelation[$this->_tableType]) - ) { - return Util::backquote($cfgRelation['db']) . "." - . Util::backquote($cfgRelation[$this->_tableType]); - } - return null; - } -} -- cgit