
//--------------------------------------------------------------------------------//
//                  カレンダー　今月　ライン表示タイプ                            //
//--------------------------------------------------------------------------------//
var now    = new Date();
var absnow = now;
var Win=navigator.userAgent.indexOf('Win')!=-1;
var Mac=navigator.userAgent.indexOf('Mac')!=-1;
var Moz=navigator.userAgent.indexOf('Gecko')!=-1;
var Opera=!!window.opera;

//初期値　月当たりの週数 0〜7
var wk = 7;
var aryTmp = new Array();
var aryThis = new Array();
var aryNext = new Array();

//-----------------------------------------------------------------------------------------------//
//      今月の処理
//-----------------------------------------------------------------------------------------------//
//現在月の加算設定　0=今月　1=次月
arg1 = 0;

	  //-初期化
	  if(arg1==0)now = new Date();

	  //-年月日取得
	  nowdate  = now.getDate();
	  nowmonth = now.getMonth();
	  nowyear  = now.getYear();

	  //-月移動処理
	  if(nowmonth==11 && arg1 > 0){        //12月でarg1が+なら
	    nowmonth = -1 + arg1 ; nowyear++ ;  //月はarg1-1;1年加算
	  } else if(nowmonth==0 && arg1 < 0){  //1月でarg1が-なら
	    nowmonth = 12 + arg1 ; nowyear-- ;  //月はarg1+12;1年減算
	  } else {
	    nowmonth +=  arg1;                  //2-11月なら月は+arg1
	  }

	  //-2000年問題対応
	  if(nowyear<1900) nowyear=1900+nowyear;

	  //-現在月を確定
	  now   = new Date(nowyear,nowmonth,1);

	  //-YYYYMM作成
	  nowyyyymm=nowyear*100+nowmonth;

	  //-YYYY/MM作成
	  now_m_yyyymm=nowyear+'/'+(nowmonth + 1);

      //-月名作成
//      month_nm_j = new Array('1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月');
      month_nm_e = new Array('January','Febuary','March','April','May','June','July','August','September','October','November','December');
//      nowtitleyyyymm = month_nm_e[ nowmonth ] + "&nbsp;" + ( nowmonth + 1 );
      nowtitleyyyymm = month_nm_e[ nowmonth ];

	  //-週表示設定
//	  week = new Array('日','月','火','水','木','金','土');
      week = new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');

		//-カレンダー構築用基準日の取得
		fstday   = now;                                          //今月の1日
		startday = fstday - ( fstday.getDay() * 1000*60*60*24 ); //最初の日曜日
		startday = new Date(startday);

		//-カレンダー構築用HTML
		ddata = ''
//		ddata += '<FORM>'
		ddata += '<TABLE border="0">';
		ddata += '<TR>';

		//-MONTH
		ddata += '<TD id="month_line"><p><img src="img/org/3dots.gif" />';
		ddata += nowtitleyyyymm;
		ddata += '</p></TD>';

		//  休日指定配列　今月
		for( i in aryMM ){
            if( aryMM[ i ] ){
    			aryTmp = aryMM[ i ].split(",");
    			// Trim処理
    			for( j in aryTmp ){
    				aryTmp[ j ] = aryTmp[ j ].replace(/(^\s+)|(\s+$)/g, "");
    			}
    			// 月が一致した場合
    			if( aryTmp[ 0 ] == now_m_yyyymm ){
    				aryThis = aryTmp;
    			}
            }
		}

		for( j = 0; j < wk; j++ ){
			for( i = 0; i < 7; i++ ){
				nextday = startday.getTime() + (i * 1000*60*60*24);
				wrtday  = new Date(nextday);

				wrtdate = wrtday.getDate();
				wrtmonth= wrtday.getMonth();
				wrtyear = wrtday.getYear();
				if(wrtyear < 1900)wrtyear=1900 + wrtyear;
				wrtyyyymm = wrtyear * 100 + wrtmonth;
				wrtyyyymmdd= ''+wrtyear +'/'+ (wrtmonth+1) +'/'+wrtdate;

				if(wrtyyyymm != nowyyyymm){ 
					ddata += '<TD>&nbsp;';						                    //白数字非表示
//					ddata += wrtdate;								                    //数字表示
					if(wrtdate==1 && i>0)wk = wk-1;
                
                //  本日の場合
				}else if( wrtdate  == absnow.getDate() && wrtmonth == absnow.getMonth() && wrtday.getYear() == absnow.getYear()){
                    //  休日処理
                    str = '<TD>';
                    
                    //  休日処理
					for( n in aryThis ){
						if( n > 0 ){
	                        if(( aryThis[ n ] > 0 )&&( aryThis[ n ] < 32 )){
	                            if( wrtdate == aryThis[ n ] ){
	                                str = '<TD class="holiday_line">';
	                               break;
	                            }
	                        }
	                    }
                    }
                    ddata += str;

                    //  曜日の処理
					if (i==0) {
						ddata +='<p><span class="sun_line today_line">'+wrtdate+'</span></p>';
					} else if (i==6) {
						ddata +='<p><span class="sat_line today_line">'+wrtdate+'</span></p>';
					} else {
						ddata +='<p><span class="week_line today_line">'+wrtdate+'</span></p>';
					}
                    ddata += '</TD>';
                    
				//  本日以外の場合
				}else{
                    //  休日処理
                    str = '<TD>';
                    
                    //  休日処理
                    for( n in aryThis ){
                    	if( n > 0 ){
	                        if(( aryThis[ n ] > 0 )&&( aryThis[ n ] < 32 )){
	                            if( wrtdate == aryThis[ n ] ){
	                                str = '<TD class="holiday_line">';
	                               break;
	                            }
	                        }
	                    }
                    }
                    ddata += str;
                    
                    //  曜日の処理
    				if( i == 0 ){
    					ddata +='<p><span class="sun_line">'+wrtdate+'</span></p>';
    				}else if( i == 6 ){
    					ddata +='<p><span class="sat_line"><p>'+wrtdate+'</span></p>';
    				}else{
    					ddata +='<p><span class="week_line"><p>'+wrtdate+'</span></p>';
    				}
			    }
			    ddata += '</TD>';
		    }

    		startday = new Date(nextday);
    		startday = startday.getTime() + (1000*60*60*24);
    		startday = new Date(startday);
	    }
		ddata += '</TR>';

