// JavaScript Document

<!-- progress indicators turned off!

window.onload = function() {
	
	 document.getElementById('progress').style.display = "none";
 // document.getElementById('stkey').style.display = "none";
 // document.getElementById('sectionLinks').style.display = "none";
 // document.getElementById('related').style.display = "none";
//  document.getElementById('returntomap').style.display = "none";	
	
 
}

//menu constructor
function menu(allitems,thisitem,startstate){ 
  callname= "gl"+thisitem;
  divname="subglobal"+thisitem;  
	this.numberofmenuitems = allitems;
	this.caller = document.getElementById(callname);
	this.thediv = document.getElementById(divname);
	this.thediv.style.visibility = startstate;
}
				 
//menu methods
function ehandler(event,theobj){
  for (var i=1; i<= theobj.numberofmenuitems; i++){
	  var shutdiv =eval( "menuitem"+i+".thediv");
    shutdiv.style.visibility="hidden";
	}
	theobj.thediv.style.visibility="visible";
}
				
function closesubnav(event){
  if ((event.clientY <48)||(event.clientY > 107)){
    for (var i=1; i<= numofitems; i++){
      var shutdiv =eval('menuitem'+i+'.thediv');
			shutdiv.style.visibility='hidden';
		}  
	}
}
// -->


function getdetails(country,abc,def) {


map.closeInfoWindow();
map.setCenter(new GLatLng(abc,def),5);

document.getElementById('progress').style.display = "block";

//new Ajax.Updater('resultset', 'http://spneumoniae.mlst.net/earth/maps/byst1.asp?country='+country, { method: 'get' });


{
		var url = 'byst1.asp?country='+country+'&latitude='+abc+'&longitude='+def+'';
		////var pars = 'someParameter=ABC';
		
		var myAjax = new Ajax.Updater(
					'resultset', 
					url, 
					{
						method: 'get', 
					    onComplete: showResponse
					});
		
	}

function showResponse(req) {
document.getElementById('resultset').innerHTML = req.responseText;
document.getElementById('progress').style.display = "none";
document.getElementById('returntomap').style.display = "block";


}
 
	
	
	
    
function reportError(request) {alert('Sorry. There was an error.');}
}

function clearmarkers() {
toggleGroups_off(99)
toggleGroups_off(1)
toggleGroups_off(2)
toggleGroups_off(3)
toggleGroups_off(4)
toggleGroups_off(5)
toggleGroups_off(6)
toggleGroups_off(7)
toggleGroups_off(8)
toggleGroups_off(9)
toggleGroups_off(10)
document.getElementById('globalkey').style.display = "none";
//map.clearOverlays();
}

function reappear() {
	document.getElementById('resultset').innerHTML = "";
//document.getElementById('headingchangest').innerHTML = "";
document.getElementById('showstcountries').innerHTML = "";
document.getElementById('returntomap').style.display = "none";
map.setCenter(new GLatLng(20,0),2);
toggleGroups_off(99)
toggleGroups_on(1)
toggleGroups_on(2)
toggleGroups_on(3)
toggleGroups_on(4)
toggleGroups_on(5)
toggleGroups_on(6)
toggleGroups_on(7)
toggleGroups_on(8)
toggleGroups_on(9)
toggleGroups_on(10)
document.getElementById('globalkey').style.display = "block";
document.getElementById('stkey').style.display = "none";


}

function clearcountryst() {
document.getElementById('showstcountries').innerHTML = "";
}

function headingchangest(a) {
document.getElementById('showstcountries').innerHTML = "<b>Sequence Type "+a+"</b>";
}



function addnew_markers(a,b,c,d) {
document.getElementById('progress').style.display = "block";
document.getElementById('returntomap').style.display = "none";
map.setCenter(new GLatLng(20,0),2);
 var point = new GLatLng(a,b);
		   var marker = createMarkerST(point,d,d+"<br> put something here <a href onclick = \"getdetails('Bangladesh');\">Click to view STs</a>",a,b,c)
 		   map.addOverlay(marker);
		   markerGroups[99].push(marker);
		   
document.getElementById('stkey').style.display = "block";

document.getElementById('showstcountries').innerHTML = document.getElementById('showstcountries').innerHTML + "<br>" +d+ "		" +c+ ""; 


document.getElementById('progress').style.display = "none";
}



