コード例 #1
0
ファイル: DibiProfiler.php プロジェクト: vrana/dibi
 public function __construct()
 {
     if (class_exists('Debug', FALSE) && is_callable('Debug::addPanel')) {
         /*Nette\*/
         Debug::addPanel($this);
     }
     $this->useFirebug = isset($_SERVER['HTTP_USER_AGENT']) && strpos($_SERVER['HTTP_USER_AGENT'], 'FirePHP/');
 }
コード例 #2
0
 public function __construct(array $config)
 {
     if (class_exists('Debug', FALSE) && is_callable('Debug::addPanel')) {
         /*Nette\*/
         Debug::addPanel($this);
     }
     $this->useFirebug = isset($_SERVER['HTTP_USER_AGENT']) && strpos($_SERVER['HTTP_USER_AGENT'], 'FirePHP/');
     if (isset($config['filter'])) {
         $this->setFilter($config['filter']);
     }
     if (isset($config['explain'])) {
         $this->explainQuery = (bool) $config['explain'];
     }
 }
コード例 #3
0
ファイル: DibiProfiler.php プロジェクト: kravco/dibi
 public function __construct(array $config)
 {
     if (is_callable('Nette\\Debug::addPanel')) {
         call_user_func('Nette\\Debug::addPanel', $this);
     } elseif (is_callable('NDebug::addPanel')) {
         NDebug::addPanel($this);
     } elseif (is_callable('Debug::addPanel')) {
         Debug::addPanel($this);
     }
     $this->useFirebug = isset($_SERVER['HTTP_USER_AGENT']) && strpos($_SERVER['HTTP_USER_AGENT'], 'FirePHP/');
     if (isset($config['file'])) {
         $this->setFile($config['file']);
     }
     if (isset($config['filter'])) {
         $this->setFilter($config['filter']);
     }
     if (isset($config['explain'])) {
         $this->explainQuery = (bool) $config['explain'];
     }
 }
コード例 #4
0
ファイル: TodoPanel.php プロジェクト: radypala/maga-website
 /**
  * Registeres panel to Debug bar
  */
 public static function register()
 {
     Debug::addPanel(new self());
 }
コード例 #5
0
ファイル: bootstrap.php プロジェクト: radypala/maga-website
$routes[] = new Route('<lang [a-z]{2}>/<id>/', array('module' => 'Front', 'presenter' => 'Page', 'action' => 'default', 'id' => array(Route::FILTER_IN => callback('MenuSeoModel::findIdByUri'), Route::FILTER_OUT => callback('MenuSeoModel::findUriById')), 'lang' => NULL));
// setup CLI mode
if (Environment::isConsole()) {
    Debug::$productionMode = false;
    // to allow 'dump' render output
    $application->allowedMethods = false;
    $routes[] = new CliRouter(array('action' => 'Console:Default:default'));
}
$application->addRoutes($routes);
FormMacros::register();
/***** ***** **
 *	Debug Bar *
 ****** ***** **/
$todoPanel = new TodoPanel();
$todoPanel->todoMask = array('TODO', 'FIXME', 'FIX ME', 'FIX', 'TO DO', 'PENDING', 'XXX');
Debug::addPanel($todoPanel);
//PresenterTreePanel::register();
CallbackPanel::register();
FtpPermissionPanel::register();
//$callbacks = array();
////můj nový callback
//$callbacks[] = array(
//    'name' => "Rebuild RobotLoader Cache",
//    'callback' => callback(Environment::getService('Nette\Loaders\RobotLoader'), 'rebuild'),
//    'args' => array() //pole argumentů pro callback
//);
//CallbackPanel::register($callbacks);
/***** ***** ******
 *	Debug Bar END *
 ****** ***** ******/
