src/Debugger/Bar.php
public function render(): void
    {
        $useSession = $this->useSession && \session_status() === PHP_SESSION_ACTIVE;
        $redirectQueue = &$_SESSION['_tracy']['redirect'];

        foreach (['bar', 'redirect', 'bluescreen'] as $key) {
            $queue = &$_SESSION['_tracy'][$key];
            $queue = \array_slice((array) $queue, -10, null, true);
            $queue = \array_filter($queue, function ($item) {
                return isset($item['time']) && $item['time'] > \time() - 60;
            });
        }

        $rows = [];

        if (Helpers::isAjax()) {
			if ($useSession) {
				$rows[] = (object) ['type' => 'ajax', 'panels' => $this->renderPanels('-ajax')];
				$contentId = $_SERVER['HTTP_X_TRACY_AJAX'] . '-ajax';
				$_SESSION['_tracy']['bar'][$contentId] = ['content' => self::renderHtmlRows($rows), 'dumps' => Dumper::fetchLiveData(), 'time' => \time()];
			}
        } elseif (Helpers::isRedirect()) { // redirect
            if ($useSession) {
				Dumper::fetchLiveData();
				Dumper::$livePrefix = \count($redirectQueue) . 'p';
				$redirectQueue[] = [
					'panels' => $this->renderPanels('-r' . \count($redirectQueue)),
					'dumps' => Dumper::fetchLiveData(),
					'time' => \time(),
				];
			}
		} elseif (Helpers::isHtmlMode()) {
            $rows[] = (object) ['type' => 'main', 'panels' => $this->renderPanels()];
            $dumps = Dumper::fetchLiveData();
            foreach (\array_reverse((array) $redirectQueue) as $info) {
                $rows[] = (object) ['type' => 'redirect', 'panels' => $info['panels']];
                $dumps += $info['dumps'];
            }
            $redirectQueue = null;
            $content = self::renderHtmlRows($rows);

            if ($this->contentId) {
                $_SESSION['_tracy']['bar'][$this->contentId] = ['content' => $content, 'dumps' => $dumps, 'time' => time()];
			} else {
				$contentId = \substr(\md5(\uniqid('', true)), 0, 10);
				$nonce = Helpers::getNonce();
				$async = false;
				require __DIR__ . '/assets/Bar/loader.phtml';
			}
        }
    }
public function render(): void
    {
        $useSession = $this->useSession && \session_status() === PHP_SESSION_ACTIVE;
        $redirectQueue = &$_SESSION['_tracy']['redirect'];

        foreach (['bar', 'redirect', 'bluescreen'] as $key) {
            $queue = &$_SESSION['_tracy'][$key];
            $queue = \array_slice((array) $queue, -10, null, true);
            $queue = \array_filter($queue, function ($item) {
                return isset($item['time']) && $item['time'] > \time() - 60;
            });
        }

        $rows = [];

        if (Helpers::isAjax()) {
			if ($useSession) {
				$rows[] = (object) ['type' => 'ajax', 'panels' => $this->renderPanels('-ajax')];
				$contentId = $_SERVER['HTTP_X_TRACY_AJAX'] . '-ajax';
				$_SESSION['_tracy']['bar'][$contentId] = ['content' => self::renderHtmlRows($rows), 'dumps' => Dumper::fetchLiveData(), 'time' => \time()];
			}
        } elseif (Helpers::isRedirect()) { // redirect
            if ($useSession) {
				Dumper::fetchLiveData();
				Dumper::$livePrefix = \count($redirectQueue) . 'p';
				$redirectQueue[] = [
					'panels' => $this->renderPanels('-r' . \count($redirectQueue)),
					'dumps' => Dumper::fetchLiveData(),
					'time' => \time(),
				];
			}
		} elseif (Helpers::isHtmlMode()) {
            $rows[] = (object) ['type' => 'main', 'panels' => $this->renderPanels()];
            $dumps = Dumper::fetchLiveData();
            foreach (\array_reverse((array) $redirectQueue) as $info) {
                $rows[] = (object) ['type' => 'redirect', 'panels' => $info['panels']];
                $dumps += $info['dumps'];
            }
            $redirectQueue = null;
            $content = self::renderHtmlRows($rows);

            if ($this->contentId) {
                $_SESSION['_tracy']['bar'][$this->contentId] = ['content' => $content, 'dumps' => $dumps, 'time' => time()];
			} else {
				$contentId = \substr(\md5(\uniqid('', true)), 0, 10);
				$nonce = Helpers::getNonce();
				$async = false;
				require __DIR__ . '/assets/Bar/loader.phtml';
			}
        }
    }
public function render ( ) : void { $ useSession = $ this -> useSession && \ session_status ( ) === PHP_SESSION_ACTIVE ; $ redirectQueue = & $ _SESSION [ '_tracy' ] [ 'redirect' ] ; foreach ( [ 'bar' , 'redirect' , 'bluescreen' ] as $ key ) { $ queue = & $ _SESSION [ '_tracy' ] [ $ key ] ; $ queue = \ array_slice ( ( array ) $ queue , - 10 , null , true ) ; $ queue = \ array_filter ( $ queue , function ( $ item ) { return isset ( $ item [ 'time' ] ) && $ item [ 'time' ] > \ time ( ) - 60 ; } ) ; } $ rows = [ ] ; if ( Helpers :: isAjax ( ) ) { if ( $ useSession ) { $ rows [ ] = ( object ) [ 'type' => 'ajax' , 'panels' => $ this -> renderPanels ( '-ajax' ) ] ; $ contentId = $ _SERVER [ 'HTTP_X_TRACY_AJAX' ] . '-ajax' ; $ _SESSION [ '_tracy' ] [ 'bar' ] [ $ contentId ] = [ 'content' => self :: renderHtmlRows ( $ rows ) , 'dumps' => Dumper :: fetchLiveData ( ) , 'time' => \ time ( ) ] ; } } elseif ( Helpers :: isRedirect ( ) ) { // redirect if ( $ useSession ) { Dumper :: fetchLiveData ( ) ; Dumper :: $ livePrefix = \ count ( $ redirectQueue ) . 'p' ; $ redirectQueue [ ] = [ 'panels' => $ this -> renderPanels ( '-r' . \ count ( $ redirectQueue ) ) , 'dumps' => Dumper :: fetchLiveData ( ) , 'time' => \ time ( ) , ] ; } } elseif ( Helpers :: isHtmlMode ( ) ) { $ rows [ ] = ( object ) [ 'type' => 'main' , 'panels' => $ this -> renderPanels ( ) ] ; $ dumps = Dumper :: fetchLiveData ( ) ; foreach ( \ array_reverse ( ( array ) $ redirectQueue ) as $ info ) { $ rows [ ] = ( object ) [ 'type' => 'redirect' , 'panels' => $ info [ 'panels' ] ] ; $ dumps += $ info [ 'dumps' ] ; } $ redirectQueue = null ; $ content = self :: renderHtmlRows ( $ rows ) ; if ( $ this -> contentId ) { $ _SESSION [ '_tracy' ] [ 'bar' ] [ $ this -> contentId ] = [ 'content' => $ content , 'dumps' => $ dumps , 'time' => time ( ) ] ; } else { $ contentId = \ substr ( \ md5 ( \ uniqid ( '' , true ) ) , 0 , 10 ) ; $ nonce = Helpers :: getNonce ( ) ; $ async = false ; require __DIR__ . '/assets/Bar/loader.phtml' ; } } }
Renders debug bar.

@return void
Renders debug bar .