var curPos = 0;
var minLength = 61;
var recent = true;
var imagesLoading = false;
var timeReload;
var loop_int = 300;
var loopStat = 0;
var imgAr = new Array();
var imgTime = new Array();
var forceRefresh='';

function goNext(){
	var newPos = curPos-1;
	document.getElementById(imgAr[curPos]).style.display = 'none';
	if (newPos < 0){
		curPos = (imgAr.length-1);
	} else {
		curPos = newPos;
	}
	document.getElementById(imgAr[curPos]).style.display = 'inline';
	document.getElementById('lclScanTime').innerHTML = imgTime[curPos];
	document.getElementById('curImageSource').value = document.getElementById(imgAr[curPos]).src;
}
function goBack(){
	var newPos = curPos+1;
	document.getElementById(imgAr[curPos]).style.display = 'none';
	if (newPos == imgAr.length){
		curPos = 0;
	} else {
		curPos = newPos;
	}
	document.getElementById(imgAr[curPos]).style.display = 'inline';
	document.getElementById('lclScanTime').innerHTML = imgTime[curPos];
	document.getElementById('curImageSource').value = document.getElementById(imgAr[curPos]).src;
}
function goBegin(){
	document.getElementById(imgAr[curPos]).style.display = 'none';
	curPos = imgAr.length-1;
	document.getElementById(imgAr[curPos]).style.display = 'inline';
	document.getElementById('lclScanTime').innerHTML = imgTime[curPos];
	document.getElementById('curImageSource').value = document.getElementById(imgAr[curPos]).src;
}
function goEnd(){
	document.getElementById(imgAr[curPos]).style.display = 'none';
	curPos = 0;
	document.getElementById(imgAr[curPos]).style.display = 'inline';
	document.getElementById('lclScanTime').innerHTML = imgTime[curPos];
	document.getElementById('curImageSource').value = document.getElementById(imgAr[curPos]).src;
}
function toggleRadar() {
	if (document.getElementById('display_radar').checked){
		document.getElementById('wrapper').style.display = 'block';
	} else {
		document.getElementById('wrapper').style.display = 'none';
	}
}
function toggleTopo() {
	if (document.getElementById('display_topo').checked){
		document.getElementById('topo').style.display = 'block';
	} else {
		document.getElementById('topo').style.display = 'none';
	}
}
function toggleOverlay() {
	if (document.getElementById('display_overlay').checked){
		document.getElementById('overlay').style.display = 'block';
	} else {
		document.getElementById('overlay').style.display = 'none';
	}
}
function loopChk() {
	if (document.getElementById('chk_loop').checked){
		goNext();
		if(curPos==0){
			loopStat = window.setTimeout("loopChk();",loop_int+(loop_int*3));
		} else {
			loopStat = window.setTimeout("loopChk();",loop_int);
		}
	} else {
		window.clearTimeout(loopStat);
	}
}
function popDate() {
	if(document.getElementById('startdate').value == ''){
		var dt = new Date();
		document.getElementById('startdate').value = pad(dt.getMonth()+1,2)+"/"+pad(dt.getDate(),2)+"/"+dt.getFullYear();
	}
}
function popTime(){
	if(document.getElementById('starttime').value == ''){
		var dt = new Date();
		document.getElementById('starttime').value = pad(dt.getHours(),2)+":00:00";
	}
}
function pad(number, length){
   var str = ''+number;
   while(str.length < length){
      str = '0'+str;
   }
   return str;
}
function clearImgElements(){
	var wrap=document.getElementById('wrapper');
	while (wrap.getElementsByTagName('img').length != 0){
		var x = wrap.getElementsByTagName('img')[0];
		wrap.removeChild(x);
	}
}
function gotFiles(str){
	var loginRes = str.getElementsByTagName("stat");
	var dt= new Date();
	if (loginRes){
		var logTest = loginRes[0].childNodes[0].nodeValue;
		if(logTest=="NICE"){
			var elist = str.getElementsByTagName("filelist");
			var tempItem = elist[0].childNodes;
			window.clearTimeout(loopStat);
			clearImgElements();
			imgAr = new Array();
			imgTime = new Array();
			var wrap=document.getElementById('wrapper');
			for (var i=0;i<tempItem.length;i++) {
				var test = tempItem[i].nodeName.search('src');
				if (test >= 0) {
					var next = imgAr.length;
					imgAr[next] = 'img'+next;
					//alert(document.getElementById(imgAr[next]));
					var tmpsrc = tempItem[i].firstChild.nodeValue;
					var tmpimg = document.createElement('img');
					if (tmpimg){
						tmpimg.id = imgAr[next];
						tmpimg.className = 'loopimg';
						tmpimg.src = tmpsrc+forceRefresh;
						wrap.appendChild(tmpimg);
					}
					// dt.setMonth(tmpsrc.substring(tmpsrc.length-12,tmpsrc.length-10)-1);
					// dt.setDate(tmpsrc.substring(tmpsrc.length-10,tmpsrc.length-8));
					// dt.setHours(tmpsrc.substring(tmpsrc.length-8,tmpsrc.length-6));
					// dt.setMinutes(tmpsrc.substring(tmpsrc.length-6,tmpsrc.length-4));
					// dt.setSeconds(0);
					dt.setUTCMonth(tmpsrc.substring(tmpsrc.length-12,tmpsrc.length-10)-1);
					dt.setUTCDate(tmpsrc.substring(tmpsrc.length-10,tmpsrc.length-8));
					dt.setUTCHours(tmpsrc.substring(tmpsrc.length-8,tmpsrc.length-6));
					dt.setUTCMinutes(tmpsrc.substring(tmpsrc.length-6,tmpsrc.length-4));
					dt.setUTCSeconds(0);
					imgTime[next]=dt.toLocaleTimeString();
					// if(curRadar=='bowman'){
					// 	var newval = dt.valueOf()-(3600000*7);
					// 	dt.setTime(newval);
					// 	imgTime[next]=dt.toTimeString().substring(0,5);
					// } else {
					// 	var newval = dt.valueOf()-(3600000*6);
					// 	dt.setTime(newval);
					// 	imgTime[next]=dt.toTimeString().substring(0,5);
					// }
				}
				
			}
			imagesLoading = false;
			window.clearTimeout(loopStat);
			curPos = imgAr.length-1;
			document.getElementById(imgAr[curPos]).style.display = 'inline';
			document.getElementById('lclScanTime').innerHTML = imgTime[curPos];
			loopChk();
			if(document.getElementById('chk_autoreload').checked){
				
				var tmpD = new Date();
				var min = tmpD.getMinutes();
				if (min > 0){
					var minRemain = 6 - (tmpD.getMinutes() % 6);
				}else {
					var minRemain = 0;
				}
				var secWait = 40 - tmpD.getSeconds();
				var amount = ((minRemain*60)+secWait)*1000;
				// if (!document.all){
				// 	console.log(tmpD+" minutes = "+minRemain+" seconds="+secWait+" tot wait = "+amount);
				// }
				timeReload = window.setTimeout('loadImages();',amount);
				if (!document.getElementById('chk_loop').checked){
					goEnd();
				}
			}
		}else{
			imagesLoading = false;
			alert(logTest);
		}
	} else {
		window.clearTimeout(timeReload);
		document.getElementById('chk_autoreload').checked = false;
	}
}
function loadImages(t){
	window.clearTimeout(timeReload);
	if (!imagesLoading){
		var loadAj = new Ajax();
		if(t=='t'){
			var tmp = new Date();
			forceRefresh = '?junk='+tmp.getTime();
		}
		var starttime = '';
		if (!recent){
			var thedate = document.getElementById('startdate').value;
			var thetime = document.getElementById('starttime').value;
			var end = "CDT";
			if(curRadar=='bowman'){
				end = "MDT";
			}
			starttime += "&starttime="+encodeURIComponent(thedate+" "+thetime+" "+end);
		}
		var minlength = "&minlength="+encodeURIComponent(minLength);
		// if (!document.all){
		// 	console.log('radar='+curRadar+starttime+minlength);
		// }
		// console.log('/php/getfilelistloop.php','radar='+curRadar+starttime+minlength);
		imagesLoading = true;
		loadAj.doPost('/php/getfilelistloop.php','radar='+curRadar+starttime+minlength,gotFiles,'xml');
	}
}
// function resetAllOff() {
// 	for (var i=0;i<25;i++){
// 		document.getElementById('img'+i).style.display='none';
// 	}
// }

