$classname = StringHelper::cleanGPC($_GET['plugin']); $plugin = new $classname(); $plugin->installPlugin(); $db->query('UPDATE ' . TABLE_PLUGINS . ' SET state = ' . $db->escape('activated') . ' WHERE name = ' . $db->escape(StringHelper::cleanGPC($_GET['plugin']))); } break; case 'upgrade': if (isset($_GET['plugin'])) { $classname = StringHelper::cleanGPC($_GET['plugin']); $db->query('SELECT version FROM ' . TABLE_PLUGINS . ' WHERE name="' . $classname . '"'); // retrieve old version $r = $db->next(); $plugin = new $classname(); $plugin->upgradePlugin($r['version']); } break; case 'uninstall': if (isset($_GET['plugin'])) { $classname = StringHelper::cleanGPC($_GET['plugin']); $plugin = new $classname(); $plugin->uninstallPlugin(); $db->query('UPDATE ' . TABLE_PLUGINS . ' SET state = ' . $db->escape('not installed') . ' WHERE name = ' . $db->escape(StringHelper::cleanGPC($_GET['plugin']))); } break; } // show admin panel $page = new PageAdminPanel(); echo $page->create(); exit;