var req;



function navigate(month,year,evt) {

	setFade(0);

	var url = "/calendar/super_calendar.php?month="+month+"&year="+year+"&event="+evt;

	if(window.XMLHttpRequest) {

		req = new XMLHttpRequest();

	} else if(window.ActiveXObject) {

		req = new ActiveXObject("Microsoft.XMLHTTP");

	}

	req.open("GET", url, true);

	req.onreadystatechange = callback;

	req.send(null);

}



function callback() {	

	if(req.readyState == 4) {

		var response = req.responseXML;	

		var resp = response.getElementsByTagName("response");

		getObject("calendar").innerHTML = resp[0].getElementsByTagName("content")[0].childNodes[0].nodeValue;

		fade(70);

	}

}



function getObject(obj) {

	var o;

	if(document.getElementById) o = document.getElementById(obj);

	else if(document.all) o = document.all.obj;	

	return o;	

}



function fade(amt) {

	if(amt <= 100) {

		setFade(amt);

		amt += 10;

		setTimeout("fade("+amt+")", 5);

    }

}



function setFade(amt) {

	var obj = getObject("calendar");

	amt = (amt == 100)?99.999:amt;

	obj.style.filter = "alpha(opacity:"+amt+")";

	obj.style.KHTMLOpacity = amt/100;

	obj.style.MozOpacity = amt/100;

	obj.style.opacity = amt/100;

}



function showJump(obj) {

	var curleft = curtop = 0;

	if (obj.offsetParent) {

		curleft = obj.offsetLeft

		curtop = obj.offsetTop

		while (obj = obj.offsetParent) {

			curleft += obj.offsetLeft

			curtop += obj.offsetTop

		}

	}

	var jump = document.createElement("div");

	jump.setAttribute("id","jump");

	jump.style.position = "absolute";

	jump.style.top = curtop+15+"px";

	jump.style.left = curleft+"px";

	var output = '<select id="month">\n';

	var months = new Array('January','February','March','April','May','June','July','August','September','October','November','December');

	var n;

	for(var i=0;i<12;i++) {

		n = ((i+1)<10)? '0'+(i+1):i+1;

		output += '<option value="'+n+'">'+months[i]+'  </option>\n';

	}

	output += '</select> \n<select id="year">\n';

	for(var i=0;i<=15;i++) {

		n = (i<10)? '0'+i:i;

		output += '<option value="20'+n+'">20'+n+'  </option>\n';

	}

	output += '</select> <a href="javascript:jumpTo()"><img src="/calendar/images/calGo.gif" alt="go" /></a> <a href="javascript:hideJump()"><img src="/calendar/images/calStop.gif" alt="close" /></a>';

	jump.innerHTML = output;

	document.body.appendChild(jump);

}



function hideJump() {

	document.body.removeChild(getObject("jump"));	

}



function jumpTo() {

	var m = getObject("month");

	var y = getObject("year");

	navigate(m.options[m.selectedIndex].value,y.options[y.selectedIndex].value,'');

	hideJump();

}



/*

    Developed by Robert Nyman, http://www.robertnyman.com

    Code/licensing: http://code.google.com/p/getelementsbyclassname/

*/

	var getElementsByClassName = function (className, tag, elm){

		if (document.getElementsByClassName) {

        getElementsByClassName = function (className, tag, elm) {

            elm = elm || document;

            var elements = elm.getElementsByClassName(className),

                nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,

                returnElements = [],

                current;

            for(var i=0, il=elements.length; i<il; i+=1){

                current = elements[i];

                if(!nodeName || nodeName.test(current.nodeName)) {

                    returnElements.push(current);

                }

            }

           return returnElements;

        };

    }

    else if (document.evaluate) {

        getElementsByClassName = function (className, tag, elm) {

            tag = tag || "*";

            elm = elm || document;

            var classes = className.split(" "),

                classesToCheck = "",

                xhtmlNamespace = "http://www.w3.org/1999/xhtml",

                namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,

               returnElements = [],

                elements,

                node;

            for(var j=0, jl=classes.length; j<jl; j+=1){

                classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";

            }

           try {

                elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);

            }

            catch (e) {

                elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);

            }

            while ((node = elements.iterateNext())) {

                returnElements.push(node);

            }

            return returnElements;

        };

    }

    else {

        getElementsByClassName = function (className, tag, elm) {

            tag = tag || "*";

            elm = elm || document;

            var classes = className.split(" "),

                classesToCheck = [],

                elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),

                current,

                returnElements = [],

                match;

            for(var k=0, kl=classes.length; k<kl; k+=1){

                classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));

            }

            for(var l=0, ll=elements.length; l<ll; l+=1){

                current = elements[l];

                match = false;

                for(var m=0, ml=classesToCheck.length; m<ml; m+=1){

                    match = classesToCheck[m].test(current.className);

                    if (!match) {

                        break;

                    }

                }

                if (match) {

                    returnElements.push(current);

                }

            }

            return returnElements;

        };

    }

    return getElementsByClassName(className, tag, elm);

};



function showHide(elem){


       document.getElementById('div-calevent').style.display = 'block';

	var divs_activ = getElementsByClassName("show");

	var divs_inactiv = getElementsByClassName("hide");



	for(var i=0; i<divs_activ.length; i++)

	{

		document.getElementById(divs_activ[i].id).className = "hide";

	}

	

	document.getElementById('div-' + elem.id).className = "show";

}
