Beispiel #1
0
 /**
  * Creates a log entry from the given request
  *
  * @param Slim\Http\Request $request The request
  *
  * @return \API\Document\Log The log document
  */
 public function logRequest($request)
 {
     $collection = $this->getDocumentManager()->getCollection('logs');
     $document = $collection->createDocument();
     $document->setIp($request->getIp());
     $document->setMethod($request->getMethod());
     $document->setEndpoint($request->getPathInfo());
     $currentDate = new \DateTime();
     $document->setTimestamp(Util\Date::dateTimeToMongoDate($currentDate));
     $document->save();
     return $document;
 }
Beispiel #2
0
 /**
  * Test get [script name, root uri, path, path info, resource uri] in root directory with htaccess
  */
 public function testAppPathsInRootDirectoryWithHtaccess()
 {
     $env = \Slim\Environment::mock(array('SCRIPT_NAME' => '', 'PATH_INFO' => '/bar/xyz'));
     $req = new \Slim\Http\Request($env);
     $this->assertEquals('', $req->getScriptName());
     $this->assertEquals('', $req->getRootUri());
     $this->assertEquals('/bar/xyz', $req->getPath());
     $this->assertEquals('/bar/xyz', $req->getPathInfo());
     $this->assertEquals('/bar/xyz', $req->getResourceUri());
 }
Beispiel #3
0
 /**
  * Reconstructs a full URL for the request from Slim's request object.
  *
  * @param   Slim\Environment   $env  The application environment.
  * @param   Slim\Http\Request  $request
  * @return  string  The request URL.
  */
 private function request_url($env, $request)
 {
     $url = implode('', array($request->getUrl(), $request->getRootUri(), $request->getPathInfo()));
     if (isset($env['QUERY_STRING']) and !empty($env['QUERY_STRING'])) {
         $url .= '?' . $env['QUERY_STRING'];
     }
     return $url;
 }