var position = null;
var n2yo_valArray = Array();
var n2yo_cnt = 0;
var n2yo_myPoint;
var n2yo_marker;
var n2yo_cycle=60; // (seconds between reloads)
var n2yo_tid;
var n2yo_map;
var n2yo_map_type;
var n2yo_lat;
var n2yo_lng;
var n2yo_sid;
var n2yo_comments;
var n2yo_decay_date;
var n2yo_s;
var n2yo_description;
var n2yo_lang;
//var n2yo_z=0;
//var n2yo_w=0;
//var n2yo_h=0;
var n2yo_c;
var n2yo_f;
var n2yo_oneSatellite=false;
var valid_license = false;
var selectMsg = Array();
selectMsg[0]="Select a satellite";
selectMsg[1]="S&eacute;lectionnez un satellite";
var poweredMsg = Array();
poweredMsg[0]="Powered by";
poweredMsg[1]="Service fourni par";
var lngID;

document.write('<script type="text/javascript" src="http://api.maps.yahoo.com/ajaxymap?v=3.8&appid=cO1dzVbV34GI2gBlipap4hNZgdfpLdbN7ahpyLIyQ1O0y638MWdhUn4KA5YMKuvA5uPnl2NrRg--"></script>');
document.write('<script type="text/javascript" src="http://n2yo.com/sat/license.php?id='+n2yo_license+'"></script>');

	if (n2yo_lang==null) lngID=0;
	if (n2yo_lang=='en') lngID=0;
	if (n2yo_lang=='fr') lngID=1;
	switch(n2yo_lang)
	{
	case 'en':
	  lngID=0;
	  break;    
	case 'fr':
	  lngID=1;
	  break;
	default:
	  lngID=0;
	}
	var selectMsgTxt = selectMsg[lngID];
	var poweredMsgTxt = poweredMsg[lngID];

	if (n2yo_z==0) n2yo_z=10;
	if (n2yo_w==0) n2yo_w=300;
	if (n2yo_h==0) n2yo_h=300;
	if (n2yo_c=='') n2yo_c='#EEEEEE';
	if (n2yo_c=='') n2yo_c='#000000';
	if (n2yo_description == null) n2yo_description = true;
	if (n2yo_s==null) 
	{
		n2yo_s = Array(); // the list of satellites, one per line - name, NORAD_id
		n2yo_s[0] = new Array("ISS (ZARYA)",25544);
	}
	if (n2yo_s.length==1)
	{
		n2yo_oneSatellite = true;
	}
	if (!n2yo_oneSatellite)
	{
		document.write('<table border="0" cellspacing=0 height='+n2yo_h+'><tr><td rowspan=2 valign="top" style="border: 0px solid #999999;padding: 0px 0px 0px 0px"><div id="n2yo_zone" style="width: '+n2yo_w+'px; height: '+n2yo_h+'px;"></div></td><td valign="top" align="left" bgcolor='+n2yo_c+' width="200" style="border: 0px solid #999999;padding: 2px 4px 2px 4px"><font face="Arial" size="2" color='+n2yo_f+'><B>'+selectMsgTxt+'</B><p><SELECT ID="sel" onchange=\'n2yo_go();\';>');
		for (i=0;i<n2yo_s.length;i++)
		{
			var n2yo_s_na = n2yo_s[i][0];
			var n2yo_s_id = n2yo_s[i][1];
			if (i==0)
				document.write('<option value=\''+n2yo_s_id+'\' SELECTED>'+n2yo_s_na+'</option>');
			else
				document.write('<option value=\''+n2yo_s_id+'\'>'+n2yo_s_na+'</option>');
		}
		document.write('</SELECT><p><div id="sat_info"></div></font></td></tr><tr><td valign=bottom align=right bgcolor='+n2yo_c+'><font face="Arial" size="1"> '+poweredMsgTxt+' <A HREF="http://www.n2yo.com">www.n2yo.com</A></font></td></tr></table>');

	}
	else
	{
		document.write('<table border="0"><tr><td valign="top" style="border: 0px solid #999999;padding: 0px 0px 0px 0px" width='+n2yo_w+' height='+n2yo_h+'><div id="n2yo_zone" style="width: '+n2yo_w+'px; height: '+n2yo_h+'px;"></div></td>');
		document.write('</tr><tr><td><font face="Arial" size="1">Powered by <A HREF="http://www.n2yo.com">www.n2yo.com</A></font></td></tr></table>');
	}