function getepi(country,abc,def) {
document.getElementById('progress').style.display = "block";
//new Ajax.Updater('resultset', 'http://spneumoniae.mlst.net/earth/maps/byst1.asp?country='+country, { method: 'get' });
map.closeInfoWindow();
//map.setCenter(new GLatLng(abc,def),5);


{
		var url = 'getepi_final.asp?country='+country+'&latitude='+abc+'&longitude='+def+'';
		////var pars = 'someParameter=ABC';
		
		var myAjax = new Ajax.Updater(
					'resultset', 
					url, 
					{
						method: 'get', 
					    onComplete: showResponsegetepi
					});
		
	}

function showResponsegetepi(req) {
document.getElementById('resultset').innerHTML = req.responseText;
document.getElementById('progress').style.display = "none";

document.getElementById('returntomap').style.display = "block";

}
 
	
	
	
    
function reportErrorgetepi(request) {alert('Sorry. There was an error.');}
}

//  document.getElementById("sidebar").innerHTML = sidebar_html;
   function toggleGroup(type) {
      for (var i = 0; i < markerGroups[type].length; i++) {
        var marker = markerGroups[type][i];
        if (marker.isHidden()) {
          marker.show();
        } else {
          marker.hide();
        }
      } 
    }
	   
   function toggleGroups_off(type) {
      for (var i = 0; i < markerGroups[type].length; i++) {
        var marker = markerGroups[type][i];
        if (marker.isHidden()) {
          //marker.show();
        } else {
          marker.hide();
        }
      } 
    }
	
	function toggleGroups_on(type) {
      for (var i = 0; i < markerGroups[type].length; i++) {
        var marker = markerGroups[type][i];
        if (marker.isHidden()) {
          marker.show();
        } else {
          //marker.hide();
        }
      } 
    }
	
	
	
    function validate(chk,numbers){
  if (chk.checked == 1)
    numbers.show();
  else
    numbers.hide();
    //chk.checked = 1; 
}

