//Global variables਍瘀愀爀 眀椀渀䌀愀氀㬀ഀ
var dtToday;਍瘀愀爀 䌀愀氀㬀ഀ
਍瘀愀爀 䴀漀渀琀栀一愀洀攀㬀ഀ
var WeekDayName1;਍瘀愀爀 圀攀攀欀䐀愀礀一愀洀攀㈀㬀ഀ
਍瘀愀爀 攀砀䐀愀琀攀吀椀洀攀㬀ഀ
var selDate;਍ഀ
var calSpanID = "calBorder";਍瘀愀爀 搀漀洀匀琀礀氀攀㴀渀甀氀氀㬀ഀ
var cnLeft="0";਍瘀愀爀 挀渀吀漀瀀㴀∀　∀㬀ഀ
var xpos=0;਍瘀愀爀 礀瀀漀猀㴀　㬀ഀ
var calHeight=0;਍瘀愀爀 䌀愀氀圀椀搀琀栀㴀㈀　㠀㬀ഀ
var CellWidth=30;਍瘀愀爀 吀椀洀攀䴀漀搀攀㴀㈀㐀㬀ഀ
਍⼀⼀䌀漀渀昀椀最甀爀愀戀氀攀 瀀愀爀愀洀攀琀攀爀猀ഀ
਍瘀愀爀 匀瀀愀渀䈀漀爀搀攀爀䌀漀氀漀爀 㴀 ∀⌀挀搀挀搀挀搀∀㬀⼀⼀猀瀀愀渀 戀漀爀搀攀爀 挀漀氀漀爀ഀ
var SpanBgColor = "#cdcdcd";//span background color਍瘀愀爀 圀攀攀欀䌀栀愀爀㴀㈀㬀⼀⼀渀甀洀戀攀爀 漀昀 挀栀愀爀愀挀琀攀爀 昀漀爀 眀攀攀欀 搀愀礀⸀ 椀昀 ㈀ 琀栀攀渀 䴀漀Ⰰ吀甀Ⰰ圀攀⸀ 椀昀 ㌀ 琀栀攀渀 䴀漀渀Ⰰ吀甀攀Ⰰ圀攀搀⸀ഀ
var DateSeparator="-";//Date Separator, you can change it to "-" if you want.਍瘀愀爀 匀栀漀眀䰀漀渀最䴀漀渀琀栀㴀琀爀甀攀㬀⼀⼀匀栀漀眀 氀漀渀最 洀漀渀琀栀 渀愀洀攀 椀渀 䌀愀氀攀渀搀愀爀 栀攀愀搀攀爀⸀ 攀砀愀洀瀀氀攀㨀 ∀䨀愀渀甀愀爀礀∀⸀ഀ
var ShowMonthYear=true;//Show Month and Year in Calendar header.਍瘀愀爀 䴀漀渀琀栀夀攀愀爀䌀漀氀漀爀㴀∀⌀挀挀　　㌀㌀∀㬀⼀⼀䘀漀渀琀 䌀漀氀漀爀 漀昀 䴀漀渀琀栀 愀渀搀 夀攀愀爀 椀渀 䌀愀氀攀渀搀愀爀 栀攀愀搀攀爀⸀ഀ
var WeekHeadColor="#18861B";//Background Color in Week header.਍瘀愀爀 匀甀渀搀愀礀䌀漀氀漀爀㴀∀⌀䌀　䘀㘀㐀䘀∀㬀⼀⼀䈀愀挀欀最爀漀甀渀搀 挀漀氀漀爀 漀昀 匀甀渀搀愀礀⸀ഀ
var SaturdayColor="#C0F64F";//Background color of Saturday.਍瘀愀爀 圀攀攀欀䐀愀礀䌀漀氀漀爀㴀∀眀栀椀琀攀∀㬀⼀⼀䈀愀挀欀最爀漀甀渀搀 挀漀氀漀爀 漀昀 眀攀攀欀搀愀礀猀⸀ഀ
var FontColor="blue";//color of font in Calendar day cell.਍瘀愀爀 吀漀搀愀礀䌀漀氀漀爀㴀∀⌀䘀䘀䘀䘀㌀㌀∀㬀⼀⼀䈀愀挀欀最爀漀甀渀搀 挀漀氀漀爀 漀昀 琀漀搀愀礀⸀ഀ
var SelDateColor="#8DD53C";//Backgrond color of selected date in textbox.਍瘀愀爀 夀爀匀攀氀䌀漀氀漀爀㴀∀⌀挀挀　　㌀㌀∀㬀⼀⼀挀漀氀漀爀 漀昀 昀漀渀琀 漀昀 夀攀愀爀 猀攀氀攀挀琀漀爀⸀ഀ
var MthSelColor="#cc0033";//color of font of Month selector if "MonthSelector" is "arrow".਍瘀愀爀 吀栀攀洀攀䈀最㴀∀∀㬀⼀⼀䈀愀挀欀最爀漀甀渀搀 椀洀愀最攀 漀昀 䌀愀氀攀渀搀愀爀 眀椀渀搀漀眀⸀ഀ
var CalBgColor="";//Backgroud color of Calendar window.਍瘀愀爀 倀爀攀挀攀搀攀娀攀爀漀㴀琀爀甀攀㬀⼀⼀倀爀攀挀攀搀椀渀最 稀攀爀漀 嬀琀爀甀攀簀昀愀氀猀攀崀ഀ
var MondayFirstDay=false;//true:Use Monday as first day; false:Sunday as first day. [true|false]  //added in version 1.7਍瘀愀爀 唀猀攀䤀洀愀最攀䘀椀氀攀猀 㴀 琀爀甀攀㬀⼀⼀唀猀攀 椀洀愀最攀 昀椀氀攀猀 眀椀琀栀 ∀愀爀爀漀眀猀∀ 愀渀搀 ∀挀氀漀猀攀∀ 戀甀琀琀漀渀ഀ
਍⼀⼀甀猀攀 琀栀攀 䴀漀渀琀栀 愀渀搀 圀攀攀欀搀愀礀 椀渀 礀漀甀爀 瀀爀攀昀攀爀爀攀搀 氀愀渀最甀愀最攀⸀ഀ
var MonthName=["January", "February", "March", "April", "May", "June","July","August", "September", "October", "November", "December"];਍瘀愀爀 圀攀攀欀䐀愀礀一愀洀攀㄀㴀嬀∀匀甀渀搀愀礀∀Ⰰ∀䴀漀渀搀愀礀∀Ⰰ∀吀甀攀猀搀愀礀∀Ⰰ∀圀攀搀渀攀猀搀愀礀∀Ⰰ∀吀栀甀爀猀搀愀礀∀Ⰰ∀䘀爀椀搀愀礀∀Ⰰ∀匀愀琀甀爀搀愀礀∀崀㬀ഀ
var WeekDayName2=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"];਍ഀ
//end Configurable parameters਍⼀⼀攀渀搀 䜀氀漀戀愀氀 瘀愀爀椀愀戀氀攀ഀ
਍⼀⼀ 䐀攀昀愀甀氀琀 攀瘀攀渀琀猀 挀漀渀昀椀最甀爀愀琀椀漀渀ഀ
document.onmousedown = pickIt;਍搀漀挀甀洀攀渀琀⸀漀渀洀漀甀猀攀洀漀瘀攀 㴀 搀爀愀最䤀琀㬀ഀ
document.onmouseup = dropIt;਍ഀ
function NewCssCal(pCtrl, pFormat, pScroller, pShowTime, pTimeMode, pHideSeconds) {਍ऀ⼀⼀ 最攀琀 挀甀爀爀攀渀琀 搀愀琀攀 愀渀搀 琀椀洀攀ഀ
	dtToday = new Date();਍ऀ䌀愀氀     㴀 渀攀眀 䌀愀氀攀渀搀愀爀⠀搀琀吀漀搀愀礀⤀㬀ഀ
਍ऀ椀昀 ⠀⠀瀀匀栀漀眀吀椀洀攀℀㴀渀甀氀氀⤀ ☀☀ ⠀瀀匀栀漀眀吀椀洀攀⤀⤀ 笀ഀ
		Cal.ShowTime=true;਍ऀऀ椀昀 ⠀⠀瀀吀椀洀攀䴀漀搀攀℀㴀渀甀氀氀⤀ ☀☀⠀⠀瀀吀椀洀攀䴀漀搀攀㴀㴀✀㄀㈀✀⤀簀簀⠀瀀吀椀洀攀䴀漀搀攀㴀㴀✀㈀㐀✀⤀⤀⤀ऀ笀ഀ
			TimeMode=pTimeMode;਍ऀऀ紀ഀ
		else TimeMode='24';਍ഀ
        if (pHideSeconds!=null)਍        笀ഀ
            if (pHideSeconds)਍            笀䌀愀氀⸀匀栀漀眀匀攀挀漀渀搀猀㴀昀愀氀猀攀㬀紀ഀ
            else਍            笀䌀愀氀⸀匀栀漀眀匀攀挀漀渀搀猀㴀琀爀甀攀㬀紀ഀ
        }਍        攀氀猀攀ഀ
        {਍            䌀愀氀⸀匀栀漀眀匀攀挀漀渀搀猀㴀昀愀氀猀攀㬀ഀ
        }਍ऀ紀ഀ
	if (pCtrl!=null)਍ऀऀ䌀愀氀⸀䌀琀爀氀㴀瀀䌀琀爀氀㬀ഀ