function n2yo_start()
{
	if (!n2yo_oneSatellite)
		document.getElementById('sel').options[0].selected = true;
	n2yo_go();
}
function n2yo_go()
{
	//alert (valid_license);

	clearTimeout(n2yo_tid);
	position = null;
	if (!n2yo_oneSatellite)
	{
		document.getElementById('sat_info').innerHTML = '';
	}
	n2yo_cnt = 0;

	if (!n2yo_oneSatellite)
	{
		var n2yo_sIdx = document.getElementById('sel').selectedIndex;
		n2yo_sid = document.getElementById('sel').options[n2yo_sIdx].value;
	}
	else
	{
		n2yo_sid =n2yo_s[0][1];
	}


	// Create a lat/lon object
	n2yo_myPoint = new YGeoPoint(0,0);
	var n2yo_myImage = new YImage();
	if (!n2yo_checkIcon(n2yo_sid))
	{
		n2yo_myImage.src = 'http://n2yo.com/img/icons/00000.gif';
	}
	else
	{
		n2yo_myImage.src = 'http://n2yo.com/img/icons/'+n2yo_sid+'.gif';
	}
	n2yo_marker = new YMarker(n2yo_myPoint,n2yo_myImage);
	n2yo_map = new YMap(document.getElementById('n2yo_zone'));
	n2yo_map.addTypeControl();
	n2yo_map.addZoomLong(); 
	if (n2yo_map_type==1)
		n2yo_map.setMapType(YAHOO_MAP_REG);
	else if (n2yo_map_type==2)
		n2yo_map.setMapType(YAHOO_MAP_SAT);
	else if (n2yo_map_type==3)
		n2yo_map.setMapType(YAHOO_MAP_HYB);
	else 		n2yo_map.setMapType(YAHOO_MAP_REG);

	n2yo_map.drawZoomAndCenter(n2yo_myPoint, n2yo_z);

	n2yo_execute();
}

function n2yo_execute()
{	

	if (n2yo_getValue())
	{
		n2yo_tid = setTimeout("n2yo_execute()", 1000); // tick every second
	}

}
function n2yo_getValue()
{

	if ((!valid_license) && (n2yo_cnt>=60)) // not licensed. Stop after 60 secs!
	{
		clearTimeout(n2yo_tid);
		return false;
	}
	var n2yo_rest = n2yo_mod(n2yo_cnt,n2yo_cycle);

	if (n2yo_rest == 0) //Every <n2yo_cycle> seconds get a new set of elements
	{
		position = null;
/*
		src1 = "http://n2yo.com/sat/get-sat-info.php?s="+n2yo_sid;
		n2yo_oScript1=document.createElement('script');
		n2yo_oScript1.type='text/javascript';
		n2yo_oScript1.src=src1;
		document.getElementsByTagName('head').item(0).appendChild(n2yo_oScript1);
*/
		src = "http://n2yo.com/sat/script.php?s="+n2yo_sid+"&d=60&RandomKey=" + Math.random() * Date.parse(new Date()) + "&o=W";
		n2yo_oScript=document.createElement('script');
		n2yo_oScript.type='text/javascript';
		n2yo_oScript.src=src;
		document.getElementsByTagName('head').item(0).appendChild(n2yo_oScript);


	}

	if (n2yo_rest == 1) 
	{
		if (!n2yo_oneSatellite)
		{
			var name = '';
			for (k=0;k<n2yo_s.length;k++)
			if (n2yo_s[k][1] == n2yo_sid)
			{
				name = n2yo_s[k][0];
			}
			if (n2yo_description)
				document.getElementById('sat_info').innerHTML = '<font size="2" face="Arial">'+n2yo_comments+'...<br><a href="http://www.n2yo.com/satellite/?s='+n2yo_sid+'">Details about '+ name + '</a></font>';
		}

		/*
		if (n2yo_decay_date != '0000-00-00')
		{
			clearTimeout(n2yo_tid);
			alert('This satellite does not exist or is decayed!');
			return false;
		}
		*/

	}
	if (position != null)
	{
		n2yo_valArray =  position[n2yo_rest].split(',');
		n2yo_lat = n2yo_valArray[0];
		n2yo_lng = n2yo_valArray[1];
		n2yo_myPoint = new YGeoPoint(n2yo_lat,n2yo_lng);
		n2yo_map.addOverlay(n2yo_marker);
		n2yo_marker.setYGeoPoint(n2yo_myPoint);
		n2yo_map.panToLatLon(n2yo_myPoint);
	}
	n2yo_cnt++;
	return true;
}

function n2yo_mod(divisee,base) {
	// Created 1997 by Brian Risk.  http://members.aol.com/brianrisk
	return Math.round(divisee - (Math.floor(divisee/base)*base));
}

function n2yo_checkIcon(n2yo_id)
{
	n2yo_img = new Image();
	n2yo_img.src = "http://www.n2yo.com/img/icons/"+n2yo_id+".gif";
	n2yo_h = n2yo_img.height;
	if (n2yo_img.height > 0)
	{
		return true;
	}
	return false;
}