function toggler(checkboxName) {

      <!-- Handle dynamic dragging toggle event -->
      if (checkboxName == "enableDragging") {
         if (document.control.enableDragging.checked == true) {
           map.enableDragging()
         } else {
           map.disableDragging()
         }
      }
    
      <!-- Handle small map control toggle event -->
      if (checkboxName == "smallMapControl") {
          if (document.control.smallMapControl.checked == true) {
             map.addControl(smallControl);
          } else {
             map.removeControl(smallControl);
          }
      }
 
      <!-- Handle large map control toggle event -->
      if (checkboxName == "largeMapControl") {
          if (document.control.largeMapControl.checked == true) {
             map.addControl(largeControl);
          } else {
             map.removeControl(largeControl);
          }
      }

      <!-- Handle map/satellite switcher control toggle event -->
      if (checkboxName == "typeControl") {
          if (document.control.typeControl.checked == true) {
             map.addControl(typeControl);
          } else {
             map.removeControl(typeControl);
          }
      }

      <!-- Handle zoom level display toggle event -->
      if (checkboxName == "displayZoom") {
          if (document.control.displayZoom.checked == true) {
               displayZoom()
               GEvent.trigger(map, "moveend")
          } else {
               hideZoom()
          }
      }

      <!-- Handle viewport bounds display toggle event -->
      if (checkboxName == "displayViewportBounds") {
          if (document.control.displayViewportBounds.checked == true) {
               displayViewportBounds()
               GEvent.trigger(map, "moveend")
          } else {
               hideViewportBounds()
          }
      }


      <!-- Handle map dimensions display toggle event -->
      if (checkboxName == "displayMapDimensions") {
          if (document.control.displayMapDimensions.checked == true) {
               document.getElementById("message7").innerHTML = '<b>Map Dimensions:</b><br>';
               displayMapDimensions()
               GEvent.trigger(map, "moveend")
          } else {
               hideMapDimensions()
          }
      }

      <!-- Handle info window toggle event -->
      if (checkboxName == "enableInfoWindow") {
          if (document.control.typeControl.checked == true) {
             map.enableInfoWindow()
          } else {
             map.disableInfoWindow()
          }
      }

      <!-- Handle lat/long coord display toggle event -->
      if (checkboxName == "displayCoords") {
          if (document.control.displayCoords.checked == true) {
               displayGeoCoords()
               GEvent.trigger(map, "moveend")
          } else {
               hideGeoCoords()
          }
      }

      <!-- Handle map tracking toggle event -->
      if (checkboxName == "mapTrack") {
          if (document.control.mapTrack.checked == true) {
            plotMapMovement()
          } else {
            GEvent.removeListener(trackListener); 
          }
      }

      <!-- Handle waypoint display toggle event -->
      if (checkboxName == "waypointCoords") {
          if (document.control.waypointCoords.checked == true) {
            displayWaypointCoords();
            GEvent.trigger(map, "moveend"); 
          } else {
            GEvent.removeListener(waypointDisplayListener); 
            document.getElementById("message3").innerHTML = "";
          }
      }

      <!-- Handle distance display toggle event -->
      if (checkboxName == "distTravelled") {
          if (document.control.distTravelled.checked == true) {
            displayDistTravelled();
            GEvent.trigger(map, "moveend"); 
          } else {
            GEvent.removeListener(distTravelledListener); 
            document.getElementById("message2").innerHTML = "";
          }
      }
    }
	
	
	function getdetails_country(country,abc,def) {


map.closeInfoWindow();
map.setCenter(new GLatLng(abc,def),4);

document.getElementById('progress').style.display = "block";

//new Ajax.Updater('resultset', 'http://spneumoniae.mlst.net/earth/maps/byst1.asp?country='+country, { method: 'get' });


{
		var url = 'getepi_country_final.asp?country='+country+'&latitude='+abc+'&longitude='+def+'';
		////var pars = 'someParameter=ABC';
		
		var myAjax = new Ajax.Updater(
					'resultset', 
					url, 
					{
						method: 'get', 
					    onComplete: showResponse
					});
		
	}

function showResponse(req) {
document.getElementById('resultset').innerHTML = req.responseText;
document.getElementById('progress').style.display = "none";
document.getElementById('returntomap').style.display = "block";


}
 
	
	
	
    
function reportError(request) {alert('Sorry. There was an error.');}
}
	
	
///////////DATABASE REQUEST
function makePOSTRequest(url, parameters) {
      http_request = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http_request = new XMLHttpRequest();
		
        if (http_request.overrideMimeType) {
         	// set type accordingly to anticipated content type
            //http_request.overrideMimeType('text/xml');
           http_request.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
			
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
			   
            } catch (e) {}
         }
      }
      if (!http_request) {

         alert('Cannot create XMLHTTP instance');
         return false;
      }
      document.getElementById('progress').style.display = "block";
      http_request.onreadystatechange = alertContents;
      http_request.open('POST', url, true);
      http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      http_request.setRequestHeader("Content-length", parameters.length);
      http_request.setRequestHeader("Connection", "close");
      http_request.send(parameters);
   }
   
    function alertContents() {
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
            
            result = http_request.responseText;
			//document.getElementById('progress').style.visibility = "hidden"; 
			document.getElementById('database_results').style.visibility = "visible"; 
           document.getElementById('database_results').innerHTML = result;   
		   document.getElementById('progress').style.display = "none";
			        
         } else {
            alert('There was a problem with the request.');
         }
      }
   }


