function openNewWindow(URLtoOpen, windowName, windowFeatures) { 
	newWindow=window.open(URLtoOpen, windowName, windowFeatures); 
}

function newWindow(mypage,myname,w,h,scroll){
  LeftPosition = (screen.width)? (screen.width - w) / 2 : 100;
  TopPosition = (screen.height)? (screen.height - h) / 2 : 100;
  settings = 'width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=yes,menubar=no,toolbar=no,resizable=no';
  win=window.open(mypage,myname,settings);
}

function newDialogWindow(mypage,myname,w,h,scroll){
  LeftPosition = (screen.width)? (screen.width - w) / 2 : 100;
  TopPosition = (screen.height)? (screen.height - h) / 2 : 100;
  settings = 'dialogWidth:'+w+',dialogHeight:'+h+',dialogTop:'+TopPosition+',dialogLeft:'+LeftPosition+',scroll:'+scroll+',status:yes,resizable:no';
  win=window.showModalDialog(mypage,"",settings);
}

function ValidEmail(Email) {
	var result = true ;
	var Regex = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/ ;
	return Regex.test(Email) ;
}

function CheckUserID(StrUserID) {
	var RegEx = /^([_0-9a-z])([_a-z0-9])*$/gi
	if (StrUserID.search(RegEx)==-1) {
		//alert('Wrong User ID Format for '+StrUserID);
		return false ;
	}
	return true ;
}

function checkCustLogIn() {
	if (frmCustLogIn.BACC_NO.value.length == 0) {
		alert('Please Fill In Your Account Number!');
		return false;
	} else if (!CheckUserID(frmCustLogIn.BACC_NO.value)) {
		alert('Please Fill In Proper Account Number!\nFormat : [0-9 or a-z or _] followed by combination of [a-z or 0-9 or _]');
		return false;
	} else if (frmCustLogIn.password.value.length == 0) {
		alert('Please Fill In Your Password!');
		return false;
	} else {
		return true;
	}
}

//For Date
function CheckDatebyMonthYear(FormName,DForm,MForm,YForm) {
	var SD = eval("document."+FormName+"."+DForm);
	var SM = eval("document."+FormName+"."+MForm);
	var SY = eval("document."+FormName+"."+YForm);

	var TDD = SD.options[SD.options.selectedIndex].value ;
	var TDM = SM.options[SM.options.selectedIndex].value ;
	var TDY = SY.options[SY.options.selectedIndex].value ;

	if (TDD == 0 || TDM == 0 || TDY == 0)
	{
		return;
	}

	var LongDate = (TDM==4 || TDM==6 || TDM==9 || TDM==11)?30:31;
	if (TDM == 2)
	{
		LongDate = (TDY%4==0)?29:28;
	}
	while (SD.options.value)
	{
	   SD.options[0] = null ;
	}


	SD.options[0] = new Option(SD,SD,true,true,true) ;
	SD.options[0].text = "Day" ;
	SD.options[0].value = 0 ;
	var j = 1 ;
	for (var i=1;i<=LongDate ;i++ )
	{
		var ValI = i ;
		ValI = (ValI<10)?"0"+i:i;
		SD.options[j] = new Option(SD,SD,true,true,true) ;
	    SD.options[j].text = i ;
	    SD.options[j].value = ValI ;
		j++;
	}
	if (TDD <= LongDate)
	{
		SD.options[TDD].selected = true ;
	} else {
		SD.options[j - 1].selected = true ;
	}
}