//-----------------------------------------------------------------------------------------------//
//      次月の処理
//-----------------------------------------------------------------------------------------------//
//現在月の加算設定　0=今月　1=次月
arg1 = 1;

	  //-初期化
	  if(arg1==0)now = new Date();

	  //-年月日取得
	  nowdate  = now.getDate();
	  nowmonth = now.getMonth();
	  nowyear  = now.getYear();

	  //-月移動処理
	  if(nowmonth==11 && arg1 > 0){         //12月でarg1が+なら
	    nowmonth = -1 + arg1;
        nowyear++;                          //月はarg1-1;1年加算
	  } else if(nowmonth==0 && arg1 < 0){   //1月でarg1が-なら
	    nowmonth = 12 + arg1;
        nowyear--;                          //月はarg1+12;1年減算
	  } else {
	    nowmonth +=  arg1;                   //2-11月なら月は+arg1
	  }

	  //-2000年問題対応
	  if(nowyear<1900)nowyear=1900+nowyear;

	  //-現在月を確定
	  now = new Date(nowyear,nowmonth,1);

	  //-YYYYMM作成
	  nowyyyymm = nowyear*100+nowmonth;

	  //-YYYY/MM作成
	  now_m_yyyymm = nowyear+'/'+(nowmonth + 1);

      //-月名作成
//      nowtitleyyyymm = month_nm_e[ nowmonth ] + "&nbsp;" + ( nowmonth + 1 );
      nowtitleyyyymm = month_nm_e[ nowmonth ];

	  //-週表示設定
      //-カレンダー構築用基準日の取得
		fstday   = now;                                           //今月の1日
		startday = fstday - ( fstday.getDay() * 1000*60*60*24 );  //最初の日曜日
		startday = new Date(startday);

		//-カレンダー構築用HTML
		ddata += '<TR>';

		//-MONTH
		ddata += '<TD id="month_line"><p><img src="img/org/3dots.gif" />';
		ddata +=       nowtitleyyyymm;
		ddata += '</p></TD>';

		//  休日指定配列　今月
		for( i in aryMM ){
            if( aryMM[ i ] ){
    			aryTmp = aryMM[ i ].split(",");
    			// Trim処理
    			for( j in aryTmp ){
    				aryTmp[ j ] = aryTmp[ j ].replace(/(^\s+)|(\s+$)/g, "");
    			}
    			// 月が一致した場合
    			if( aryTmp[ 0 ] == now_m_yyyymm ){
    				aryNext = aryTmp;
    			}
            }
		}

		for( j = 0; j < wk; j++ ){
			for( i = 0; i < 7; i++ ){
				nextday = startday.getTime() + (i * 1000*60*60*24);
				wrtday  = new Date(nextday);

				wrtdate = wrtday.getDate();
				wrtmonth= wrtday.getMonth();
				wrtyear = wrtday.getYear();
				if(wrtyear < 1900)wrtyear=1900 + wrtyear;
				wrtyyyymm = wrtyear * 100 + wrtmonth;
				wrtyyyymmdd= ''+wrtyear +'/'+ (wrtmonth+1) +'/'+wrtdate;

				//  該当月以外の場合
				if( wrtyyyymm != nowyyyymm ){ 
					ddata += ' <TD>&nbsp;';						//白数字非表示
//					ddata += wrtdate;							//数字表示
					if(wrtdate==1 && i>0)wk = wk-1;

                //  該当月の場合
				}else{
                    str = '<TD>';
                    //  休日処理
                    for( n in aryNext ){
                    	if( n > 0 ){
	                        if(( aryNext[ n ] > 0 )&&( aryNext[ n ] < 32 )){
	                            if( wrtdate == aryNext[ n ] ){
	                                str = '<TD class="holiday_line">';
	                                break;
	                            }
	                        }
	                    }
                    }
                    ddata += str;
                    
                    //  曜日の処理
    				if( i==0 ){
    					ddata +='<p><span class="sun_line">'+wrtdate+'</span></p>';
    				}else if( i == 6 ){
    					ddata +='<p><span class="sat_line"><p>'+wrtdate+'</span></p>';
    				}else{
    					ddata +='<p><span class="week_line"><p>'+wrtdate+'</span></p>';
    				}
                }
			    ddata += '</TD>';
			}
    		startday = new Date(nextday);
    		startday = startday.getTime() + (1000*60*60*24);
    		startday = new Date(startday);
		}
    	ddata += '</TR>';




//		//-mac用クローズボタン
//		if(Mac){
//			ddata += '   <TR>'
//			ddata += '   <TD COLSPAN=7 ALIGN=center>'
//			ddata += '   <INPUT TYPE=button VALUE="CLOSE" '
//			ddata += '          onClick="self.close();return false">'
//			ddata += '   </TD>'
//			ddata += '   </TR>'
//		}

	  ddata += '</TABLE>';
//	  ddata += '<span>今月の定休日　'+tu1+'日、'+tu2+'12日、'+tu3+'日、'+tu4+'日</span>'
//	  ddata += '</FORM>'

	document.write(ddata);


