// js handling the subscribe procedures

var IE = /*@cc_on!@*/false;

// constants
var NORMAL_STATE = 4;
var fadeSpeed = 1;
var fadeStep = 8;
if (IE) { fadeStep = 30; }
var first = true;

var calendar = document.getElementById('Calendar');

var http = getHTTPObject(); // We create the HTTP Object

function getCalendar(year, month) {
	if ( year == null && month == null )
		http.open('GET', '/wp-admin/admin-ajax.php?action=calendar_test', true );
	else
		http.open('GET', '/wp-admin/admin-ajax.php?action=calendar_test&y='+year+'&m='+month, true );
	http.onreadystatechange = handleGetCalendar;
	http.send(null);
	balloonIsSuppressed = false;
}

function handleGetCalendar() {
	if (http.readyState == NORMAL_STATE) {
		if( first ) {
			calendar = document.getElementById('Calendar');
			calendar.innerHTML = http.responseText;
			first = false;
			fadeIn(0);
		}
		else
			fadeOut(100);
	}
}

function fadeOut( opac ) {
	changeOpac( opac );
	if( opac > 0 ) {
		opac -= fadeStep;
		setTimeout( "fadeOut("+opac+")", fadeSpeed );
	}
	else {
		// jei jau pasiekem opacity=0, pakeichiam ir inicijuojam fadein
		calendar.innerHTML = http.responseText;
		fadeIn(0);
	}
}

function fadeIn( opac ) {
	changeOpac( opac );
	if( opac < 100 ) {
		opac += fadeStep;
		setTimeout( "fadeIn("+opac+")", fadeSpeed );
	}
}

//change the opacity for different browsers
function changeOpac(opacity) {
	var object = calendar.style;
	object.opacity = (opacity / 100);
	object.MozOpacity = (opacity / 100);
	object.KhtmlOpacity = (opacity / 100);
	object.filter = "alpha(opacity=" + opacity + ")";
}


getCalendar( null, null );

