﻿// JScript 파일
// 캘린더 자바 스크립트.      
var ns6=document.getElementById&&!document.all
        
var Selected_Month;
var Selected_Year;
var Selected_Day;

var type;
var id;
var sermonth;
var serday;
var seryear; 
var divPath;

var Current_Date = new Date();

var Days_in_Month = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var Month_Label = new Array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');

  
//Header 
function Header(Year, Month) 
{
       if (Month == 1) 
       {
            Days_in_Month[1] = ((Year % 400 == 0) || ((Year % 4 == 0) && (Year % 100 !=0))) ? 29 : 28;
       }
       
   var Header_String = Year + '  ' + Month_Label[Month];
   return Header_String;
}


// 제한된 달력
function LimitCalendar(Year, Month, Day, ID, divPath, sermonth, serday, seryear, limitMonth, limitDay, limitYear) 
{    
    if (limitMonth > 12)
       {
        limitMonth = parseInt(limitMonth) - 12;
        limitYear = parseInt(limitYear) + 1;
       }

    if (Month == "")
    {   
       Month = 1;
       Day = 1;
    }  
   var Month = Month - 1;
   var First_Date = new Date(Year, Month, 1);
   var Heading = Header(Year, Month);
   var First_Day = First_Date.getDay()+1;
   
       if (((Days_in_Month[Month] == 31) && (First_Day >= 6)) ||
           ((Days_in_Month[Month] == 30) && (First_Day == 7))) {
          var Rows = 6;
       }
       else if ((Days_in_Month[Month] == 28) && (First_Day == 1)) {
          var Rows = 4;
       }
       else {
          var Rows = 5;
       }      
      
       
   var HTML_String = "<table border='0' cellpadding='0' cellspacing='1' width='180' bgcolor='#4b80e3'><tr bgcolor='#FFFFFF'><td align='center' valign='middle'>";
   
   HTML_String += "<table border='0' cellpadding='0' cellspacing='0' width='180'><tr bgcolor='#4b80e3' height='25'>";

    if (((parseInt(Month) + 1) == limitMonth) && (seryear == limitYear))
    {    
        HTML_String += "<td align='left' valign='middle' width='50' colspan='2'><img src='/main/images/calendar_barrow_left_bt.gif' border='0'></td><td align='center' valign='middle' width='75' colspan='3'><span style='font:8pt Arial,San-serif; color:#FFFFFF'>" + Heading + "</span></td>";
    }
    else 
    {
          HTML_String += "<td align='left' valign='middle' width='50' colspan='2'><a href=javascript:LimitCalSkip('-','" + ID + "','" + divPath +"','" + sermonth + "','" + serday + "','" + seryear + "','" + limitMonth + "','" + limitDay + "','" + limitYear + "'); border='0'><img src='/main/images/calendar_barrow_left_bt.gif' border='0'></a></td><td align='center' valign='middle' width='75' colspan='3' calss='white12px'><span style='font:8pt Arial,San-serif; color:#FFFFFF'>" + Heading + "</span></td>";        
        
    }
    HTML_String += "<td align='right' valign='middle' width='50' colspan='2'><a href=javascript:LimitCalSkip('+','" + ID +"','" + divPath + "','" + sermonth + "','" + serday + "','" + seryear + "','" + limitMonth + "','" + limitDay + "','" + limitYear + "'); border='0'><img src='/main/images/calendar_barrow_right_bt.gif' border='0'></a></td></tr>";    

    HTML_String += "<tr><td ALIGN='CENTER' width='25' height='20'>Sun</td><td ALIGN='CENTER' width='25' height='20'>Mon</td><td ALIGN='CENTER' width='25' height='20'>Tue</td><td ALIGN='CENTER' width='25' height='20'>Wed</td>";

   HTML_String += "<td ALIGN='CENTER' width='25' height='20'>Thu</td><td ALIGN='CENTER' width='25' height='20'>Fri</td><td ALIGN='CENTER' width='25' height='20'>Sat</td></tr>";

    var Day_Counter = 1;
    var Loop_Counter = 1;
   
   
   for (var j = 1; j <= Rows; j++) {
      
      HTML_String += "<tr height='21'>";
      
      for (var i = 1; i < 8; i++) {
         
         if ((Loop_Counter >= First_Day) && (Day_Counter <= Days_in_Month[Month])) 
        {  
        
                if ((Day_Counter < limitDay) && (Year == limitYear) && ((parseInt(Month) +1) == limitMonth))
                {
                    HTML_String += "<td align='center' valign='middle' width='25'><font color='#B1B1B1'><B>" + Day_Counter + "</B></font></a></td>";        // 선택
                }            
                
                else if ((Day_Counter == serday) && (Year == seryear) && (Month == sermonth-1))
                {
                   HTML_String += "<td align='center' valign='middle' width='25'><a href=javascript:SelDate('" + Year +"','" +  Month + "','"+ Day_Counter + "','" + ID + "');close('" + divPath + "');><font class='orange11px'><B>" + Day_Counter + "</B></font></a></td>"; // 해당일.
                }
                else if (i == 1)
                {
                    HTML_String += "<td align='center' valign='middle' width='25'><a href=javascript:SelDate('" + Year +"','" +  Month + "','"+ Day_Counter + "','" + ID + "');close('" + divPath + "');><font class='red11px'><B>" + Day_Counter + "</B></font></a></td>"; // 일요일
                }                
                else 
                {
                   HTML_String += "<td align='center' valign='middle' width='25'><font class='navy11px'><B><a href=javascript:SelDate('"+ Year + "','" +  Month + "','" + Day_Counter + "','" + ID + "');close('" + divPath + "');>" + Day_Counter + "</a></B></font></td>";
                }
                
                Day_Counter++;   
                
         }
         else 
         {
            HTML_String += "<td BORDERCOLOR='C0C0C0'> </td>";
         }
         Loop_Counter++;
      }
      HTML_String += "</tr>";
   }
   HTML_String += "</td></tr></table>"; 
   HTML_String += "<table><tr><td align='center'><a href=javascript:close('" + divPath + "');>Close</a></td></tr></table>"; 
   
   cross_el=ns6? document.getElementById(divPath) : document.all[divPath];
   
   cross_el.innerHTML = HTML_String;
}

