function collectCoords(x, y, nofleet, nostation) {
	var xdata = document.getElementById('insertx');
	var ydata = document.getElementById('inserty');
	xdata.value = x;
	ydata.value = y;
	if (nofleet == true){
		var xdata = document.getElementById('insertxfleet');
		var ydata = document.getElementById('insertyfleet');
		xdata.value = x;
		ydata.value = y;
		var xdata = document.getElementById('insertxstation');
		var ydata = document.getElementById('insertystation');
		xdata.value = x;
		ydata.value = y;
	}
}
function hidekey() {
	mode = document.getElementById('hidekey_a').innerHTML;
	if (mode == "Hide Key") {
		hide('key');
		document.getElementById('hidekey_a').innerHTML = "Show Key";
	}
	else {
		show('key');
		document.getElementById('hidekey_a').innerHTML = "Hide Key";
	}
}
function toggleInsert(id, x, y) {
	if (id == 'insertSystem'){
		collectCoords(x, y, false);
	}
	else{
		collectCoords(x, y, true);
	}
	show(id);
	show('insertOptions');
	hide('insertplanet');
	hide('insertfleet');
}
function toggleEdit(mode, id, x, y, s) {
	load('edit.php?mode='+mode+'&x='+x+'&y='+y+'&s='+s, id+'AJAX');
	show(id);
}
function calcDistance(s1, s2) {
	load('distance.php?mode=calc&s1='+s1+'&s2='+s2, 'distanceAJAX')
}
function linkSystems(s1, s2) {
	load('link.php?mode=link&s1='+s1+'&s2='+s2, 'linksystemsAJAX')
}
function deleteLink(s) {
	load('link.php?mode=delete&l='+s, 'linksystemsAJAX')
}
function getNationInfo(s) {
	load('info.php?nation='+s, 'nationinfoAJAX')
}
function distanceAJAX() {
	load('distance.php', 'distanceAJAX');
	show('distance');
}
function optionsAJAX() {
	load('options.php', 'optionsAJAX');
	show('options');
}
function linksystemsAJAX() {
	load('link.php', 'linksystemsAJAX');
	show('linksystems');
}
function nationinfoAJAX() {
	load('info.php', 'nationinfoAJAX');
	show('nationinfo');
}
function insertPlanetShow(showid) {
	hide('insertOptions');
	show(showid);
}
function ahah(url, target) {
  document.getElementById(target).innerHTML = ' Fetching data...';
  if (window.XMLHttpRequest) {
    req = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    req = new ActiveXObject("Microsoft.XMLHTTP");
  }
  if (req != undefined) {
    req.onreadystatechange = function() {ahahDone(url, target);};
    req.open("GET", url, true);
    req.send("");
  }
}  

function ahahDone(url, target) {
  if (req.readyState == 4) { // only if req is "loaded"
    if (req.status == 200) { // only if "OK"
      document.getElementById(target).innerHTML = req.responseText;
    } else {
      document.getElementById(target).innerHTML=" AHAH Error:\n"+ req.status + "\n" +req.statusText;
    }
  }
}

function load(name, div) {
	ahah(name,div);
	return false;
}
function show(id) {
	var ele = document.getElementById(id);
	fadeIn(id, 200);
	ele.style.display = "block";
} 
function hide(id) {
	var ele = document.getElementById(id);
	fadeOut(id, 200);
	ele.style.display = "none";
}
function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
} 
function fadeIn(id, millisec) {
    //if an element is invisible, make it visible, else make it ivisible
    if(document.getElementById(id).style.opacity == 0) {
        opacity(id, 0, 100, millisec);
    }
}
function fadeOut(id, millisec) {
    //if an element is invisible, make it visible, else make it ivisible
    opacity(id, 100, 0, millisec);
}
var xmlhttp;

function showResult(str)
{
if (str.length==0)
  {
  document.getElementById("livesearch").innerHTML="";
  document.getElementById("livesearch").style.border="0px";
  return;
  }
xmlhttp=GetXmlHttpObject()
if (xmlhttp==null)
  {
  alert ("Your browser does not support XML HTTP Request");
  return;
  }
var url="search.php";
url=url+"?q="+str;
url=url+"&sid="+Math.random();
xmlhttp.onreadystatechange=stateChanged ;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}

function stateChanged()
{
if (xmlhttp.readyState==4)
  {
  document.getElementById("livesearch").innerHTML=xmlhttp.responseText;
  document.getElementById("livesearch").style.border="1px solid #A5ACB2";
  }
}

function redirect(str)
{
window.location = "system.php?s=" + str;
}

function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  return new XMLHttpRequest();
  }
if (window.ActiveXObject)
  {
  // code for IE6, IE5
  return new ActiveXObject("Microsoft.XMLHTTP");
  }
return null;
}