// JavaScript Document
function showImage(photo) {
	window.open('showimage.php?id='+photo,'photoarchive','status=yes,scrollbars=no,width=700,height=380');
}

function searchImage() {
	var di,mi,yi,day,month,year;
	di = document.getElementById('imgsearch').elements['day'].selectedIndex;
	mi = document.getElementById('imgsearch').elements['month'].selectedIndex;
	yi = document.getElementById('imgsearch').elements['year'].selectedIndex;

	day = document.getElementById('imgsearch').elements['day'].options[di].value;
	month = document.getElementById('imgsearch').elements['month'].options[mi].value;
	year = document.getElementById('imgsearch').elements['year'].options[yi].value;

	showImage(year+month+day);
	return false;
}

function getHTTPRequest() {
	var xmlhttp=false
	if (window.XMLHttpRequest){ // if Mozilla, Safari etc
		xmlhttp=new XMLHttpRequest()
		//if (xmlhttp.overrideMimeType)
		//	xmlhttp.overrideMimeType('text/xml')
	} else if (window.ActiveXObject){ // if IE
		try {
			xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}
	return xmlhttp;
}

function updateDays() {
	var yi = document.getElementById('imgsearch').elements['year'].selectedIndex;
	var year = document.getElementById('imgsearch').elements['year'].options[yi].value;
	var mi = document.getElementById('imgsearch').elements['month'].selectedIndex;
	var month = document.getElementById('imgsearch').elements['month'].options[mi].value;
	
	while (document.getElementById('imgsearch').elements['day'].length> 0) {
		document.getElementById('imgsearch').elements['day'].remove(0);
	}
	
	xmlhttp = getHTTPRequest();
	if(!xmlhttp) {
		alert("shit!");
		return false;
	}
	
	xmlhttp.open("GET", "api/photoarchive.php?year="+year+"&month="+month,true);
	xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4) {
			var daysvar=new Function("return "+xmlhttp.responseText)();
			var days=daysvar.rdata;
				
			for(var i=0; i<days.length; i++) {
				var newday = document.createElement("option");
				newday.text = days[i].dayname;
				newday.value = days[i].dayno;
				try {
					document.getElementById('imgsearch').elements['day'].add(newday);
				} catch (e) {
					document.getElementById('imgsearch').elements['day'].add(newday, null);
				}
			}
		}
	}
	xmlhttp.send(null);
	
	return false;
}

function updateMonths() {
	var yi = document.getElementById('imgsearch').elements['year'].selectedIndex;
	var year = document.getElementById('imgsearch').elements['year'].options[yi].value;
	
	while (document.getElementById('imgsearch').elements['month'].length> 0) {
		document.getElementById('imgsearch').elements['month'].remove(0);
	} 
	while (document.getElementById('imgsearch').elements['day'].length> 0) {
		document.getElementById('imgsearch').elements['day'].remove(0);
	} 
	
	xmlhttp = getHTTPRequest();
	if(!xmlhttp) {
		alert("shit!");
		return false;
	}
	
	xmlhttp.open("GET", "api/photoarchive.php?year="+year,true);
	xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4) {
			var monthsvar=new Function("return "+xmlhttp.responseText)();
			var months=monthsvar.rdata;
			
			for(var i=0; i<months.length; i++) {
				var newmonth = document.createElement("option");
				newmonth.text = months[i].monthname;
				newmonth.value = months[i].monthno;
				try {
					document.getElementById('imgsearch').elements['month'].add(newmonth);
				} catch (e) {
					document.getElementById('imgsearch').elements['month'].add(newmonth, null);
				}
			}
			
			updateDays();
		}
	}
	xmlhttp.send(null);
	
	return false;
}