Server IP : 13.213.54.232 / Your IP : 216.73.216.72 Web Server : Apache/2.4.52 (Ubuntu) System : Linux ip-172-31-17-110 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 7.1.33-67+ubuntu22.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /proc/246940/cwd/html/phpmyadmin/libraries/classes/Controllers/Server/ |
Upload File : |
<?php /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * Holds the PhpMyAdmin\Controllers\Server\ServerPluginsController * * @package PhpMyAdmin\Controllers */ namespace PhpMyAdmin\Controllers\Server; use PhpMyAdmin\Controllers\Controller; use PhpMyAdmin\Server\Common; use PhpMyAdmin\Template; /** * Handles viewing server plugin details * * @package PhpMyAdmin\Controllers */ class ServerPluginsController extends Controller { /** * @var array plugin details */ protected $plugins; /** * Constructs ServerPluginsController */ public function __construct($response, $dbi) { parent::__construct($response, $dbi); $this->_setServerPlugins(); } /** * Index action * * @return void */ public function indexAction() { include 'libraries/server_common.inc.php'; $header = $this->response->getHeader(); $scripts = $header->getScripts(); $scripts->addFile('vendor/jquery/jquery.tablesorter.js'); $scripts->addFile('server_plugins.js'); /** * Displays the page */ $this->response->addHTML( Template::get('server/sub_page_header')->render([ 'type' => 'plugins', ]) ); $this->response->addHTML($this->_getPluginsHtml()); } /** * Sets details about server plugins * * @return void */ private function _setServerPlugins() { $sql = "SELECT plugin_name, plugin_type, (plugin_status = 'ACTIVE') AS is_active, plugin_type_version, plugin_author, plugin_description, plugin_license FROM information_schema.plugins ORDER BY plugin_type, plugin_name"; $res = $this->dbi->query($sql); $this->plugins = array(); while ($row = $this->dbi->fetchAssoc($res)) { $this->plugins[$row['plugin_type']][] = $row; } $this->dbi->freeResult($res); ksort($this->plugins); } /** * Returns the html for plugin Tab. * * @return string */ private function _getPluginsHtml() { $html = '<div id="plugins_plugins">'; $html .= Template::get('server/plugins/section_links') ->render(array('plugins' => $this->plugins)); foreach ($this->plugins as $plugin_type => $plugin_list) { $html .= Template::get('server/plugins/section') ->render( array( 'plugin_type' => $plugin_type, 'plugin_list' => $plugin_list, ) ); } $html .= '</div>'; return $html; } }