diff options
Diffstat (limited to 'system/views')
| -rw-r--r-- | system/views/kohana/error.php | 252 | ||||
| -rw-r--r-- | system/views/kohana/error_disabled.php | 19 | ||||
| -rw-r--r-- | system/views/kohana/template.php | 36 | ||||
| -rw-r--r-- | system/views/profiler/profiler.php | 37 | ||||
| -rw-r--r-- | system/views/profiler/table.css | 53 | ||||
| -rw-r--r-- | system/views/profiler/table.php | 24 |
6 files changed, 421 insertions, 0 deletions
diff --git a/system/views/kohana/error.php b/system/views/kohana/error.php new file mode 100644 index 0000000..aa6770c --- /dev/null +++ b/system/views/kohana/error.php @@ -0,0 +1,252 @@ +<?php defined('SYSPATH') OR die('No direct access allowed.'); +// Unique error identifier +$error_id = uniqid('error'); +?> +<style type="text/css"> + + #kohana_error { + background: #CFF292; + font-size: 1em; + font-family: sans-serif; + text-align: left; + color: #111; + } + + #kohana_error h1, #kohana_error h2 { + margin: 0; + padding: 1em; + font-size: 1em; + font-weight: normal; + background: #CFF292; + color: #000000; + } + + #kohana_error h1 a, #kohana_error h2 a { + color: #000; + } + + #kohana_error h2 { + background: #CFF292; + border-top: 1px dotted; + } + + #kohana_error h3 { + margin: 0; + padding: 0.4em 0 0; + font-size: 1em; + font-weight: normal; + } + + #kohana_error p { + margin: 0; + padding: 0.2em 0; + } + + #kohana_error a { + color: #1b323b; + } + + #kohana_error pre { + overflow: auto; + white-space: pre-wrap; + } + + #kohana_error table { + width: 100%; + display: block; + margin: 0 0 0.4em; + padding: 0; + border-collapse: collapse; + background: #fff; + } + + #kohana_error table td { + border: solid 1px #ddd; + text-align: left; + vertical-align: top; + padding: 0.4em; + } + + #kohana_error div.content { + padding: 0.4em 1em 1em; + overflow: hidden; + border-top: 1px dotted; + } + + #kohana_error pre.source { + margin: 0 0 1em; + padding: 0.4em; + background: #fff; + border: dotted 1px #b7c680; + line-height: 1.2em; + } + + #kohana_error pre.source span.line { + display: block; + } + + #kohana_error pre.source span.highlight { + background: #f0eb96; + } + + #kohana_error pre.source span.line span.number { + color: #666; + } + + #kohana_error ol.trace { + display: block; + margin: 0 0 0 2em; + padding: 0; + list-style: decimal; + } + + #kohana_error ol.trace li { + margin: 0; + padding: 0; + } +</style> +<script type="text/javascript"> + document.write('<style type="text/css"> .collapsed { display: none; } </style>'); + function koggle(elem) + { + elem = document.getElementById(elem); + + if (elem.style && elem.style['display']) + // Only works with the "style" attr + var disp = elem.style['display']; + else + if (elem.currentStyle) + // For MSIE, naturally + var disp = elem.currentStyle['display']; + else + if (window.getComputedStyle) + // For most other browsers + var disp = document.defaultView.getComputedStyle(elem, null).getPropertyValue('display'); + + // Toggle the state of the "display" style + elem.style.display = disp == 'block' ? 'none' : 'block'; + return false; + } +</script> +<div id="kohana_error"> + <h1> + <span class="type"> +<?php echo $type?> [ <?php echo __($code)?> ]: + </span> + <span class="message"> +<?php echo $message?> + </span> + </h1> + <div id="<?php echo $error_id ?>" class="content"> + <p> + <span class="file"> +<?php echo Kohana_Exception::debug_path($file)?>[ <?php echo $line?> ] + </span> + </p> + +<?php if (Kohana_Exception::$source_output AND $source_code = Kohana_Exception::debug_source($file, $line)) : ?> + <pre class="source"><code><?php foreach ($source_code as $num => $row) : ?><span class="line <?php if ($num == $line) echo 'highlight' ?>"><span class="number"><?php echo $num ?></span><?php echo htmlspecialchars($row, ENT_NOQUOTES, Kohana::CHARSET) ?></span><?php endforeach ?></code></pre> +<?php endif ?> + +<?php if (Kohana_Exception::$trace_output) : ?> + <ol class="trace"> + <?php foreach (Kohana_Exception::trace($trace) as $i=>$step): ?> + <li> + <p> + <span class="file"> + <?php if ($step['file']): $source_id = $error_id.'source'.$i; ?> + <?php if (Kohana_Exception::$source_output AND $step['source']) : ?> + <a href="#<?php echo $source_id ?>" onclick="return koggle('<?php echo $source_id ?>')"><?php echo Kohana_Exception::debug_path($step['file'])?>[ <?php echo $step['line']?> ]</a> + <?php else : ?> + <span class="file"><?php echo Kohana_Exception::debug_path($step['file'])?>[ <?php echo $step['line']?> ]</span> + <?php endif ?> + <?php else : ?> + {<?php echo __('PHP internal call')?>} + <?php endif?> + </span> + » + <?php echo $step['function']?>(<?php if ($step['args']): $args_id = $error_id.'args'.$i; ?><a href="#<?php echo $args_id ?>" onclick="return koggle('<?php echo $args_id ?>')"><?php echo __('arguments')?></a> +<?php endif?>) + </p> + <?php if (isset($args_id)): ?> + <div id="<?php echo $args_id ?>" class="collapsed"> + <table cellspacing="0"> + <?php foreach ($step['args'] as $name=>$arg): ?> + <tr> + <td> + <code> +<?php echo $name?> + </code> + </td> + <td> + <pre><?php echo Kohana_Exception::dump($arg) ?></pre> + </td> + </tr> + <?php endforeach?> + </table> + </div> + <?php endif?> + <?php if (Kohana_Exception::$source_output AND $step['source'] AND isset($source_id)): ?> + <pre id="<?php echo $source_id ?>" class="source collapsed"><code><?php foreach ($step['source'] as $num => $row) : ?><span class="line <?php if ($num == $step['line']) echo 'highlight' ?>"><span class="number"><?php echo $num ?></span><?php echo htmlspecialchars($row, ENT_NOQUOTES, Kohana::CHARSET) ?></span><?php endforeach ?></code></pre> + <?php endif?> + </li> + <?php unset($args_id, $source_id); ?> + <?php endforeach?> + </ol> +<?php endif ?> + + </div> + <h2><a href="#<?php echo $env_id = $error_id.'environment' ?>" onclick="return koggle('<?php echo $env_id ?>')"><?php echo __('Environment')?></a></h2> + <div id="<?php echo $env_id ?>" class="content collapsed"> + <?php $included = get_included_files()?> + <h3><a href="#<?php echo $env_id = $error_id.'environment_included' ?>" onclick="return koggle('<?php echo $env_id ?>')"><?php echo __('Included files')?></a>(<?php echo count($included)?>)</h3> + <div id="<?php echo $env_id ?>" class="collapsed"> + <table cellspacing="0"> + <?php foreach ($included as $file): ?> + <tr> + <td> + <code> +<?php echo Kohana_Exception::debug_path($file)?> + </code> + </td> + </tr> + <?php endforeach?> + </table> + </div> + <?php $included = get_loaded_extensions()?> + <h3><a href="#<?php echo $env_id = $error_id.'environment_loaded' ?>" onclick="return koggle('<?php echo $env_id ?>')"><?php echo __('Loaded extensions')?></a>(<?php echo count($included)?>)</h3> + <div id="<?php echo $env_id ?>" class="collapsed"> + <table cellspacing="0"> + <?php foreach ($included as $file): ?> + <tr> + <td> + <code> +<?php echo Kohana_Exception::debug_path($file)?> + </code> + </td> + </tr> + <?php endforeach?> + </table> + </div> + <?php foreach (array('_SESSION', '_GET', '_POST', '_FILES', '_COOKIE', '_SERVER') as $var): ?> + <?php if ( empty($GLOBALS[$var]) OR ! is_array($GLOBALS[$var])) continue ?> + <h3><a href="#<?php echo $env_id = $error_id.'environment'.strtolower($var) ?>" onclick="return koggle('<?php echo $env_id ?>')">$<?php echo $var?></a></h3> + <div id="<?php echo $env_id ?>" class="collapsed"> + <table cellspacing="0"> + <?php foreach ($GLOBALS[$var] as $key=>$value): ?> + <tr> + <td> + <code> +<?php echo $key?> + </code> + </td> + <td> + <pre><?php echo Kohana_Exception::dump($value) ?></pre> + </td> + </tr> + <?php endforeach?> + </table> + </div> + <?php endforeach?> + </div> +</div> diff --git a/system/views/kohana/error_disabled.php b/system/views/kohana/error_disabled.php new file mode 100644 index 0000000..1024eb1 --- /dev/null +++ b/system/views/kohana/error_disabled.php @@ -0,0 +1,19 @@ +<?php defined('SYSPATH') OR die('No direct access allowed.'); ?> + <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> + <title><?php echo htmlspecialchars(__('Unable to Complete Request'), ENT_QUOTES, Kohana::CHARSET) ?></title> + </head> + <body> + <div id="framework_error" style="width:24em;margin:50px auto;"> + <h3 style="text-align:center"><?php echo htmlspecialchars(__('Unable to Complete Request'), ENT_QUOTES, Kohana::CHARSET) ?></h3> + <p style="text-align:center"> +<?php + echo __('You can go to the <a href="%site%">home page</a> or <a href="%uri%">try again</a>.', + array('%site%' => htmlspecialchars(url::site(), ENT_QUOTES, Kohana::CHARSET), '%uri%' => htmlspecialchars(url::site(Router::$current_uri), ENT_QUOTES, Kohana::CHARSET))); +?> + </p> + </div> + </body> +</html> diff --git a/system/views/kohana/template.php b/system/views/kohana/template.php new file mode 100644 index 0000000..84ddbff --- /dev/null +++ b/system/views/kohana/template.php @@ -0,0 +1,36 @@ +<?php defined('SYSPATH') OR die('No direct access allowed.'); ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> + +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> +<head> + + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> + <title><?php echo html::chars(__($title)) ?></title> + + <style type="text/css"> + html { background: #83c018 url(<?php echo url::base(FALSE) ?>kohana.png) 50% 0 no-repeat; } + body { width: 52em; margin: 200px auto 2em; font-size: 76%; font-family: Arial, sans-serif; color: #273907; line-height: 1.5; text-align: center; } + h1 { font-size: 3em; font-weight: normal; text-transform: uppercase; color: #fff; } + a { color: inherit; } + code { font-size: 1.3em; } + ul { list-style: none; padding: 2em 0; } + ul li { display: inline; padding-right: 1em; text-transform: uppercase; } + ul li a { padding: 0.5em 1em; background: #69ad0f; border: 1px solid #569f09; color: #fff; text-decoration: none; } + ul li a:hover { background: #569f09; } + .box { padding: 2em; background: #98cc2b; border: 1px solid #569f09; } + .copyright { font-size: 0.9em; text-transform: uppercase; color: #557d10; } + </style> + +</head> +<body> + + <h1><?php echo html::chars(__($title)) ?></h1> + <?php echo $content ?> + + <p class="copyright"> + <?php echo __('Rendered in {execution_time} seconds, using {memory_usage} of memory')?><br /> + Copyright ©2007–2008 Kohana Team + </p> + +</body> +</html>
\ No newline at end of file diff --git a/system/views/profiler/profiler.php b/system/views/profiler/profiler.php new file mode 100644 index 0000000..7b9ae95 --- /dev/null +++ b/system/views/profiler/profiler.php @@ -0,0 +1,37 @@ +<?php defined('SYSPATH') OR die('No direct access allowed.'); ?> +<style type="text/css"> +#kohana-profiler +{ + font-family: Monaco, 'Courier New'; + background-color: #F8FFF8; + margin-top: 20px; + clear: both; + padding: 10px 10px 0; + border: 1px solid #E5EFF8; + text-align: left; +} +#kohana-profiler pre +{ + margin: 0; + font: inherit; +} +#kohana-profiler .kp-meta +{ + margin: 0 0 10px; + padding: 4px; + background: #FFF; + border: 1px solid #E5EFF8; + color: #A6B0B8; + text-align: center; +} +<?php echo $styles ?> +</style> +<div id="kohana-profiler"> +<?php +foreach ($profiles as $profile) +{ + echo $profile->render(); +} +?> +<p class="kp-meta"><?php echo __('Profiler executed in :execution_timess', array(':execution_times' => number_format($execution_time, 3))) ?></p> +</div>
\ No newline at end of file diff --git a/system/views/profiler/table.css b/system/views/profiler/table.css new file mode 100644 index 0000000..41a1c9a --- /dev/null +++ b/system/views/profiler/table.css @@ -0,0 +1,53 @@ +#kohana-profiler .kp-table +{ + font-size: 1.0em; + color: #4D6171; + width: 100%; + border-collapse: collapse; + border-top: 1px solid #E5EFF8; + border-right: 1px solid #E5EFF8; + border-left: 1px solid #E5EFF8; + margin-bottom: 10px; +} +#kohana-profiler .kp-table td +{ + background-color: #FFFFFF; + border-bottom: 1px solid #E5EFF8; + padding: 3px; + vertical-align: top; +} +#kohana-profiler .kp-table .kp-title td +{ + font-weight: bold; + background-color: inherit; +} +#kohana-profiler .kp-table .kp-altrow td +{ + background-color: #F7FBFF; +} +#kohana-profiler .kp-table .kp-totalrow td +{ + background-color: #FAFAFA; + border-top: 1px solid #D2DCE5; + font-weight: bold; +} +#kohana-profiler .kp-table .kp-column +{ + width: 100px; + border-left: 1px solid #E5EFF8; + text-align: center; +} +#kohana-profiler .kp-table .kp-data, #kohana-profiler .kp-table .kp-name +{ + background-color: #FAFAFB; + vertical-align: top; +} +#kohana-profiler .kp-table .kp-name +{ + width: 200px; + border-right: 1px solid #E5EFF8; +} +#kohana-profiler .kp-table .kp-altrow .kp-data, #kohana-profiler .kp-table .kp-altrow .kp-name +{ + background-color: #F6F8FB; +}
\ No newline at end of file diff --git a/system/views/profiler/table.php b/system/views/profiler/table.php new file mode 100644 index 0000000..7cdf79d --- /dev/null +++ b/system/views/profiler/table.php @@ -0,0 +1,24 @@ +<?php defined('SYSPATH') OR die('No direct access allowed.'); ?> +<table class="kp-table"> +<?php +foreach ($rows as $row): + +$class = empty($row['class']) ? '' : ' class="'.$row['class'].'"'; +$style = empty($row['style']) ? '' : ' style="'.$row['style'].'"'; +?> + <tr<?php echo $class; echo $style; ?>> + <?php + foreach ($columns as $index => $column) + { + $class = empty($column['class']) ? '' : ' class="'.$column['class'].'"'; + $style = empty($column['style']) ? '' : ' style="'.$column['style'].'"'; + $value = $row['data'][$index]; + $value = (is_array($value) OR is_object($value)) ? '<pre>'.htmlspecialchars(print_r($value, TRUE), ENT_QUOTES, Kohana::CHARSET).'</pre>' : htmlspecialchars($value, ENT_QUOTES, Kohana::CHARSET); + echo '<td' . $style . $class . '>' . wordwrap($value, 100, '<br />', true) . '</td>'; + } + ?> + </tr> +<?php +endforeach; +?> +</table> |