function GoCustomDateNew(FormName,DForm,MForm,YForm,DD,MM,YY) {
	var SD = eval("document."+FormName+"."+DForm);
	var SM = eval("document."+FormName+"."+MForm);
	var SY = eval("document."+FormName+"."+YForm);
	if (DD == 0 || MM == 0 || YY == 0)
	{
		var a = new Date ;
		TDD = a.getDate() ;
		TMM = a.getMonth() + 1 ;
		TYY = a.getFullYear() ;
	} else {
		TDD = DD ;
		TMM = MM ;
		TYY = YY ;
	}
	var MonthName = new Array () ;
	MonthName[1] = "Jan" ;
	MonthName[2] = "Feb" ;
	MonthName[3] = "Mar" ;
	MonthName[4] = "Apr" ;
	MonthName[5] = "May" ;
	MonthName[6] = "Jun" ;
	MonthName[7] = "Jul" ;
	MonthName[8] = "Aug" ;
	MonthName[9] = "Sep" ;
	MonthName[10] = "Oct" ;
	MonthName[11] = "Nov" ;
	MonthName[12] = "Dec" ;
	var Sel = 0 ;

	SY.options[0] = new Option(SY,SY,true,true,true) ;
	SY.options[0].text = "Year" ;
	SY.options[0].value =  0 ;

	var j = 1 ;
	for (var i=(TYY-10); i<=(TYY+10); i++ )
	{
		SY.options[j] = new Option(SY,SY,true,true,true) ;
	    SY.options[j].text = i ;
	    SY.options[j].value =  i ;
		if (i == TYY)
		{
			Sel = j ;
		}
		j++;
	}
	// IF NO YEAR ARE SELECTED
	if (YY == 0)
	{
		SY.options[0].selected = true ;
	}
	else
	{
		SY.options[Sel].selected = true ;
	}


	SM.options[0] = new Option(SM,SM,true,true,true) ;
	SM.options[0].text = "Month" ;
	SM.options[0].value = 0 ;

	j = 1 ;
	for (var i=1;i<=12 ;i++ )
	{
		var ValI = i ;
		ValI = (ValI<10)?"0"+i:i;
		SM.options[j] = new Option(SM,SM,true,true,true) ;
	    SM.options[j].text = MonthName[i] ;
	    SM.options[j].value = ValI ;
		if (i == TMM) 
		{
			Sel = j ;
		}
		j++;
	}
	// IF NO MONTH ARE SELECTED
	if (MM == 0)
	{
		SM.options[0].selected = true ;
	}
	else
	{
		SM.options[Sel].selected = true ;
	}



	var LongDate = (TMM==4 || TMM==6 || TMM==9 || TMM==11)?30:31;
	if (TMM == 2)
	{
		LongDate = (TYY%4==0)?29:28;
	}

	SD.options[0] = new Option(SD,SD,true,true,true) ;
	SD.options[0].text = "Day" ;
	SD.options[0].value = 0 ;	

	j = 1 ;
	for (var i=1;i<=LongDate ;i++ )
	{
		var ValI = i ;
		ValI = (ValI<10)?"0"+i:i;
		SD.options[j] = new Option(SD,SD,true,true,true) ;
	    SD.options[j].text = i ;
	    SD.options[j].value = ValI ;
		if (i == TDD) 
		{
			Sel = j ;
		}
		j++;
	}
	// IF NO DAY ARE SELECTED
	if (DD == 0)
	{
		SD.options[0].selected = true ;
	}
	else
	{
		SD.options[Sel].selected = true ;
	}
}



function CheckDatebyMonthYearEnd(FormName,DForm,MForm,YForm) {
	var SD = eval("document."+FormName+"."+DForm);
	var SM = eval("document."+FormName+"."+MForm);
	var SY = eval("document."+FormName+"."+YForm);

	var TDD = SD.options[SD.options.selectedIndex].value ;
	var TDM = SM.options[SM.options.selectedIndex].value ;
	var TDY = SY.options[SY.options.selectedIndex].value ;

	var LongDate = (TDM==1 || TDM==3 || TDM==5 || TDM==7 || TDM==8 || TDM==10 || TDM==12)?31:30;
	if (TDM == 2)
	{
		LongDate = (TDY%4==0)?29:28;
	}
	while (SD.options.value)
	{
	   SD.options[0] = null ;
	}
	var j = 0 ;
	for (var i=1;i<=LongDate ;i++ )
	{
		var ValI = i ;
		ValI = (ValI<10)?"0"+i:i;
		SD.options[j] = new Option(SD,SD,true,true,true) ;
	    SD.options[j].text = i ;
	    SD.options[j].value = ValI ;
		j++;
	}
	if (TDD <= LongDate)
	{
		SD.options[TDD-1].selected = true ;
	} else {
		SD.options[j-1].selected = true ;
	}
}