function getdb(obj) {
      var poststr = "andor=" + encodeURI( document.getElementById("andor").value ) +
	  			    "&field1=" + encodeURI( document.getElementById("field1").value ) +
					"&operator1=" + encodeURI( document.getElementById("operator1").value ) +
                    "&value1=" + encodeURI( document.getElementById("value1").value )+
					"&field2=" + encodeURI( document.getElementById("field2").value ) +
					"&operator2=" + encodeURI( document.getElementById("operator2").value ) +
                    "&value2=" + encodeURI( document.getElementById("value2").value )+
					"&field3=" + encodeURI( document.getElementById("field3").value ) +
					"&operator3=" + encodeURI( document.getElementById("operator3").value ) +
                    "&value3=" + encodeURI( document.getElementById("value3").value )+
					"&field4=" + encodeURI( document.getElementById("field4").value ) +
					"&operator4=" + encodeURI( document.getElementById("operator4").value ) +
                    "&value4=" + encodeURI( document.getElementById("value4").value )+
					"&order=" + encodeURI( document.getElementById("order").value )+
					"&ascdesc=" + encodeURI( document.getElementById("ascdesc").value );
      makePOSTRequest('isolate_post.asp', poststr);	 
	  
	  
	   
	// document.getElementById('dbres').innerHTML= "<ul><li class=\"first\"><a href=\"#daa\">daasss</a></li></ul>";
	 		 
	 if(document.getElementById("value2").value.length == 0) {
	 
	 var query = " " + encodeURI( document.getElementById("field1").value ) +
	  			    " " + document.getElementById("operator1").value  +
					" " + encodeURI( document.getElementById("value1").value ) ;
					}
					
	 else if (document.getElementById("value3").value.length == 0)    {
       var query = " " + encodeURI( document.getElementById("field1").value ) +
	  			    " " + document.getElementById("operator1").value  +
					" " + encodeURI( document.getElementById("value1").value ) +
					" " + document.getElementById("andor").value  +
					" " + encodeURI( document.getElementById("field2").value ) +
	  			    " " + document.getElementById("operator2").value  +
					" " + encodeURI( document.getElementById("value2").value ) ;
					}
					
					 else if (document.getElementById("value4").value.length == 0)    {
        var query = " " + encodeURI( document.getElementById("field1").value ) +
	  			    " " + document.getElementById("operator1").value  +
					" " + encodeURI( document.getElementById("value1").value ) +
					" " + document.getElementById("andor").value  +
					" " + encodeURI( document.getElementById("field2").value ) +
	  			    " " + document.getElementById("operator2").value  +
					" " + encodeURI( document.getElementById("value2").value ) +
					" " + document.getElementById("andor").value  +
					" " + encodeURI( document.getElementById("field3").value ) +
	  			    " " + document.getElementById("operator3").value  +
					" " + encodeURI( document.getElementById("value3").value ) ;
     }
	else {
	var query = " " + encodeURI( document.getElementById("field1").value ) +
	  			    " " + document.getElementById("operator1").value  +
					" " + encodeURI( document.getElementById("value1").value ) +
					" " + document.getElementById("andor").value  +
					" " + encodeURI( document.getElementById("field2").value ) +
	  			    " " + document.getElementById("operator2").value  +
					" " + encodeURI( document.getElementById("value2").value ) +
					" " + document.getElementById("andor").value  +
					" " + encodeURI( document.getElementById("field3").value ) +
	  			    " " + document.getElementById("operator3").value  +
					" " + encodeURI( document.getElementById("value3").value ) +
					" " + document.getElementById("andor").value  +
					" " + encodeURI( document.getElementById("field4").value ) +
	  			    " " + document.getElementById("operator4").value  +
					" " + encodeURI( document.getElementById("value4").value ) ;
					
	
	
	}		
	document.getElementById('sql').innerHTML = "Current results - "+query;
	
	//	 document.getElementById('database_results').innerHTML = document.getElementById('query').innerHTML + "<br><a   onmouseover=\"this.style.cursor='pointer';\" onClick=\"javascript:makePOSTRequest('database/isolate_post.php','"+poststr+"');\">" +query+ "</A>"; 
	
   }
   
/////////END DATABASE REQUEST   
	
	
	
	
