Source for file bluescreen.phtml
Documentation is available at bluescreen.phtml
- 1: <?php
- 3: /**
- 4: * Nette Framework - Debugger bluescreen template.
- 5: *
- 11: *
- 17: */
- 23: /**
- 24: * Prints source code.
- 29: */
- 31: {
- 38: }
- 55: }
- 56: }
- 74: }
- 75: }
- 77: }
- 81: /**
- 82: * Dumps variable.
- 85: */
- 87: {
- 88: return '<pre class="dump">' . preg_replace_callback('#(^|\s+)?(.*)\((\d+)\) <code>#', '_netteDumpCb', $dump) . '</pre>';
- 89: }
- 92: {
- 94: }
- 98: /**
- 99: * Opens panel.
- 103: */
- 105: {
- 108: ?>
- 109: <div class="panel">
- 110: <h2><a href="#" onclick="return !netteToggle(this, 'pnl<?php echo $id ?>')"><?php echo htmlSpecialChars($name) ?> <abbr><?php echo $collapsed ? '►' : '▼' ?></abbr></a></h2>
- 113: <?php
- 114: }
- 118: /**
- 119: * Closes panel.
- 121: */
- 123: {
- 124: ?>
- 125: </div>
- 126: </div>
- 127: <?php
- 128: }
- 130: }
- 133: /**
- 134: * Page title.
- 135: */
- 153: $title = ($exception instanceof FatalErrorException && isset($errorTypes[$exception->getSeverity()])) ? $errorTypes[$exception->getSeverity()] : get_class($exception);
- 158: }
- 160: ?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- 161: <html lang="en">
- 162: <head>
- 163: <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- 164: <meta name="robots" content="noindex,noarchive">
- 165: <meta name="generator" content="Nette Framework">
- 167: <title><?php echo htmlspecialchars($title) ?></title><!-- <?php echo $exception->getMessage(), ($exception->getCode() ? ' #' . $exception->getCode() : '') ?> -->
- 169: <style type="text/css">body{margin:0 0 2em;padding:0}#netteBluescreen{font:9pt/1.5 Verdana,sans-serif;background:white;color:#333;position:absolute;left:0;top:0;width:100%;z-index:23178;text-align:left}#netteBluescreen *{color:inherit;background:inherit;text-align:inherit}#netteBluescreenIcon{position:absolute;right:.5em;top:.5em;z-index:23179;text-decoration:none;background:red;padding:3px}#netteBluescreenIcon abbr{color:black!important}#netteBluescreen h1{font:18pt/1.5 Verdana,sans-serif!important;margin:.6em 0}#netteBluescreen h2{font:14pt/1.5 sans-serif!important;color:#888;margin:.6em 0}#netteBluescreen a{text-decoration:none;color:#4197E3}#netteBluescreen a abbr{font-family:sans-serif;color:#999}#netteBluescreen h3{font:bold 10pt/1.5 Verdana,sans-serif!important;margin:1em 0;padding:0}#netteBluescreen p{margin:.8em 0}#netteBluescreen pre,#netteBluescreen code,#netteBluescreen table{font:9pt/1.5 Consolas,monospace!important}#netteBluescreen pre,#netteBluescreen table{background:#fffbcc;padding:.4em .7em;border:1px dotted silver}#netteBluescreen table pre{padding:0;margin:0;border:none}#netteBluescreen pre.dump span{color:#c16549}#netteBluescreen pre.dump a{color:#333}#netteBluescreen div.panel{border-bottom:1px solid #eee;padding:1px 2em}#netteBluescreen div.inner{padding:.1em 1em 1em;background:#f5f5f5}#netteBluescreen table{border-collapse:collapse;width:100%}#netteBluescreen td,#netteBluescreen th{vertical-align:top;text-align:left;padding:2px 3px;border:1px solid #eeb}#netteBluescreen th{width:10%;font-weight:bold}#netteBluescreen .odd,#netteBluescreen .odd pre{background-color:#faf5c3}#netteBluescreen ul{font:7pt/1.5 Verdana,sans-serif!important;padding:1em 2em 50px}#netteBluescreen .highlight,#netteBluescreenError{background:red;color:white;font-weight:bold;font-style:normal;display:block}#netteBluescreen .line{color:#9e9e7e;font-weight:normal;font-style:normal}</style>
- 172: <script type="text/javascript">/*<![CDATA[*/document.write("<style> .collapsed { display: none; } </style>");function netteToggle(a,b){var c=a.getElementsByTagName("abbr")[0];for(a=b?document.getElementById(b):a.nextSibling;a.nodeType!==1;)a=a.nextSibling;b=a.currentStyle?a.currentStyle.display=="none":getComputedStyle(a,null).display=="none";c.innerHTML=String.fromCharCode(b?9660:9658);a.style.display=b?a.tagName.toLowerCase()==="code"?"inline":"block":"none";return true};/*]]>*/</script>
- 173: </head>
- 177: <body>
- 178: <div id="netteBluescreen">
- 179: <a id="netteBluescreenIcon" href="#" onclick="return !netteToggle(this)"><abbr>▼</abbr></a
- 181: ><div>
- 182: <div id="netteBluescreenError" class="panel">
- 183: <h1><?php echo htmlspecialchars($title), ($exception->getCode() ? ' #' . $exception->getCode() : '') ?></h1>
- 186: </div>
- 195: <div class="panel">
- 196: <h1><?php echo htmlspecialchars(get_class($ex)), ($ex->getCode() ? ' #' . $ex->getCode() : '') ?></h1>
- 199: </div>
- 205: <p><strong>File:</strong> <?php echo htmlspecialchars($ex->getFile()) ?> <strong>Line:</strong> <?php echo $ex->getLine() ?></p>
- 213: <ol>
- 215: <li><p>
- 220: <PHP inner-code>
- 228: (<?php if (!empty($row['args'])): ?><a href="#" onclick="return !netteToggle(this, 'args<?php echo "$level-$key" ?>')">arguments <abbr>►</abbr></a><?php endif ?>)
- 229: </p>
- 233: <table>
- 234: <?php
- 236: $r = isset($row['class']) ? new ReflectionMethod($row['class'], $row['function']) : new ReflectionFunction($row['function']);
- 240: }
- 245: }
- 246: ?>
- 247: </table>
- 248: </div>
- 253: <pre <?php if (!$collapsed || isset($internals[$row['file']])) echo 'class="collapsed"'; else $collapsed = FALSE ?> id="src<?php echo "$level-$key" ?>"><?php _netteDebugPrintCode($row['file'], $row['line']) ?></pre>
- 256: </li>
- 260: <li><i>empty</i></li>
- 262: </ol>
- 279: <table>
- 280: <?php
- 282: echo '<tr><th>$', htmlspecialchars($k), '</th><td>', _netteDump(self::_dump($v, 0)), "</td></tr>\n";
- 283: }
- 284: ?>
- 285: </table>
- 289: <?php } while ((method_exists($ex, 'getPrevious') && $ex = $ex->getPrevious()) || (isset($ex->previous) && $ex = $ex->previous)); ?>
- 296: <h3>Requests</h3>
- 299: <h3>Presenter</h3>
- 307: <?php
- 310: <h3><a href="#" onclick="return !netteToggle(this, 'pnl-env-const')">Constants <abbr>▼</abbr></a></h3>
- 311: <table id="pnl-env-const">
- 312: <?php
- 316: }
- 317: ?>
- 318: </table>
- 322: <h3><a href="#" onclick="return !netteToggle(this, 'pnl-env-files')">Included files <abbr>►</abbr></a>(<?php echo count(get_included_files()) ?>)</h3>
- 323: <table id="pnl-env-files" class="collapsed">
- 324: <?php
- 327: }
- 328: ?>
- 329: </table>
- 332: <h3>$_SERVER</h3>
- 334: <p><i>empty</i></p>
- 336: <table>
- 337: <?php
- 338: foreach ($_SERVER as $k => $v) echo '<tr'.($rn++%2?' class="odd"':'').'><th>', htmlspecialchars($k), '</th><td>', _netteDump(self::_dump($v, 0)), "</td></tr>\n";
- 339: ?>
- 340: </table>
- 348: <h3>Headers</h3>
- 349: <table>
- 350: <?php
- 351: foreach (apache_request_headers() as $k => $v) echo '<tr'.($rn++%2?' class="odd"':'').'><th>', htmlspecialchars($k), '</th><td>', htmlspecialchars($v), "</td></tr>\n";
- 352: ?>
- 353: </table>
- 360: <p><i>empty</i></p>
- 362: <table>
- 363: <?php
- 364: foreach ($GLOBALS[$name] as $k => $v) echo '<tr'.($rn++%2?' class="odd"':'').'><th>', htmlspecialchars($k), '</th><td>', _netteDump(self::_dump($v, 0)), "</td></tr>\n";
- 365: ?>
- 366: </table>
- 374: <h3>Headers</h3>
- 376: <pre><?php
- 378: ?></pre>
- 380: <p><i>no headers</i></p>
- 385: <ul>
- 387: <?php foreach ((array) call_user_func($callback, 'bluescreen') as $line): ?><li><?php echo $line, "\n" ?></li><?php endforeach ?>
- 389: </ul>
- 390: </div>
- 391: </div>
- 393: <script type="text/javascript">document.body.appendChild(document.getElementById("netteBluescreen"));</script>
- 394: </body>
- 395: </html>