function LimitCalSkip(Direction, ID, divPath, sermonth, serday, seryear, limitMonth, limitDay, limitYear) {
   if (Direction == '+') {
      if (Selected_Month == 12) {
         Selected_Month = 0;
         Selected_Year++;
         seryear = parseInt(seryear) +1;
      }
      else {
         Selected_Month++;
      }
   }
   else {
      if (Selected_Month == 0) {
         Selected_Month = 12;
         Selected_Year--;
         seryear = parseInt(seryear) -1;
      }
      else {
         Selected_Month--;
      }
   }
 
   LimitCalendar(Selected_Year, Selected_Month, Selected_Day, ID, divPath, sermonth, serday, seryear, limitMonth, limitDay, limitYear);
}


// From Date를 반영한 달력
function ReflectFromDateCal(Year, Month, Day, ID, divPath, sermonth, serday, seryear) {

    if (Month == "")
    {   
       Month = 1;
       Day = 1;
    }  
   var Month = Month - 1;
   var First_Date = new Date(Year, Month, 1);
   var Heading = Header(Year, Month);
   var First_Day = First_Date.getDay()+1;
   
       if (((Days_in_Month[Month] == 31) && (First_Day >= 6)) ||
           ((Days_in_Month[Month] == 30) && (First_Day == 7))) {
          var Rows = 6;
       }
       else if ((Days_in_Month[Month] == 28) && (First_Day == 1)) {
          var Rows = 4;
       }
       else {
          var Rows = 5;
       }

   var HTML_String = "<table border='0' cellpadding='0' cellspacing='1' width='180' bgcolor='#4b80e3'><tr bgcolor='#FFFFFF'><td align='center' valign='middle'>";
   
   HTML_String += "<table border='0' cellpadding='0' cellspacing='0' width='180'><tr bgcolor='#4b80e3' height='28'>";

    
    if ((Month <= sermonth-1) && (Year == seryear))
    {    
        HTML_String += "<td align='center' valign='middle' width='50' colspan='2'><img src='/main/images/calendar_barrow_left_bt.gif' border='0'></td><td align='center' valign='middle' width='75' colspan='3' calss='white12px'><span style='font:8pt Arial,San-serif; color:#FFFFFF'>" + Heading + "</span></td>";    
    }
    else 
    {
        HTML_String += "<td align='center' valign='middle' width='50' colspan='2'><a href=javascript:ReflectFromDateCalSkip('-','" + ID + "','" + divPath +"','" + sermonth + "','" + serday +"','" + seryear + "'); border=0><img src='/main/images/calendar_barrow_left_bt.gif' border='0'></a></td><td align='center' valign='middle' width='75' colspan='3' calss='white12px'><span style='font:8pt Arial,San-serif; color:#FFFFFF'>" + Heading + "</span></td>";
    }
   
   HTML_String += "<td align='center' valign='middle' width='50' colspan='2'><a href=javascript:ReflectFromDateCalSkip('+','" + ID +"','" + divPath + "','" + sermonth + "','" + serday + "','" + seryear + "'); border='0'><img src='/main/images/calendar_barrow_right_bt.gif' border='0'></a></td></tr>";

   HTML_String += "<tr><td ALIGN='CENTER' width='25' height='20'>Sun</td><td ALIGN='CENTER' width='25' height='20'>Mon</td><td ALIGN='CENTER' width='25' height='20'>Tue</td><td ALIGN='CENTER' width='25' height='20'>Wed</td>";

   HTML_String += "<td ALIGN='CENTER' width='25' height='20'>Thu</td><td ALIGN='CENTER' width='25' height='20'>Fri</td><td ALIGN='CENTER' width='25' height='20'>Sat</td></tr>";

   var Day_Counter = 1;
   var Loop_Counter = 1;
   
   
   for (var j = 1; j <= Rows; j++) {
      
      HTML_String += "<tr height='21'>";
      
      for (var i = 1; i < 8; i++) {
         
         if ((Loop_Counter >= First_Day) && (Day_Counter <= Days_in_Month[Month])) 
         {
               
            if ((Day_Counter < serday) && (Year == seryear) && (Month == sermonth-1)) {
                HTML_String += "<td align='center' valign='middle' width='25'><font color='#B1B1B1'><B>" + Day_Counter + "</B></font></a></td>";
                }            
            
            else if ((Day_Counter == serday) && (Year == seryear) && (Month == sermonth-1)) {
               HTML_String += "<td align='center' valign='middle' width='25'><a href=javascript:SelDate('" + Year +"','" +  Month + "','"+ Day_Counter + "','" + ID + "');close('" + divPath + "');><font class='orange11px'><B>" + Day_Counter + "</B></font></a></td>";
            }
            else if (i == 1)
            {
                HTML_String += "<td align='center' valign='middle' width='25'><a href=javascript:SelDate('" + Year +"','" +  Month + "','"+ Day_Counter + "','" + ID + "');close('" + divPath + "');><font class='red11px'><B>" + Day_Counter + "</B></font></a></td>";
            }
            else {
               HTML_String += "<td align='center' valign='middle' width='25'><font color='navy11px'><B><a href=javascript:SelDate('"+ Year + "','" +  Month + "','" + Day_Counter + "','" + ID + "');close('" + divPath + "');>" + Day_Counter + "</a></B></font></td>";
            }
            Day_Counter++; 
                      
         }
         else 
         {
            HTML_String += "<td BORDERCOLOR='C0C0C0'> </td>";
         }
         Loop_Counter++;
      }
      HTML_String += "</tr>";
   }
   HTML_String += "</td></tr></table>"; 
   HTML_String += "<table><tr><td align='center'><a href=javascript:close('" + divPath + "'," + "'block');>Close</a></td></tr></table>"; 
   
   cross_el=ns6? document.getElementById(divPath) : document.all[divPath];
   
   cross_el.innerHTML = HTML_String;
}

function ReflectFromDateCalSkip(Direction, ID, divPath, sermonth, serday, seryear) {
   if (Direction == '+') {
      if (Selected_Month == 12) {
         Selected_Month = 0;
         Selected_Year++;
      }
      else {
         Selected_Month++;
      }
   }
   else {
      if (Selected_Month == 0) {
         Selected_Month = 12;
         Selected_Year--;
      }
      else {
         Selected_Month--;
      }
   }
 
   ReflectFromDateCal(Selected_Year, Selected_Month, Selected_Day, ID, divPath, sermonth, serday, seryear);
}