/*਀ ⨀ 䌀愀氀攀渀搀愀爀 䔀洀漀砀椀漀渀 
 * with Mootools਀ ⨀ 䴀愀渀甀攀氀 䜀愀爀挀椀愀 ⠀琀栀攀欀攀攀瀀攀爀⤀ 
 * http://www.mgarcia.info਀ ⨀ 嘀攀爀猀椀漀渀 　⸀㈀ 
 *਀ ⨀ 䌀漀瀀礀爀椀最栀琀 ⠀挀⤀ ㈀　　㜀 䴀愀渀甀攀氀 䜀愀爀挀椀愀 
 * http://www.opensource.org/licenses/mit-license.php਀ ⨀⼀ 
਀眀椀渀搀漀眀⸀愀搀搀䔀瘀攀渀琀⠀✀搀漀洀爀攀愀搀礀✀Ⰰ 昀甀渀挀琀椀漀渀⠀⤀ 笀 
	$$('input.ncalendar').each(function(el){਀    攀氀⸀愀搀搀䔀瘀攀渀琀⠀✀挀氀椀挀欀✀Ⰰ 昀甀渀挀琀椀漀渀⠀攀瘀攀渀琀⤀ 笀 
				new Calendar(el);਀ऀऀऀ紀⤀㬀 
	});਀紀⤀㬀 
਀瘀愀爀 䌀愀氀攀渀搀愀爀 㴀 渀攀眀 䌀氀愀猀猀⠀笀 
    initialize: function(el,open,Config) {਀   琀栀椀猀⸀椀渀瀀甀琀 㴀 ␀⠀攀氀⤀㬀 
			var lng = new Object();਀ 
			// Firefox? IE ?਀ऀऀऀ琀爀礀 笀  瘀愀爀 渀愀瘀 㴀 渀愀瘀椀最愀琀漀爀⸀氀愀渀最甀愀最攀⸀猀甀戀猀琀爀⠀　Ⰰ㈀⤀㬀 紀 
			catch (e)	{ var nav = navigator.userLanguage;}਀ 
			lng['en'] = {਀      ऀ洀漀渀琀栀 㨀 嬀✀伀挀愀欀✀Ⰰ✀帀甁戀愀琀✀Ⰰ✀䴀愀爀琀✀Ⰰ✀一椀猀愀渀✀Ⰰ✀䴀愀礀㄀猁✀Ⰰ✀䠀愀稀椀爀愀渀✀Ⰰ✀吀攀洀洀甀稀✀Ⰰ✀䄀ἀ甁猀琀漀猀✀Ⰰ✀䔀礀氀ﰀ氀✀Ⰰ✀䔀欀椀洀✀Ⰰ✀䬀愀猀㄀洁✀Ⰰ✀䄀爀愀氀㄀欁✀崀Ⰰ 
      	day : ['P','S','Ç','P','C','C','P'],਀      ऀ昀椀爀猀琀㨀 ㄀ ⼀⼀ 䘀椀爀猀琀 搀愀礀 漀昀 眀攀攀欀 㴀㸀 䴀漀渀搀愀礀 
			}਀      氀渀最嬀✀攀猀✀崀 㴀 笀 
      	month : ['Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],਀      ऀ搀愀礀 㨀 嬀✀䰀✀Ⰰ✀䴀✀Ⰰ✀䴀✀Ⰰ✀䨀✀Ⰰ✀嘀✀Ⰰ✀匀✀Ⰰ✀䐀✀崀Ⰰ 
      	first: 1 // First day of week => Monday਀ऀऀऀ紀㬀 
			lng['pl'] = {਀      ऀ洀漀渀琀栀 㨀 嬀✀匀琀礀挀稀攀渀✀Ⰰ ✀䰀甀琀礀✀Ⰰ ✀䴀愀爀稀攀挀✀Ⰰ ✀䬀眀椀攀挀椀攀渀✀Ⰰ ✀䴀愀樀✀Ⰰ ✀䌀稀攀爀眀椀攀挀✀Ⰰ ✀䰀椀瀀椀攀挀✀Ⰰ ✀匀椀攀爀瀀椀攀渀✀Ⰰ ✀圀爀稀攀猀椀攀渀✀Ⰰ ✀倀愀稀搀稀椀攀爀渀椀欀✀Ⰰ ✀䰀椀猀琀漀瀀愀搀✀Ⰰ ✀䜀爀甀搀稀椀攀渀✀崀Ⰰ 
				day : ['P','W','S','C','P','S','N'],਀ऀऀऀऀ昀椀爀猀琀㨀 ㄀ ⼀⼀ 匀甀渀搀愀礀 
      }਀      氀渀最嬀✀渀氀✀崀 㴀 笀 
      	month : ['Januari', 'Februari', 'Maart', 'April', 'Mei', 'Juni', 'Juli', 'Augustus', 'September', 'Oktober', 'November', 'December'],਀      ऀ搀愀礀 㨀 嬀✀䴀✀Ⰰ✀䐀✀Ⰰ✀圀✀Ⰰ✀䐀✀Ⰰ✀嘀✀Ⰰ✀娀✀Ⰰ✀娀✀崀Ⰰ 
      	first: 1 // Monday਀      紀 
                ਀ऀऀऀ氀渀最 㴀 ⠀℀氀渀最嬀渀愀瘀崀⤀㼀 氀渀最嬀✀攀渀✀崀 㨀 氀渀最 㴀  氀渀最嬀渀愀瘀崀 㬀 
      /* configuration */਀      椀昀 ⠀℀䌀漀渀昀椀最⤀ 
	      this.config = {਀ऀऀऀऀऀऀ䰀渀最㨀 氀渀最Ⰰ 
					  imgNext: 'components/com_chronocontact/css/img/next.gif',਀ऀऀऀऀऀ  椀洀最倀爀攀瘀㨀 ✀挀漀洀瀀漀渀攀渀琀猀⼀挀漀洀开挀栀爀漀渀漀挀漀渀琀愀挀琀⼀挀猀猀⼀椀洀最⼀瀀爀攀瘀⸀最椀昀✀Ⰰ 
					  imgCancel: 'components/com_chronocontact/css/img/close.gif',਀ऀऀऀऀऀ  洀愀砀䐀愀琀攀㨀 渀攀眀 䐀愀琀攀⠀✀　㄀⼀　㄀⼀㈀　㤀㤀✀⤀Ⰰ 
					  minDate: new Date('01/01/1222'),਀ऀऀऀऀऀ  昀漀爀洀愀琀㨀 ✀搀⼀洀⼀礀✀ 
				};਀ 
      this.month_name = this.config.Lng.month;਀      琀栀椀猀⸀搀愀礀开渀愀洀攀 㴀  琀栀椀猀⸀挀漀渀昀椀最⸀䰀渀最⸀搀愀礀㬀 
			this.create_calendar();਀    紀Ⰰ 
    create_calendar: function() {਀ 
     var position = this.input.getCoordinates();਀     椀昀 ⠀␀⠀✀渀挀愀氀攀渀搀愀爀✀⤀⤀ ␀⠀✀渀挀愀氀攀渀搀愀爀✀⤀⸀爀攀洀漀瘀攀⠀⤀㬀 
      // content div  //਀      琀栀椀猀⸀搀椀瘀 㴀 渀攀眀 䔀氀攀洀攀渀琀⠀✀搀椀瘀✀⤀ 
      .setStyles({'top':(position.top+position.height)+'px', 'left':(position.left)+'px'}).setProperty('id', 'ncalendar').injectInside(document.body);਀      琀栀椀猀⸀搀椀瘀⸀洀愀欀攀䐀爀愀最最愀戀氀攀⠀⤀㬀 
      this.nav();਀      琀栀椀猀⸀猀攀琀搀愀琀攀⠀琀栀椀猀⸀椀渀瀀甀琀⸀最攀琀倀爀漀瀀攀爀琀礀⠀✀瘀愀氀甀攀✀⤀⤀㬀 
			this.effect(this.div,'show');਀ऀऀ紀 Ⰰ 
		nav: function (today) {਀ऀऀ  ⼀⼀ 渀愀瘀 
      this.calendardiv = new Element('div').injectInside(this.div).addClass('cf_calheader')਀      琀栀椀猀⸀琀椀琀氀攀 㴀 渀攀眀 䔀氀攀洀攀渀琀⠀✀猀瀀愀渀✀⤀⸀椀渀樀攀挀琀䤀渀猀椀搀攀⠀琀栀椀猀⸀挀愀氀攀渀搀愀爀搀椀瘀⤀⸀愀搀搀䌀氀愀猀猀⠀✀洀漀渀琀栀✀⤀㬀 
      // next month਀      琀栀椀猀⸀渀攀砀琀 㴀 渀攀眀 䔀氀攀洀攀渀琀⠀✀椀洀最✀⤀⸀猀攀琀倀爀漀瀀攀爀琀礀⠀✀猀爀挀✀Ⰰ 琀栀椀猀⸀挀漀渀昀椀最⸀椀洀最一攀砀琀⤀⸀椀渀樀攀挀琀䄀昀琀攀爀⠀琀栀椀猀⸀琀椀琀氀攀⤀㬀 
      // before month਀      琀栀椀猀⸀戀攀昀漀爀攀 㴀 渀攀眀 䔀氀攀洀攀渀琀⠀✀椀洀最✀⤀⸀猀攀琀倀爀漀瀀攀爀琀礀⠀✀猀爀挀✀Ⰰ 琀栀椀猀⸀挀漀渀昀椀最⸀椀洀最倀爀攀瘀⤀⸀椀渀樀攀挀琀䈀攀昀漀爀攀⠀琀栀椀猀⸀琀椀琀氀攀⤀㬀 
			// close਀ऀऀऀ琀栀椀猀⸀挀氀漀猀攀 㴀 渀攀眀 䔀氀攀洀攀渀琀⠀✀椀洀最✀⤀⸀猀攀琀倀爀漀瀀攀爀琀礀⠀✀猀爀挀✀Ⰰ 琀栀椀猀⸀挀漀渀昀椀最⸀椀洀最䌀愀渀挀攀氀⤀⸀椀渀樀攀挀琀䄀昀琀攀爀⠀琀栀椀猀⸀渀攀砀琀⤀㬀 
			// table਀ऀऀऀ琀栀椀猀⸀琀愀戀氀攀 㴀 渀攀眀 䔀氀攀洀攀渀琀⠀✀琀愀戀氀攀✀⤀⸀椀渀樀攀挀琀䤀渀猀椀搀攀⠀琀栀椀猀⸀搀椀瘀⤀㬀 
			var thead = new Element('thead').injectInside(this.table);਀   ऀऀ瘀愀爀 琀爀 㴀 渀攀眀 䔀氀攀洀攀渀琀⠀✀琀爀✀⤀⸀椀渀樀攀挀琀䤀渀猀椀搀攀⠀琀栀攀愀搀⤀㬀 
਀      琀栀椀猀⸀搀愀礀开渀愀洀攀⸀攀愀挀栀⠀昀甀渀挀琀椀漀渀 ⠀搀愀礀⤀ 笀 
				var td = new Element('th').appendText(day).injectInside(tr);਀ऀऀऀ紀⤀㬀 
਀ऀऀऀ瘀愀爀 氀漀挀愀氀吀栀椀猀 㴀 琀栀椀猀㬀 
			this.close.addEvent('click', function(e) {਀          氀漀挀愀氀吀栀椀猀⸀搀椀瘀⸀爀攀洀漀瘀攀⠀⤀㬀 
  		});਀ऀऀ紀Ⰰ 
		setdate : function(date) {਀ऀऀऀ⼀⼀ 爀攀猀攀琀 攀瘀攀渀琀 渀愀瘀 
			this.next.removeEvents('click');਀ऀऀऀ琀栀椀猀⸀戀攀昀漀爀攀⸀爀攀洀漀瘀攀䔀瘀攀渀琀猀⠀✀挀氀椀挀欀✀⤀㬀 
਀ऀऀऀ椀昀 ⠀℀琀栀椀猀⸀瘀愀氀椀搀愀琀攀开搀愀琀攀⠀搀愀琀攀⤀⤀ 笀 
        this.today = new Date();਀ऀऀ    琀栀椀猀⸀琀漀搀愀礀⸀猀攀琀䐀愀琀攀⠀㄀⤀㬀 
      } else {਀      ऀ瘀愀爀 搀愀琀攀椀渀瀀 㴀 搀愀琀攀⸀猀瀀氀椀琀⠀✀⼀✀⤀㬀 
    		this.today = new Date(dateinp[2],dateinp[1]-1,dateinp[0],0,0,0);਀ऀऀऀ紀 
਀      琀栀椀猀⸀渀攀砀琀开洀 㴀 琀栀椀猀⸀琀漀搀愀礀⸀最攀琀䴀漀渀琀栀⠀⤀㬀 
      this.next_m++;਀ 
      this.title.innerHTML = this.month_name[this.today.getMonth()]+' ' + this.today.getFullYear();਀            
      this.title.addEvent('click', function (e) {਀        椀昀 ⠀␀⠀✀氀椀猀琀夀攀愀爀✀⤀⤀ ␀⠀✀氀椀猀琀夀攀愀爀✀⤀⸀爀攀洀漀瘀攀⠀⤀㬀 
        var div = new Element('div').injectAfter(localThis.title).setProperty('id','listYear');਀        瘀愀爀 搀愀琀攀 㴀 氀漀挀愀氀吀栀椀猀⸀琀漀搀愀礀㬀 
        var ul = new Element('ul').injectInside(div);਀       
        for (var a=(date.getFullYear()-2); a<= (date.getFullYear()+2);a++) {਀          瘀愀爀 氀椀 㴀 渀攀眀 䔀氀攀洀攀渀琀⠀✀氀椀✀⤀⸀猀攀琀䠀吀䴀䰀⠀愀⤀⸀椀渀樀攀挀琀䤀渀猀椀搀攀⠀甀氀⤀ 
          .setProperty('id',a)਀          ⸀愀搀搀䔀瘀攀渀琀⠀✀挀氀椀挀欀✀Ⰰ 昀甀渀挀琀椀漀渀 ⠀攀⤀ 笀 
            localThis.tbody.remove();਀            氀漀挀愀氀吀栀椀猀⸀猀攀琀搀愀琀攀⠀搀愀琀攀⸀最攀琀䐀愀琀攀⠀⤀⬀✀⼀✀⬀搀愀琀攀⸀最攀琀䴀漀渀琀栀⠀⤀⬀✀⼀✀⬀琀栀椀猀⸀最攀琀倀爀漀瀀攀爀琀礀⠀✀椀搀✀⤀⤀㬀 
            div.remove();਀          紀⤀㬀 
        }਀        氀漀挀愀氀吀栀椀猀⸀攀昀昀攀挀琀⠀搀椀瘀Ⰰ✀猀栀漀眀✀⤀㬀 
      });਀  ऀऀ瘀愀爀 氀漀挀愀氀吀栀椀猀 㴀 琀栀椀猀㬀 
਀ऀऀऀ⼀⼀ 攀瘀攀渀琀 渀攀砀琀 
			਀ऀऀऀ椀昀 ⠀琀栀椀猀⸀琀漀搀愀礀 㰀 琀栀椀猀⸀挀漀渀昀椀最⸀洀愀砀䐀愀琀攀 ⤀ 笀 
  			this.next.addEvent('click', function(e) {਀            瘀愀爀 搀愀琀攀 㴀 氀漀挀愀氀吀栀椀猀⸀琀漀搀愀礀㬀 
       	    date.setMonth(localThis.next_m+1,1);਀  ऀ        氀漀挀愀氀吀栀椀猀⸀琀戀漀搀礀⸀爀攀洀漀瘀攀⠀⤀㬀 
            localThis.setdate(date.getDate()+'/'+date.getMonth()+'/'+date.getFullYear());਀    ऀऀ紀⤀㬀 
  		}਀  ऀऀ⼀⼀ 攀瘀攀渀琀 戀攀昀漀爀攀 
  		if (this.today > this.config.minDate ) {਀  ऀऀऀ琀栀椀猀⸀戀攀昀漀爀攀⸀愀搀搀䔀瘀攀渀琀⠀✀挀氀椀挀欀✀Ⰰ 昀甀渀挀琀椀漀渀⠀攀⤀ 笀 
            var date = localThis.today;਀       ऀ    搀愀琀攀⸀猀攀琀䴀漀渀琀栀⠀氀漀挀愀氀吀栀椀猀⸀渀攀砀琀开洀ⴀ㄀Ⰰ㄀⤀㬀 
            localThis.tbody.remove();਀            氀漀挀愀氀吀栀椀猀⸀猀攀琀搀愀琀攀⠀搀愀琀攀⸀最攀琀䐀愀琀攀⠀⤀⬀✀⼀✀⬀搀愀琀攀⸀最攀琀䴀漀渀琀栀⠀⤀⬀✀⼀✀⬀搀愀琀攀⸀最攀琀䘀甀氀氀夀攀愀爀⠀⤀⤀㬀 
    		});਀  ऀऀ紀 
			var LastMonth = new Date(this.today.getFullYear(),this.next_m-2,1,0,0,0);਀ 
			var last = LastMonth.getMonth();਀ऀऀऀ⼀⼀ 琀漀琀愀氀 搀愀礀猀 琀栀攀 氀愀猀琀 洀漀渀琀栀 
			var counter = 0;਀ऀऀऀ昀漀爀 ⠀瘀愀爀 戀 㴀 ㄀㬀 戀 㰀㴀 ⠀㌀　 ⬀  琀栀椀猀⸀挀漀渀昀椀最⸀䰀渀最⸀昀椀爀猀琀⤀㬀 戀⬀⬀⤀ 笀 
			  LastMonth.setDate(b);਀ ऀऀऀऀ椀昀 ⠀ 䰀愀猀琀䴀漀渀琀栀⸀最攀琀䴀漀渀琀栀⠀⤀ 㴀㴀 氀愀猀琀⤀ 笀 
 				  counter++;਀ ऀऀऀऀ紀 
			}਀ 
			this.tbody = new Element('tbody').injectInside(this.table);਀ऀऀऀ瘀愀爀 昀椀爀猀琀开搀愀礀 㴀 琀栀椀猀⸀琀漀搀愀礀㬀 
			var last_day = this.today;਀ऀऀऀ琀栀椀猀⸀洀漀渀琀栀 㴀 琀栀椀猀⸀琀漀搀愀礀⸀最攀琀䴀漀渀琀栀⠀⤀㬀 
   		var tr = new Element('tr').injectInside(this.tbody);਀ 
  		var day=0;਀ 
			/* first day week */਀ऀऀऀ昀椀爀猀琀开搀愀礀⸀猀攀琀䐀愀琀攀⠀㄀⤀㬀 
			var rest = (!first_day.getDay())? 6: first_day.getDay()-1;਀ऀऀऀ挀漀甀渀琀攀爀 㴀 挀漀甀渀琀攀爀 ⴀ 爀攀猀琀㬀 
			for (var i= this.config.Lng.first; i <= 6; i++) {਀ऀऀऀ   椀昀 ⠀昀椀爀猀琀开搀愀礀⸀最攀琀䐀愀礀⠀⤀ 㴀㴀 椀⤀ 笀 
			    break;਀      ऀ 紀 攀氀猀攀 笀 
					counter++;਀ऀऀऀऀऀ䰀愀猀琀䴀漀渀琀栀⸀猀攀琀䐀愀琀攀⠀挀漀甀渀琀攀爀⤀㬀 
					if (LastMonth.getMonth() == this.today.getMonth()) LastMonth.setMonth(this.today.getMonth()-1);਀      ऀ  琀栀椀猀⸀挀爀攀愀琀攀开琀搀⠀琀爀Ⰰ挀漀甀渀琀攀爀Ⰰ䰀愀猀琀䴀漀渀琀栀Ⰰ✀渀漀搀愀礀✀⤀㬀 
        }਀   ऀऀ紀 
			(this.config.Lng.first)? brea_k = 1:brea_k = 0;਀   ⼀⨀ 攀瘀攀爀礀搀愀礀猀 ⨀⼀ 
      var date_s = this.today;਀      瘀愀爀 挀氀愀猀猀开䌀猀猀㬀 
      var brea_k; // breaking week਀  ऀ  瘀愀爀 搀愀礀挀漀甀渀琀攀爀 㴀 　㬀 
     	for (var i = 1; i <= 30; i++) {਀    ऀऀ搀愀琀攀开猀⸀猀攀琀䐀愀琀攀⠀椀⤀㬀 
 				if (date_s.getMonth() == this.month) {਀       ऀऀ搀愀礀挀漀甀渀琀攀爀⬀⬀㬀 
		      if (date_s.getDay() == brea_k) {਀ऀऀऀऀऀऀ瘀愀爀 琀爀 㴀 渀攀眀 䔀氀攀洀攀渀琀⠀✀琀爀✀⤀⸀椀渀樀攀挀琀䤀渀猀椀搀攀⠀琀栀椀猀⸀琀戀漀搀礀⤀㬀 
					}਀          挀氀愀猀猀开䌀猀猀 㴀 ⠀℀搀愀琀攀开猀⸀最攀琀䐀愀礀⠀⤀⤀㼀 ✀猀甀渀搀愀礀✀ 㨀 ✀✀㬀 
					this.create_td(tr,i,date_s,class_Css);਀ऀऀऀऀ紀 
			}਀ऀऀऀ  琀栀椀猀⸀琀漀搀愀礀⸀猀攀琀䴀漀渀琀栀⠀琀栀椀猀⸀洀漀渀琀栀⤀㬀 
       	this.today.setDate(daycounter);਀       ऀ瘀愀爀 一攀砀琀䴀漀渀琀栀 㴀 渀攀眀 䐀愀琀攀⠀琀栀椀猀⸀琀漀搀愀礀⸀最攀琀䘀甀氀氀夀攀愀爀⠀⤀Ⰰ琀栀椀猀⸀琀漀搀愀礀⸀最攀琀䴀漀渀琀栀⠀⤀⬀㄀Ⰰ㄀Ⰰ　Ⰰ　Ⰰ　⤀㬀 
		    // finish month਀ऀऀऀ  瘀愀爀 渀甀洀 㴀 搀愀琀攀开猀⸀最攀琀䐀愀礀⠀⤀㬀 
			  num = (brea_k)? 7 - num: 6 - num;਀ऀऀऀ  瘀愀爀 戀㬀 
			  b = (brea_k)? 0 : 6 ;਀        椀昀 ⠀琀栀椀猀⸀琀漀搀愀礀⸀最攀琀䐀愀礀⠀⤀ ℀㴀 戀⤀ 笀 
				  for (var i= 1; i <= (num); i++) {਀ऀऀऀऀ      一攀砀琀䴀漀渀琀栀⸀猀攀琀䐀愀琀攀⠀椀⤀㬀 
							this.create_td(tr,i,NextMonth,'noday');਀ऀऀऀऀऀ紀 
    		}਀ऀऀऀ琀栀椀猀⸀攀昀昀攀挀琀⠀琀栀椀猀⸀琀戀漀搀礀Ⰰ✀猀栀漀眀✀⤀㬀 
    },਀ऀऀ挀爀攀愀琀攀开琀搀㨀 昀甀渀挀琀椀漀渀⠀琀爀Ⰰ椀Ⰰ搀愀琀攀Ⰰ挀氀愀猀猀开䌀猀猀⤀ 笀 
        var localThis = this;਀ऀऀऀऀ瘀愀爀 琀搀 㴀 渀攀眀 䔀氀攀洀攀渀琀⠀✀琀搀✀⤀㬀 
				if (date) {਀ऀऀऀऀ  瘀愀爀 搀愀礀 㴀 搀愀琀攀⸀最攀琀䐀愀琀攀⠀⤀㬀 
				  var month = (date.getMonth()+1);਀ऀऀऀऀ  ⼀⼀  㤀 琀漀 　㤀 漀爀 愀渀漀琀栀攀爀 渀甀洀戀攀爀 㰀㴀 㤀 
				  if (day <= 9) day = "0"+ day;਀ऀऀऀऀ  椀昀 ⠀洀漀渀琀栀 㰀㴀 㤀⤀ 洀漀渀琀栀 㴀 ∀　∀⬀ 洀漀渀琀栀㬀 
          var ft = localThis.config.format;	  ਀           
          var tddate = ft.replace('d',day);਀ऀऀऀऀ  琀搀搀愀琀攀 㴀 琀搀搀愀琀攀⸀爀攀瀀氀愀挀攀⠀✀洀✀Ⰰ洀漀渀琀栀⤀㬀 
				  tddate = tddate.replace('y',date.getFullYear());਀ऀऀऀऀ   
        	td.setProperty('id', tddate);਀        紀 
       ਀        椀昀 ⠀琀栀椀猀⸀挀漀渀昀椀最⸀洀椀渀䐀愀琀攀 㰀 搀愀琀攀⤀ 笀 
          if (this.config.maxDate > date) {਀          琀搀⸀愀搀搀䔀瘀攀渀琀⠀✀挀氀椀挀欀✀Ⰰ 昀甀渀挀琀椀漀渀⠀攀⤀ 笀 
         			 localThis.input.value = this.id;਀  ऀऀऀऀऀऀ 氀漀挀愀氀吀栀椀猀⸀攀昀昀攀挀琀⠀氀漀挀愀氀吀栀椀猀⸀搀椀瘀Ⰰ✀昀愀搀攀✀⤀㬀 
  						 localThis.div.remove();਀    ऀऀऀ紀⤀㬀 
    			} else {਀            琀搀⸀愀搀搀䔀瘀攀渀琀⠀✀挀氀椀挀欀✀Ⰰ 昀甀渀挀琀椀漀渀⠀攀⤀ 笀 
         			alert('Max. Date ' + localThis.config.maxDate);਀    ऀऀऀ紀⤀㬀 
          }਀  ऀऀऀ紀 攀氀猀攀 笀 
          td.addEvent('click', function(e) {਀         ऀऀऀ愀氀攀爀琀⠀✀䴀椀渀⸀ 䐀愀琀攀 ✀ ⬀ 氀漀挀愀氀吀栀椀猀⸀挀漀渀昀椀最⸀洀椀渀䐀愀琀攀⤀㬀 
    			});਀        紀 
  			td.addEvent('mouseover', function(e) {਀ऀऀऀऀऀऀ 琀栀椀猀⸀愀搀搀䌀氀愀猀猀⠀✀搀愀礀猀攀氀攀挀琀攀搀✀⤀㬀 
  			});਀  ऀऀऀ琀搀⸀愀搀搀䔀瘀攀渀琀⠀✀洀漀甀猀攀漀甀琀✀Ⰰ 昀甀渀挀琀椀漀渀⠀攀⤀ 笀 
						 this.removeClass('dayselected');਀  ऀऀऀ紀⤀㬀 
਀    ऀऀ椀昀 ⠀挀氀愀猀猀开䌀猀猀⤀ 琀搀⸀愀搀搀䌀氀愀猀猀⠀挀氀愀猀猀开䌀猀猀⤀㬀 
    		// Today ??਀    ऀऀ瘀愀爀 琀漀搀愀礀 㴀 渀攀眀 䐀愀琀攀⠀⤀㬀 
				today = today.getDate() + "/" + (today.getMonth()+1) + "/" + today.getFullYear();਀ऀऀऀऀ椀昀 ⠀搀愀琀攀⤀ 瘀愀爀 搀愀琀攀开琀搀 㴀 搀愀琀攀⸀最攀琀䐀愀琀攀⠀⤀ ⬀ ∀⼀∀ ⬀ ⠀搀愀琀攀⸀最攀琀䴀漀渀琀栀⠀⤀⬀㄀⤀ ⬀ ∀⼀∀ ⬀ 搀愀琀攀⸀最攀琀䘀甀氀氀夀攀愀爀⠀⤀㬀 
				if (today == date_td) td.addClass('isToday');਀ 
  		  td.appendText(i);਀ऀऀऀऀ琀搀⸀椀渀樀攀挀琀䤀渀猀椀搀攀⠀琀爀⤀㬀 
		},਀ऀऀ攀昀昀攀挀琀㨀 昀甀渀挀琀椀漀渀⠀搀椀瘀Ⰰ漀瀀⤀ 笀 
		  var ef = new Fx.Style(div, 'opacity', {਀ऀऀऀऀ搀甀爀愀琀椀漀渀㨀 㔀　　Ⰰ 
				transition: Fx.Transitions.quartInOut਀ऀऀऀ紀⤀㬀 
			(op == 'fade')? ef.start(1,0): ef.start(0,1);਀ऀऀ紀Ⰰ 
		validate_date: function (date) {਀ऀऀ  ऀऀ瘀愀爀 爀攀最攀砀 㴀 ⼀帀⠀尀搀笀㄀Ⰰ㈀紀⤀尀⼀⠀尀搀笀㄀Ⰰ㈀紀⤀尀⼀⠀尀搀笀㐀紀⤀␀⼀㬀 
		  		return date.test(regex);਀ऀऀ紀 
});਀਀