// Step 5: Run the application!
コード例 #6
0
ファイル: dibi.min.php プロジェクト: nosko/socialSearch
static$fireTable=array(array('Time','SQL Statement','Rows','Connection'));function
__construct(array$config){if(is_callable('Nette\Debug::addPanel')){call_user_func('Nette\Debug::addPanel',$this);}elseif(is_callable('NDebug::addPanel')){NDebug::addPanel($this);}elseif(is_callable('Debug::addPanel')){Debug::addPanel($this);}$this->useFirebug=isset($_SERVER['HTTP_USER_AGENT'])&&strpos($_SERVER['HTTP_USER_AGENT'],'FirePHP/');if(isset($config['file'])){$this->setFile($config['file']);}if(isset($config['filter'])){$this->setFilter($config['filter']);}if(isset($config['explain'])){$this->explainQuery=(bool)$config['explain'];}}function
コード例 #7
0
ファイル: loader.php プロジェクト: xixixao/chytrapalice
 function run()
 {
     $httpRequest = $this->getHttpRequest();
     $httpResponse = $this->getHttpResponse();
     $httpRequest->setEncoding('UTF-8');
     $httpResponse->setHeader('X-Powered-By', 'Nette Framework');
     if (Environment::getVariable('baseUri') === NULL) {
         Environment::setVariable('baseUri', $httpRequest->getUri()->getBasePath());
     }
     $session = $this->getSession();
     if (!$session->isStarted() && $session->exists()) {
         $session->start();
     }
     Debug::addPanel(new RoutingDebugger($this->getRouter(), $httpRequest));
     if ($this->allowedMethods) {
         $method = $httpRequest->getMethod();
         if (!in_array($method, $this->allowedMethods, TRUE)) {
             $httpResponse->setCode(IHttpResponse::S501_NOT_IMPLEMENTED);
             $httpResponse->setHeader('Allow', implode(',', $this->allowedMethods));
             echo '<h1>Method ' . htmlSpecialChars($method) . ' is not implemented</h1>';
             return;
         }
     }
     $request = NULL;
     $repeatedError = FALSE;
     do {
         try {
             if (count($this->requests) > self::$maxLoop) {
                 throw new ApplicationException('Too many loops detected in application life cycle.');
             }
             if (!$request) {
                 $this->onStartup($this);
                 $router = $this->getRouter();
                 if ($router instanceof MultiRouter && !count($router)) {
                     $router[] = new SimpleRouter(array('presenter' => 'Default', 'action' => 'default'));
                 }
                 $request = $router->match($httpRequest);
                 if (!$request instanceof PresenterRequest) {
                     $request = NULL;
                     throw new BadRequestException('No route for HTTP request.');
                 }
                 if (strcasecmp($request->getPresenterName(), $this->errorPresenter) === 0) {
                     throw new BadRequestException('Invalid request.');
                 }
             }
             $this->requests[] = $request;
             $this->onRequest($this, $request);
             $presenter = $request->getPresenterName();
             try {
                 $class = $this->getPresenterLoader()->getPresenterClass($presenter);
                 $request->setPresenterName($presenter);
             } catch (InvalidPresenterException $e) {
                 throw new BadRequestException($e->getMessage(), 404, $e);
             }
             $request->freeze();
             $this->presenter = new $class();
             $response = $this->presenter->run($request);
             if ($response instanceof ForwardingResponse) {
                 $request = $response->getRequest();
                 continue;
             } elseif ($response instanceof IPresenterResponse) {
                 $response->send();
             }
             break;
         } catch (Exception $e) {
             if ($this->catchExceptions === NULL) {
                 $this->catchExceptions = Environment::isProduction();
             }
             if (!$this->catchExceptions) {
                 throw $e;
             }
             $this->onError($this, $e);
             if ($repeatedError) {
                 $e = new ApplicationException('An error occured while executing error-presenter', 0, $e);
             }
             if (!$httpResponse->isSent()) {
                 $httpResponse->setCode($e instanceof BadRequestException ? $e->getCode() : 500);
             }
             if (!$repeatedError && $this->errorPresenter) {
                 $repeatedError = TRUE;
                 $request = new PresenterRequest($this->errorPresenter, PresenterRequest::FORWARD, array('exception' => $e));
             } else {
                 echo "<meta name='robots' content='noindex'>\n\n";
                 if ($e instanceof BadRequestException) {
                     echo "<title>404 Not Found</title>\n\n<h1>Not Found</h1>\n\n<p>The requested URL was not found on this server.</p>";
                 } else {
                     Debug::processException($e, FALSE);
                     echo "<title>500 Internal Server Error</title>\n\n<h1>Server Error</h1>\n\n", "<p>The server encountered an internal error and was unable to complete your request. Please try again later.</p>";
                 }
                 echo "\n\n<hr>\n<small><i>Nette Framework</i></small>";
                 break;
             }
         }
     } while (1);
     $this->onShutdown($this, isset($e) ? $e : NULL);
 }
