aboutsummaryrefslogtreecommitdiffstats
path: root/web
diff options
context:
space:
mode:
Diffstat (limited to 'web')
-rwxr-xr-xweb/api/write/oplog2
-rw-r--r--web/index.html1
-rw-r--r--web/js/nms-oplog.js35
-rw-r--r--web/js/nms.js10
4 files changed, 40 insertions, 8 deletions
diff --git a/web/api/write/oplog b/web/api/write/oplog
index 736ba2b..73b807b 100755
--- a/web/api/write/oplog
+++ b/web/api/write/oplog
@@ -9,7 +9,7 @@ use warnings;
my $in = get_input();
my %tmp = %{JSON::XS::decode_json($in)};
-my $user = $ENV{'REMOTE_USER'} || "undefined";
+my $user = $tmp{'user'} || $ENV{'REMOTE_USER'} || "undefined";
my $q = $nms::web::dbh->prepare("INSERT INTO oplog (username, systems, log) values (?,?,?);");
$q->execute($user, $tmp{'systems'}, $tmp{'log'});
diff --git a/web/index.html b/web/index.html
index 4a1a3e4..c500d09 100644
--- a/web/index.html
+++ b/web/index.html
@@ -98,6 +98,7 @@
</div>
<button id="logbox-submit" class="btn btn-default" type="button" onclick="nmsOplog.commit();">Log</button>
</div>
+ <p onclick="nmsOplog.getUser(true);" id="logbook-name" class="navbar-text navbar-right"></p>
</div><!--/.nav-collapse -->
</div>
diff --git a/web/js/nms-oplog.js b/web/js/nms-oplog.js
index 372183e..8fe50a4 100644
--- a/web/js/nms-oplog.js
+++ b/web/js/nms-oplog.js
@@ -8,11 +8,38 @@ nmsOplog.init = function() {
nmsData.addHandler("oplog", "nmsOplogHandler", nmsOplog.updateComments);
}
+nmsOplog._reset = function() {
+ document.getElementById('logbox-id').value = "";
+ document.getElementById('logbox').value = "";
+ document.getElementById('searchbox').value = "";
+ document.getElementById('searchbox').oninput();
+}
+
+nmsOplog.getUser = function(force = false) {
+ var user = nms.user;
+ if (user == undefined || force) {
+ user = prompt("Who are you? Short nick for the record.");
+ if (user == null || user == undefined || user == "") {
+ console.log("empty prompt");
+ alert("No cake for you.");
+ return false;
+ }
+ nms.user = user;
+ saveSettings();
+ }
+ return nms.user;
+}
+
nmsOplog.commit = function() {
var s = document.getElementById('logbox-id').value;
var d = document.getElementById('logbox').value;
+ var user = nmsOplog.getUser();
+ if (user == undefined) {
+ nmsOplog._reset();
+ return;
+ }
- var myData = {"systems": s, "log": d};
+ var myData = {"user": user, "systems": s, "log": d};
myData = JSON.stringify(myData);
$.ajax({
type: "POST",
@@ -23,11 +50,7 @@ nmsOplog.commit = function() {
nmsData.invalidate("oplog");
}
});
- document.getElementById('logbox-id').value = "";
- document.getElementById('logbox').value = "";
- document.getElementById('searchbox').value = "";
- document.getElementById('searchbox').oninput();
-
+ nmsOplog._reset();
}
nmsOplog.updateComments = function() {
diff --git a/web/js/nms.js b/web/js/nms.js
index a3706b9..d76fa8f 100644
--- a/web/js/nms.js
+++ b/web/js/nms.js
@@ -54,6 +54,13 @@ var nms = {
},
interval: 10,
+ _user: undefined,
+ get user() { return this._user; },
+ set user(u) {
+ this._user = u;
+ document.getElementById('logbook-name').textContent = u;
+ saveSettings();
+ },
/*
* This is a list of nms[x] variables that we store in our
* settings-cookie when altered and restore on load.
@@ -62,7 +69,8 @@ var nms = {
'nightMode',
'menuShowing',
'vertical',
- 'interval'
+ 'interval',
+ 'user'
],
keyBindings:{
'-':toggleMenu,