var target; 
var temp; 
var BY; 
var BM; 
var BD; 
var today_year; 
var today_month; 
var today_day; 


function showCalendar(ymd, type) { 

        var tmp = ymd.split("-"); 
        var y = parseInt(tmp[0],10); 
        var m = parseInt(tmp[1],10); 
        var d = parseInt(tmp[2],10); 
        
        var text = '<span style="cursor:pointer;font-size:11px;" onclick="showCalendar(\''+(y-1)+'-'+m+'-'+d+'\')"> << </span>'; 
    text += '<span style="cursor:pointer;font-size:11px" onclick="showCalendar(\''+(m==1?(y-1)+'-'+12:y+'-'+(m-1))+'-'+d+'\')"> < </span>'; 
    text += '<span style="font-size:13px;font-weight:bold;">[' + y + '/' + ((m < 10) ? ('0' + m) : m) + ']</span>'; 
    text += '<span style="cursor:pointer;font-size:11px" onclick="showCalendar(\''+(m==12?(y+1)+'-'+1:y+'-'+(m+1))+'-'+d+'\')"> > </span>'; 
    text += '<span style="cursor:pointer;font-size:11px" onclick="showCalendar(\''+(y+1)+'-'+m+'-'+d+'\')"> >> </span>'; 
        
        var text1 = '<table cellpadding="2" cellspacing="0" border="0">\n<tr><td colspan="7" style="text-align:center;font-size:12px;font-weight:bold;color:#0080FF;background-color:#DFEFFF;" valign="top">'; 
    text1 += y + ' / ' + ((m < 10) ? ('0' + m) : m); 
    text1 += '</td>'; 

    var d1 = (y+(y-y%4)/4-(y-y%100)/100+(y-y%400)/400 
          +m*2+(m*5-m*5%9)/9-(m<3?y%4||y%100==0&&y%400?2:3:4))%7; 
    for (i = 0; i < 42; i++) { 
      if (i%7==0) text1 += '</tr>\n<tr>'; 
            if((i+1-d1) == today_day && m==today_month && y==today_year){ 
                    text1 += '<td style="font-size:12px;cursor:pointer;text-align:right;font-weight:bold;background-color:#FFDFEF;font-family:verdana;' + (i%7?'':'color:#FF0000;') +'"'+ ' onClick="putDate(\''+y+'-'+ (m<10?'0'+m:m) +'-'+ ((i+1-d1)<10?('0'+(i+1-d1)):(i+1-d1)) +'\');nightchk(' + type + ');">' + (i+1-d1) + '</td>'; 
            }else{ 
              
              if (i < d1 || i >= d1+(m*9-m*9%8)/8%2+(m==2?y%4||y%100==0&&y%400?28:29:30)) { 
                  text1 += '<td> </td>'; 
              }else { 
                  text1 += '<td style="font-size:12px;cursor:pointer;text-align:right;font-family:verdana;color:#000000;' + (i%7?'':'color:#FF0000;') +'"'+ ' onClick="putDate(\''+y+'-'+ (m<10?'0'+m:m) +'-'+ ((i+1-d1)<10?('0'+(i+1-d1)):(i+1-d1)) +'\');nightchk(' + type + ');">' + (i+1-d1) + '</td>'; 
              } 
            
            } 
    } 
    text1 += '</tr>\n</table>'; 
    
    //´Þ·ÂÁ¶ÇÕ
    textTotal = "<table cellspacing='0' cellpadding='0' border='0' width='100%' style='position: absolute;'>";
	textTotal += "<tr><td style='position: absolute' bgcolor='#ffffff'>";
	textTotal += "<table cellpadding='0' cellspacing='5' border='0' style='border:3px solid #80BFFF;'>";
    textTotal += "<tr><td colspan='3' align='center'>" + text + "</td></tr>";
    textTotal += "<tr><td style='font-family:verdana;border:1px solid #EFEFEF;' valign='top'>" + text1 + "</td>"
	textTotal += "<tr><td align='center' colspan='3' style='font-size:11px;font-family:verdana;'>";
	textTotal += "<span style='cursor:pointer;font-weight:bold;' onClick='closeCal();'>[Close]</span></td></tr></table>"
    textTotal += "</td></tr></table>"

    document.getElementById("calendar").innerHTML = textTotal;
} 


