New skin
@@ -11,7 +11,7 @@ Layout::header();
|
||||
|
||||
<p>Reports <strong><?php echo $total ?></strong></p>
|
||||
|
||||
<table>
|
||||
<table width="100%" class="jtable">
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>Version</th>
|
||||
|
||||
BIN
htdocs/css/singularity/images/animated-overlay.gif
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
htdocs/css/singularity/images/ui-bg_flat_25_1e1e1e_40x100.png
Normal file
|
After Width: | Height: | Size: 230 B |
BIN
htdocs/css/singularity/images/ui-bg_flat_30_cccccc_40x100.png
Normal file
|
After Width: | Height: | Size: 220 B |
BIN
htdocs/css/singularity/images/ui-bg_flat_35_222222_40x100.png
Normal file
|
After Width: | Height: | Size: 220 B |
BIN
htdocs/css/singularity/images/ui-bg_flat_50_5c5c5c_40x100.png
Normal file
|
After Width: | Height: | Size: 230 B |
BIN
htdocs/css/singularity/images/ui-bg_flat_80_e4e4e4_40x100.png
Normal file
|
After Width: | Height: | Size: 230 B |
BIN
htdocs/css/singularity/images/ui-bg_glass_40_ffc73d_1x400.png
Normal file
|
After Width: | Height: | Size: 316 B |
|
After Width: | Height: | Size: 314 B |
|
After Width: | Height: | Size: 334 B |
|
After Width: | Height: | Size: 351 B |
BIN
htdocs/css/singularity/images/ui-icons_222222_256x240.png
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
BIN
htdocs/css/singularity/images/ui-icons_4b8e0b_256x240.png
Normal file
|
After Width: | Height: | Size: 4.4 KiB |
BIN
htdocs/css/singularity/images/ui-icons_a83300_256x240.png
Normal file
|
After Width: | Height: | Size: 4.4 KiB |
BIN
htdocs/css/singularity/images/ui-icons_cacaca_256x240.png
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
BIN
htdocs/css/singularity/images/ui-icons_cccccc_256x240.png
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
BIN
htdocs/css/singularity/images/ui-icons_ffffff_256x240.png
Normal file
|
After Width: | Height: | Size: 6.2 KiB |
1177
htdocs/css/singularity/jquery-ui-1.10.3.custom.css
vendored
Normal file
7
htdocs/css/singularity/jquery-ui-1.10.3.custom.min.css
vendored
Normal file
BIN
htdocs/images/singularity_icon.png
Normal file
|
After Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 98 KiB |
BIN
htdocs/images/singularity_text.png
Normal file
|
After Width: | Height: | Size: 18 KiB |
@@ -109,26 +109,63 @@ class Layout
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<link rel="stylesheet" type="text/css" href="<?php print URL_ROOT ?>/css/singularity/jquery-ui-1.10.3.custom.min.css"/>
|
||||
<link rel="stylesheet" type="text/css" href="<?php print URL_ROOT ?>/singularity.css"/>
|
||||
<link rel="shortcut icon" href="<?php print IMG_ROOT ?>/favicon.ico" type="image/x-icon" />
|
||||
<title>Singularity Viewer Automated Build System</title>
|
||||
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
|
||||
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
|
||||
<title>Automated Crash Report Processing System</title>
|
||||
|
||||
<!--script type="text/javascript">
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
$(function() {
|
||||
$( ".toolbarbutton" ).button();
|
||||
$( ".rowhighlight" )
|
||||
});
|
||||
|
||||
$().ready(function(){
|
||||
|
||||
$(".jtable th").each(function(){
|
||||
$(this).addClass("ui-widget-header");
|
||||
});
|
||||
|
||||
$(".jtable td").each(function(){
|
||||
|
||||
$(this).addClass("ui-widget-content");
|
||||
|
||||
});
|
||||
$(".jtable tr").hover(
|
||||
function()
|
||||
{
|
||||
$(this).children("td").addClass("ui-state-hover");
|
||||
},
|
||||
function()
|
||||
{
|
||||
$(this).children("td").removeClass("ui-state-hover");
|
||||
}
|
||||
);
|
||||
});
|
||||
|
||||
//]]>
|
||||
</script-->
|
||||
</script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div id="everything">
|
||||
<div id="page-wrapper">
|
||||
<div id="header"></div>
|
||||
<div class="container"><a href="<?php print URL_ROOT ?>" style="font-size: 20px;">Automated Crash Report Processing System</a><br/>
|
||||
<?php for ($i=count($menu) - 1; $i>=0; $i--): ?>
|
||||
<div class="menuitem"><a href="<?php echo $menu[$i]->link; ?>"><?php echo htmlspecialchars($menu[$i]->label) ?></a></div>
|
||||
<?php endfor ?>
|
||||
<br/><br/>
|
||||
|
||||
<div style="padding-top:20px;">
|
||||
<div style="display: inline-block;">
|
||||
<a href="<?php echo URL_ROOT ?>"><img src="images/singularity_icon.png" width="150px" height="150px"/></a>
|
||||
</div>
|
||||
<div style="display: inline-block;color: #eee; padding: 55px 0 0 30px; vertical-align: top;">
|
||||
<a href="<?php echo URL_ROOT ?>" style="font-size: 4em; font-weight: bold;">Sigularity Viewer</a>
|
||||
<br/>
|
||||
<span style="font-size: 1.6em;">Automated Crash Report Processing</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="menubar" style="text-align: right; margin-top:10px; margin-bottom:10px; padding: 5px;" class="ui-widget-header ui-corner-all">
|
||||
<?php for ($i=0; $i<count($menu); $i++): ?>
|
||||
<a class="toolbarbutton" href="<?php echo $menu[$i]->link; ?>"><?php echo htmlspecialchars($menu[$i]->label) ?></a>
|
||||
<?php endfor ?>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
}
|
||||
@@ -136,18 +173,17 @@ class Layout
|
||||
function footer()
|
||||
{
|
||||
{ ?>
|
||||
</div><!-- container -->
|
||||
<div class="container">
|
||||
<table style="width: 100%; border: none; padding: 0;"><tr>
|
||||
<td class="bottom-links"><a href="http://www.singularityviewer.org/">Singularity Main Site</a></td>
|
||||
<td class="bottom-links"><a href="http://www.singularityviewer.org/about">About</a></td>
|
||||
<td class="bottom-links"><a href="http://code.google.com/p/singularity-viewer/issues/">Issue Tracker</a></td>
|
||||
<td class="bottom-links"><a href="https://github.com/singularity-viewer/SingularityViewer">Source Tracker</a></td>
|
||||
<td width="50%" style="text-align: right;">© 2013 Singularity Viewer Project</td>
|
||||
</tr></table>
|
||||
<div style="margin-top:10px; padding: 5px;" class="ui-widget-header ui-corner-all">
|
||||
<div style="float: left; padding: 4px;">
|
||||
© 2013 Singularity Viewer Project
|
||||
</div>
|
||||
<div style="text-align: right;">
|
||||
<a class="toolbarbutton" href="http://www.singularityviewer.org/">Singularity Main Site</a>
|
||||
<a class="toolbarbutton" href="http://www.singularityviewer.org/about">About</a>
|
||||
<a class="toolbarbutton" href="http://code.google.com/p/singularity-viewer/issues/">Issue Tracker</a>
|
||||
<a class="toolbarbutton" href="https://github.com/singularity-viewer/SingularityViewer">Source Tracker</a>
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- everything -->
|
||||
</div><!-- page-wrapper -->
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
@@ -19,9 +19,31 @@ $full = ReportParser::parse($report->id);
|
||||
|
||||
Layout::header();
|
||||
?>
|
||||
<script>
|
||||
$(function() {
|
||||
$( "#tabs" ).tabs({ active: 1 });
|
||||
$("div.ui-tabs-panel").css('padding','0px');
|
||||
});
|
||||
</script>
|
||||
|
||||
<h2>Report Details</h2>
|
||||
<div id="tabs">
|
||||
<ul>
|
||||
<li><a href="#tabs-0">Details</a></li>
|
||||
<li><a href="#tabs-1">Stack</a></li>
|
||||
<li><a href="#tabs-2">Modules</a></li>
|
||||
<?php if (strlen($full["StatsLog"])): ?>
|
||||
<li><a href="#tabs-3">Stats</a></li>
|
||||
<?php endif ?>
|
||||
<?php if (strlen($full["SecondLifeLog"])): ?>
|
||||
<li><a href="#tabs-4">Log</a></li>
|
||||
<?php endif ?>
|
||||
<?php if (strlen($full["SettingsXml"])): ?>
|
||||
<li><a href="#tabs-5">Settings</a></li>
|
||||
<?php endif ?>
|
||||
</ul>
|
||||
|
||||
<!-- Details tab -->
|
||||
<div id="tabs-0">
|
||||
<table>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
@@ -75,31 +97,41 @@ Layout::header();
|
||||
<th>Minidump</th>
|
||||
<td><a href="download.php/singularity<?php echo (int)$report->id ?>.dmp?report_id=<?php echo (int)$report->id ?>">Download</a></td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</div>
|
||||
<!-- Details tab -->
|
||||
|
||||
<h3>Stack</h3>
|
||||
|
||||
<!-- Stacks tab -->
|
||||
<div id="tabs-1">
|
||||
<script>
|
||||
$(function() {
|
||||
$( "#accordion" )
|
||||
.accordion({ collapsible: true, animate: false, heightStyle: "content", active: <?php echo $report->crash_thread ?> });
|
||||
$("div.ui-accordion-content").css('padding','0px');
|
||||
});
|
||||
</script>
|
||||
<div id="accordion">
|
||||
|
||||
<?php for ($threadID = 0; $threadID < count($report->threads); $threadID++): ?>
|
||||
<table width="99%">
|
||||
<tr>
|
||||
<th width="20%">Thread <?php echo htmlentities($threadID . ($threadID == $report->crash_thread ? " (crashed)" : "")) ?></th>
|
||||
<th>Function</th>
|
||||
</tr>
|
||||
|
||||
<h3>Thread <?php echo htmlentities($threadID . ($threadID == $report->crash_thread ? " (crashed)" : "")) ?></h3>
|
||||
<div>
|
||||
<table width="100%">
|
||||
<?php for ($frameID = 0; $frameID < count($report->threads[$threadID]->frames); $frameID++): $f = $report->threads[$threadID]->frames[$frameID]; ?>
|
||||
<tr class="rowhighlight">
|
||||
<td><?php echo htmlentities($f->module) ?></td>
|
||||
<td><?php echo CrashReport::htmlFrame($f) ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="5%" style="text-align: right;"><?php echo $frameID ?></td>
|
||||
<td width="20%"><?php echo htmlentities($f->module) ?></td>
|
||||
<td width="75%"><?php echo CrashReport::htmlFrame($f) ?></td>
|
||||
</tr>
|
||||
<?php endfor ?>
|
||||
|
||||
</table>
|
||||
<br/><br/>
|
||||
</div>
|
||||
<?php endfor ?>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Stacks tab -->
|
||||
|
||||
|
||||
<h3>Loaded Modules</h3>
|
||||
<!-- Modules tab -->
|
||||
<div class="jtable" id="tabs-2">
|
||||
<table>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
@@ -112,30 +144,41 @@ Layout::header();
|
||||
</tr>
|
||||
<?php endfor ?>
|
||||
</table>
|
||||
</div>
|
||||
<!-- Modules tab -->
|
||||
|
||||
|
||||
<!-- Stats tab -->
|
||||
<?php if (strlen($full["StatsLog"])): ?>
|
||||
<h3>Stats</h3>
|
||||
<div id="tabs-3">
|
||||
<pre>
|
||||
<?php echo htmlentities($full["StatsLog"]) ?>
|
||||
</pre>
|
||||
</div>
|
||||
<?php endif ?>
|
||||
|
||||
<!-- Stats tab -->
|
||||
|
||||
<!-- Log tab -->
|
||||
<?php if (strlen($full["SecondLifeLog"])): ?>
|
||||
<h3>Log</h3>
|
||||
<div id="tabs-4">
|
||||
<pre>
|
||||
<?php echo htmlentities($full["SecondLifeLog"]) ?>
|
||||
</pre>
|
||||
</div>
|
||||
<?php endif ?>
|
||||
<!-- Log tab -->
|
||||
|
||||
|
||||
<!-- Settings tab -->
|
||||
<?php if (strlen($full["SettingsXml"])): ?>
|
||||
<h3>Settings</h3>
|
||||
<div id="tabs-5">
|
||||
<pre>
|
||||
<?php echo htmlentities($full["SettingsXml"]) ?>
|
||||
</pre>
|
||||
</div>
|
||||
<?php endif ?>
|
||||
<!-- Settings tab -->
|
||||
|
||||
</div>
|
||||
|
||||
<?php
|
||||
Layout::footer();
|
||||
|
||||
@@ -1,18 +1,17 @@
|
||||
html {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
background-color: #1e1e1e;
|
||||
background-color: #2e2e2e;
|
||||
}
|
||||
|
||||
image {
|
||||
border: none;
|
||||
}
|
||||
|
||||
body, select {
|
||||
padding: 0;
|
||||
body {
|
||||
padding: 0 75px 0 75px;
|
||||
margin: 0;
|
||||
background-color: #1e1e1e;
|
||||
font: normal 10pt "Lucida Grande","Lucida Sans Unicode",sans-serif;
|
||||
font: normal 0.7em "Lucida Grande","Lucida Sans Unicode", sans-serif;
|
||||
color: #a0a0a0;
|
||||
}
|
||||
|
||||
@@ -22,32 +21,6 @@ div {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#everything {
|
||||
background: url(images/body-bg.png) top repeat-x;
|
||||
min-height: 100%;
|
||||
}
|
||||
|
||||
#page-wrapper {
|
||||
margin: 0 auto;
|
||||
width: 960px;
|
||||
}
|
||||
|
||||
#header {
|
||||
margin-bottom: 10px;
|
||||
width: 100%;
|
||||
height: 144px;
|
||||
background: url(images/singularity_logo.gif) left top no-repeat;
|
||||
border-bottom: solid 2px black;
|
||||
}
|
||||
|
||||
.container {
|
||||
padding: 5px;
|
||||
margin-bottom: 10px;
|
||||
background: url(images/container-bg.gif) top repeat-x;
|
||||
border-bottom: solid 2px black;
|
||||
background-color: #1b1b1b;
|
||||
}
|
||||
|
||||
input {
|
||||
color: #a0a0a0;
|
||||
background-color: #2C3737;
|
||||
@@ -62,52 +35,29 @@ input:hover {
|
||||
|
||||
a, a:link, a:hover, a:visited, a:active {
|
||||
text-decoration: none;
|
||||
color: #e0e0e0;
|
||||
}
|
||||
|
||||
.bottom-links {
|
||||
text-align: center;
|
||||
color: #eee;
|
||||
}
|
||||
|
||||
td, th {
|
||||
text-align: left;
|
||||
margin: 0;
|
||||
padding: 3px 20px 3px 3px;
|
||||
padding: 6px;
|
||||
vertical-align: top;
|
||||
display: table-cell;
|
||||
border: none;
|
||||
}
|
||||
|
||||
th {
|
||||
border-bottom: solid 1px #404040;
|
||||
background: url(images/container-bg.gif) top repeat-x;
|
||||
}
|
||||
|
||||
.hand {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
tr.rowhighlight:hover {
|
||||
background-color: #2C3737;
|
||||
}
|
||||
|
||||
.menuitem {
|
||||
float: right;
|
||||
padding: 3px 15px 3px 15px;
|
||||
margin-top: 15px;
|
||||
margin-left: 2px;
|
||||
background-color: #2C3737;
|
||||
border-bottom: 1px solid #101010;
|
||||
/* border: 1px solid red; */
|
||||
}
|
||||
|
||||
.menuitem:hover {
|
||||
background-color: #445A5E;
|
||||
}
|
||||
|
||||
pre {
|
||||
font-family: monospace;
|
||||
font-size: 9pt;
|
||||
font-size: 1.2em;
|
||||
white-space: pre-wrap;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
.jtable tr .ui-state-hover {
|
||||
font-weight: normal;
|
||||
}
|
||||
@@ -36,7 +36,8 @@ Layout::header();
|
||||
?>
|
||||
|
||||
<h3>User Accounts</h3>
|
||||
<table>
|
||||
|
||||
<table class="jtable">
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>Name</th>
|
||||
@@ -45,8 +46,8 @@ Layout::header();
|
||||
<th>Actions</th>
|
||||
</tr>
|
||||
<?php for ($i=0; $i<count($users); $i++): ?>
|
||||
<tr class="rowhighlight">
|
||||
<td><?php echo (int)$users[$i]->user_id ?></td>
|
||||
<tr>
|
||||
<td style="text-align: right;"><?php echo (int)$users[$i]->user_id ?></td>
|
||||
<td><?php echo htmlentities($users[$i]->name); ?></td>
|
||||
<td><?php echo htmlentities($users[$i]->email); ?></td>
|
||||
<td><?php echo $users[$i]->isAdmin() ? "Admin" : ($users[$i]->isAllowed() ? "Granted" : "No"); ?></td>
|
||||
@@ -57,14 +58,15 @@ Layout::header();
|
||||
$action = $users[$i]->isAllowed() ? "revoke" : "grant";
|
||||
$url = URL_ROOT . "/users.php?action=$action&id=" . (int)$users[$i]->user_id;
|
||||
$delete = URL_ROOT . "/users.php?action=remove&id=" . (int)$users[$i]->user_id;
|
||||
print "<a href=\"{$url}\">{$action} access</a>, ";
|
||||
print "<a href=\"{$delete}\" title=\"Caution: completely deletes information about this user.\" onclick=\"return confirm('Are you sure you want to completely remove this account? Just revoking access works too, and they can create it again by logging with their Google credentials.');\">delete account</a>";
|
||||
print "<a class=\"toolbarbutton\" href=\"{$url}\">{$action}</a> ";
|
||||
print "<a class=\"toolbarbutton\" href=\"{$delete}\" title=\"Caution: completely deletes information about this user.\" onclick=\"return confirm('Are you sure you want to completely remove this account? Just revoking access works too, and they can create it again by logging with their Google credentials.');\">delete account</a>";
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endfor ?>
|
||||
</table>
|
||||
|
||||
<?php
|
||||
Layout::footer();
|
||||
|
||||
|
||||