iobroker.opi
Version:
OPI-Monitor for ioBroker Installations
136 lines (123 loc) • 4.28 kB
HTML
<html>
<head>
<link rel="stylesheet" type="text/css" href="../../css/adapter.css"/>
<link rel="stylesheet" type="text/css" href="../../lib/css/materialize.css">
<script type="text/javascript" src="../../lib/js/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="../../socket.io/socket.io.js"></script>
<script type="text/javascript" src="../../js/translate.js"></script>
<script type="text/javascript" src="../../lib/js/materialize.js"></script>
<script type="text/javascript" src="../../js/adapter-settings.js"></script>
<script type="text/javascript" src="words.js"></script>
<script type="text/javascript">
changed = false;
function setValue(id, value, onChange) {
// example: select elements with id=key and class=value and insert value
if ($('#' + id + '.value').attr('type') === 'checkbox') {
$('#' + id + '.value').prop('checked', value).change(function() {
onChange();
});
} else {
$('#' + id + '.value').val(value).change(function() {
onChange();
}).keyup(function() {
// Check that only numbers entered
if ($(this).hasClass('number')) {
var val = $(this).val();
if (val) {
var newVal = '';
for (var i = 0; i < val.length; i++) {
if (val[i] >= '0' && val[i] <= '9') {
newVal += val[i];
}
}
if (val != newVal) $(this).val(newVal);
}
}
onChange();
});
}
}
// the function loadSettings has to exist ...
function load(settings, onChange) {
if (!settings) return;
for (var key in settings) {
if (settings === 'gpios') continue;
setValue(key, settings[key], onChange);
}
onChange(false);
}
function save(callback) {
var obj = {};
$('.value').each(function () {
var $this = $(this);
if ($this.attr('type') === 'checkbox') {
obj[$this.attr('id')] = $this.prop('checked');
} else {
obj[$this.attr('id')] = $this.val();
}
});
callback(obj);
}
</script>
</head>
<body>
<div class="m adapter-container">
<div class="row">
<div class="col s12 m1 l1">
<img src="opi.png" class="logo">
</div>
<div class="col s12 m11 l11">
<h5 class="translate">OPI-Monitor Adapter settings</h5>
</div>
</div>
<div class="row">
<div class="col s12">
<input class="value" id="c_cpu" type="checkbox"/>
<label for="c_cpu" class="translate">CPU</label>
</div>
</div>
<div class="row">
<div class="col s12">
<input class="value" id="c_memory" type="checkbox"/>
<label for="c_memory" class="translate">Memory</label>
</div>
</div>
<div class="row">
<div class="col s12">
<input class="value" id="c_network" type="checkbox"/>
<label for="c_network" class="translate">Network</label>
</div>
</div>
<div class="row">
<div class="col s12">
<input class="value" id="c_emmc" type="checkbox"/>
<label for="c_emmc" class="translate">eMMC</label>
</div>
</div>
<div class="row">
<div class="col s12">
<input class="value" id="c_swap" type="checkbox"/>
<label for="c_swap" class="translate">Swap</label>
</div>
</div>
<div class="row">
<div class="col s12">
<input class="value" id="c_temperature" type="checkbox"/>
<label for="c_temperature" class="translate">Temperature</label>
</div>
</div>
<div class="row">
<div class="col s12">
<input class="value" id="c_uptime" type="checkbox"/>
<label for="c_uptime" class="translate">Uptime</label>
</div>
</div>
<div class="row">
<div class="col s12">
<input class="value" id="c_wlan" type="checkbox"/>
<label for="c_wlan" class="translate">WLAN</label>
</div>
</div>
</div>
</body>
</html>