Add initial setup UI
This commit is contained in:
parent
8b32fefb41
commit
f0d0f76d3c
@ -1,3 +1,7 @@
|
|||||||
.navbar-brand {
|
.navbar-brand {
|
||||||
font-size: 150%;
|
font-size: 150%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.mainbox {
|
||||||
|
margin-top: 1rem;
|
||||||
|
}
|
@ -8,7 +8,29 @@
|
|||||||
<script src="js/fontawesome.js"></script>
|
<script src="js/fontawesome.js"></script>
|
||||||
<script src="js/jquery-3.3.1.min.js"></script>
|
<script src="js/jquery-3.3.1.min.js"></script>
|
||||||
<script src="js/bootstrap.min.js"></script>
|
<script src="js/bootstrap.min.js"></script>
|
||||||
|
<script src="js/index.js"></script>
|
||||||
|
|
||||||
<nav class="navbar navbar-expand-lg navbar-dark bg-green py-2">
|
<nav class="navbar navbar-expand-lg navbar-dark bg-green py-2">
|
||||||
<span class="navbar-brand py-0 my-0">PC Info</span>
|
<span class="navbar-brand py-0 my-0">PC Info</span>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
|
<div class="container mainbox d-none" id="setupmode">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
<h4 class="card-title">Setup</h4>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-form-label" for="serverurl">Server API URL:</label>
|
||||||
|
<input id="serverurl" type="url" class="form-control" placeholder="https://pcinfo.netsyms.com/api" />
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-form-label" for="apikey">API Key:</label>
|
||||||
|
<input id="apikey" type="text" class="form-control" placeholder="123abc" />
|
||||||
|
</div>
|
||||||
|
<div class="btn btn-primary" id="setupbtn">Finish Setup</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="container mainbox d-none" id="usermode">
|
||||||
|
|
||||||
|
</div>
|
79
www/js/index.js
Normal file
79
www/js/index.js
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
var inCordova = false;
|
||||||
|
var inNwjs = false;
|
||||||
|
var setupMode = false;
|
||||||
|
var serverUrl = "";
|
||||||
|
var apiKey = "";
|
||||||
|
|
||||||
|
|
||||||
|
function loadSetupMode() {
|
||||||
|
$("#setupbtn").click(function () {
|
||||||
|
var url = $("#serverurl").val();
|
||||||
|
if (url == "") {
|
||||||
|
url = "https://pcinfo.netsyms.com/api";
|
||||||
|
}
|
||||||
|
var key = $("#apikey").val();
|
||||||
|
if (key == "") {
|
||||||
|
alert("Please enter a valid API key.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$.getJSON(url, {
|
||||||
|
key: key,
|
||||||
|
action: 'ping'
|
||||||
|
}, function (resp) {
|
||||||
|
if (typeof resp['status'] != 'undefined') {
|
||||||
|
if (resp['status'] == 'ERROR') {
|
||||||
|
alert("Error: " + resp['message']);
|
||||||
|
return;
|
||||||
|
} else if (resp['status'] == 'OK') {
|
||||||
|
localStorage.setItem('server', url);
|
||||||
|
localStorage.setItem('apikey', key);
|
||||||
|
alert("Setup complete.");
|
||||||
|
document.location.href = "index.html";
|
||||||
|
} else {
|
||||||
|
alert("Invalid reply from server.");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
alert("Invalid reply from server.");
|
||||||
|
}
|
||||||
|
}).fail(function (xhr) {
|
||||||
|
try {
|
||||||
|
var resp = JSON.parse(xhr.responseText);
|
||||||
|
if (typeof resp['status'] != 'undefined' && resp['status'] == 'ERROR') {
|
||||||
|
alert("Error: " + resp['message']);
|
||||||
|
} else {
|
||||||
|
alert("Error connecting to server.");
|
||||||
|
}
|
||||||
|
} catch (ex) {
|
||||||
|
alert("Error connecting to server.");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#setupmode").removeClass("d-none");
|
||||||
|
}
|
||||||
|
|
||||||
|
function loadUserMode() {
|
||||||
|
$("#usermode").removeClass("d-none");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
document.addEventListener("deviceready", function () {
|
||||||
|
inCordova = true;
|
||||||
|
});
|
||||||
|
|
||||||
|
$(document).ready(function () {
|
||||||
|
if (typeof nw !== 'undefined') {
|
||||||
|
inNwjs = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (localStorage.getItem('server') === null || localStorage.getItem('apikey') === null) {
|
||||||
|
setupMode = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (setupMode) {
|
||||||
|
loadSetupMode();
|
||||||
|
} else {
|
||||||
|
loadUserMode();
|
||||||
|
}
|
||||||
|
});
|
Loading…
x
Reference in New Issue
Block a user