} return $retval; } // MAIN $display = ''; $mode = ''; if (isset($_POST['mode'])) { $mode = $_POST['mode']; } elseif (isset($_GET['mode'])) { $mode = $_GET['mode']; } if ($mode == 'delete') { $pi_name = COM_applyFilter($_GET['pi_name']); if (!empty($pi_name) && SEC_hasRights('plugin.install')) { if ($_GET['confirmed'] == 1 && SEC_checkToken()) { $msg = do_uninstall($pi_name); if ($msg === false) { echo COM_refresh($_CONF['site_admin_url'] . '/plugins.php'); } else { echo COM_refresh($_CONF['site_admin_url'] . '/plugins.php?msg=' . $msg); } exit; } else { // ask user for confirmation $token = SEC_CreateToken(); $message = $LANG32[31]; $message .= "<form action='{$_CONF['site_admin_url']}/plugins.php' method='GET'><div>"; $message .= "<input type='hidden' name='pi_name' value='" . $pi_name . "'" . XHTML . ">"; $message .= "<input type='hidden' name='mode' value='delete'" . XHTML . ">"; $message .= "<input type='hidden' name='confirmed' value='1'" . XHTML . ">"; $message .= "<input type='hidden' name='" . CSRF_TOKEN . "' value='" . $token . "'" . XHTML . ">";
$return_to = $GO_CONFIG->host . 'administrator/'; $link_back = $_SERVER['PHP_SELF']; require_once $GO_CONFIG->class_path . 'filesystem.class.inc'; $fs = new filesystem(); $fs->root = ''; $page_title = $menu_modules; $overlib = new overlib(); $GO_HEADER['head'] = $overlib->get_header(); require $GO_THEME->theme_path . "header.inc"; switch ($task) { case 'process': if (isset($_REQUEST['install']) && is_array($_REQUEST['install'])) { do_install($_REQUEST['install']); } if (isset($_REQUEST['uninstall']) && is_array($_REQUEST['uninstall'])) { do_uninstall($_REQUEST['uninstall']); } if (isset($_REQUEST['enable']) && is_array($_REQUEST['enable'])) { update_enable($_REQUEST['enable']); } else { update_enable(array()); } break; case 'install': $module_id = $_POST['module_id']; $acl_read = $GO_SECURITY->get_new_acl('Module read: ' . $module_id, 0); $acl_write = $GO_SECURITY->get_new_acl('Module write: ' . $module_id, 0); if ($acl_read > 0 && $acl_write > 0) { if ($GO_SECURITY->add_user_to_acl($GO_SECURITY->user_id, $acl_write) && $GO_SECURITY->add_user_to_acl($GO_SECURITY->user_id, $acl_read)) { if (!$GO_MODULES->add_module($module_id, $_REQUEST['version'], $acl_read, $acl_write)) { $feedback = '<p class="Error">' . $strSaveError . '</p>';