diff options
| -rwxr-xr-x | web/api/write/oplog | 2 | ||||
| -rw-r--r-- | web/index.html | 1 | ||||
| -rw-r--r-- | web/js/nms-oplog.js | 35 | ||||
| -rw-r--r-- | web/js/nms.js | 10 | 
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, | 