਍ऀ椀昀 ⠀瀀䘀漀爀洀愀琀℀㴀渀甀氀氀⤀ഀ
		Cal.Format=pFormat.toUpperCase();਍ऀ攀氀猀攀ഀ
	    Cal.Format="MMDDYYYY";਍ഀ
	if (pScroller!=null) {਍ऀऀ椀昀 ⠀瀀匀挀爀漀氀氀攀爀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀䄀刀刀伀圀∀⤀ 笀ഀ
			Cal.Scroller="ARROW";਍ऀऀ紀ഀ
		else {਍ऀऀऀ䌀愀氀⸀匀挀爀漀氀氀攀爀㴀∀䐀刀伀倀䐀伀圀一∀㬀ഀ
		}਍    紀ഀ
	exDateTime=document.getElementById(pCtrl).value;਍ഀ
	if (exDateTime!="")	{ //Parse existing Date String਍ऀऀ瘀愀爀 匀瀀㄀㬀⼀⼀䤀渀搀攀砀 漀昀 䐀愀琀攀 匀攀瀀愀爀愀琀漀爀 ㄀ഀ
		var Sp2;//Index of Date Separator 2਍ऀऀ瘀愀爀 琀匀瀀㄀㬀⼀⼀䤀渀搀攀砀 漀昀 吀椀洀攀 匀攀瀀愀爀愀琀漀爀 ㄀ഀ
		var tSp1;//Index of Time Separator 2਍ऀऀ瘀愀爀 猀琀爀䴀漀渀琀栀㬀ഀ
		var strDate;਍ऀऀ瘀愀爀 猀琀爀夀攀愀爀㬀ഀ
		var intMonth;਍ऀऀ瘀愀爀 夀攀愀爀倀愀琀琀攀爀渀㬀ഀ
		var strHour;਍ऀऀ瘀愀爀 猀琀爀䴀椀渀甀琀攀㬀ഀ
		var strSecond;਍ऀऀ瘀愀爀 眀椀渀䠀攀椀最栀琀㬀ഀ
		//parse month਍ऀऀ匀瀀㄀㴀攀砀䐀愀琀攀吀椀洀攀⸀椀渀搀攀砀伀昀⠀䐀愀琀攀匀攀瀀愀爀愀琀漀爀Ⰰ　⤀ഀ
		Sp2=exDateTime.indexOf(DateSeparator,(parseInt(Sp1)+1));਍ഀ
		var offset=parseInt(Cal.Format.toUpperCase().lastIndexOf("M"))-parseInt(Cal.Format.toUpperCase().indexOf("M"))-1;਍ऀऀ椀昀 ⠀⠀䌀愀氀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀䐀䐀䴀䴀夀夀夀夀∀⤀ 簀簀 ⠀䌀愀氀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀䐀䐀䴀䴀䴀夀夀夀夀∀⤀⤀ 笀ഀ
			if (DateSeparator=="") {਍ऀऀऀऀ猀琀爀䴀漀渀琀栀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀㈀Ⰰ㐀⬀漀昀昀猀攀琀⤀㬀ഀ
				strDate=exDateTime.substring(0,2);਍ऀऀऀऀ猀琀爀夀攀愀爀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀㐀⬀漀昀昀猀攀琀Ⰰ㠀⬀漀昀昀猀攀琀⤀㬀ഀ
			}਍ऀऀऀ攀氀猀攀 笀ഀ
				strMonth=exDateTime.substring(Sp1+1,Sp2);਍ऀऀऀऀ猀琀爀䐀愀琀攀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀　Ⰰ匀瀀㄀⤀㬀ഀ
				strYear=exDateTime.substring(Sp2+1,Sp2+5);਍ऀऀऀ紀ഀ
		}਍ऀऀ攀氀猀攀 椀昀 ⠀⠀䌀愀氀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀䴀䴀䐀䐀夀夀夀夀∀⤀ 簀簀 ⠀䌀愀氀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀䴀䴀䴀䐀䐀夀夀夀夀∀⤀⤀ 笀ഀ
			if (DateSeparator=="") {਍ऀऀऀऀ猀琀爀䴀漀渀琀栀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀　Ⰰ㈀⬀漀昀昀猀攀琀⤀㬀ഀ
				strDate=exDateTime.substring(2+offset,4+offset);਍ऀऀऀऀ猀琀爀夀攀愀爀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀㐀⬀漀昀昀猀攀琀Ⰰ㠀⬀漀昀昀猀攀琀⤀㬀ഀ
			}਍ऀऀऀ攀氀猀攀 笀ഀ
				strMonth=exDateTime.substring(0,Sp1);਍ऀऀऀऀ猀琀爀䐀愀琀攀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀匀瀀㄀⬀㄀Ⰰ匀瀀㈀⤀㬀ഀ
				strYear=exDateTime.substring(Sp2+1,Sp2+5);਍ऀऀऀ紀ഀ
		}਍ऀऀ攀氀猀攀 椀昀 ⠀⠀䌀愀氀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀夀夀夀夀䴀䴀䐀䐀∀⤀ 簀簀 ⠀䌀愀氀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀夀夀夀夀䴀䴀䴀䐀䐀∀⤀⤀ 笀ഀ
			if (DateSeparator=="") {਍ऀऀऀऀ猀琀爀䴀漀渀琀栀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀㐀Ⰰ㘀⬀漀昀昀猀攀琀⤀㬀ഀ
				strDate=exDateTime.substring(6+offset,8+offset);਍ऀऀऀऀ猀琀爀夀攀愀爀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀　Ⰰ㐀⤀㬀ഀ
			}਍ऀऀऀ攀氀猀攀 笀ഀ
				strMonth=exDateTime.substring(Sp1+1,Sp2);਍ऀऀऀऀ猀琀爀䐀愀琀攀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀匀瀀㈀⬀㄀Ⰰ匀瀀㈀⬀㌀⤀㬀ഀ
				strYear=exDateTime.substring(0,Sp1);਍ऀऀऀ紀ഀ
		}਍ऀऀ椀昀 ⠀椀猀一愀一⠀猀琀爀䴀漀渀琀栀⤀⤀ഀ
			intMonth=Cal.GetMonthIndex(strMonth);਍ऀऀ攀氀猀攀ഀ
			intMonth=parseInt(strMonth,10)-1;਍ऀऀ椀昀 ⠀⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀䴀漀渀琀栀Ⰰ㄀　⤀㸀㴀　⤀ ☀☀ ⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀䴀漀渀琀栀Ⰰ㄀　⤀㰀㄀㈀⤀⤀ഀ
			Cal.Month=intMonth;਍ऀऀ⼀⼀攀渀搀 瀀愀爀猀攀 洀漀渀琀栀ഀ
		//parse Date਍ऀऀ椀昀 ⠀⠀瀀愀爀猀攀䤀渀琀⠀猀琀爀䐀愀琀攀Ⰰ㄀　⤀㰀㴀䌀愀氀⸀䜀攀琀䴀漀渀䐀愀礀猀⠀⤀⤀ ☀☀ ⠀瀀愀爀猀攀䤀渀琀⠀猀琀爀䐀愀琀攀Ⰰ㄀　⤀㸀㴀㄀⤀⤀ഀ
			Cal.Date=strDate;਍ऀऀ⼀⼀攀渀搀 瀀愀爀猀攀 䐀愀琀攀ഀ
		//parse year਍ऀऀ夀攀愀爀倀愀琀琀攀爀渀㴀⼀帀尀搀笀㐀紀␀⼀㬀ഀ
		if (YearPattern.test(strYear))਍ऀऀऀ䌀愀氀⸀夀攀愀爀㴀瀀愀爀猀攀䤀渀琀⠀猀琀爀夀攀愀爀Ⰰ㄀　⤀㬀ഀ
		//end parse year਍ऀऀ⼀⼀瀀愀爀猀攀 琀椀洀攀ഀ
		if (Cal.ShowTime==true)	{਍ऀऀऀ⼀⼀瀀愀爀猀攀 䄀䴀 漀爀 倀䴀ഀ
			if (TimeMode==12) {਍ऀऀऀऀ猀琀爀䄀䴀倀䴀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀攀砀䐀愀琀攀吀椀洀攀⸀氀攀渀最琀栀ⴀ㈀Ⰰ攀砀䐀愀琀攀吀椀洀攀⸀氀攀渀最琀栀⤀ഀ
				Cal.AMorPM=strAMPM;਍ऀऀऀ紀ഀ
			tSp1=exDateTime.indexOf(":",0)਍ऀऀऀ琀匀瀀㈀㴀攀砀䐀愀琀攀吀椀洀攀⸀椀渀搀攀砀伀昀⠀∀㨀∀Ⰰ⠀瀀愀爀猀攀䤀渀琀⠀琀匀瀀㄀⤀⬀㄀⤀⤀㬀ഀ
			if (tSp1>0)	{਍ऀऀऀऀ猀琀爀䠀漀甀爀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀琀匀瀀㄀Ⰰ⠀琀匀瀀㄀⤀ⴀ㈀⤀㬀ഀ
				Cal.SetHour(strHour);਍ऀऀऀऀ猀琀爀䴀椀渀甀琀攀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀琀匀瀀㄀⬀㄀Ⰰ琀匀瀀㄀⬀㌀⤀㬀ഀ
				Cal.SetMinute(strMinute);਍ऀऀऀऀ猀琀爀匀攀挀漀渀搀㴀攀砀䐀愀琀攀吀椀洀攀⸀猀甀戀猀琀爀椀渀最⠀琀匀瀀㈀⬀㄀Ⰰ琀匀瀀㈀⬀㌀⤀㬀ഀ
				Cal.SetSecond(strSecond);਍ऀऀऀ紀ഀ
		}਍ऀ紀ഀ
	selDate=new Date(Cal.Year,Cal.Month,Cal.Date);//version 1.7਍ऀ刀攀渀搀攀爀䌀猀猀䌀愀氀⠀琀爀甀攀⤀㬀ഀ
}਍ഀ
function RenderCssCal(bNewCal) {਍ऀ椀昀 ⠀琀礀瀀攀漀昀 戀一攀眀䌀愀氀 㴀㴀 ∀甀渀搀攀昀椀渀攀搀∀ 簀簀 戀一攀眀䌀愀氀 ℀㴀 琀爀甀攀⤀ 笀戀一攀眀䌀愀氀 㴀 昀愀氀猀攀㬀紀ഀ
	var vCalHeader;਍ऀ瘀愀爀 瘀䌀愀氀䐀愀琀愀㬀ഀ
	var vCalTime="";਍ऀ瘀愀爀 椀㬀ഀ
	var j;਍ऀ瘀愀爀 匀攀氀攀挀琀匀琀爀㬀ഀ
	var vDayCount=0;਍ऀ瘀愀爀 瘀䘀椀爀猀琀䐀愀礀㬀ഀ
	calHeight = 0; // reset the window height on refresh਍ഀ
	// Set the default cursor for the calendar਍ऀ眀椀渀䌀愀氀䐀愀琀愀㴀∀㰀猀瀀愀渀 猀琀礀氀攀㴀✀挀甀爀猀漀爀㨀愀甀琀漀㬀✀㸀尀渀∀㬀ഀ
਍ऀ椀昀 ⠀吀栀攀洀攀䈀最㴀㴀∀∀⤀笀䌀愀氀䈀最䌀漀氀漀爀㴀∀戀最挀漀氀漀爀㴀✀∀⬀圀攀攀欀䐀愀礀䌀漀氀漀爀⬀∀✀∀紀ഀ
਍ऀ瘀䌀愀氀䠀攀愀搀攀爀㴀∀㰀琀愀戀氀攀 ∀⬀䌀愀氀䈀最䌀漀氀漀爀⬀∀ 戀愀挀欀最爀漀甀渀搀㴀✀∀⬀吀栀攀洀攀䈀最⬀∀✀ 戀漀爀搀攀爀㴀㄀ 挀攀氀氀瀀愀搀搀椀渀最㴀㄀ 挀攀氀氀猀瀀愀挀椀渀最㴀㄀ 眀椀搀琀栀㴀✀㈀　　✀ 瘀愀氀椀最渀㴀✀琀漀瀀✀㸀尀渀∀㬀ഀ
	//Table for Month & Year Selector਍ऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀琀爀㸀尀渀㰀琀搀 挀漀氀猀瀀愀渀㴀✀㜀✀㸀尀渀㰀琀愀戀氀攀 戀漀爀搀攀爀㴀　 眀椀搀琀栀㴀㈀　　 挀攀氀氀瀀愀搀搀椀渀最㴀　 挀攀氀氀猀瀀愀挀椀渀最㴀　㸀尀渀㰀琀爀㸀尀渀∀㬀ഀ
਍ऀ⼀⼀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀䴀漀渀琀栀 愀渀搀 夀攀愀爀 猀攀氀攀挀琀漀爀 椀渀 搀爀漀瀀搀漀眀渀 氀椀猀琀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀ഀ
	if (Cal.Scroller=="DROPDOWN") {਍ऀऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀琀搀 愀氀椀最渀㴀✀挀攀渀琀攀爀✀㸀㰀猀攀氀攀挀琀 渀愀洀攀㴀尀∀䴀漀渀琀栀匀攀氀攀挀琀漀爀尀∀ 漀渀䌀栀愀渀最攀㴀尀∀樀愀瘀愀猀挀爀椀瀀琀㨀䌀愀氀⸀匀眀椀琀挀栀䴀琀栀⠀琀栀椀猀⸀猀攀氀攀挀琀攀搀䤀渀搀攀砀⤀㬀刀攀渀搀攀爀䌀猀猀䌀愀氀⠀⤀㬀尀∀㸀尀渀∀㬀ഀ
		for (i=0;i<12;i++) {਍ऀऀऀ椀昀 ⠀椀㴀㴀䌀愀氀⸀䴀漀渀琀栀⤀ഀ
				SelectStr="Selected";਍ऀऀऀ攀氀猀攀ഀ
				SelectStr="";਍ऀऀऀ    瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀漀瀀琀椀漀渀 ∀⬀匀攀氀攀挀琀匀琀爀⬀∀ 瘀愀氀甀攀㴀∀⬀椀⬀∀㸀∀⬀䴀漀渀琀栀一愀洀攀嬀椀崀⬀∀㰀⼀漀瀀琀椀漀渀㸀尀渀∀㬀ഀ
		}਍ऀऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀⼀猀攀氀攀挀琀㸀㰀⼀琀搀㸀尀渀∀㬀ഀ
		//Year selector਍ऀऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀琀搀 愀氀椀最渀㴀✀挀攀渀琀攀爀✀㸀㰀猀攀氀攀挀琀 渀愀洀攀㴀尀∀夀攀愀爀匀攀氀攀挀琀漀爀尀∀ 猀椀稀攀㴀尀∀㄀尀∀ 漀渀䌀栀愀渀最攀㴀尀∀樀愀瘀愀猀挀爀椀瀀琀㨀䌀愀氀⸀匀眀椀琀挀栀夀攀愀爀⠀琀栀椀猀⸀瘀愀氀甀攀⤀㬀刀攀渀搀攀爀䌀猀猀䌀愀氀⠀⤀㬀尀∀㸀尀渀∀㬀ഀ
		for (i = 1950; i < (dtToday.getFullYear() + 5);i++)	{਍ऀऀऀ椀昀 ⠀椀㴀㴀䌀愀氀⸀夀攀愀爀⤀ഀ
				SelectStr="Selected";਍ऀऀऀ攀氀猀攀ഀ
				SelectStr="";਍ऀऀऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀漀瀀琀椀漀渀 ∀⬀匀攀氀攀挀琀匀琀爀⬀∀ 瘀愀氀甀攀㴀∀⬀椀⬀∀㸀∀⬀椀⬀∀㰀⼀漀瀀琀椀漀渀㸀尀渀∀㬀ഀ
		}਍ऀऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀⼀猀攀氀攀挀琀㸀㰀⼀琀搀㸀尀渀∀㬀ഀ
		calHeight += 30;਍ऀ紀ഀ
	//******************End Month and Year selector in dropdown list*********************਍ऀ⼀⼀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀䴀漀渀琀栀 愀渀搀 夀攀愀爀 猀攀氀攀挀琀漀爀 椀渀 愀爀爀漀眀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀⨀ഀ
	else if (Cal.Scroller=="ARROW")਍  笀ഀ
    if (UseImageFiles)਍    笀ഀ
  		vCalHeader+="<td><img onmousedown='javascript:Cal.DecYear();RenderCssCal();' src=' css/images/datetimepicker/cal_fastreverse.gif' width='13' height='9' onmouseover='changeBorder(this, 0)' onmouseout='changeBorder(this, 1)' style='border:1px solid white'></td>\n";//Year scroller (decrease 1 year)਍  ऀऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀琀搀㸀㰀椀洀最 漀渀洀漀甀猀攀搀漀眀渀㴀✀樀愀瘀愀猀挀爀椀瀀琀㨀䌀愀氀⸀䐀攀挀䴀漀渀琀栀⠀⤀㬀刀攀渀搀攀爀䌀猀猀䌀愀氀⠀⤀㬀✀ 猀爀挀㴀✀ 挀猀猀⼀椀洀愀最攀猀⼀搀愀琀攀琀椀洀攀瀀椀挀欀攀爀⼀挀愀氀开爀攀瘀攀爀猀攀⸀最椀昀✀ 眀椀搀琀栀㴀✀㄀㌀✀ 栀攀椀最栀琀㴀✀㤀✀ 漀渀洀漀甀猀攀漀瘀攀爀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ 　⤀✀ 漀渀洀漀甀猀攀漀甀琀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ ㄀⤀✀ 猀琀礀氀攀㴀✀戀漀爀搀攀爀㨀㄀瀀砀 猀漀氀椀搀 眀栀椀琀攀✀㸀㰀⼀琀搀㸀尀渀∀㬀⼀⼀䴀漀渀琀栀 猀挀爀漀氀氀攀爀 ⠀搀攀挀爀攀愀猀攀 ㄀ 洀漀渀琀栀⤀ഀ
  		vCalHeader+="<td width='70%' class='calR'><font color='"+YrSelColor+"'>"+Cal.GetMonthName(ShowLongMonth)+" "+Cal.Year+"</font></td>\n"//Month and Year਍  ऀऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀琀搀㸀㰀椀洀最 漀渀洀漀甀猀攀搀漀眀渀㴀✀樀愀瘀愀猀挀爀椀瀀琀㨀䌀愀氀⸀䤀渀挀䴀漀渀琀栀⠀⤀㬀刀攀渀搀攀爀䌀猀猀䌀愀氀⠀⤀㬀✀ 猀爀挀㴀✀ 挀猀猀⼀椀洀愀最攀猀⼀搀愀琀攀琀椀洀攀瀀椀挀欀攀爀⼀挀愀氀开昀漀爀眀愀爀搀⸀最椀昀✀ 眀椀搀琀栀㴀✀㄀㌀✀ 栀攀椀最栀琀㴀✀㤀✀ 漀渀洀漀甀猀攀漀瘀攀爀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ 　⤀✀ 漀渀洀漀甀猀攀漀甀琀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ ㄀⤀✀ 猀琀礀氀攀㴀✀戀漀爀搀攀爀㨀㄀瀀砀 猀漀氀椀搀 眀栀椀琀攀✀㸀㰀⼀琀搀㸀尀渀∀㬀⼀⼀䴀漀渀琀栀 猀挀爀漀氀氀攀爀 ⠀椀渀挀爀攀愀猀攀 ㄀ 洀漀渀琀栀⤀ഀ
  		vCalHeader+="<td><img onmousedown='javascript:Cal.IncYear();RenderCssCal();' src=' css/images/datetimepicker/cal_fastforward.gif' width='13' height='9' onmouseover='changeBorder(this, 0)' onmouseout='changeBorder(this, 1)' style='border:1px solid white'></td>\n";//Year scroller (increase 1 year)਍  ऀ    挀愀氀䠀攀椀最栀琀 ⬀㴀 ㈀㈀㬀ഀ
	  }਍ऀ  攀氀猀攀ഀ
	  {਍ऀ  ऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀琀搀㸀㰀猀瀀愀渀 椀搀㴀✀搀攀挀开礀攀愀爀✀ 琀椀琀氀攀㴀✀爀攀瘀攀爀猀攀 礀攀愀爀✀ 漀渀洀漀甀猀攀搀漀眀渀㴀✀樀愀瘀愀猀挀爀椀瀀琀㨀䌀愀氀⸀䐀攀挀夀攀愀爀⠀⤀㬀刀攀渀搀攀爀䌀猀猀䌀愀氀⠀⤀㬀✀ 漀渀洀漀甀猀攀漀瘀攀爀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ 　⤀✀ 漀渀洀漀甀猀攀漀甀琀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ ㄀⤀✀ 猀琀礀氀攀㴀✀戀漀爀搀攀爀㨀㄀瀀砀 猀漀氀椀搀 眀栀椀琀攀㬀 挀漀氀漀爀㨀∀⬀夀爀匀攀氀䌀漀氀漀爀⬀∀✀㸀ⴀ㰀⼀猀瀀愀渀㸀㰀⼀琀搀㸀∀㬀⼀⼀夀攀愀爀 猀挀爀漀氀氀攀爀 ⠀搀攀挀爀攀愀猀攀 ㄀ 礀攀愀爀⤀ഀ
	  	vCalHeader+="<td><span id='dec_month' title='reverse month' onmousedown='javascript:Cal.DecMonth();RenderCssCal();' onmouseover='changeBorder(this, 0)' onmouseout='changeBorder(this, 1)' style='border:1px solid white'>&lt;</span></td>\n";//Month scroller (decrease 1 month)਍  ऀऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀琀搀 眀椀搀琀栀㴀✀㜀　─✀ 挀氀愀猀猀㴀✀挀愀氀刀✀㸀㰀昀漀渀琀 挀漀氀漀爀㴀✀∀⬀夀爀匀攀氀䌀漀氀漀爀⬀∀✀㸀∀⬀䌀愀氀⸀䜀攀琀䴀漀渀琀栀一愀洀攀⠀匀栀漀眀䰀漀渀最䴀漀渀琀栀⤀⬀∀ ∀⬀䌀愀氀⸀夀攀愀爀⬀∀㰀⼀昀漀渀琀㸀㰀⼀琀搀㸀尀渀∀⼀⼀䴀漀渀琀栀 愀渀搀 夀攀愀爀ഀ
  		vCalHeader+="<td><span id='inc_month' title='forward month' onmousedown='javascript:Cal.IncMonth();RenderCssCal();' onmouseover='changeBorder(this, 0)' onmouseout='changeBorder(this, 1)' style='border:1px solid white'>&gt;</span></td>\n";//Month scroller (increase 1 month)਍  ऀऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀琀搀㸀㰀猀瀀愀渀 椀搀㴀✀椀渀挀开礀攀愀爀✀ 琀椀琀氀攀㴀✀昀漀爀眀愀爀搀 礀攀愀爀✀ 漀渀洀漀甀猀攀搀漀眀渀㴀✀樀愀瘀愀猀挀爀椀瀀琀㨀䌀愀氀⸀䤀渀挀夀攀愀爀⠀⤀㬀刀攀渀搀攀爀䌀猀猀䌀愀氀⠀⤀㬀✀  漀渀洀漀甀猀攀漀瘀攀爀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ 　⤀✀ 漀渀洀漀甀猀攀漀甀琀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ ㄀⤀✀ 猀琀礀氀攀㴀✀戀漀爀搀攀爀㨀㄀瀀砀 猀漀氀椀搀 眀栀椀琀攀㬀 挀漀氀漀爀㨀∀⬀夀爀匀攀氀䌀漀氀漀爀⬀∀✀㸀⬀㰀⼀猀瀀愀渀㸀㰀⼀琀搀㸀尀渀∀㬀⼀⼀夀攀愀爀 猀挀爀漀氀氀攀爀 ⠀椀渀挀爀攀愀猀攀 ㄀ 礀攀愀爀⤀ഀ
  	    calHeight += 22;਍ऀ  紀ഀ
	}਍ऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀⼀琀爀㸀尀渀㰀⼀琀愀戀氀攀㸀尀渀㰀⼀琀搀㸀尀渀㰀⼀琀爀㸀尀渀∀ഀ
  //******************End Month and Year selector in arrow******************************਍ऀ⼀⼀䌀愀氀攀渀搀愀爀 栀攀愀搀攀爀 猀栀漀眀猀 䴀漀渀琀栀 愀渀搀 夀攀愀爀ഀ
	if ((ShowMonthYear)&&(Cal.Scroller=="DROPDOWN")) {਍ऀऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀琀爀㸀㰀琀搀 挀漀氀猀瀀愀渀㴀✀㜀✀ 挀氀愀猀猀㴀✀挀愀氀刀✀㸀尀渀㰀昀漀渀琀 挀漀氀漀爀㴀✀∀⬀䴀漀渀琀栀夀攀愀爀䌀漀氀漀爀⬀∀✀㸀∀⬀䌀愀氀⸀䜀攀琀䴀漀渀琀栀一愀洀攀⠀匀栀漀眀䰀漀渀最䴀漀渀琀栀⤀⬀∀ ∀⬀䌀愀氀⸀夀攀愀爀⬀∀㰀⼀昀漀渀琀㸀尀渀㰀⼀琀搀㸀㰀⼀琀爀㸀尀渀∀㬀ഀ
	    calHeight += 19;਍ऀ紀ഀ
	//Week day header਍ऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀琀爀 戀最挀漀氀漀爀㴀∀⬀圀攀攀欀䠀攀愀搀䌀漀氀漀爀⬀∀㸀尀渀∀㬀ഀ
	var WeekDayName=new Array();//Added version 1.7਍ऀ椀昀 ⠀䴀漀渀搀愀礀䘀椀爀猀琀䐀愀礀㴀㴀琀爀甀攀⤀ഀ
		WeekDayName=WeekDayName2;਍ऀ攀氀猀攀ഀ
		WeekDayName=WeekDayName1;਍ऀ昀漀爀 ⠀椀㴀　㬀椀㰀㜀㬀椀⬀⬀⤀ 笀ഀ
		vCalHeader+="<td width='"+CellWidth+"' class='calTD'><font color='white'>"+WeekDayName[i].substr(0,WeekChar)+"</font></td>\n";਍ऀ紀ഀ
	calHeight += 19;਍ऀ瘀䌀愀氀䠀攀愀搀攀爀⬀㴀∀㰀⼀琀爀㸀尀渀∀㬀ഀ
	//Calendar detail਍ऀ䌀愀氀䐀愀琀攀㴀渀攀眀 䐀愀琀攀⠀䌀愀氀⸀夀攀愀爀Ⰰ䌀愀氀⸀䴀漀渀琀栀⤀㬀ഀ
	CalDate.setDate(1);਍ऀ瘀䘀椀爀猀琀䐀愀礀㴀䌀愀氀䐀愀琀攀⸀最攀琀䐀愀礀⠀⤀㬀ഀ
	//Added version 1.7਍ऀ椀昀 ⠀䴀漀渀搀愀礀䘀椀爀猀琀䐀愀礀㴀㴀琀爀甀攀⤀ 笀ഀ
		vFirstDay-=1;਍ऀऀ椀昀 ⠀瘀䘀椀爀猀琀䐀愀礀㴀㴀ⴀ㄀⤀ഀ
			vFirstDay=6;਍ऀ紀ഀ
	//Added version 1.7਍ऀ瘀䌀愀氀䐀愀琀愀㴀∀㰀琀爀㸀∀㬀ഀ
	calHeight += 19;਍ऀ昀漀爀 ⠀椀㴀　㬀椀㰀瘀䘀椀爀猀琀䐀愀礀㬀椀⬀⬀⤀ 笀ഀ
		vCalData=vCalData+GenCell();਍ऀऀ瘀䐀愀礀䌀漀甀渀琀㴀瘀䐀愀礀䌀漀甀渀琀⬀㄀㬀ഀ
	}਍ऀ⼀⼀䄀搀搀攀搀 瘀攀爀猀椀漀渀 ㄀⸀㜀ഀ
	for (j=1;j<=Cal.GetMonDays();j++) {਍ऀऀ瘀愀爀 猀琀爀䌀攀氀氀㬀ഀ
		if((vDayCount%7==0)&&(j > 1)) {਍ऀऀऀ瘀䌀愀氀䐀愀琀愀㴀瘀䌀愀氀䐀愀琀愀⬀∀尀渀㰀琀爀㸀∀㬀ഀ
		}਍ऀऀ瘀䐀愀礀䌀漀甀渀琀㴀瘀䐀愀礀䌀漀甀渀琀⬀㄀㬀ഀ
		if ((j==dtToday.getDate())&&(Cal.Month==dtToday.getMonth())&&(Cal.Year==dtToday.getFullYear()))਍ऀऀऀ猀琀爀䌀攀氀氀㴀䜀攀渀䌀攀氀氀⠀樀Ⰰ琀爀甀攀Ⰰ吀漀搀愀礀䌀漀氀漀爀⤀㬀⼀⼀䠀椀最栀氀椀最栀琀 琀漀搀愀礀✀猀 搀愀琀攀ഀ
		else {਍ऀऀऀ椀昀 ⠀⠀樀㴀㴀猀攀氀䐀愀琀攀⸀最攀琀䐀愀琀攀⠀⤀⤀☀☀⠀䌀愀氀⸀䴀漀渀琀栀㴀㴀猀攀氀䐀愀琀攀⸀最攀琀䴀漀渀琀栀⠀⤀⤀☀☀⠀䌀愀氀⸀夀攀愀爀㴀㴀猀攀氀䐀愀琀攀⸀最攀琀䘀甀氀氀夀攀愀爀⠀⤀⤀⤀ 笀 ⼀⼀洀漀搀椀昀椀攀搀 瘀攀爀猀椀漀渀 ㄀⸀㜀ഀ
				strCell=GenCell(j,true,SelDateColor);਍ऀऀऀ紀ഀ
			else {਍ऀऀऀऀ椀昀 ⠀䴀漀渀搀愀礀䘀椀爀猀琀䐀愀礀㴀㴀琀爀甀攀⤀ 笀ഀ
					if (vDayCount%7==0)਍ऀऀऀऀऀऀ猀琀爀䌀攀氀氀㴀䜀攀渀䌀攀氀氀⠀樀Ⰰ昀愀氀猀攀Ⰰ匀甀渀搀愀礀䌀漀氀漀爀⤀㬀ഀ
					else if ((vDayCount+1)%7==0)਍ऀऀऀऀऀऀ猀琀爀䌀攀氀氀㴀䜀攀渀䌀攀氀氀⠀樀Ⰰ昀愀氀猀攀Ⰰ匀愀琀甀爀搀愀礀䌀漀氀漀爀⤀㬀ഀ
					else਍ऀऀऀऀऀऀ猀琀爀䌀攀氀氀㴀䜀攀渀䌀攀氀氀⠀樀Ⰰ渀甀氀氀Ⰰ圀攀攀欀䐀愀礀䌀漀氀漀爀⤀㬀ഀ
				}਍ऀऀऀऀ攀氀猀攀 笀ഀ
					if (vDayCount%7==0)਍ऀऀऀऀऀऀ猀琀爀䌀攀氀氀㴀䜀攀渀䌀攀氀氀⠀樀Ⰰ昀愀氀猀攀Ⰰ匀愀琀甀爀搀愀礀䌀漀氀漀爀⤀㬀ഀ
					else if ((vDayCount+6)%7==0)਍ऀऀऀऀऀऀ猀琀爀䌀攀氀氀㴀䜀攀渀䌀攀氀氀⠀樀Ⰰ昀愀氀猀攀Ⰰ匀甀渀搀愀礀䌀漀氀漀爀⤀㬀ഀ
					else਍ऀऀऀऀऀऀ猀琀爀䌀攀氀氀㴀䜀攀渀䌀攀氀氀⠀樀Ⰰ渀甀氀氀Ⰰ圀攀攀欀䐀愀礀䌀漀氀漀爀⤀㬀ഀ
				}਍ऀऀऀ紀ഀ
		}਍ऀऀ瘀䌀愀氀䐀愀琀愀㴀瘀䌀愀氀䐀愀琀愀⬀猀琀爀䌀攀氀氀㬀ഀ
਍ऀऀ椀昀⠀⠀瘀䐀愀礀䌀漀甀渀琀─㜀㴀㴀　⤀☀☀⠀樀㰀䌀愀氀⸀䜀攀琀䴀漀渀䐀愀礀猀⠀⤀⤀⤀ 笀ഀ
			vCalData=vCalData+"\n</tr>";਍ऀऀऀ挀愀氀䠀攀椀最栀琀 ⬀㴀 ㄀㤀㬀ഀ
		}਍ऀ紀ഀ
	// finish the table proper਍ऀ椀昀⠀℀⠀瘀䐀愀礀䌀漀甀渀琀─㜀⤀ 㴀㴀 　⤀ 笀ഀ
		while(!(vDayCount % 7) == 0) {਍ऀऀऀ瘀䌀愀氀䐀愀琀愀㴀瘀䌀愀氀䐀愀琀愀⬀䜀攀渀䌀攀氀氀⠀⤀㬀ഀ
			vDayCount=vDayCount+1;਍ऀऀ紀ഀ
	}਍ऀ瘀䌀愀氀䐀愀琀愀㴀瘀䌀愀氀䐀愀琀愀⬀∀尀渀㰀⼀琀爀㸀∀㬀ഀ
਍ऀ⼀⼀吀椀洀攀 瀀椀挀欀攀爀ഀ
	if (Cal.ShowTime)਍ऀ笀ഀ
		var showHour;਍ऀऀ瘀愀爀 匀栀漀眀䄀爀爀漀眀猀㴀昀愀氀猀攀㬀ഀ
		var HourCellWidth="35px"; //cell width with seconds.਍ऀऀ猀栀漀眀䠀漀甀爀㴀䌀愀氀⸀最攀琀匀栀漀眀䠀漀甀爀⠀⤀㬀ഀ
਍ऀऀ椀昀 ⠀䌀愀氀⸀匀栀漀眀匀攀挀漀渀搀猀㴀㴀昀愀氀猀攀 ☀☀ 吀椀洀攀䴀漀搀攀㴀㴀㈀㐀 ⤀ഀ
        {਍ऀऀ   匀栀漀眀䄀爀爀漀眀猀㴀琀爀甀攀㬀ഀ
		   HourCellWidth="10px";਍ऀऀ紀ഀ
਍ऀऀ瘀䌀愀氀吀椀洀攀㴀∀尀渀㰀琀爀㸀尀渀㰀琀搀 挀漀氀猀瀀愀渀㴀✀㜀✀ 愀氀椀最渀㴀✀挀攀渀琀攀爀✀㸀㰀挀攀渀琀攀爀㸀尀渀㰀琀愀戀氀攀 戀漀爀搀攀爀㴀✀　✀ 眀椀搀琀栀㴀✀㄀㤀㤀瀀砀✀ 挀攀氀氀瀀愀搀搀椀渀最㴀✀　✀ 挀攀氀氀猀瀀愀挀椀渀最㴀✀㈀✀㸀尀渀㰀琀爀㸀尀渀㰀琀搀 栀攀椀最栀琀㴀✀㔀瀀砀✀ 眀椀搀琀栀㴀✀∀⬀䠀漀甀爀䌀攀氀氀圀椀搀琀栀⬀∀✀㸀☀渀戀猀瀀㬀㰀⼀琀搀㸀尀渀∀㬀ഀ
਍ऀऀ椀昀 ⠀匀栀漀眀䄀爀爀漀眀猀 ☀☀ 唀猀攀䤀洀愀最攀䘀椀氀攀猀⤀ഀ
		{਍            瘀䌀愀氀吀椀洀攀⬀㴀∀㰀琀搀 愀氀椀最渀㴀✀挀攀渀琀攀爀✀㸀㰀琀愀戀氀攀 挀攀氀氀猀瀀愀挀椀渀最㴀✀　✀ 挀攀氀氀瀀愀搀搀椀渀最㴀✀　✀ 猀琀礀氀攀㴀✀氀椀渀攀ⴀ栀攀椀最栀琀㨀　瀀琀✀㸀㰀琀爀㸀㰀琀搀㸀㰀椀洀最 漀渀洀漀甀猀攀搀漀眀渀㴀✀樀愀瘀愀猀挀爀椀瀀琀㨀䌀愀氀⸀匀攀琀䠀漀甀爀⠀䌀愀氀⸀䠀漀甀爀猀 ⬀ ㄀⤀㬀刀攀渀搀攀爀䌀猀猀䌀愀氀⠀⤀㬀✀ 猀爀挀㴀✀ 挀猀猀⼀椀洀愀最攀猀⼀搀愀琀攀琀椀洀攀瀀椀挀欀攀爀⼀挀愀氀开瀀氀甀猀⸀最椀昀✀ 眀椀搀琀栀㴀✀㄀㌀✀ 栀攀椀最栀琀㴀✀㤀✀ 漀渀洀漀甀猀攀漀瘀攀爀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ 　⤀✀ 漀渀洀漀甀猀攀漀甀琀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ ㄀⤀✀ 猀琀礀氀攀㴀✀戀漀爀搀攀爀㨀㄀瀀砀 猀漀氀椀搀 眀栀椀琀攀✀㸀㰀⼀琀搀㸀㰀⼀琀爀㸀㰀琀爀㸀㰀琀搀㸀㰀椀洀最 漀渀洀漀甀猀攀搀漀眀渀㴀✀樀愀瘀愀猀挀爀椀瀀琀㨀䌀愀氀⸀匀攀琀䠀漀甀爀⠀䌀愀氀⸀䠀漀甀爀猀 ⴀ ㄀⤀㬀刀攀渀搀攀爀䌀猀猀䌀愀氀⠀⤀㬀✀ 猀爀挀㴀✀ 挀猀猀⼀椀洀愀最攀猀⼀搀愀琀攀琀椀洀攀瀀椀挀欀攀爀⼀挀愀氀开洀椀渀甀猀⸀最椀昀✀ 眀椀搀琀栀㴀✀㄀㌀✀ 栀攀椀最栀琀㴀✀㤀✀ 漀渀洀漀甀猀攀漀瘀攀爀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ 　⤀✀ 漀渀洀漀甀猀攀漀甀琀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ ㄀⤀✀ 猀琀礀氀攀㴀✀戀漀爀搀攀爀㨀㄀瀀砀 猀漀氀椀搀 眀栀椀琀攀✀㸀㰀⼀琀搀㸀㰀⼀琀爀㸀㰀⼀琀愀戀氀攀㸀㰀⼀琀搀㸀尀渀∀㬀ഀ
		}਍ഀ
		vCalTime+="<td align='center' width='22px'><input type='text' name='hour' maxlength=2 size=1 style=\"WIDTH: 22px\" value="+showHour+" onChange=\"javascript:Cal.SetHour(this.value)\">";਍ऀऀ瘀䌀愀氀吀椀洀攀⬀㴀∀㰀⼀琀搀㸀㰀琀搀 愀氀椀最渀㴀✀挀攀渀琀攀爀✀㸀㨀㰀⼀琀搀㸀㰀琀搀 愀氀椀最渀㴀✀挀攀渀琀攀爀✀ 眀椀搀琀栀㴀✀㈀㈀瀀砀✀㸀∀㬀ഀ
		vCalTime+="<input type='text' name='minute' maxlength=2 size=1 style=\"WIDTH: 22px\" value="+Cal.Minutes+" onChange=\"javascript:Cal.SetMinute(this.value)\">";਍ഀ
		if (Cal.ShowSeconds) {਍ऀऀऀ瘀䌀愀氀吀椀洀攀⬀㴀∀㰀⼀琀搀㸀㰀琀搀 愀氀椀最渀㴀✀挀攀渀琀攀爀✀㸀㨀㰀⼀琀搀㸀㰀琀搀 愀氀椀最渀㴀✀挀攀渀琀攀爀✀ 眀椀搀琀栀㴀✀㈀㈀瀀砀✀㸀∀㬀ഀ
			vCalTime+="<input type='text' name='second' maxlength=2 size=1 style=\"WIDTH: 22px\" value="+Cal.Seconds+" onChange=\"javascript:Cal.SetSecond(parseInt(this.value,10))\">";਍ऀऀ紀ഀ
		if (TimeMode==12) {਍ऀऀऀ瘀愀爀 匀攀氀攀挀琀䄀洀 㴀⠀䌀愀氀⸀䄀䴀漀爀倀䴀㴀㴀∀䄀䴀∀⤀㼀 ∀匀攀氀攀挀琀攀搀∀㨀∀∀㬀ഀ
			var SelectPm =(Cal.AMorPM=="PM")? "Selected":"";਍ഀ
            vCalTime+="</td><td>";਍ऀऀऀ瘀䌀愀氀吀椀洀攀⬀㴀∀㰀猀攀氀攀挀琀 渀愀洀攀㴀尀∀愀洀瀀洀尀∀ 漀渀䌀栀愀渀最攀㴀尀∀樀愀瘀愀猀挀爀椀瀀琀㨀䌀愀氀⸀匀攀琀䄀洀倀洀⠀琀栀椀猀⸀漀瀀琀椀漀渀猀嬀琀栀椀猀⸀猀攀氀攀挀琀攀搀䤀渀搀攀砀崀⸀瘀愀氀甀攀⤀㬀尀∀㸀尀渀∀㬀ഀ
			vCalTime+="<option "+SelectAm+" value=\"AM\">AM</option>";਍ऀऀऀ瘀䌀愀氀吀椀洀攀⬀㴀∀㰀漀瀀琀椀漀渀 ∀⬀匀攀氀攀挀琀倀洀⬀∀ 瘀愀氀甀攀㴀尀∀倀䴀尀∀㸀倀䴀㰀漀瀀琀椀漀渀㸀∀㬀ഀ
			vCalTime+="</select>";਍ऀऀ紀ഀ
		if (ShowArrows && UseImageFiles) {਍ऀऀ   瘀䌀愀氀吀椀洀攀⬀㴀∀㰀⼀琀搀㸀尀渀㰀琀搀 愀氀椀最渀㴀✀挀攀渀琀攀爀✀㸀㰀琀愀戀氀攀 挀攀氀氀猀瀀愀挀椀渀最㴀✀　✀ 挀攀氀氀瀀愀搀搀椀渀最㴀✀　✀ 猀琀礀氀攀㴀✀氀椀渀攀ⴀ栀攀椀最栀琀㨀　瀀琀✀㸀㰀琀爀㸀㰀琀搀㸀㰀椀洀最 漀渀洀漀甀猀攀搀漀眀渀㴀✀樀愀瘀愀猀挀爀椀瀀琀㨀䌀愀氀⸀匀攀琀䴀椀渀甀琀攀⠀瀀愀爀猀攀䤀渀琀⠀䌀愀氀⸀䴀椀渀甀琀攀猀Ⰰ㄀　⤀ ⬀ ㄀⤀㬀刀攀渀搀攀爀䌀猀猀䌀愀氀⠀⤀㬀✀ 猀爀挀㴀✀ 挀猀猀⼀椀洀愀最攀猀⼀搀愀琀攀琀椀洀攀瀀椀挀欀攀爀⼀挀愀氀开瀀氀甀猀⸀最椀昀✀ 眀椀搀琀栀㴀✀㄀㌀瀀砀✀ 栀攀椀最栀琀㴀✀㤀瀀砀✀ 漀渀洀漀甀猀攀漀瘀攀爀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ 　⤀✀ 漀渀洀漀甀猀攀漀甀琀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ ㄀⤀✀ 猀琀礀氀攀㴀✀戀漀爀搀攀爀㨀㄀瀀砀 猀漀氀椀搀 眀栀椀琀攀✀㸀㰀⼀琀搀㸀㰀⼀琀爀㸀㰀琀爀㸀㰀琀搀㸀㰀椀洀最 漀渀洀漀甀猀攀搀漀眀渀㴀✀樀愀瘀愀猀挀爀椀瀀琀㨀䌀愀氀⸀匀攀琀䴀椀渀甀琀攀⠀瀀愀爀猀攀䤀渀琀⠀䌀愀氀⸀䴀椀渀甀琀攀猀Ⰰ㄀　⤀ ⴀ ㄀⤀㬀刀攀渀搀攀爀䌀猀猀䌀愀氀⠀⤀㬀✀ 猀爀挀㴀✀ 挀猀猀⼀椀洀愀最攀猀⼀搀愀琀攀琀椀洀攀瀀椀挀欀攀爀⼀挀愀氀开洀椀渀甀猀⸀最椀昀✀ 眀椀搀琀栀㴀✀㄀㌀瀀砀✀ 栀攀椀最栀琀㴀✀㤀瀀砀✀ 漀渀洀漀甀猀攀漀瘀攀爀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ 　⤀✀ 漀渀洀漀甀猀攀漀甀琀㴀✀挀栀愀渀最攀䈀漀爀搀攀爀⠀琀栀椀猀Ⰰ ㄀⤀✀ 猀琀礀氀攀㴀✀戀漀爀搀攀爀㨀㄀瀀砀 猀漀氀椀搀 眀栀椀琀攀✀㸀㰀⼀琀搀㸀㰀⼀琀爀㸀㰀⼀琀愀戀氀攀㸀∀㬀ഀ
		}਍ऀऀ瘀䌀愀氀吀椀洀攀⬀㴀∀㰀⼀琀搀㸀尀渀㰀琀搀 愀氀椀最渀㴀✀爀椀最栀琀✀ 瘀愀氀椀最渀㴀✀戀漀琀琀漀洀✀ 眀椀搀琀栀㴀✀∀⬀䠀漀甀爀䌀攀氀氀圀椀搀琀栀⬀∀✀㸀∀㬀ഀ
਍ऀ紀ഀ
	else਍ऀऀ笀瘀䌀愀氀吀椀洀攀⬀㴀∀尀渀㰀琀爀㸀尀渀㰀琀搀 挀漀氀猀瀀愀渀㴀✀㜀✀ 愀氀椀最渀㴀✀爀椀最栀琀✀㸀∀㬀紀ഀ
	if (UseImageFiles)਍ऀ笀ഀ
        vCalTime+="<img onmousedown='javascript:closewin(\"" + Cal.Ctrl + "\");' src=' css/images/datetimepicker/cal_close.gif' width='16' height='14' onmouseover='changeBorder(this, 0)' onmouseout='changeBorder(this, 1)' style='border:1px solid white'></td>";਍    紀ഀ
    else਍    笀ഀ
        vCalTime+="<span id='close_cal' title='close' onmousedown='javascript:closewin(\"" + Cal.Ctrl + "\");' onmouseover='changeBorder(this, 0)' onmouseout='changeBorder(this, 1)' style='border:1px solid white; font-family: Arial;font-size: 10pt;'>x</span></td>";਍    紀ഀ
਍    瘀䌀愀氀吀椀洀攀⬀㴀∀㰀⼀琀爀㸀尀渀㰀⼀琀愀戀氀攀㸀㰀⼀挀攀渀琀攀爀㸀尀渀㰀⼀琀搀㸀尀渀㰀⼀琀爀㸀∀㬀ഀ
    calHeight += 31;਍ऀ瘀䌀愀氀吀椀洀攀⬀㴀∀尀渀㰀⼀琀愀戀氀攀㸀尀渀㰀⼀猀瀀愀渀㸀∀㬀ഀ
਍    ⼀⼀攀渀搀 琀椀洀攀 瀀椀挀欀攀爀ഀ
    var funcCalback="function callback(id, datum) {\n";਍    昀甀渀挀䌀愀氀戀愀挀欀⬀㴀∀ 瘀愀爀 䌀愀氀䤀搀 㴀 搀漀挀甀洀攀渀琀⸀最攀琀䔀氀攀洀攀渀琀䈀礀䤀搀⠀椀搀⤀㬀 䌀愀氀䤀搀⸀瘀愀氀甀攀㴀搀愀琀甀洀㬀尀渀∀㬀ഀ
    funcCalback+=" if (Cal.ShowTime) {\n";਍    昀甀渀挀䌀愀氀戀愀挀欀⬀㴀∀ 䌀愀氀䤀搀⸀瘀愀氀甀攀⬀㴀✀ ✀⬀䌀愀氀⸀最攀琀匀栀漀眀䠀漀甀爀⠀⤀⬀✀㨀✀⬀䌀愀氀⸀䴀椀渀甀琀攀猀㬀尀渀∀㬀ഀ
    funcCalback+=" if (Cal.ShowSeconds)\n  CalId.value+=':'+Cal.Seconds;\n";਍    昀甀渀挀䌀愀氀戀愀挀欀⬀㴀∀ 椀昀 ⠀吀椀洀攀䴀漀搀攀㴀㴀㄀㈀⤀尀渀  䌀愀氀䤀搀⸀瘀愀氀甀攀⬀㴀✀ ✀⬀䌀愀氀⸀最攀琀匀栀漀眀䄀䴀漀爀倀䴀⠀⤀㬀尀渀∀㬀ഀ
    funcCalback+="}\n CalId.focus(); \n winCal.style.visibility='hidden';\n}\n";਍ഀ
	// determines if there is enough space to open the cal above the position where it is called਍ऀ椀昀 ⠀礀瀀漀猀 㸀 挀愀氀䠀攀椀最栀琀⤀ 笀ഀ
	   ypos = ypos - calHeight;਍ऀ紀ഀ
	if (winCal == undefined) {਍ऀ   瘀愀爀 栀攀愀搀䤀䐀 㴀 搀漀挀甀洀攀渀琀⸀最攀琀䔀氀攀洀攀渀琀猀䈀礀吀愀最一愀洀攀⠀∀栀攀愀搀∀⤀嬀　崀㬀ഀ
਍ऀ   ⼀⼀ 愀搀搀 樀愀瘀愀猀挀爀椀瀀琀 昀甀渀挀琀椀漀渀 琀漀 琀栀攀 猀瀀愀渀 挀愀氀ഀ
       var e = document.createElement("script");਍       攀⸀琀礀瀀攀 㴀 ∀琀攀砀琀⼀樀愀瘀愀猀挀爀椀瀀琀∀㬀ഀ
       e.language = "javascript";਍       攀⸀琀攀砀琀 㴀 昀甀渀挀䌀愀氀戀愀挀欀㬀ഀ
       headID.appendChild(e);਍ഀ
	   // add stylesheet to the span cal਍ऀ   瘀愀爀 挀猀猀匀琀爀 㴀 ∀⸀挀愀氀吀䐀 笀昀漀渀琀ⴀ昀愀洀椀氀礀㨀 瘀攀爀搀愀渀愀㬀 昀漀渀琀ⴀ猀椀稀攀㨀 ㄀㈀瀀砀㬀 琀攀砀琀ⴀ愀氀椀最渀㨀 挀攀渀琀攀爀㬀紀尀渀∀㬀ഀ
	   cssStr+= ".calR {font-family: verdana; font-size: 12px; text-align: center; font-weight: bold; color: red;}"਍ऀ   瘀愀爀 猀琀礀氀攀 㴀 搀漀挀甀洀攀渀琀⸀挀爀攀愀琀攀䔀氀攀洀攀渀琀⠀∀猀琀礀氀攀∀⤀㬀ഀ
       style.type = "text/css";਍       猀琀礀氀攀⸀爀攀氀 㴀 ∀猀琀礀氀攀猀栀攀攀琀∀㬀ഀ
       if(style.styleSheet) { // IE਍          猀琀礀氀攀⸀猀琀礀氀攀匀栀攀攀琀⸀挀猀猀吀攀砀琀 㴀 挀猀猀匀琀爀㬀ഀ
        }਍ऀ   攀氀猀攀 笀 ⼀⼀ 眀㌀挀ഀ
          var cssText = document.createTextNode(cssStr);਍          猀琀礀氀攀⸀愀瀀瀀攀渀搀䌀栀椀氀搀⠀挀猀猀吀攀砀琀⤀㬀ഀ
		}਍       栀攀愀搀䤀䐀⸀愀瀀瀀攀渀搀䌀栀椀氀搀⠀猀琀礀氀攀⤀㬀ഀ
਍ऀ   ⼀⼀ 挀爀攀愀琀攀 琀栀攀 漀甀琀攀爀 昀爀愀洀攀 琀栀愀琀 愀氀氀漀眀猀 琀栀攀 挀愀氀⸀ 琀漀 戀攀 洀漀瘀攀搀ഀ
	   var span = document.createElement("span");਍       猀瀀愀渀⸀椀搀 㴀 挀愀氀匀瀀愀渀䤀䐀㬀ഀ
਍ऀ   眀椀琀栀 ⠀猀瀀愀渀⸀猀琀礀氀攀⤀ 笀瀀漀猀椀琀椀漀渀 㴀 ∀愀戀猀漀氀甀琀攀∀㬀 氀攀昀琀 㴀 ⠀砀瀀漀猀⬀㠀⤀⬀✀瀀砀✀㬀 琀漀瀀 㴀 ⠀礀瀀漀猀ⴀ㠀⤀⬀✀瀀砀✀㬀 眀椀搀琀栀 㴀 䌀愀氀圀椀搀琀栀㬀 戀漀爀搀攀爀 㴀 ∀猀漀氀椀搀 ㈀瀀琀 ∀ ⬀ 匀瀀愀渀䈀漀爀搀攀爀䌀漀氀漀爀㬀 瀀愀搀搀椀渀最 㴀 ∀　瀀琀∀㬀 挀甀爀猀漀爀 㴀 ∀洀漀瘀攀∀㬀 戀愀挀欀最爀漀甀渀搀䌀漀氀漀爀 㴀 匀瀀愀渀䈀最䌀漀氀漀爀㬀 稀䤀渀搀攀砀 㴀 ㄀　　㬀紀ഀ
਍       搀漀挀甀洀攀渀琀⸀戀漀搀礀⸀愀瀀瀀攀渀搀䌀栀椀氀搀⠀猀瀀愀渀⤀ഀ
       winCal=document.getElementById(calSpanID);਍    紀ഀ
    else {਍ऀ  眀椀渀䌀愀氀⸀猀琀礀氀攀⸀瘀椀猀椀戀椀氀椀琀礀 㴀 ∀瘀椀猀椀戀氀攀∀㬀ഀ
	  winCal.style.Height = calHeight;਍ഀ
	  // set the position for a new calendar only਍ऀ  椀昀⠀戀一攀眀䌀愀氀㴀㴀琀爀甀攀⤀笀ഀ
	     winCal.style.left = (xpos+8)+'px';਍ऀ     眀椀渀䌀愀氀⸀猀琀礀氀攀⸀琀漀瀀 㴀 ⠀礀瀀漀猀ⴀ㠀⤀⬀✀瀀砀✀㬀ഀ
	   }਍ऀ紀ഀ
	winCal.innerHTML=winCalData + vCalHeader + vCalData + vCalTime;਍ऀ爀攀琀甀爀渀 琀爀甀攀㬀ഀ
}਍ഀ
function GenCell(pValue,pHighLight,pColor) { //Generate table cell with value਍ऀ瘀愀爀 倀嘀愀氀甀攀㬀ഀ
	var PCellStr;਍ऀ瘀愀爀 瘀䌀漀氀漀爀㬀ഀ
	var vHLstr1;//HighLight string਍ऀ瘀愀爀 瘀䠀氀猀琀爀㈀㬀ഀ
	var vTimeStr;਍ഀ
	if (pValue==null)਍ऀऀ倀嘀愀氀甀攀㴀∀∀㬀ഀ
	else਍ऀऀ倀嘀愀氀甀攀㴀瀀嘀愀氀甀攀㬀ഀ
਍ऀ椀昀 ⠀瀀䌀漀氀漀爀℀㴀渀甀氀氀⤀ഀ
		vColor="bgcolor=\""+pColor+"\"";਍ऀ攀氀猀攀ഀ
		vColor=CalBgColor;਍ऀ    椀昀 ⠀⠀瀀䠀椀最栀䰀椀最栀琀℀㴀渀甀氀氀⤀☀☀⠀瀀䠀椀最栀䰀椀最栀琀⤀⤀ 笀ഀ
		   vHLstr1="<font class='calR'>";vHLstr2="</font>";਍ऀऀ 紀ഀ
	    else {਍ऀऀ   瘀䠀䰀猀琀爀㄀㴀∀∀㬀瘀䠀䰀猀琀爀㈀㴀∀∀㬀ഀ
		 }਍ऀ椀昀 ⠀䌀愀氀⸀匀栀漀眀吀椀洀攀⤀ 笀ഀ
		vTimeStr=' '+Cal.Hours+':'+Cal.Minutes;਍ऀऀ椀昀 ⠀䌀愀氀⸀匀栀漀眀匀攀挀漀渀搀猀⤀ഀ
			vTimeStr+=':'+Cal.Seconds;਍ऀऀ椀昀 ⠀吀椀洀攀䴀漀搀攀㴀㴀㄀㈀⤀ഀ
			vTimeStr+=' '+Cal.AMorPM;਍ऀ紀ഀ
	else਍ऀऀ瘀吀椀洀攀匀琀爀㴀∀∀㬀ഀ
	if (PValue!="")਍ऀऀ倀䌀攀氀氀匀琀爀㴀∀尀渀㰀琀搀 ∀⬀瘀䌀漀氀漀爀⬀∀ 挀氀愀猀猀㴀✀挀愀氀吀䐀✀ 猀琀礀氀攀㴀✀挀甀爀猀漀爀㨀 瀀漀椀渀琀攀爀㬀✀ 漀渀䌀氀椀挀欀㴀尀∀樀愀瘀愀猀挀爀椀瀀琀㨀挀愀氀氀戀愀挀欀⠀✀∀⬀䌀愀氀⸀䌀琀爀氀⬀∀✀Ⰰ✀∀⬀䌀愀氀⸀䘀漀爀洀愀琀䐀愀琀攀⠀倀嘀愀氀甀攀⤀⬀∀✀⤀㬀尀∀㸀∀⬀瘀䠀䰀猀琀爀㄀⬀倀嘀愀氀甀攀⬀瘀䠀䰀猀琀爀㈀⬀∀㰀⼀琀搀㸀∀㬀ഀ
	else਍ऀऀ倀䌀攀氀氀匀琀爀㴀∀尀渀㰀琀搀 ∀⬀瘀䌀漀氀漀爀⬀∀ 挀氀愀猀猀㴀✀挀愀氀吀䐀✀㸀☀渀戀猀瀀㬀㰀⼀琀搀㸀∀㬀ഀ
	return PCellStr;਍紀ഀ
਍昀甀渀挀琀椀漀渀 䌀愀氀攀渀搀愀爀⠀瀀䐀愀琀攀Ⰰ瀀䌀琀爀氀⤀ 笀ഀ
  var mins = 0;਍ऀ⼀⼀倀爀漀瀀攀爀琀椀攀猀ഀ
	this.Date  = pDate.getDate();//selected date਍ऀ琀栀椀猀⸀䴀漀渀琀栀 㴀 瀀䐀愀琀攀⸀最攀琀䴀漀渀琀栀⠀⤀㬀⼀⼀猀攀氀攀挀琀攀搀 洀漀渀琀栀 渀甀洀戀攀爀ഀ
	this.Year  = pDate.getFullYear();//selected year in 4 digits਍ഀ
  mins = pDate.getMinutes() + 5;਍ऀ椀昀⠀洀椀渀猀 㸀 㔀㤀⤀ഀ
	{਍  ऀ琀栀椀猀⸀䠀漀甀爀猀 㴀 瀀䐀愀琀攀⸀最攀琀䠀漀甀爀猀⠀⤀⬀㄀㬀ഀ
  	mins       = 0;਍  紀ഀ
  else਍  ऀ琀栀椀猀⸀䠀漀甀爀猀 㴀 瀀䐀愀琀攀⸀最攀琀䠀漀甀爀猀⠀⤀㬀ഀ
਍ऀ椀昀 ⠀洀椀渀猀㰀㄀　⤀ഀ
		this.Minutes= "0" + mins;਍ऀ攀氀猀攀ഀ
		this.Minutes = mins;਍ഀ
	if (pDate.getSeconds()<10)਍ऀऀ琀栀椀猀⸀匀攀挀漀渀搀猀㴀∀　∀⬀瀀䐀愀琀攀⸀最攀琀匀攀挀漀渀搀猀⠀⤀㬀ഀ
	else਍ऀऀ琀栀椀猀⸀匀攀挀漀渀搀猀㴀瀀䐀愀琀攀⸀最攀琀匀攀挀漀渀搀猀⠀⤀㬀ഀ
਍ऀ琀栀椀猀⸀䴀礀圀椀渀搀漀眀㴀眀椀渀䌀愀氀㬀ഀ
	this.Ctrl=pCtrl;਍ऀ琀栀椀猀⸀䘀漀爀洀愀琀㴀∀搀搀䴀䴀礀礀礀礀∀㬀ഀ
	this.Separator=DateSeparator;਍ऀ琀栀椀猀⸀匀栀漀眀吀椀洀攀㴀昀愀氀猀攀㬀ഀ
	this.Scroller="DROPDOWN";਍ऀ椀昀 ⠀瀀䐀愀琀攀⸀最攀琀䠀漀甀爀猀⠀⤀㰀㄀㈀⤀ഀ
		this.AMorPM="AM";਍ऀ攀氀猀攀ഀ
		this.AMorPM="PM";਍ऀ琀栀椀猀⸀匀栀漀眀匀攀挀漀渀搀猀㴀琀爀甀攀㬀ഀ
}਍ഀ
function GetMonthIndex(shortMonthName) {਍ऀ昀漀爀 ⠀椀㴀　㬀椀㰀㄀㈀㬀椀⬀⬀⤀ 笀ഀ
		if (MonthName[i].substring(0,3).toUpperCase()==shortMonthName.toUpperCase())਍ऀऀ   笀爀攀琀甀爀渀 椀㬀紀ഀ
	}਍紀ഀ
Calendar.prototype.GetMonthIndex=GetMonthIndex;਍ഀ
function IncYear() {਍ऀ䌀愀氀⸀夀攀愀爀⬀⬀㬀紀ഀ
	Calendar.prototype.IncYear=IncYear;਍ഀ
function DecYear() {਍ऀ䌀愀氀⸀夀攀愀爀ⴀⴀ㬀紀ഀ
	Calendar.prototype.DecYear=DecYear;਍ഀ
function IncMonth() {਍ऀ䌀愀氀⸀䴀漀渀琀栀⬀⬀㬀ഀ
	if (Cal.Month>=12) {਍ऀऀ䌀愀氀⸀䴀漀渀琀栀㴀　㬀ഀ
		Cal.IncYear();਍ऀ紀ഀ
}਍䌀愀氀攀渀搀愀爀⸀瀀爀漀琀漀琀礀瀀攀⸀䤀渀挀䴀漀渀琀栀㴀䤀渀挀䴀漀渀琀栀㬀ഀ
਍昀甀渀挀琀椀漀渀 䐀攀挀䴀漀渀琀栀⠀⤀ 笀ഀ
	Cal.Month--;਍ऀ椀昀 ⠀䌀愀氀⸀䴀漀渀琀栀㰀　⤀ 笀ഀ
		Cal.Month=11;਍ऀऀ䌀愀氀⸀䐀攀挀夀攀愀爀⠀⤀㬀ഀ
	}਍紀ഀ
Calendar.prototype.DecMonth=DecMonth;਍ഀ
function SwitchMth(intMth) {਍ऀ䌀愀氀⸀䴀漀渀琀栀㴀椀渀琀䴀琀栀㬀紀ഀ
	Calendar.prototype.SwitchMth=SwitchMth;਍ഀ
function SwitchYear(intYear) {਍ऀ䌀愀氀⸀夀攀愀爀㴀椀渀琀夀攀愀爀㬀紀ഀ
	Calendar.prototype.SwitchYear=SwitchYear;਍ഀ
function SetHour(intHour) {਍ऀ瘀愀爀 䴀愀砀䠀漀甀爀㬀ഀ
	var MinHour;਍ऀ椀昀 ⠀吀椀洀攀䴀漀搀攀㴀㴀㈀㐀⤀ 笀ഀ
		MaxHour=23;MinHour=0}਍ऀ攀氀猀攀 椀昀 ⠀吀椀洀攀䴀漀搀攀㴀㴀㄀㈀⤀ 笀ഀ
		MaxHour=12;MinHour=1}਍ऀ攀氀猀攀ഀ
		alert("TimeMode can only be 12 or 24");਍ऀ瘀愀爀 䠀漀甀爀䔀砀瀀㴀渀攀眀 刀攀最䔀砀瀀⠀∀帀尀尀搀尀尀搀∀⤀㬀ഀ
	var SingleDigit=new RegExp("\\d");਍ഀ
	if ((HourExp.test(intHour) || SingleDigit.test(intHour)) && (parseInt(intHour,10)>MaxHour)) {਍ऀ    椀渀琀䠀漀甀爀 㴀 䴀椀渀䠀漀甀爀㬀ഀ
	}਍ऀ攀氀猀攀 椀昀 ⠀⠀䠀漀甀爀䔀砀瀀⸀琀攀猀琀⠀椀渀琀䠀漀甀爀⤀ 簀簀 匀椀渀最氀攀䐀椀最椀琀⸀琀攀猀琀⠀椀渀琀䠀漀甀爀⤀⤀ ☀☀ ⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀䠀漀甀爀Ⰰ㄀　⤀㰀䴀椀渀䠀漀甀爀⤀⤀ 笀ഀ
		intHour = MaxHour;਍ऀ紀ഀ
਍ऀ椀昀 ⠀匀椀渀最氀攀䐀椀最椀琀⸀琀攀猀琀⠀椀渀琀䠀漀甀爀⤀⤀ 笀ഀ
		intHour="0"+intHour+"";਍ऀ紀ഀ
਍ऀ椀昀 ⠀䠀漀甀爀䔀砀瀀⸀琀攀猀琀⠀椀渀琀䠀漀甀爀⤀ ☀☀ ⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀䠀漀甀爀Ⰰ㄀　⤀㰀㴀䴀愀砀䠀漀甀爀⤀ ☀☀ ⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀䠀漀甀爀Ⰰ㄀　⤀㸀㴀䴀椀渀䠀漀甀爀⤀⤀ 笀ഀ
		if ((TimeMode==12) && (Cal.AMorPM=="PM")) {਍ऀऀऀ椀昀 ⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀䠀漀甀爀Ⰰ㄀　⤀㴀㴀㄀㈀⤀ഀ
				Cal.Hours=12;਍ऀऀऀ攀氀猀攀ഀ
				Cal.Hours=parseInt(intHour,10)+12;਍ऀऀ紀ഀ
		else if ((TimeMode==12) && (Cal.AMorPM=="AM")) {਍ऀऀऀ椀昀 ⠀椀渀琀䠀漀甀爀㴀㴀㄀㈀⤀ഀ
				intHour-=12;਍ऀऀऀ䌀愀氀⸀䠀漀甀爀猀㴀瀀愀爀猀攀䤀渀琀⠀椀渀琀䠀漀甀爀Ⰰ㄀　⤀㬀ഀ
		}਍ऀऀ攀氀猀攀 椀昀 ⠀吀椀洀攀䴀漀搀攀㴀㴀㈀㐀⤀ഀ
			Cal.Hours=parseInt(intHour,10);਍ऀ紀ഀ
}਍䌀愀氀攀渀搀愀爀⸀瀀爀漀琀漀琀礀瀀攀⸀匀攀琀䠀漀甀爀㴀匀攀琀䠀漀甀爀㬀ഀ
਍昀甀渀挀琀椀漀渀 匀攀琀䴀椀渀甀琀攀⠀椀渀琀䴀椀渀⤀ 笀ഀ
	var MaxMin=59;਍ऀ瘀愀爀 䴀椀渀䴀椀渀㴀　㬀ഀ
	var SingleDigit=new RegExp("\\d");਍ऀ瘀愀爀 匀椀渀最氀攀䐀椀最椀琀㈀㴀渀攀眀 刀攀最䔀砀瀀⠀∀帀尀尀搀笀㄀紀␀∀⤀㬀ഀ
	var MinExp=new RegExp("^\\d{2}$");਍ഀ
	if ((MinExp.test(intMin) || SingleDigit.test(intMin)) && (parseInt(intMin,10)>MaxMin)) {਍ऀऀ椀渀琀䴀椀渀 㴀 䴀椀渀䴀椀渀㬀ഀ
	}਍ऀ攀氀猀攀 椀昀 ⠀⠀䴀椀渀䔀砀瀀⸀琀攀猀琀⠀椀渀琀䴀椀渀⤀ 簀簀 匀椀渀最氀攀䐀椀最椀琀⸀琀攀猀琀⠀椀渀琀䴀椀渀⤀⤀ ☀☀ ⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀䴀椀渀Ⰰ㄀　⤀㰀䴀椀渀䴀椀渀⤀⤀ऀ笀ഀ
		intMin = MaxMin;਍ऀ紀ഀ
	var strMin = intMin + "";਍ऀ椀昀 ⠀匀椀渀最氀攀䐀椀最椀琀㈀⸀琀攀猀琀⠀椀渀琀䴀椀渀⤀⤀ 笀ഀ
		strMin="0"+strMin+"";਍ऀ紀ഀ
	if ((MinExp.test(intMin) || SingleDigit.test(intMin))਍ऀ ☀☀ ⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀䴀椀渀Ⰰ㄀　⤀㰀㴀㔀㤀⤀ ☀☀ ⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀䴀椀渀Ⰰ㄀　⤀㸀㴀　⤀⤀ 笀ഀ
	 	Cal.Minutes=strMin;਍ऀ紀ഀ
}਍䌀愀氀攀渀搀愀爀⸀瀀爀漀琀漀琀礀瀀攀⸀匀攀琀䴀椀渀甀琀攀㴀匀攀琀䴀椀渀甀琀攀㬀ഀ
਍昀甀渀挀琀椀漀渀 匀攀琀匀攀挀漀渀搀⠀椀渀琀匀攀挀⤀ 笀ഀ
	var MaxSec=59;਍ऀ瘀愀爀 䴀椀渀匀攀挀㴀　㬀ഀ
	var SingleDigit=new RegExp("\\d");਍ऀ瘀愀爀 匀椀渀最氀攀䐀椀最椀琀㈀㴀渀攀眀 刀攀最䔀砀瀀⠀∀帀尀尀搀笀㄀紀␀∀⤀㬀ഀ
	var SecExp=new RegExp("^\\d{2}$");਍ഀ
	if ((SecExp.test(intSec) || SingleDigit.test(intSec)) && (parseInt(intSec,10)>MaxSec)) {਍ऀऀ椀渀琀匀攀挀 㴀 䴀椀渀匀攀挀㬀ഀ
	}਍ऀ攀氀猀攀 椀昀 ⠀⠀匀攀挀䔀砀瀀⸀琀攀猀琀⠀椀渀琀匀攀挀⤀ 簀簀 匀椀渀最氀攀䐀椀最椀琀⸀琀攀猀琀⠀椀渀琀匀攀挀⤀⤀ ☀☀ ⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀匀攀挀Ⰰ㄀　⤀㰀䴀椀渀匀攀挀⤀⤀ऀ笀ഀ
		intSec = MaxSec;਍ऀ紀ഀ
	var strSec = intSec + "";਍ऀ椀昀 ⠀匀椀渀最氀攀䐀椀最椀琀㈀⸀琀攀猀琀⠀椀渀琀匀攀挀⤀⤀ 笀ഀ
		strSec="0"+strSec+"";਍ऀ紀ഀ
	if ((SecExp.test(intSec) || SingleDigit.test(intSec))਍ऀ ☀☀ ⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀匀攀挀Ⰰ㄀　⤀㰀㴀㔀㤀⤀ ☀☀ ⠀瀀愀爀猀攀䤀渀琀⠀椀渀琀匀攀挀Ⰰ㄀　⤀㸀㴀　⤀⤀ 笀ഀ
	 	Cal.Seconds=strSec;਍ऀ紀ഀ
}਍䌀愀氀攀渀搀愀爀⸀瀀爀漀琀漀琀礀瀀攀⸀匀攀琀匀攀挀漀渀搀㴀匀攀琀匀攀挀漀渀搀㬀ഀ
਍昀甀渀挀琀椀漀渀 匀攀琀䄀洀倀洀⠀瀀瘀愀氀甀攀⤀ 笀ഀ
	this.AMorPM=pvalue;਍ऀ椀昀 ⠀瀀瘀愀氀甀攀㴀㴀∀倀䴀∀⤀ 笀ഀ
		this.Hours=(parseInt(this.Hours,10))+12;਍ऀऀ椀昀 ⠀琀栀椀猀⸀䠀漀甀爀猀㴀㴀㈀㐀⤀ഀ
			this.Hours=12;਍ऀ紀ഀ
	else if (pvalue=="AM")਍ऀऀ琀栀椀猀⸀䠀漀甀爀猀ⴀ㴀㄀㈀㬀ഀ
}਍䌀愀氀攀渀搀愀爀⸀瀀爀漀琀漀琀礀瀀攀⸀匀攀琀䄀洀倀洀㴀匀攀琀䄀洀倀洀㬀ഀ
਍昀甀渀挀琀椀漀渀 最攀琀匀栀漀眀䠀漀甀爀⠀⤀ 笀ഀ
	var finalHour;਍    椀昀 ⠀吀椀洀攀䴀漀搀攀㴀㴀㄀㈀⤀ 笀ഀ
    	if (parseInt(this.Hours,10)==0) {਍ऀऀऀ琀栀椀猀⸀䄀䴀漀爀倀䴀㴀∀䄀䴀∀㬀ഀ
			finalHour=parseInt(this.Hours,10)+12;਍ऀऀ紀ഀ
		else if (parseInt(this.Hours,10)==12) {਍ऀऀऀ琀栀椀猀⸀䄀䴀漀爀倀䴀㴀∀倀䴀∀㬀ഀ
			finalHour=12;਍ऀऀ紀ഀ
		else if (this.Hours>12)	{਍ऀऀऀ琀栀椀猀⸀䄀䴀漀爀倀䴀㴀∀倀䴀∀㬀ഀ
			if ((this.Hours-12)<10)਍ऀऀऀऀ昀椀渀愀氀䠀漀甀爀㴀∀　∀⬀⠀⠀瀀愀爀猀攀䤀渀琀⠀琀栀椀猀⸀䠀漀甀爀猀Ⰰ㄀　⤀⤀ⴀ㄀㈀⤀㬀ഀ
			else਍ऀऀऀऀ昀椀渀愀氀䠀漀甀爀㴀瀀愀爀猀攀䤀渀琀⠀琀栀椀猀⸀䠀漀甀爀猀Ⰰ㄀　⤀ⴀ㄀㈀㬀ഀ
		}਍ऀऀ攀氀猀攀 笀ഀ
			this.AMorPM="AM";਍ऀऀऀ椀昀 ⠀琀栀椀猀⸀䠀漀甀爀猀㰀㄀　⤀ഀ
				finalHour="0"+parseInt(this.Hours,10);਍ऀऀऀ攀氀猀攀ഀ
				finalHour=this.Hours;਍ऀऀ紀ഀ
	}਍ऀ攀氀猀攀 椀昀 ⠀吀椀洀攀䴀漀搀攀㴀㴀㈀㐀⤀ 笀ഀ
		if (this.Hours<10)਍ऀऀऀ昀椀渀愀氀䠀漀甀爀㴀∀　∀⬀瀀愀爀猀攀䤀渀琀⠀琀栀椀猀⸀䠀漀甀爀猀Ⰰ㄀　⤀㬀ഀ
		else਍ऀऀऀ昀椀渀愀氀䠀漀甀爀㴀琀栀椀猀⸀䠀漀甀爀猀㬀ഀ
	}਍ऀ爀攀琀甀爀渀 昀椀渀愀氀䠀漀甀爀㬀ഀ
}਍䌀愀氀攀渀搀愀爀⸀瀀爀漀琀漀琀礀瀀攀⸀最攀琀匀栀漀眀䠀漀甀爀㴀最攀琀匀栀漀眀䠀漀甀爀㬀ഀ
਍昀甀渀挀琀椀漀渀 最攀琀匀栀漀眀䄀䴀漀爀倀䴀⠀⤀ 笀ഀ
	return this.AMorPM;਍紀ഀ
Calendar.prototype.getShowAMorPM=getShowAMorPM;਍ഀ
function GetMonthName(IsLong) {਍ऀ瘀愀爀 䴀漀渀琀栀㴀䴀漀渀琀栀一愀洀攀嬀琀栀椀猀⸀䴀漀渀琀栀崀㬀ഀ
	if (IsLong)਍ऀऀ爀攀琀甀爀渀 䴀漀渀琀栀㬀ഀ
	else਍ऀऀ爀攀琀甀爀渀 䴀漀渀琀栀⸀猀甀戀猀琀爀⠀　Ⰰ㌀⤀㬀ഀ
}਍䌀愀氀攀渀搀愀爀⸀瀀爀漀琀漀琀礀瀀攀⸀䜀攀琀䴀漀渀琀栀一愀洀攀㴀䜀攀琀䴀漀渀琀栀一愀洀攀㬀ഀ
਍昀甀渀挀琀椀漀渀 䜀攀琀䴀漀渀䐀愀礀猀⠀⤀ 笀 ⼀⼀䜀攀琀 渀甀洀戀攀爀 漀昀 搀愀礀猀 椀渀 愀 洀漀渀琀栀ഀ
	var DaysInMonth=[31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];਍ऀ椀昀 ⠀琀栀椀猀⸀䤀猀䰀攀愀瀀夀攀愀爀⠀⤀⤀ 笀ഀ
		DaysInMonth[1]=29;਍ऀ紀ഀ
	return DaysInMonth[this.Month];਍紀ഀ
Calendar.prototype.GetMonDays=GetMonDays;਍ഀ
function IsLeapYear() {਍ऀ椀昀 ⠀⠀琀栀椀猀⸀夀攀愀爀─㐀⤀㴀㴀　⤀ 笀ഀ
		if ((this.Year%100==0) && (this.Year%400)!=0) {਍ऀऀऀ爀攀琀甀爀渀 昀愀氀猀攀㬀ഀ
		}਍ऀऀ攀氀猀攀 笀ഀ
			return true;਍ऀऀ紀ഀ
	}਍ऀ攀氀猀攀 笀ഀ
		return false;਍ऀ紀ഀ
}਍䌀愀氀攀渀搀愀爀⸀瀀爀漀琀漀琀礀瀀攀⸀䤀猀䰀攀愀瀀夀攀愀爀㴀䤀猀䰀攀愀瀀夀攀愀爀㬀ഀ
਍昀甀渀挀琀椀漀渀 䘀漀爀洀愀琀䐀愀琀攀⠀瀀䐀愀琀攀⤀ഀ
{਍ऀ瘀愀爀 䴀漀渀琀栀䐀椀最椀琀㴀琀栀椀猀⸀䴀漀渀琀栀⬀㄀㬀ഀ
	if (PrecedeZero==true) {਍ऀऀ椀昀 ⠀瀀䐀愀琀攀㰀㄀　⤀ഀ
			pDate="0"+pDate;਍ऀऀ椀昀 ⠀䴀漀渀琀栀䐀椀最椀琀㰀㄀　⤀ഀ
			MonthDigit="0"+MonthDigit;਍ऀ紀ഀ
਍ऀ椀昀 ⠀琀栀椀猀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀䐀䐀䴀䴀夀夀夀夀∀⤀ഀ
		return (pDate+DateSeparator+MonthDigit+DateSeparator+this.Year);਍ऀ攀氀猀攀 椀昀 ⠀琀栀椀猀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀䐀䐀䴀䴀䴀夀夀夀夀∀⤀ഀ
		return (pDate+DateSeparator+this.GetMonthName(false)+DateSeparator+this.Year);਍ऀ攀氀猀攀 椀昀 ⠀琀栀椀猀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀䴀䴀䐀䐀夀夀夀夀∀⤀ഀ
		return (MonthDigit+DateSeparator+pDate+DateSeparator+this.Year);਍ऀ攀氀猀攀 椀昀 ⠀琀栀椀猀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀䴀䴀䴀䐀䐀夀夀夀夀∀⤀ഀ
		return (this.GetMonthName(false)+DateSeparator+pDate+DateSeparator+this.Year);਍ऀ攀氀猀攀 椀昀 ⠀琀栀椀猀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀夀夀夀夀䴀䴀䐀䐀∀⤀ഀ
		return (this.Year+DateSeparator+MonthDigit+DateSeparator+pDate);਍ऀ攀氀猀攀 椀昀 ⠀琀栀椀猀⸀䘀漀爀洀愀琀⸀琀漀唀瀀瀀攀爀䌀愀猀攀⠀⤀㴀㴀∀夀夀夀夀䴀䴀䴀䐀䐀∀⤀ഀ
		return (this.Year+DateSeparator+this.GetMonthName(false)+DateSeparator+pDate);਍ऀ攀氀猀攀ഀ
		return (pDate+DateSeparator+(this.Month+1)+DateSeparator+this.Year);਍紀ഀ
Calendar.prototype.FormatDate=FormatDate;਍ഀ
function closewin(id) {਍   瘀愀爀 䌀愀氀䤀搀 㴀 搀漀挀甀洀攀渀琀⸀最攀琀䔀氀攀洀攀渀琀䈀礀䤀搀⠀椀搀⤀㬀ഀ
   CalId.focus();਍   眀椀渀䌀愀氀⸀猀琀礀氀攀⸀瘀椀猀椀戀椀氀椀琀礀㴀✀栀椀搀搀攀渀✀㬀ഀ
 }਍ഀ
function changeBorder(element, col) {਍  椀昀 ⠀挀漀氀 㴀㴀 　⤀ 笀ഀ
    element.style.borderColor = "black";਍    攀氀攀洀攀渀琀⸀猀琀礀氀攀⸀挀甀爀猀漀爀 㴀 ∀瀀漀椀渀琀攀爀∀㬀ഀ
  }਍  攀氀猀攀 笀ഀ
    element.style.borderColor = "white";਍    攀氀攀洀攀渀琀⸀猀琀礀氀攀⸀挀甀爀猀漀爀 㴀 ∀愀甀琀漀∀㬀ഀ
  }਍紀ഀ
਍昀甀渀挀琀椀漀渀 瀀椀挀欀䤀琀⠀攀瘀琀⤀ 笀ഀ
   // accesses the element that generates the event and retrieves its ID਍   椀昀 ⠀眀椀渀搀漀眀⸀䔀瘀攀渀琀⤀ 笀 ⼀⼀ 眀㌀挀ഀ
	  var objectID = evt.target.id;਍      椀昀 ⠀漀戀樀攀挀琀䤀䐀⸀椀渀搀攀砀伀昀⠀挀愀氀匀瀀愀渀䤀䐀⤀ ℀㴀 ⴀ㄀⤀笀ഀ
         var dom = document.getElementById(objectID);਍         挀渀䰀攀昀琀㴀攀瘀琀⸀瀀愀最攀堀㬀ഀ
         cnTop=evt.pageY;਍ഀ
         if (dom.offsetLeft){਍           挀渀䰀攀昀琀 㴀 ⠀挀渀䰀攀昀琀 ⴀ 搀漀洀⸀漀昀昀猀攀琀䰀攀昀琀⤀㬀 挀渀吀漀瀀 㴀 ⠀挀渀吀漀瀀 ⴀ 搀漀洀⸀漀昀昀猀攀琀吀漀瀀⤀㬀ഀ
          }਍       紀ഀ
	  // get mouse position on click਍ऀ  砀瀀漀猀 㴀 ⠀攀瘀琀⸀瀀愀最攀堀⤀㬀ഀ
	  ypos = (evt.pageY);਍ऀ紀ഀ
   else { // IE਍ऀ  瘀愀爀 漀戀樀攀挀琀䤀䐀 㴀 攀瘀攀渀琀⸀猀爀挀䔀氀攀洀攀渀琀⸀椀搀㬀ഀ
      cnLeft=event.offsetX;਍      挀渀吀漀瀀㴀⠀攀瘀攀渀琀⸀漀昀昀猀攀琀夀⤀㬀ഀ
	  // get mouse position on click਍ऀ  瘀愀爀 搀攀 㴀 搀漀挀甀洀攀渀琀⸀搀漀挀甀洀攀渀琀䔀氀攀洀攀渀琀㬀ഀ
      var b = document.body;਍      砀瀀漀猀 㴀 攀瘀攀渀琀⸀挀氀椀攀渀琀堀 ⬀ ⠀搀攀⸀猀挀爀漀氀氀䰀攀昀琀 簀簀 戀⸀猀挀爀漀氀氀䰀攀昀琀⤀ ⴀ ⠀搀攀⸀挀氀椀攀渀琀䰀攀昀琀 簀簀 　⤀㬀ഀ
      ypos = event.clientY + (de.scrollTop || b.scrollTop) - (de.clientTop || 0);਍    紀ഀ
   // verify if this is a valid element to pick਍   椀昀 ⠀漀戀樀攀挀琀䤀䐀⸀椀渀搀攀砀伀昀⠀挀愀氀匀瀀愀渀䤀䐀⤀ ℀㴀 ⴀ㄀⤀笀ഀ
      domStyle = document.getElementById(objectID).style;਍    紀ഀ
   if (domStyle) {਍      搀漀洀匀琀礀氀攀⸀稀䤀渀搀攀砀 㴀 ㄀　　㬀ഀ
      return false;਍    紀ഀ
   else {਍      搀漀洀匀琀礀氀攀 㴀 渀甀氀氀㬀ഀ
      return;਍    紀ഀ
 }਍ഀ
function dragIt(evt) {਍   椀昀 ⠀搀漀洀匀琀礀氀攀⤀ 笀ഀ
      if (window.Event) {਍         搀漀洀匀琀礀氀攀⸀氀攀昀琀 㴀 ⠀攀瘀琀⸀挀氀椀攀渀琀堀ⴀ挀渀䰀攀昀琀 ⬀ 搀漀挀甀洀攀渀琀⸀戀漀搀礀⸀猀挀爀漀氀氀䰀攀昀琀⤀⬀✀瀀砀✀㬀ഀ
         domStyle.top = (evt.clientY-cnTop + document.body.scrollTop)+'px';਍       紀ഀ
      else {਍         搀漀洀匀琀礀氀攀⸀氀攀昀琀 㴀 ⠀攀瘀攀渀琀⸀挀氀椀攀渀琀堀ⴀ挀渀䰀攀昀琀 ⬀ 搀漀挀甀洀攀渀琀⸀戀漀搀礀⸀猀挀爀漀氀氀䰀攀昀琀⤀⬀✀瀀砀✀㬀ഀ
         domStyle.top = (event.clientY-cnTop + document.body.scrollTop)+'px';਍       紀ഀ
    }਍ 紀ഀ
਍昀甀渀挀琀椀漀渀 搀爀漀瀀䤀琀⠀⤀ 笀ഀ
   if (domStyle) {਍      搀漀洀匀琀礀氀攀⸀稀䤀渀搀攀砀 㴀 　㬀ഀ
      domStyle = null;਍    紀ഀ
 }