function GoCustomDateNewEnd(FormName,DForm,MForm,YForm,DD,MM,YY) {
	var SD = eval("document."+FormName+"."+DForm);
	var SM = eval("document."+FormName+"."+MForm);
	var SY = eval("document."+FormName+"."+YForm);
	if (DD == 0 || MM == 0 || YY == 0)
	{
		var a = new Date ;
		TDD = a.getDate() ;
		TMM = a.getMonth() + 1 ;
		TYY = a.getFullYear() ;
	} else {
		TDD = DD ;
		TMM = MM ;
		TYY = YY ;
	}
	var MonthName = new Array () ;
	MonthName[1] = "Jan" ;
	MonthName[2] = "Feb" ;
	MonthName[3] = "Mar" ;
	MonthName[4] = "Apr" ;
	MonthName[5] = "May" ;
	MonthName[6] = "Jun" ;
	MonthName[7] = "Jul" ;
	MonthName[8] = "Aug" ;
	MonthName[9] = "Sep" ;
	MonthName[10] = "Oct" ;
	MonthName[11] = "Nov" ;
	MonthName[12] = "Dec" ;
	var Sel = 0 ;
	var j = 0 ;
	for (var i=(TYY-10); i<=(TYY+10); i++ )
	{
		SY.options[j] = new Option(SY,SY,true,true,true) ;
	    SY.options[j].text = i ;
	    SY.options[j].value =  i ;
		if (i == TYY)
		{
			Sel = j ;
		}
		j++;
	}
	SY.options[Sel].selected = true ;

	j = 0 ;
	for (var i=1;i<=12 ;i++ )
	{
		var ValI = i ;
		ValI = (ValI<10)?"0"+i:i;
		SM.options[j] = new Option(SM,SM,true,true,true) ;
	    SM.options[j].text = MonthName[i] ;
	    SM.options[j].value = ValI ;
		if (i == TMM) 
		{
			Sel = j ;
		}
		j++;
	}
	SM.options[Sel].selected = true ;

	var LongDate = (TMM==1 || TMM==3 || TMM==5 || TMM==7 || TMM==8 || TMM==10 || TMM==12)?31:30;
	if (TMM == 2)
	{
		LongDate = (TYY%4==0)?29:28;
	}
	j = 0 ;
	for (var i=1;i<=LongDate ;i++ )
	{
		var ValI = i ;
		ValI = (ValI<10)?"0"+i:i;
		SD.options[j] = new Option(SD,SD,true,true,true) ;
	    SD.options[j].text = i ;
	    SD.options[j].value = ValI ;
		if (i == TDD) 
		{
			Sel = j ;
		}
		j++;
	}
	SD.options[Sel].selected = true ;
}



function ChangeQuick(NowDay, NowMonth, NowYear) {
	var Form1 = eval("document.frmDate")

	var month, year;
	

	//NO CHOOSE
	if (Form1.QuickChoice.value == 0)
	{					
		GoCustomDateNew('frmDate', 'startDay', 'startMonth', 'startYear', 0, 0, 0);
		GoCustomDateNewEnd('frmDate','endDay','endMonth','endYear', NowDay, NowMonth, NowYear);
	}
	//LAST X MONTHS
	else
	{
		month = NowMonth - parseInt(Form1.QuickChoice.value);
		year = NowYear;
		if (month < 1)
		{
			month = month + 12;
			year = year - 1;
		}

	
		
		Form1.startMonth.options[month].selected = true;
		Form1.startYear.value = year;
		
		CheckDatebyMonthYear('frmDate','startDay','startMonth','startYear');
		GoCustomDateNewEnd('frmDate','endDay','endMonth','endYear',  NowDay, NowMonth, NowYear);

		if (NowDay >= Form1.startDay.options.length)
		{
			Form1.startDay.options[Form1.startDay.options.length - 1].selected = true;
		}
		else
		{
			Form1.startDay.options[NowDay].selected = true;
		}		
		
		//WE RECHECK AGAIN
		CheckDatebyMonthYear('frmDate','startDay','startMonth','startYear');
		

	}
	Form1.submit();
}

function cNum(e) {
	var strCheck = '0123456789';
	var whichCode = (window.Event) ? e.which : e.keyCode;
	key = String.fromCharCode(whichCode);  // Get key value from key code
	if (strCheck.indexOf(key) == -1) return false;  // Not a valid key
}

function verifyDelete(username,url) {
	var confirmDelete = confirm('Are you sure want to delete '+username+' ?');
	if (confirmDelete == true) {
		location.href=url;
	} else {
		return false;
	}
}

function checkValidDate(Day,Month,Year) {
	var MaxDay = "";
	var Status = "";

	if (Month == 2) {
		var X = Year/4;
		var Y = Math.floor(X);
		if (X > Y) {
			MaxDay = 28;												
		} else {
			MaxDay = 29;
		}
	} else if (Month == 1 || Month == 3 || Month == 5 || Month == 7 || Month == 8 || Month == 10 || Month == 12) {
		MaxDay = 31;
	} else {
		MaxDay = 30;
	}

	if (Day > MaxDay) {
		Status = 0;
	} else {
		Status = 1;
	}

	return Status;
}