Ejemplo n.º 1
0
 public function doRequest($request)
 {
     if ($this->mockedResponse) {
         $response = $this->mockedResponse;
         $this->mockedResponse = null;
         return $response;
     }
     $_COOKIE = $request->getCookies();
     $_SERVER = $request->getServer();
     $_FILES = $this->remapFiles($request->getFiles());
     $uri = str_replace('http://localhost', '', $request->getUri());
     $_REQUEST = $this->remapRequestParameters($request->getParameters());
     if (strtoupper($request->getMethod()) == 'GET') {
         $_GET = $_REQUEST;
     } else {
         $_POST = $_REQUEST;
     }
     $_SERVER['REQUEST_METHOD'] = strtoupper($request->getMethod());
     $_SERVER['REQUEST_URI'] = $uri;
     $_SERVER['SCRIPT_URI'] = $uri;
     $_SERVER['SCRIPT_NAME'] = $uri;
     $context = new PhpContext();
     $context->SimulateNonCli = true;
     unset($context->Request);
     $request = \Rhubarb\Crown\PhpContext::createRequest();
     $response = Module::generateResponseForRequest($request);
     $headers = $response->getHeaders();
     $content = $response->getContent();
     $headers['Content-type'] = isset($headers['Content-type']) ? $headers['Content-type'] : "text/html; charset=UTF-8";
     $code = 200;
     if ($response instanceof RedirectResponse) {
         $this->redirect = $response->getUrl();
         $code = 302;
     }
     $response = new Response($content, $code, $headers);
     return $response;
 }
Ejemplo n.º 2
0
 protected function getAbsoluteHandledUrl()
 {
     $request = PhpContext::createRequest();
     return $request->server("REQUEST_SCHEME") . "://" . $request->server("SERVER_NAME") . $this->handledUrl;
 }