summaryrefslogtreecommitdiffstats
path: root/modules-available/systemstatus/templates
diff options
context:
space:
mode:
authorSimon Rettberg2016-05-03 19:03:09 +0200
committerSimon Rettberg2016-05-03 19:03:09 +0200
commit50404f3b23b7fd6aeae4c9d2f6df0ea25e984e66 (patch)
tree05e99fdffa696434960d7c77966c0bc36d6339e8 /modules-available/systemstatus/templates
parentSecond half of merge.... (diff)
downloadslx-admin-50404f3b23b7fd6aeae4c9d2f6df0ea25e984e66.tar.gz
slx-admin-50404f3b23b7fd6aeae4c9d2f6df0ea25e984e66.tar.xz
slx-admin-50404f3b23b7fd6aeae4c9d2f6df0ea25e984e66.zip
WIP
Diffstat (limited to 'modules-available/systemstatus/templates')
-rw-r--r--modules-available/systemstatus/templates/_page.html129
-rw-r--r--modules-available/systemstatus/templates/addresses.html8
-rw-r--r--modules-available/systemstatus/templates/diskstat.html63
-rw-r--r--modules-available/systemstatus/templates/services.html6
-rw-r--r--modules-available/systemstatus/templates/systeminfo.html115
5 files changed, 321 insertions, 0 deletions
diff --git a/modules-available/systemstatus/templates/_page.html b/modules-available/systemstatus/templates/_page.html
new file mode 100644
index 00000000..51aa5b55
--- /dev/null
+++ b/modules-available/systemstatus/templates/_page.html
@@ -0,0 +1,129 @@
+{{#rebootTask}}
+<div data-tm-id="{{rebootTask}}" data-tm-log="messages">Reboot...</div>
+{{/rebootTask}}
+
+<div class="row">
+
+ <div class="col-sm-6">
+ <div class="panel panel-default">
+ <div class="panel-heading">
+ {{lang_space}}
+ </div>
+ <div class="panel-body" id="diskstat">
+ <span class="glyphicon glyphicon-refresh slx-rotation"></span>
+ </div>
+ </div>
+ </div>
+
+ <div class="col-sm-6">
+ <div class="panel panel-default">
+ <div class="panel-heading">
+ {{lang_services}}
+ </div>
+ <div class="panel-body" id="services">
+ <span class="glyphicon glyphicon-refresh slx-rotation"></span>
+ </div>
+ </div>
+ </div>
+
+</div>
+
+
+<div class="row">
+
+ <div class="col-md-6">
+ <div class="panel panel-default">
+ <div class="panel-heading">
+ {{lang_addressConfiguration}}
+ </div>
+ <div class="panel-body" id="addresses">
+ <span class="glyphicon glyphicon-refresh slx-rotation"></span>
+ </div>
+ </div>
+ </div>
+
+ <div class="col-md-6">
+ <div class="panel panel-default">
+ <div class="panel-heading">
+ {{lang_system}}
+ </div>
+ <div class="panel-body" id="systeminfo">
+ <span class="glyphicon glyphicon-refresh slx-rotation"></span>
+ </div>
+ </div>
+ </div>
+
+</div>
+
+<div class="row">
+
+ <div class="col-md-6">
+ <div class="panel panel-default">
+ <div class="panel-heading">
+ {{lang_maintenance}}
+ </div>
+ <div class="panel-body">
+ <form class="form-adduser" action="?do=SystemStatus" method="post">
+ <input type="hidden" name="token" value="{{token}}">
+ <input type="hidden" name="action" value="reboot">
+ <div>Server Reboot</div>
+ <label><input type="checkbox" name="confirm" value="yep"> {{lang_iAmSure}}</label>
+ <button class="btn btn-warning btn-xs" type="submit">Reboot</button>
+ </form>
+ <div id="dmsd-users"></div>
+ </div>
+ </div>
+ </div>
+
+</div>
+
+<h3>{{lang_advanced}}</h3>
+
+<div class="panel panel-default">
+ <div class="panel-heading">
+ {{lang_dmsdLog}}
+ </div>
+ <div class="panel-body" id="dmsd-log">
+ <span class="glyphicon glyphicon-refresh slx-rotation"></span>
+ </div>
+</div>
+<div class="panel panel-default">
+ <div class="panel-heading">
+ {{lang_ldadpLog}}
+ </div>
+ <div class="panel-body" id="ldadp-log">
+ <span class="glyphicon glyphicon-refresh slx-rotation"></span>
+ </div>
+</div>
+<div class="panel panel-default">
+ <div class="panel-heading">
+ netstat -tulpn
+ </div>
+ <div class="panel-body" id="netstat">
+ <span class="glyphicon glyphicon-refresh slx-rotation"></span>
+ </div>
+</div>
+<div class="panel panel-default">
+ <div class="panel-heading">
+ ps auxf
+ </div>
+ <div class="panel-body" id="pslist">
+ <span class="glyphicon glyphicon-refresh slx-rotation"></span>
+ </div>
+</div>
+
+<script type="text/javascript">
+ document.addEventListener("DOMContentLoaded", function() {
+ $('#diskstat').load('?do=SystemStatus&action=DiskStat');
+ $('#addresses').load('?do=SystemStatus&action=AddressList');
+ $('#systeminfo').load('?do=SystemStatus&action=SystemInfo');
+ $('#services').load('?do=SystemStatus&action=Services');
+ $('#dmsd-users').load('?do=SystemStatus&action=DmsdUsers');
+ setTimeout(function() {
+ $('#dmsd-log').load('?do=SystemStatus&action=DmsdLog');
+ $('#netstat').load('?do=SystemStatus&action=Netstat');
+ $('#pslist').load('?do=SystemStatus&action=PsList');
+ $('#ldadp-log').load('?do=SystemStatus&action=LdadpLog');
+ }, 300);
+ }, false);
+</script>
diff --git a/modules-available/systemstatus/templates/addresses.html b/modules-available/systemstatus/templates/addresses.html
new file mode 100644
index 00000000..ce92c4d5
--- /dev/null
+++ b/modules-available/systemstatus/templates/addresses.html
@@ -0,0 +1,8 @@
+<table class="slx-table">
+ {{#addresses}}
+ <tr {{#primary}} class="slx-bold" {{/primary}}>
+ <td>{{ip}}</td>
+ <td>({{iface}})</td>
+ </tr>
+ {{/addresses}}
+</table> \ No newline at end of file
diff --git a/modules-available/systemstatus/templates/diskstat.html b/modules-available/systemstatus/templates/diskstat.html
new file mode 100644
index 00000000..528d9792
--- /dev/null
+++ b/modules-available/systemstatus/templates/diskstat.html
@@ -0,0 +1,63 @@
+<div class="slx-storechart">
+ {{#system}}
+ <b>{{lang_systemPartition}}</b>
+ <div id="circles-system"></div>
+ <div>{{lang_capacity}}: {{size}}</div>
+ <div>{{lang_free}}: {{free}}</div>
+ {{/system}}
+ {{^system}}
+ <b>{{lang_systemStoreError}}</b>
+ {{/system}}
+</div>
+<div class="slx-storechart">
+ {{#store}}
+ <b>{{lang_vmStore}}</b>
+ <div id="circles-store"></div>
+ <div>{{lang_capacity}}: {{size}}</div>
+ <div>{{lang_free}}: {{free}}</div>
+ {{/store}}
+ {{^store}}
+ <b>{{lang_vmStoreError}}</b>
+ {{/store}}
+</div>
+<div class="clearfix"></div>
+{{#notConfigured}}
+<div>{{lang_storeNotConfigured}}</div>
+{{/notConfigured}}
+{{#storeMissing}}
+<div>{{lang_storeMissingExpected}} {{storeMissing}}</div>
+{{/storeMissing}}
+{{#wrongStore}}
+<div>{{lang_foundStore}} {{wrongStore}}</div>
+{{/wrongStore}}
+<a href="?do=VmStore">{{lang_goToStoreConf}}</a>
+<script type="text/javascript">
+ {{#store}}
+ Circles.create({
+ id: 'circles-store',
+ radius: 60,
+ value: {{{percent}}},
+ maxValue: 100,
+ width: 10,
+ text: function(value){return value + '%'; },
+ colors: ['#D3B6C6', '#{{color}}'],
+ duration: 400,
+ wrpClass: 'circles-wrp',
+ textClass: 'circles-text'
+ });
+ {{/store}}
+ {{#system}}
+ Circles.create({
+ id: 'circles-system',
+ radius: 60,
+ value: {{{percent}}},
+ maxValue: 100,
+ width: 10,
+ text: function(value){return value + '%'; },
+ colors: ['#D3B6C6', '#{{color}}'],
+ duration: 400,
+ wrpClass: 'circles-wrp',
+ textClass: 'circles-text'
+ });
+ {{/system}}
+</script>
diff --git a/modules-available/systemstatus/templates/services.html b/modules-available/systemstatus/templates/services.html
new file mode 100644
index 00000000..6c4f0b93
--- /dev/null
+++ b/modules-available/systemstatus/templates/services.html
@@ -0,0 +1,6 @@
+{{#ldadpError}}
+<pre>{{ldadpError}}</pre>
+{{/ldadpError}}
+{{^ldadpError}}
+<div class="alert alert-success">LDAP-AD-Proxy: OK</div>
+{{/ldadpError}}
diff --git a/modules-available/systemstatus/templates/systeminfo.html b/modules-available/systemstatus/templates/systeminfo.html
new file mode 100644
index 00000000..ed4a1532
--- /dev/null
+++ b/modules-available/systemstatus/templates/systeminfo.html
@@ -0,0 +1,115 @@
+<div>
+ {{lang_uptimeOS}}: {{uptime}}
+</div>
+
+<div class="slx-storechart">
+ <b>{{lang_cpuLoad}}</b>
+ {{#cpuLoadOk}}
+ <div id="circles-cpuload"></div>
+ <div>{{lang_average}}: {{cpuLoad}}%</div>
+ <div>{{lang_onlyOS}}: {{cpuSystem}}%</div>
+ <div>{{lang_logicCPUs}}: {{cpuCount}}</div>
+ {{/cpuLoadOk}}
+ {{^cpuLoadOk}}
+ {{lang_notDetermined}}
+ {{/cpuLoadOk}}
+</div>
+
+<div class="slx-storechart">
+ <b>{{lang_ramUsage}}</b>
+ {{#memTotal}}
+ <div id="circles-mem"></div>
+ <div>{{lang_total}}: {{memTotal}}</div>
+ <div>{{lang_free}}: {{memFree}}</div>
+ {{/memTotal}}
+ {{^memTotal}}
+ {{lang_notDetermined}}
+ {{/memTotal}}
+</div>
+
+<div class="slx-storechart">
+ <b>{{lang_swapUsage}}</b>
+ {{#memTotal}}
+ <div id="circles-swap"></div>
+ <div>{{lang_total}}: {{swapTotal}}</div>
+ <div>{{lang_occupied}}: {{swapUsed}}</div>
+ {{/memTotal}}
+ {{^memTotal}}
+ {{lang_notDetermined}}
+ {{/memTotal}}
+</div>
+
+<div class="clearfix"></div>
+
+{{#swapWarning}}
+<div>
+ <b>{{lang_attention}}</b> {{lang_swapWarning}}
+</div>
+{{/swapWarning}}
+
+<script type="text/javascript">
+ {{#cpuLoadOk}}
+ var cpuCircle = Circles.create({
+ id: 'circles-cpuload',
+ radius: 60,
+ value: {{{cpuLoad}}},
+ maxValue: 100,
+ width: 10,
+ text: function(value){return value + '%'; },
+ colors: ['#dbc', '#33f'],
+ duration: 400,
+ wrpClass: 'circles-wrp',
+ textClass: 'circles-text'
+ });
+ var lastCpuTotal = {{CpuTotal}};
+ var lastCpuIdle = {{CpuIdle}};
+ var lastCpuPercent = {{cpuLoad}};
+ {{/cpuLoadOk}}
+ {{#memTotal}}
+ var memCircle = Circles.create({
+ id: 'circles-mem',
+ radius: 60,
+ value: {{{memPercent}}},
+ maxValue: 100,
+ width: 10,
+ text: function(value){return value + '%'; },
+ colors: ['#dbc', '#33f'],
+ duration: 400,
+ wrpClass: 'circles-wrp',
+ textClass: 'circles-text'
+ });
+ var swapCircle = Circles.create({
+ id: 'circles-swap',
+ radius: 60,
+ value: {{{swapPercent}}},
+ maxValue: 100,
+ width: 10,
+ text: function(value){return value + '%'; },
+ colors: ['#dbc', '#f33'],
+ duration: 400,
+ wrpClass: 'circles-wrp',
+ textClass: 'circles-text'
+ });
+ {{/memTotal}}
+ function updateSystem() {
+ if (!cpuCircle && !memCircle) return;
+ $.post('?do=SystemStatus&action=SysPoll', { token: TOKEN }, function(data) {
+ if (memCircle && data.MemPercent) memCircle.update(data.MemPercent);
+ if (swapCircle && data.SwapPercent) swapCircle.update(data.SwapPercent);
+ if (cpuCircle && data.CpuIdle) {
+ var total = data.CpuTotal - lastCpuTotal;
+ var load = total - (data.CpuIdle - lastCpuIdle);
+ var percent = Math.round(100 * load / total);
+ cpuCircle.update(percent, Math.abs(percent - lastCpuPercent) < 5 ? 0 : 250);
+ lastCpuTotal = data.CpuTotal;
+ lastCpuIdle = data.CpuIdle;
+ lastCpuPercent = percent;
+ }
+ }, 'json').fail(function(data) {
+ console.log(data);
+ }).always(function() {
+ setTimeout(updateSystem, 1200);
+ });
+ }
+ setTimeout(updateSystem, 1000);
+</script>