コード例 #8
0
ファイル: Application.php プロジェクト: radypala/maga-website
 /**
  * Dispatch a HTTP request to a front controller.
  * @return void
  */
 public function run()
 {
     $httpRequest = $this->getHttpRequest();
     $httpResponse = $this->getHttpResponse();
     $httpRequest->setEncoding('UTF-8');
     if (Environment::getVariable('baseUri') === NULL) {
         Environment::setVariable('baseUri', $httpRequest->getUri()->getBasePath());
     }
     // autostarts session
     $session = $this->getSession();
     if (!$session->isStarted() && $session->exists()) {
         $session->start();
     }
     // enable routing debuggger
     Debug::addPanel(new RoutingDebugger($this->getRouter(), $httpRequest));
     // check HTTP method
     if ($this->allowedMethods) {
         $method = $httpRequest->getMethod();
         if (!in_array($method, $this->allowedMethods, TRUE)) {
             $httpResponse->setCode(IHttpResponse::S501_NOT_IMPLEMENTED);
             $httpResponse->setHeader('Allow', implode(',', $this->allowedMethods));
             echo '<h1>Method ' . htmlSpecialChars($method) . ' is not implemented</h1>';
             return;
         }
     }
     // dispatching
     $request = NULL;
     $repeatedError = FALSE;
     do {
         try {
             if (count($this->requests) > self::$maxLoop) {
                 throw new ApplicationException('Too many loops detected in application life cycle.');
             }
             if (!$request) {
                 $this->onStartup($this);
                 // default router
                 $router = $this->getRouter();
                 if ($router instanceof MultiRouter && !count($router)) {
                     $router[] = new SimpleRouter(array('presenter' => 'Default', 'action' => 'default'));
                 }
                 // routing
                 $request = $router->match($httpRequest);
                 if (!$request instanceof PresenterRequest) {
                     $request = NULL;
                     throw new BadRequestException('No route for HTTP request.');
                 }
                 if (strcasecmp($request->getPresenterName(), $this->errorPresenter) === 0) {
                     throw new BadRequestException('Invalid request.');
                 }
             }
             $this->requests[] = $request;
             $this->onRequest($this, $request);
             // Instantiate presenter
             $presenter = $request->getPresenterName();
             try {
                 $class = $this->getPresenterLoader()->getPresenterClass($presenter);
                 $request->setPresenterName($presenter);
             } catch (InvalidPresenterException $e) {
                 throw new BadRequestException($e->getMessage(), 404, $e);
             }
             $request->freeze();
             // Execute presenter
             $this->presenter = new $class();
             $response = $this->presenter->run($request);
             // Send response
             if ($response instanceof ForwardingResponse) {
                 $request = $response->getRequest();
                 continue;
             } elseif ($response instanceof IPresenterResponse) {
                 $response->send();
             }
             break;
         } catch (Exception $e) {
             // fault barrier
             if ($this->catchExceptions === NULL) {
                 $this->catchExceptions = Environment::isProduction();
             }
             $this->onError($this, $e);
             if (!$this->catchExceptions) {
                 $this->onShutdown($this, $e);
                 throw $e;
             }
             if ($repeatedError) {
                 $e = new ApplicationException('An error occured while executing error-presenter', 0, $e);
             }
             if (!$httpResponse->isSent()) {
                 $httpResponse->setCode($e instanceof BadRequestException ? $e->getCode() : 500);
             }
             if (!$repeatedError && $this->errorPresenter) {
                 $repeatedError = TRUE;
                 $request = new PresenterRequest($this->errorPresenter, PresenterRequest::FORWARD, array('exception' => $e));
                 // continue
             } else {
                 // default error handler
                 if ($e instanceof BadRequestException) {
                     $code = $e->getCode();
                 } else {
                     $code = 500;
                     Debug::log($e);
                 }
                 echo "<!DOCTYPE html><meta name=robots content=noindex><meta name=generator content='Nette Framework'>\n\n";
                 echo "<style>body{color:#333;background:white;width:500px;margin:100px auto}h1{font:bold 47px/1.5 sans-serif;margin:.6em 0}p{font:21px/1.5 Georgia,serif;margin:1.5em 0}small{font-size:70%;color:gray}</style>\n\n";
                 static $messages = array(0 => array('Oops...', 'Your browser sent a request that this server could not understand or process.'), 403 => array('Access Denied', 'You do not have permission to view this page. Please try contact the web site administrator if you believe you should be able to view this page.'), 404 => array('Page Not Found', 'The page you requested could not be found. It is possible that the address is incorrect, or that the page no longer exists. Please try the search engine to find what you are looking for.'), 405 => array('Method Not Allowed', 'The requested method is not allowed for the URL.'), 410 => array('Page Not Found', 'The page you requested has been taken off the site. We apologize for the inconvenience.'), 500 => array('Server Error', 'We\'re sorry! The server encountered an internal error and was unable to complete your request. Please try again later.'));
                 $message = isset($messages[$code]) ? $messages[$code] : $messages[0];
                 echo "<title>{$message['0']}</title>\n\n<h1>{$message['0']}</h1>\n\n<p>{$message['1']}</p>\n\n";
                 if ($code) {
                     echo "<p><small>{$code} error</small></p>";
                 }
                 break;
             }
         }
     } while (1);
     $this->onShutdown($this, isset($e) ? $e : NULL);
 }
コード例 #9
0
ファイル: UserPanel.php プロジェクト: radypala/maga-website
 /**
  * Registers panel to Debug bar
  * @return UserPanel;
  */
 public static function register()
 {
     $panel = new self();
     Debug::addPanel($panel);
     return $panel;
 }
コード例 #10
0
 /**
  * Register this panel
  *
  * @param array $items items for add to pannel
  */
 public static function register(array $items = NULL)
 {
     if (self::$registered) {
         throw new InvalidStateException("Callback panel is already registered");
     }
     Debug::addPanel(new static($items));
     //		Debug::addPanel(new self($items));
     //		Debug::addPanel(new self);
     self::$registered = TRUE;
 }