Commit | Line | Data |
---|---|---|
5d3e8144 TD |
1 | {include file='header' pageTitle='wcf.acp.exceptionLog'} |
2 | <script type="text/javascript"> | |
3 | //<![CDATA[ | |
4 | $(function() { | |
5 | {if $exceptionID}window.location.hash = '{$exceptionID|encodeJS}';{/if} | |
6 | WCF.Collapsible.Simple.init(); | |
7 | ||
8 | $('#exceptionID').on('keyup keydown keypress', function () { | |
9 | if ($.trim($(this).val()) == '') { | |
10 | $('#logFile').enable().parents('dl').removeClass('disabled'); | |
11 | } | |
12 | else { | |
13 | $('#logFile').disable().parents('dl').addClass('disabled'); | |
14 | } | |
15 | }).trigger('keypress'); | |
16 | ||
17 | $('.jsCopyException').click(function () { | |
18 | $(this).select(); | |
19 | }); | |
20 | }); | |
21 | //]]> | |
22 | </script> | |
23 | ||
24 | <header class="boxHeadline"> | |
635a8feb | 25 | <h1>{lang}wcf.acp.exceptionLog{/lang}</h1> |
5d3e8144 TD |
26 | </header> |
27 | ||
020afe4e MS |
28 | {if !$logFiles|empty} |
29 | <form action="{link controller='ExceptionLogView'}{/link}"> | |
30 | <div class="container containerPadding marginTop"> | |
31 | <fieldset><legend>{lang}wcf.acp.exceptionLog.search{/lang}</legend> | |
32 | <dl> | |
33 | <dt><label for="exceptionID">{lang}wcf.acp.exceptionLog.search.exceptionID{/lang}</label></dt> | |
34 | <dd> | |
a655041e | 35 | <input type="text" id="exceptionID" name="exceptionID" value="{$exceptionID}" autofocus="autofocus" class="medium" /> |
020afe4e MS |
36 | </dd> |
37 | </dl> | |
38 | <dl> | |
39 | <dt><label for="logFile">{lang}wcf.acp.exceptionLog.search.logFile{/lang}</label></dt> | |
40 | <dd> | |
41 | <select id="logFile" name="logFile"> | |
42 | {htmlOptions options=$logFiles selected=$logFile} | |
43 | </select> | |
44 | </dd> | |
45 | </dl> | |
46 | </fieldset> | |
47 | ||
48 | <div class="formSubmit"> | |
49 | <input type="submit" value="{lang}wcf.global.button.submit{/lang}" accesskey="s" /> | |
50 | {@SID_INPUT_TAG} | |
51 | </div> | |
5d3e8144 | 52 | </div> |
020afe4e MS |
53 | </form> |
54 | {/if} | |
5d3e8144 TD |
55 | |
56 | <div class="contentNavigation"> | |
57 | {pages print=true controller="ExceptionLogView" link="pageNo=%d&logFile=$logFile"} | |
58 | ||
59 | {hascontent} | |
60 | <nav> | |
61 | <ul> | |
62 | {content} | |
63 | {event name='contentNavigationButtonsTop'} | |
64 | {/content} | |
65 | </ul> | |
66 | </nav> | |
67 | {/hascontent} | |
68 | </div> | |
69 | ||
020afe4e MS |
70 | {if !$logFiles|empty} |
71 | {if $logFile} | |
72 | {foreach from=$exceptions item='exception' key='exceptionKey'} | |
73 | <div class="tabularBox tabularBoxTitle marginTop" id="{$exceptionKey}"> | |
635a8feb MW |
74 | <header> |
75 | <h2><a class="jsCollapsible jsTooltip" data-is-open="{if $exceptionKey == $exceptionID}1{else}0{/if}" data-collapsible-container="exception_{$exceptionKey}" title="{lang}wcf.global.button.collapsible{/lang}" class="jsTooltip"><span class="icon icon16 icon-chevron-{if $exceptionKey == $exceptionID}down{else}right{/if}"></span></a> {$exception[message]}</h2> | |
76 | <small>{$exception[date]|strtotime|plainTime}</small> | |
77 | </header> | |
020afe4e MS |
78 | |
79 | <div id="exception_{$exceptionKey}" class="container containerPadding" {if $exceptionKey != $exceptionID} style="display: none;"{/if}> | |
80 | <dl> | |
81 | <dt>{lang}wcf.acp.exceptionLog.exception.file{/lang}</dt> | |
82 | <dd>{$exception[file]} ({$exception[line]})</dd> | |
83 | </dl> | |
84 | <dl> | |
85 | <dt>{lang}wcf.acp.exceptionLog.exception.phpVersion{/lang}</dt> | |
86 | <dd>{$exception[phpVersion]}</dd> | |
87 | </dl> | |
88 | <dl> | |
89 | <dt>{lang}wcf.acp.exceptionLog.exception.wcfVersion{/lang}</dt> | |
90 | <dd>{$exception[wcfVersion]}</dd> | |
91 | </dl> | |
92 | <dl> | |
93 | <dt>{lang}wcf.acp.exceptionLog.exception.requestURI{/lang}</dt> | |
94 | <dd>{$exception[requestURI]}</dd> | |
95 | </dl> | |
96 | <dl> | |
97 | <dt>{lang}wcf.acp.exceptionLog.exception.referrer{/lang}</dt> | |
98 | <dd>{$exception[referrer]}</dd> | |
99 | </dl> | |
44c0ddbd TD |
100 | <dl> |
101 | <dt>{lang}wcf.acp.exceptionLog.exception.userAgent{/lang}</dt> | |
102 | <dd>{$exception[userAgent]}</dd> | |
103 | </dl> | |
020afe4e MS |
104 | <dl> |
105 | <dt>{lang}wcf.acp.exceptionLog.exception.stacktrace{/lang}</dt> | |
106 | <dd style="font-family: monospace; word-wrap: wrap-all; word-break: break-all;"> | |
107 | <ul> | |
108 | <li>{@"</li><li>"|implode:$exception[stacktrace]}</li> | |
109 | </ul> | |
110 | </dd> | |
111 | </dl> | |
112 | <dl> | |
113 | <dt>{lang}wcf.acp.exceptionLog.exception.copy{/lang}</dt> | |
114 | <dd><textarea rows="5" cols="40" class="jsCopyException" readonly="readonly">{$exception[0]}</textarea></dd> | |
115 | </dl> | |
116 | </div> | |
5d3e8144 | 117 | </div> |
020afe4e MS |
118 | {/foreach} |
119 | {elseif $exceptionID} | |
120 | <p class="error">{lang}wcf.acp.exceptionLog.exceptionNotFound{/lang}</p> | |
121 | {/if} | |
122 | {else} | |
123 | <p class="info">{lang}wcf.acp.exceptionLog.noneAvailable{/lang}</p> | |
5d3e8144 | 124 | {/if} |
020afe4e | 125 | |
5d3e8144 | 126 | {include file='footer'} |