var globalDate;
Event.observe(window, "load", function(e) {
	globalDate = new Date();
	$("tz").value = -1 * globalDate.getTimezoneOffset() / 60;
	load();
	window.setInterval(updateInterval, 60000);
});

Event.observe(window, "resize", function(e) {
	load();
});

var preV;
function setPre(v) {
	preV = v;
}

var RADIUS;
function load() {
	RADIUS = Math.min(document.viewport.getWidth(), document.viewport.getHeight()) / 2;
	
	$("contents").style.width = (RADIUS * 2) + 320 + "px";
	$("skymap").style.width = (RADIUS * 2) + "px";
	$("skymap").style.height = (RADIUS * 2) + "px";
	window.scrollTo(0, $('skymap').cumulativeOffset()[1]);
	
	loadDateTime();
	loadSkyMap(null, true, true);
}

function updateInterval() {
	globalDate.setTime(globalDate.getTime() + 60000);
	loadDateTime();
	loadSkyMap(null, false, false);
}

function loadDateTime() {
	h = globalDate.getHours();
	if (h < 10) h = "0" + h;
	m = Math.round(globalDate.getMinutes() + globalDate.getSeconds() / 60);
	if (m < 10) m = "0" + m;
	$("time").value = h + ":" + m;
	
	m = globalDate.getMonth() + 1;
	if (m < 10) m = "0" + m;
	d = globalDate.getDate();
	if (d < 10) d = "0" + d;
	y = globalDate.getFullYear().toString().substring(2);
	
	$("date").value = m + "/" + d + "/" + y;
	$("date_skyMap").innerHTML = m + "/" + d + "/" + y;
}

function loadSkyMap(v, reload, loader) {
    if (typeof(v) == "undefined" || v != preV || v == null) {
		var file = "http://patrickkonsor.com/projects/celest_xml.php?radius=" + RADIUS;

		var settings = document.getElementsByName('setting');
		for (var i = 0; i < settings.length; i++) {
			if (settings[i].type == "checkbox") {
				if (settings[i].checked) file += "&" + settings[i].id + "=" + settings[i].checked;
			} else file += "&" + settings[i].id + "=" + settings[i].value;
		}
		
		if (typeof(loader) == "undefined") {
			loader = true;
		}
		//$("debugging").innerHTML = file;
		if (reload) {
			$("skymap").innerHTML = "<embed type='application/x-shockwave-flash' src='/files/celest.swf?file=" + escape(file) + "&background=202020' width='" + (RADIUS * 2) + "' height='" + (RADIUS * 2) + "' name='swfObj' id='swfObj' quality='high' allowscriptaccess='always' />"
		} else {
			document.getElementById("swfObj").loadFileJS(file, loader);
		}
	}
}

function skyMapDateCallback(date, id) {
	$("date").value = date;
	var array = date.split("/"); 
	array[2] = parseInt(array[2]);
	if (array[2] > 50) array[2] += 1900;
	else array[2] += 2000;
	globalDate.setFullYear(array[2], array[0], array[1]);
	loadSkyMap();
}

function timeCallback(time) {
	var array = time.split(":"); 
	globalDate.setHours(array[0], array[1]);
	loadSkyMap();
}

function toggleDiv(id, obj) {
	$(id).toggle();
	if (obj.src == "http://patrickkonsor.com/img/arrow_up.png") {
		obj.src = "http://patrickkonsor.com/img/arrow_down.png";
	} else {
		obj.src = "http://patrickkonsor.com/img/arrow_up.png";
	}
}
