    var calendar_slected_month;
	var calendar_slected_year;    
	
    function getContentAsString ( parentNode ) {
		if (navigator.appName == 'Microsoft Internet Explorer'){
			return this._getContentAsStringIE(parentNode);
		}else{
			return this._getContentAsStringMozilla(parentNode);
		}
	}
	
	function _getContentAsStringIE(parentNode) {
		var contentStr = "";
		for (var i = 0; i < parentNode.childNodes.length; i++)
			contentStr += parentNode.childNodes[i].xml;
		return contentStr;
	}

	function _getContentAsStringMozilla(parentNode){
		var xmlSerializer	= new XMLSerializer();
		var contentStr = "";
		for (	var	i =	0 ;	i <	parentNode.childNodes.length ; i++ )
			contentStr += xmlSerializer.serializeToString(parentNode.childNodes[i]);
		return contentStr;
	}
    
    function stupidIETableBuilder(sourceTable, destination){
    	for(var trChild = sourceTable.firstChild; trChild != null; trChild = trChild.nextSibling){
    		if (trChild.nodeName == 'tr'){    			
    			var new_row = destination.insertRow();    			
    			if (trChild.hasChildNodes()){        				
    				for(var tdChild = trChild.firstChild; tdChild != null; tdChild = tdChild.nextSibling){    					
    					if (tdChild.nodeName == 'td'){
    						var new_cell = new_row.insertCell();
    						if (tdChild.hasChildNodes()){
    							new_cell.innerHTML  =  getContentAsString(tdChild);   					
    						}
    					}
    				}
    			}
    		}  		
    	}
    }
    
    function handleCalendarResponse(htmlresponse) {    	
		if ((xmlhttp!=null && xmlhttp.readyState == 4) || (htmlresponse!=null && htmlresponse!=undefined)) {    //request completed			
			var xmlDocument;
			xmlDocument= xmlhttp.responseXML;     //handling XML response 	
	
			var table = xmlDocument.getElementsByTagName('tbody').item(0);
			var calendar_box = document.getElementById('box_calendar');
			
			var calendars = calendar_box.getElementsByTagName('tbody');
			var calendar = calendars.item(0);
			
			if (calendar != null){			
				if (navigator.appName == 'Microsoft Internet Explorer'){
					if (calendar.hasChildNodes()){
						var tempChild = calendar.firstChild;
						while (tempChild != null){
							calendar.removeChild(tempChild);
							tempChild = calendar.firstChild;
                       }
                       stupidIETableBuilder(table, calendar);
					}					
				}else{
					calendar.innerHTML = getContentAsString(table);
				}
//				calendar.innerHTML = getContentAsString(table);
/*				var calendar_table = calendar.parentNode;
				calendar_table.removeChild(calendar);
				var new_calendar = calendar_table.appendChild(document.createElement('tbody'));				
				new_calendar.innerHTML = getContentAsString(table);*/
			}
			calendar_box.className = 'calendar_body';
		}
	}
	
    function getCalendar(selector) {
		var temp_url= "ajax.php?calendar";
		temp_url = temp_url + '&month=' + selector.form.month.value;
		temp_url = temp_url + '&year=' + selector.form.year.value;
		
		var calendar_box = document.getElementById('box_calendar');
		calendar_box.className = 'calendar_body_ajax';
		
        if (window.XMLHttpRequest ) { // Mozilla, Safari,...
              xmlhttp = new XMLHttpRequest();
              if (xmlhttp.overrideMimeType) {
                     xmlhttp.overrideMimeType('text/xml');
              }
        }else if (window.ActiveXObject) { // IE
                try {
                    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
                } catch (e) {
                    try {
                        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                    } catch (e) {}
                }
        }

		try{	   
			if (xmlhttp){
				xmlhttp.open("GET", temp_url, true);
				xmlhttp.onreadystatechange = handleCalendarResponse;
				xmlhttp.send(null);
			}
	   	}catch (e){
		   alert(e);		    
	   	}
    }