public function process(HTTPRequest $request) { if (!PluginManager::instance()->isPluginAllowedForProject($this, $request->getProject()->getId())) { $GLOBALS['Response']->addFeedback('error', $GLOBALS['Language']->getText('plugin_svn_manage_repository', 'plugin_not_activated')); $GLOBALS['Response']->redirect('/projects/' . $request->getProject()->getUnixNameMixedCase() . '/'); } else { $this->getRouter()->route($request); } }
/** * @param HTTPRequest $request * @return bool */ public function userIsAdmin(HTTPRequest $request) { $user = $request->getCurrentUser(); $forge_user_manager = new User_ForgeUserGroupPermissionsManager(new User_ForgeUserGroupPermissionsDao()); $has_special_permission = $forge_user_manager->doesUserHavePermission($user, new User_ForgeUserGroupPermission_MediawikiAdminAllProjects()); return $has_special_permission || $user->isMember($request->getProject()->getID(), 'A'); }
private function assertUserIsProjectAdmin(ServiceMediawiki $service, HTTPRequest $request) { if (!$service->userIsAdmin($request->getCurrentUser())) { $GLOBALS['Response']->redirect(MEDIAWIKI_BASE_URL . '/wiki/' . $request->getProject()->getUnixName()); } }