function historyClicked(){
	if (document.getElementById('chk_Recent').checked){
		recent = true;
		document.getElementById('histDiv').style.display = "none";
		document.getElementById('chk_autoreload').disabled = false;
		document.getElementById('butRefresh').disabled = false;
		loadImages();
	} else {
		recent = false;
		document.getElementById('chk_autoreload').checked = false;
		document.getElementById('chk_autoreload').disabled = true;
		document.getElementById('butRefresh').disabled = true;
		document.getElementById('histDiv').style.display = "block";
		checkTimes();
	}
}
function checkTimes() {
	var thedate = document.getElementById('startdate').value;
	var thetime = document.getElementById('starttime').value;
	var moveon = true;
	if (thedate != '' && thetime != ''){
		var regexDate = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
		if(!regexDate.test(thedate)){
			alert('Date must be in a format like 02/08/2008');
			moveon = false;
		}
		var regexTime = /^\d{1,2}:\d{2}:\d{2}$/;
		if(!regexTime.test(thetime)){
			alert('Time must be in a format like 17:24:00');
			moveon = false;
		}
		if (moveon){
			loadImages();
		}
	}
}
function lengthClicked(rad) {
	tmpmin = minLength;
	minLength = rad.value-1+3;
	if (tmpmin != minLength){
		loadImages();
	}
}
