    function InitCalendar(){
        var body = document.getElementsByTagName("body");
        if(body !== undefined){
            var obj = body.item(0);
            var div = document.createElement("div");
            div.setAttribute('id','calendar');
            obj.insertBefore(div, obj.lastChild);
        }
    }
    
    function ShowCalendar(element_id,date,hide_when_loading){
        AjaxRequest.get(
			{
				'url': WEBROOT + '/files/calendar/calendar.php?ajax=1&element_id=' + element_id + '&date=' + date
				,'onSuccess':function(req) {
                    element = document.getElementById(element_id);
                    if(element != undefined){
                        var pos = getElementPosition(element);
                        var div = document.getElementById('calendar');
                        if(div !== undefined){
                            div.style.top =  (pos.y + 20) + 'px';
	                        div.style.left =  pos.x + 'px';
                            div.style.display = 'block';
                            div.innerHTML = req.responseText;
                        }
                    }
                }
				,'onLoading':function(req) {
                    if(hide_when_loading === true){
                        HideCalendar();
                    }
                }
				,'onLoaded':function(req) { }
				,'onError':function(req) { }
			}
		);
	}
    
    function HideCalendar(){
        var div = document.getElementById('calendar');
        if(div !== undefined){
            div.style.display = 'none';
            div.style.top = '0px';
	        div.style.left = '0px';
        }
    }
    
    function CalendarSetDate(element_id,date){
        element = document.getElementById(element_id);
        if(element != undefined){
            element.value = date;
        }
        HideCalendar();
    }
    
    function getElementPosition(element) {
        var pos = {x:0, y:0};
    	if (element.offsetParent) {
    		pos.x = element.offsetLeft
    		pos.y = element.offsetTop
    		while (element = element.offsetParent) {
    			pos.x += element.offsetLeft
    			pos.y += element.offsetTop
    		}
    	}
    	return pos;
    }
    
    function addLoadEvent(func){	
        var oldonload = window.onload;
        if (typeof window.onload != 'function'){
            window.onload = func;
        } else {
            window.onload = function(){
                oldonload();
                func();
            }
        }
    }
    addLoadEvent(InitCalendar);

