131 lines
4.2 KiB
HTML
131 lines
4.2 KiB
HTML
<%inherit file="base.html"/>
|
|
<%!
|
|
from plexpy import helpers
|
|
%>
|
|
|
|
<%def name="headIncludes()">
|
|
<link rel="stylesheet" href="interfaces/default/css/plexwatch-tables.css">
|
|
<style>
|
|
td {word-wrap: break-word}
|
|
</style>
|
|
</%def>
|
|
|
|
<%def name="headerIncludes()">
|
|
<!--<div id="subhead_container">
|
|
<div id="subhead_menu">
|
|
<a class="menu_link_edit" href="clearLogs"><i class="fa fa-trash-o"></i> Clear log</a>
|
|
</div>
|
|
</div>-->
|
|
</%def>
|
|
|
|
<%def name="body()">
|
|
<div class="container-fluid">
|
|
<div class="row-fluid">
|
|
<div class="span12">
|
|
<div class="wellheader-bg">
|
|
<div class="dashboard-wellheader-no-chevron">
|
|
<h2><i class="fa fa-book"></i> Logs</h2>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class='container-fluid'>
|
|
<div class='row-fluid'>
|
|
<div class='span12'>
|
|
<div class='wellbg'>
|
|
<table class="display" id="log_table" width="100%">
|
|
<thead>
|
|
<tr>
|
|
<th align='left' id="timestamp"><i class='fa fa-sort'></i> Timestamp</th>
|
|
<th align='left' id="level"><i class='fa fa-sort'></i> Level</th>
|
|
<th align='left' id="message"><i class='fa fa-sort'></i> Message</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<br>
|
|
<div align="center">Refresh rate:
|
|
<select id="refreshrate" onchange="setRefresh()">
|
|
<option value="0" selected="selected">No Refresh</option>
|
|
<option value="5">5 Seconds</option>
|
|
<option value="15">15 Seconds</option>
|
|
<option value="30">30 Seconds</option>
|
|
<option value="60">60 Seconds</option>
|
|
<option value="300">5 Minutes</option>
|
|
<option value="600">10 Minutes</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</%def>
|
|
|
|
<%def name="javascriptIncludes()">
|
|
<script src="interfaces/default/js/jquery.dataTables.min.js"></script>
|
|
<script src="interfaces/default/js/jquery.dataTables.bootstrap.pagination.integration.js"></script>
|
|
|
|
<script>
|
|
$(document).ready(function() {
|
|
initActions();
|
|
|
|
$('#log_table').dataTable( {
|
|
"processing": false,
|
|
"serverSide": true,
|
|
"ajax": {
|
|
"url": "getLog"
|
|
},
|
|
"sPaginationType": "bootstrap",
|
|
"order": [ 0, 'desc'],
|
|
"pageLength": 25,
|
|
"stateSave": true,
|
|
"autoWidth": true,
|
|
"language": {
|
|
"search":"Search: ",
|
|
"lengthMenu":"Show _MENU_ lines per page",
|
|
"emptyTable": "No log information available",
|
|
"info":"Showing _START_ to _END_ of _TOTAL_ lines",
|
|
"infoEmpty":"Showing 0 to 0 of 0 lines",
|
|
"infoFiltered":"(filtered from _MAX_ total lines)"},
|
|
"columnDefs": [
|
|
{
|
|
"targets": [2],
|
|
"width": "70%"
|
|
}
|
|
],
|
|
"drawCallback": function (settings) {
|
|
// Jump to top of page
|
|
$('html,body').scrollTop(0);
|
|
$('#ajaxMsg').addClass('success').fadeOut();
|
|
},
|
|
"preDrawCallback": function(settings) {
|
|
$('#ajaxMsg').html("<div class='msg'><span class='ui-icon ui-icon-check'></span>Fetching rows...</div>");
|
|
$('#ajaxMsg').addClass('success').fadeIn();
|
|
}
|
|
});
|
|
});
|
|
</script>
|
|
<script>
|
|
var timer;
|
|
function setRefresh()
|
|
{
|
|
refreshrate = document.getElementById('refreshrate');
|
|
if(refreshrate != null)
|
|
{
|
|
if(timer)
|
|
{
|
|
clearInterval(timer);
|
|
}
|
|
if(refreshrate.value != 0)
|
|
{
|
|
timer = setInterval("$('#log_table').dataTable().fnDraw()",1000*refreshrate.value);
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
</%def>
|