function showCal_div(textboxId,type)
{ 
    target = parent.document.getElementById(textboxId);
    
    var now_date   = new Date();
    today_year = now_date.getYear();
    
    if( today_year<1900) 
        today_year = today_year + 1900;
        
    today_month = return0(now_date.getMonth()+1);
    today_day = return0(now_date.getDate());  
    
    temp = target.value.split("-"); 
    
    if(target.value == "")
    {
        temp[0] = today_year;
        temp[1] = today_month;
        temp[2] = today_day; 
    }

    BY = temp[0]; 
    BM = temp[1]; 
    BD = temp[2]; 
        
    if(BM > 12)
        BM = 12;
        
    if(BD > 31)
        BD = 31;
        
    target.value = BY + "-" + BM + "-" + BD;
    
    //´Þ·Â »ý¼º È£Ãâ
    showCalendar(target.value,type); 
    
    document.getElementById("calendar").style.display="block"; 
} 

function putDate(d){ 
    target.value = d; 
    closeCal(); 
} 
function closeCal(){ 
    parent.document.getElementById("calendar").style.display="none"; 
} 

function return0(str)
{
	str=""+str;
	if (str.length==1) str="0"+str;
	return str;
}

function getRealOffsetTop(o) { return o ? o.offsetTop + getRealOffsetTop(o.offsetParent) : 0; } 
function getRealOffsetLeft(o) { return o ? o.offsetLeft + getRealOffsetLeft(o.offsetParent) : 0; } 
//´Þ·Â¸¸µé±â ³¡



//±×¿Ü ÇÔ¼öµé
function nightchk(type)
{
    if(document.getElementsByName("checkInDate").value != "")
	    ValofcheckOutDate(type);
    else
	    alert("Select CheckIn Date.");
	    
	if(type != null && type != "1")
	    VirtuaAddBookingHotel(document.fmMain);
}

function ValofcheckOutDate()
{	
    var chkInDateVal= "";
    var checkOutDate= "";
    var night= "";
    
    try
    {
        if(parent.document.getElementById("checkInDate") != null)
            chkInDateVal = parent.document.getElementById("checkInDate");
            
        else
            chkInDateVal = document.getElementById("checkInDate");
            
         if(parent.document.getElementById("checkOutDate") != null)    
            checkOutDate = parent.document.getElementById("checkOutDate");	
            
        else
            checkOutDate = document.getElementById("checkOutDate");	
            
        if(parent.document.getElementById("night") != null)
            night= parent.document.getElementById("night");
            
        else
            night= document.getElementById("night");
    }
    catch (ex)
    {
        chkInDateVal = document.getElementById("checkInDate");
        checkOutDate = document.getElementById("checkOutDate");	
        night= document.getElementById("night");
    }
    
   

    checkOutDate.value=addDays(chkInDateVal,night.value);	
}

function addDays(isoDate, noOfDays) 
{
	var aDate=cvtISOToDate(isoDate);
	if (!aDate) return "";
	var millis=86400000 * noOfDays;
	aDate=new Date(aDate.getTime()+millis);
	with (aDate) {
		var mm=getMonth()+1;
		if (mm<10) {mm='0'+mm;}
		var dd=getDate();
		if (dd<10) {dd='0'+dd;}
		return (getFullYear() + '-' + mm + '-' + dd);
	}
}

function cvtISOToDate(isoDate) 
{
	var atomDate= isoDate.value.split('-');
	var aDate=new Date(parseInt(atomDate[0],10),parseInt(atomDate[1],10)-1,parseInt(atomDate[2],10),6,0,0);
	return aDate;
}

function showIfrm(Id)
{
    document.getElementById("ifrmcal").src = "../etc/calendar.aspx?type=" + Id;
    document.getElementById("calendar").style.display = "";
}
