$request = new \Plugin\Install\Request(); $request->setQuery($_GET); $request->setPost($_POST); $request->setServer($_SERVER); $request->setRequest($_REQUEST); \Ip\ServiceLocator::addRequest($request); $language = new \Ip\Language(null, $options['translationsLanguageCode'], null, null, null, 0, 'ltr'); ipContent()->_setCurrentLanguage($language); \Ip\ServiceLocator::dispatcher()->_bindInstallEvents(); if ($request->isGet()) { $controller = new \Plugin\Install\PublicController(); if (!empty($_GET['pa']) && $_GET['pa'] == 'Install.testSessions') { $response = $controller->testSessions(); } else { $response = $controller->index(); } } elseif ($request->isPost()) { $route = Ip\Internal\Core\Job::ipRouteAction_20(array('request' => $request)); if (!$route || $route['plugin'] != 'Install' || $route['controller'] != 'PublicController') { $response = new \Ip\Response\PageNotFound(); } else { $controller = new \Plugin\Install\PublicController(); $response = $controller->{$route['action']}(); } } else { exit('HTTP Method not supported.'); } \Ip\ServiceLocator::removeRequest(); \Ip\ServiceLocator::setResponse($response); $application->handleResponse($response);