iobroker.unifi
Version:
UniFi Adapter for ioBroker
428 lines (399 loc) • 19.5 kB
HTML
<html>
<head>
<!-- Load ioBroker scripts and styles-->
<link rel="stylesheet" type="text/css" href="../../css/adapter.css" />
<link rel="stylesheet" type="text/css" href="../../lib/css/materialize.css">
<link rel="stylesheet" type="text/css" href="../../lib/css/fancytree/ui.fancytree.min.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="../../lib/js/materialize.js"></script>
<script type="text/javascript" src="../../lib/js/jquery-ui.min.js"></script>
<script type="text/javascript" src="../../lib/js/selectID.js"></script>
<script type="text/javascript" src="../../lib/js/jquery.fancytree-all.min.js"></script>
<script type="text/javascript" src="../../js/translate.js"></script>
<script type="text/javascript" src="../../js/adapter-settings.js"></script>
<!-- Load our own files -->
<link rel="stylesheet" type="text/css" href="style.css" />
<script type="text/javascript" src="words.js"></script>
<script type="text/javascript" src="index_m.js"></script>
<style>
.sub-title {
margin-top: 0px ;
margin-bottom: 10px ;
padding: 0.5rem;
background: #64b5f6;
color: white;
}
.blacklist_title {
background: #fafafa;
color: #0d86e7;
padding: 12px 12px 6px 12px ;
margin-top: 10px ;
margin-bottom: 0px ;
border: #9e9e9e 3px;
border-style: none;
}
.mb10 {
margin-bottom: 10px;
}
.separator {
height: 6px ;
}
.treeContainer {
width: 100% ;
}
.fancytree-container {
background: #efefef ;
border-style: none ;
font-size: 1rem ;
font-family: "Segoe UI", Tahoma, Arial, "Courier New" ;
outline-style: none ;
}
.fancytree-title {
background: #efefef ;
height: 24px;
}
.fancytree-node:hover,
.fancytree-node:hover>.fancytree-title,
.fancytree-title:hover {
background: #64b5f6 ;
color: white ;
font-weight: bold ;
cursor: pointer;
}
ul.fancytree-container ul {
padding: 0 0 0 20px ;
margin: 0;
}
.page {
padding: 5px;
height: calc(100% - 50px) ;
}
.fancytree-node>span.fancytree-checkbox {
background-position: 0 0;
background-image: url("./img/checkbox.svg");
width: 24px;
height: 24px;
}
.fancytree-node.fancytree-partsel>span.fancytree-checkbox {
background-position: 0 0;
background-image: url("./img/checkbox_intermediate.svg");
width: 24px;
height: 24px;
}
.fancytree-node.fancytree-partsel.fancytree-selected>span.fancytree-checkbox {
background-position: 0 0;
background-image: url("./img/checkbox_marked.svg");
width: 24px;
height: 24px;
}
.fancytree-node>span.fancytree-icon,
.fancytree-node>span.fancytree-icon:hover {
background-position: 0 0;
background-image: url("./img/state.png");
width: 24px;
height: 24px;
}
.fancytree-node.fancytree-folder>span.fancytree-icon {
background-position: 0 0;
background-image: url("./img/folder.png");
width: 24px;
height: 24px;
}
.fancytree-node.fancytree-folder>span.fancytree-expander {
background-position: 0 0;
background-image: url("./img/menu_right.svg");
width: 24px;
height: 24px;
}
.fancytree-node.fancytree-expanded.fancytree-folder>span.fancytree-expander {
background-position: 0 0;
background-image: url("./img/menu_down.svg");
width: 24px;
height: 24px;
}
</style>
</head>
<body>
<div class="m adapter-container">
<ul class="tabs tabs-fixed-width">
<li class="tab col s6 l3"><a href="#tab_general" class="translate active">General</a></li>
<li class="tab col s6 l3"><a href="#tab_sysinfo" class="translate">Sysinfo</a></li>
<li class="tab col s6 l3"><a href="#tab_clients" class="translate">Clients</a></li>
<li class="tab col s6 l3"><a href="#tab_devices" class="translate">Devices</a></li>
<li class="tab col s6 l3"><a href="#tab_wlans" class="translate">WLANs</a></li>
<li class="tab col s6 l3"><a href="#tab_networks" class="translate">Networks</a></li>
<li class="tab col s6 l3"><a href="#tab_health" class="translate">Health</a></li>
<li class="tab col s6 l3"><a href="#tab_vouchers" class="translate">Vouchers</a></li>
<li class="tab col s6 l3"><a href="#tab_alarms" class="translate">Alarms</a></li>
<li class="tab col s6 l3"><a href="#tab_dpi" class="translate">DPI</a></li>
<li class="tab col s6 l3"><a href="#tab_gateway_traffic" class="translate">Gateway traffic</a></li>
</ul>
<div id="tab_general" class="page">
<div class="row">
<div class="input-field col s6">
<img src="unifi.png" class="logo">
</div>
</div>
<div class="translate sub-title">Network settings</div>
<div class="row">
<span class="translate" style="font-weight: bold;">PortNotice</span>
</div>
<div class="row">
<div class="input-field col s12 m6">
<input type="text" id="controllerIp" placeholder="127.0.0.1" class="value" />
<label for="controllerIp" class="translate">IP address</label>
</div>
<div class="input-field col s12 m6">
<input type="number" min="0" max="65535" id="controllerPort" placeholder="8443" class="value" />
<label for="controllerPort" class="translate">Port</label>
</div>
</div>
<div class="translate sub-title">Login</div>
<div class="row">
<div class="input-field col s12 m6">
<input type="text" id="controllerUsername" placeholder="Admin" class="value" />
<label for="controllerUsername" class="translate">Username</label>
</div>
<div class="input-field col s12 m6">
<input type="password" id="controllerPassword" placeholder="Password" class="value" />
<label for="controllerPassword" class="translate">Password</label>
</div>
</div>
<div class="translate sub-title">Connection</div>
<div class="row">
<div class="input-field col s12 m6">
<input type="checkbox" id="ignoreSSLErrors" class="value" />
<label for="ignoreSSLErrors" class="translate">Ignore SSL errors and expired certificates</label>
</div>
</div>
<div class="translate sub-title">Update</div>
<div class="row">
<div class="input-field col s12 m6">
<input type="number" id="updateInterval" min="0" class="value" />
<label for="updateInterval" class="translate">Update interval</label>
</div>
</div>
</div>
<div id="tab_sysinfo" class="page">
<div class="input-field col s12 blacklist_title">
<input type="checkbox" id="updateSysinfo" class="value" />
<label for="updateSysinfo" class="translate">Update system information</label>
</div>
<div class="row">
<div class="translate sub-title">Filter states</div>
<div class="col s12 treeContainer" id="tree_sysinfo"></div>
</div>
</div>
<div id="tab_clients" class="page">
<div class="input-field blacklist_title">
<input type="checkbox" id="updateClients" class="value" />
<label for="updateClients" class="translate">Update clients</label>
<input type="checkbox" id="blacklistClients" class="value" />
<label for="blacklistClients" class="translate">Change Blacklist to Whitelist</label>
</div>
<div class="row">
<div class="translate sub-title">Filter objects</div>
<div class="col s12">
<div class="chips" id="chips_clients"></div>
</div>
</div>
<div class="row">
<div class="translate sub-title">Filter states</div>
<div class="col s12 mb10">
<strong class="translate">Hint:</strong> <span class="translate">To calculate is_online,
last_seen_by_uap and last_seen_by_usw need to be activated additionally.</span>
</div>
<div class="col s12 treeContainer" id="tree_clients"></div>
</div>
<div class="row">
<div class="translate sub-title">Settings for clients</div>
<div class="col s12">
<div class="row">
<div class="input-field col s12 m6">
<input type="number" id="clientsIsOnlineOffset" placeholder="30" class="value" />
<label for="clientsIsOnlineOffset" class="translate">Offset for is_online</label>
</div>
</div>
</div>
</div>
</div>
<div id="tab_devices" class="page">
<div class="input-field blacklist_title">
<input type="checkbox" id="updateDevices" class="value" />
<label for="updateDevices" class="translate">Update devices</label>
</div>
<div class="row">
<div class="translate sub-title">Filter objects</div>
<div class="col s12">
<div class="chips" id="chips_devices"></div>
</div>
</div>
<div class="row">
<div class="translate sub-title">Filter states</div>
<div class="col s12 treeContainer" id="tree_devices"></div>
</div>
</div>
<div id="tab_wlans" class="page">
<div class="input-field blacklist_title">
<input type="checkbox" id="updateWlans" class="value" />
<label for="updateWlans" class="translate">Update WLANs</label>
</div>
<div class="row">
<div class="translate sub-title">Filter objects</div>
<div class="col s12">
<div class="chips" id="chips_wlans"></div>
</div>
</div>
<div class="row">
<div class="translate sub-title">Filter states</div>
<div class="col s12 treeContainer" id="tree_wlans"></div>
</div>
</div>
<div id="tab_networks" class="page">
<div class="input-field blacklist_title">
<input type="checkbox" id="updateNetworks" class="value" />
<label for="updateNetworks" class="translate">Update networks</label>
</div>
<div class="row">
<div class="translate sub-title">Filter objects</div>
<div class="col s12">
<div class="chips" id="chips_networks"></div>
</div>
</div>
<div class="row">
<div class="translate sub-title">Filter states</div>
<div class="col s12 treeContainer" id="tree_networks"></div>
</div>
</div>
<div id="tab_health" class="page">
<div class="input-field blacklist_title">
<input type="checkbox" id="updateHealth" class="value" />
<label for="updateHealth" class="translate">Update health</label>
</div>
<div class="row">
<div class="translate sub-title">Filter objects</div>
<div class="col s12">
<div class="chips" id="chips_health"></div>
</div>
</div>
<div class="row">
<div class="translate sub-title">Filter states</div>
<div class="col s12 treeContainer" id="tree_health"></div>
</div>
</div>
<div id="tab_vouchers" class="page">
<div class="input-field blacklist_title">
<input type="checkbox" id="updateVouchers" class="value" />
<label for="updateVouchers" class="translate">Update vouchers</label>
</div>
<div class="row">
<div class="translate sub-title">Filter states</div>
<div class="col s12 treeContainer" id="tree_vouchers"></div>
</div>
<div class="row">
<div class="translate sub-title">Settings for vouchers</div>
<div class="col s12">
<div class="row">
<div class="input-field col s12 m6">
<input type="checkbox" id="updateVouchersNoUsed" class="value" />
<label for="updateVouchersNoUsed" class="translate">Update only unused vouchers</label>
</div>
</div>
</div>
</div>
<div class="row">
<div class="translate sub-title">Settings for voucher creation</div>
<div class="col s12">
<div class="row">
<div class="input-field col s12 m4">
<input type="number" id="createVouchersNumber" placeholder="1" class="value" />
<label for="createVouchersNumber" class="translate">Number of vouchers</label>
</div>
<div class="input-field col s12 m4">
<input type="number" id="createVouchersDuration" placeholder="Duration" class="value" />
<label for="createVouchersDuration" class="translate">Duration in minutes</label>
</div>
<div class="input-field col s12 m4">
<input type="number" id="createVouchersQuota" placeholder="Quota" class="value" />
<label for="createVouchersQuota" class="translate">Usage quota</label>
</div>
</div>
<div class="row">
<div class="input-field col s12 m4">
<input type="number" id="createVouchersUploadLimit" placeholder="0" class="value" />
<label for="createVouchersUploadLimit" class="translate">Upload limit in Kbps</label>
</div>
<div class="input-field col s12 m4">
<input type="number" id="createVouchersDownloadLimit" placeholder="0" class="value" />
<label for="createVouchersDownloadLimit" class="translate">Download limit in Kbps</label>
</div>
<div class="input-field col s12 m4">
<input type="number" id="createVouchersByteQuota" placeholder="0" class="value" />
<label for="createVouchersByteQuota" class="translate">MB quota</label>
</div>
</div>
<div class="row">
<div class="input-field col s12">
<input type="text" id="createVouchersNote" placeholder="Note" class="value" />
<label for="createVouchersNote" class="translate">Note</label>
</div>
</div>
</div>
</div>
</div>
<div id="tab_alarms" class="page">
<div class="input-field blacklist_title">
<input type="checkbox" id="updateAlarms" class="value" />
<label for="updateAlarms" class="translate" style="margin-right: 30px;">Update alarms</label>
</div>
<div class="row">
<div class="translate sub-title">Filter states</div>
<div class="col s12 treeContainer" id="tree_alarms"></div>
</div>
<div class="row">
<div class="translate sub-title">Settings for alarms</div>
<div class="col s12">
<div class="row">
<div class="input-field col s12 m6">
<input type="checkbox" id="updateAlarmsNoArchived" class="value" />
<label for="updateAlarmsNoArchived" class="translate">Update only new alarms</label>
</div>
</div>
</div>
</div>
</div>
<div id="tab_dpi" class="page">
<div class="input-field blacklist_title">
<input type="checkbox" id="updateDpi" class="value" />
<label for="updateDpi" class="translate">Update DPI</label>
</div>
<div class="row">
<div class="translate sub-title">Filter states</div>
<div class="col s12 treeContainer" id="tree_dpi"></div>
</div>
</div>
<div id="tab_gateway_traffic" class="page">
<div class="input-field blacklist_title">
<input type="checkbox" id="updateGatewayTraffic" class="value" />
<label for="updateGatewayTraffic" class="translate">Update Gateway Traffic</label>
</div>
<div class="row">
<div class="translate sub-title">Filter states</div>
<div class="col s12 treeContainer" id="tree_gateway_traffic"></div>
</div>
<div class="row">
<div class="translate sub-title">Settings for Gateway Traffic</div>
<div class="col s12">
<div class="row">
<div class="input-field col s12 m6">
<input type="number" min="0" max="365" id="gatewayTrafficMaxDays" placeholder="7" class="value" />
<label for="gatewayTrafficMaxDays" class="translate">Get data for x Days (0 = all available data)</label>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>