- var xmlhttpreq = GetHTTPRequest();;
- function precompute() {
- var arcflags = document.getElementById("Precompute").arcflags.checked;
- var numOfRegions = document.getElementById("Precompute").numOfRegions.value;
- var landmarks = document.getElementById("Precompute").landmarks.checked;
- var randLandmarks = document.getElementById("Precompute").randomLandmarks.checked;
- if (isDigits(numOfRegions) == false) {
- alert("Field '#Regions' is not numeric");
- return false;
- }
- url = "http://localhost:8888/precompute?arcflags=" + arcflags;
- if (numOfRegions) {
- url += "&numOfRegions=" + numOfRegions;
- }
- url += "&landmarks=" + landmarks;
- url += "&randomLandmarks=" + randLandmarks;
- url += "&callback=?";
- StartRequest(url);
- }
- function isDigits(argvalue) {
- argvalue = argvalue.toString();
- var validChars = "0123456789";
- var startFrom = 0;
- if (argvalue.substring(0, 2) == "0x") {
- validChars = "0123456789abcdefABCDEF";
- startFrom = 2;
- } else if (argvalue.charAt(0) == "0") {
- validChars = "01234567";
- startFrom = 1;
- }
- for ( var n = 0; n < argvalue.length; n++) {
- if (validChars.indexOf(argvalue.substring(n, n + 1)) == -1) {
- return false;
- }
- }
- return true;
- }
- function GetHTTPRequest() {
- var xmlhttp = false;
- try {
- xmlhttp = new XMLHttpRequest();
- } catch (trymicrosoft) {
- try {
- xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
- } catch (othermicrosoft) {
- try {
- xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
- } catch (failed) {
- xmlhttp = false;
- }
- }
- }
- return xmlhttp;
- }
- function StartRequest(url) {
- // open a persistant connection
- xmlhttpreq.open('GET', url, true);
- xmlhttpreq.onreadystatechange = handle_response;
- xmlhttpreq.send(null);
- }
- function handle_response() {
- var notDone = true;
- if (!(xmlhttpreq.readyState==4) && xmlhttpreq.status==200) {
- var status = xmlhttpreq.responseText;
- if(status.indexOf("done") >= 0) {
- notDone = false;
- }
- document.getElementById("server_messages").innerHTML = status;
- }
- // If connection gets disconnected, restart it!
- if (!(xmlhttpreq.readyState==4) && notDone) {
- StartRequest();
- }
- }