// Popup Calendar

safari = navigator.userAgent.indexOf('AppleWebKit') == -1 ? 0 : 1;

function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft;
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
    curleft += totalElementXOffset(obj);
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop;
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	curtop += totalElementYOffset(obj);
	return curtop;
}

function totalElementYOffset(obj)
{
    var yOffset = ((obj.offsetTop) ? obj.offsetTop : 0);
    var elParent = obj.offsetParent;
    while(elParent)
    {
        yOffset += ((elParent.offsetTop) ? elParent.offsetTop : 0);
        elParent = elParent.offsetParent;
    }
    return (yOffset - 0);
 }

function totalElementXOffset(obj){
     var xOffset = ((obj.offsetLeft) ? obj.offsetLeft : 0);
     var elParent = obj.offsetParent;
     while(elParent)
     {
        xOffset += ((elParent.offsetLeft) ? elParent.offsetLeft:0);
        elParent = elParent.offsetParent;
     }
     return (xOffset - 0);

}

function PositionCal(frm,idValue)
{
	var obj = document.getElementById(frm);
	var txtbx = document.getElementById(idValue);
	obj.style.left = findPosX(txtbx)+'px';
	obj.style.top = findPosY(txtbx)+20+'px';
}

function SrcCal(frm,idValue,chkinId)
{
	var frame =	document.getElementById(frm);
	var value =	document.getElementById(idValue);
 	var calSrc = '/ARES/calendar.html?id='+idValue + '&selectedDate=';
 	if(idValue.indexOf('checkOut') != -1 && (document.getElementById(idValue).value == "" || document.getElementById(idValue).value == "mm/dd/yyyy")) { 
 	    calSrc += document.getElementById(chkinId).value; 
 	} else {
 	    calSrc += value.value;  
    }
    window.frames['CalFrame'].location.replace( calSrc );
	return false;
}

function ShowCal(frm, idValue,chkinId)
{
	hideCal();
	PositionCal(frm,idValue);
	if(safari)
	{
	    document.getElementById(frm).style.visibility = 'visible';
    }
    else
    {
	    document.getElementById(frm).style.display = 'block';
	}
	SrcCal(frm,idValue,chkinId);

	    document.getElementById(idValue).select();
}

function SetDateForID(id, date)
{
	value =	document.getElementById(id);
	if(value)
	{
		value.value	= date;
		hideCal();
	}
}

function hideCal()
{
	if(safari)
	{
	    document.getElementById('CalFrame').style.visibility = 'hidden';
    }
    else
    {
	    document.getElementById('CalFrame').style.display = 'none';
	}
    frameRef = window.frames['CalFrame']; 
	if (frameRef.location.href.indexOf('blank') == -1) frameRef.location.replace('/ARES/blank.html');
	return false;
}

var ns6=document.getElementById&&!document.all;

function toggleCal(e)
{
    cur = ns6 ? e.target : event.srcElement;
	if(cur.id.indexOf('checkIn') == -1 && cur.id.indexOf('checkOut') == -1)
		hideCal();
}

function makeFrame() {
	ifrm = document.createElement("IFRAME");
	ifrm.id = "CalFrame";
	ifrm.name = "CalFrame";
	ifrm.setAttribute("src", "/ARES/blank.html");
	ifrm.setAttribute("scrolling", "no");
	ifrm.setAttribute("frameborder", "0");
	ifrm.style.position = "absolute";
	ifrm.style.borderWidth = 0+"px";
	ifrm.style.width = 130+"px";
	ifrm.style.height = 180+"px";
	if(!safari)
	    ifrm.style.display = "none";
	else  
	    ifrm.style.visibility = "hidden";
	ifrm.style.zIndex = "300";
    ifrm.style.backgroundColor = "#fff";
	document.body.insertBefore(ifrm, document.body.lastChild);	
}

document.onclick = toggleCal; 