function invalidcc(x) 
	{
		var ccnumber=x.replace(/\D/g, '');
  		var cclength=ccnumber.length;
  		var parity=cclength % 2;
  		var sum=0;
  		for (i=0; i < cclength; i++) {
    			var ccdigit=ccnumber.charAt(i);
    			if (i % 2 == parity) ccdigit=ccdigit * 2;
    			if (ccdigit > 9) ccdigit=ccdigit - 9;
    			sum = sum + parseInt(ccdigit);
  		}
  		var valid=(sum % 10 == 0);
  		if (valid) 
		{
			return false;
		}
  		return true;
	}
function disableEnterKey(e)
	{
     var key;

     if(window.event)
          key = window.event.keyCode;     //IE
     else
          key = e.which;     //firefox

     if(key == 13)
          return false;
     else
          return true;
	}
function display_refreshcalendar(form,eda)
{
	if(eda)
	{
		var date=document.getElementById('1983').value;
	}else
	{
		var date=document.getElementById('1984').value;
	}
	//get individual date items
	dates=date.split("-");
	year=dates[0];
	month=dates[1];
	day=dates[2];
	if(month.length==1)
	{
		month="0"+month;
	}
	if(day.length==1)
	{
		day="0"+day;
	}
	if(eda)
	{
		form.elements['EDA_MONTHS'].value=month;
		form.elements['EDA_DAYS'].value=day; 
	    form.elements['EDA_YEARS'].value=year;
	    display_refreshnights(form);
	}else
	{
		form.elements['FORM_LEAVINGMONTHS'].value=month;
		form.elements['FORM_LEAVINGDAYS'].value=day; 
	    form.elements['FORM_LEAVINGYEARS'].value=year;
	    display_refreshedl(form);
	}
}
function display_refresh(form)
	{
		var the_hostel=form.elements['HOSTEL'].value;
		var the_nights=form.elements['FORM_NIGHTS'].value;
		var the_from=form.elements['EDA_YEARS'].value+'-'+form.elements['EDA_MONTHS'].value+'-'+form.elements['EDA_DAYS'].value;
		var the_to=form.elements['EDL_YEARS'].value+'-'+form.elements['EDL_MONTHS'].value+'-'+form.elements['EDL_DAYS'].value;
		//var the_leavingdate=form.elements['FORM_LEAVINGYEARS'].value+'-'+form.elements['FORM_LEAVINGMONTHS'].value+'-'+form.elements['FORM_LEAVINGDAYS'].value;
		var the_href=window.location.href.split("?");
		//var url=the_href[0]+"?from="+the_from+"&to="+the_to+"&nights="+the_nights+"&hostel="+the_hostel+"&leavingdate="+the_leavingdate;
		var url=the_href[0]+"?from="+the_from+"&to="+the_to+"&nights="+the_nights+"&hostel="+the_hostel;
		var str="";	
			
		for(i=0; i<form.elements.length; i++){
			switch(form.elements[i].name){
				case "FORM_PRICE":
					url=url+"&price="+form.elements[i].value;
					break;
				case "FORM_GROUP":
					url=url+"&group="+form.elements[i].value;
					break;
				case "FORM_BED":
					url=url+"&bed="+form.elements[i].value;
					break;
				case "FORM_TARGET":
					url=url+"&target="+form.elements[i].value;
					break;
				case "FORM_ACTION":
					url=url+"&action="+form.elements[i].value;
					break;
				case "FORM_BOOKINGS":
					break;
				case "FORM_NIGHTS":
					break;
				case "ADULT":
					break;
				case "CHILD":
					break;
				case "COST":
					break;
				case "CURRENCY":
					break;
				case "DISCOUNT":
					url=url+"&discount="+form.elements[i].value;
					break;
				case "EDA_DAYS":
					break;
				case "EDA_MONTHS":
					break;
				case "EDA_YEARS":
					break;
				case "EDL_DAYS":
					break;
				case "EDL_MONTHS":
					break;
				case "EDL_YEARS":
					break;
				case "GO":
					form.elements[i].disabled=true;
					break;
				case "HOSTEL":
					break;
				case "BOOKED":
					break;
				case "FORM_LEAVINGDAYS":
					break;
				case "FORM_LEAVINGMONTHS":
					break;
				case "FORM_LEAVINGYEARS":
					break;
				case "FORM_LEAVING_DATE":
					break;
				default:
					str=form.elements[i].name;
					if(str.substr(0,1)!="*")
					{
						url=url+"&"+form.elements[i].name+"="+form.elements[i].value;
					}
					break;
			}
		}
		window.location.replace(url);
	}
function display_refreshedl(form)
{
	//get all the variables to use in the url
	var the_hostel=form.elements['HOSTEL'].value;
	var the_from=form.elements['EDA_YEARS'].value+'-'+form.elements['EDA_MONTHS'].value+'-'+form.elements['EDA_DAYS'].value;
	var the_to=form.elements['EDL_YEARS'].value+'-'+form.elements['EDL_MONTHS'].value+'-'+form.elements['EDL_DAYS'].value;
	var the_leavingdate=form.elements['FORM_LEAVINGYEARS'].value+'-'+form.elements['FORM_LEAVINGMONTHS'].value+'-'+form.elements['FORM_LEAVINGDAYS'].value;
	var the_href=window.location.href.split("?");
	var url=the_href[0]+"?from="+the_from+"&to="+the_to+"&hostel="+the_hostel+"&leavingdate="+the_leavingdate;
	var str="";
	
	for(i=0; i<form.elements.length; i++)
	{
		switch(form.elements[i].name)
		{
			case "FORM_PRICE":
				url=url+"&price="+form.elements[i].value;
				break;
			case "FORM_GROUP":
				url=url+"&group="+form.elements[i].value;
				break;
			case "FORM_BED":
				url=url+"&bed="+form.elements[i].value;
				break;
			case "FORM_BOOKINGS":
				break;
			case "FORM_NIGHTS":
				break;
			case "ADULT":
				break;
			case "CHILD":
				break;
			case "COST":
				break;
			case "CURRENCY":
				break;
			case "DISCOUNT":
				url=url+"&discount="+form.elements[i].value;
				break;
			case "EDA_DAYS":
				break;
			case "EDA_MONTHS":
				break;
			case "EDA_YEARS":
				break;
			case "EDL_DAYS":
				break;
			case "EDL_MONTHS":
				break;
			case "EDL_YEARS":
				break;
			case "GO":
				form.elements[i].disabled=true;
				break;
			case "HOSTEL":
				break;
			case "BOOKED":
				break;
			case "FORM_LEAVINGDAYS":
				break;
			case "FORM_LEAVINGMONTHS":
				break;
			case "FORM_LEAVINGYEARS":
				break;
			case "FORM_LEAVING_DATE":
				break;
			default:
				str=form.elements[i].name;
				if(str.substr(0,1)!="*")
				{
					url=url+"&"+form.elements[i].name+"="+form.elements[i].value;
				}
				break;
		}
	}
	
	//calculate the nights - need to convert the dates to javascript date in order to calculate the nights
	var eda = new Date();
	eda.setFullYear(form.elements['EDA_YEARS'].value,form.elements['EDA_MONTHS'].value-1,form.elements['EDA_DAYS'].value);
	var edl = new Date();
	edl.setFullYear(form.elements['FORM_LEAVINGYEARS'].value,form.elements['FORM_LEAVINGMONTHS'].value-1,form.elements['FORM_LEAVINGDAYS'].value);
	var one_day=1000*60*60*24;
	var the_nights = Math.ceil((edl.getTime() - eda.getTime())/one_day);
	url=url+"&nights="+the_nights;
	window.location.replace(url);
}
function display_refreshnights(form)
{
	//get all the variables to use in the url
	var the_hostel=form.elements['HOSTEL'].value;
	var the_from=form.elements['EDA_YEARS'].value+'-'+form.elements['EDA_MONTHS'].value+'-'+form.elements['EDA_DAYS'].value;
	var the_to=form.elements['EDL_YEARS'].value+'-'+form.elements['EDL_MONTHS'].value+'-'+form.elements['EDL_DAYS'].value;
	var the_href=window.location.href.split("?");
	var url=the_href[0]+"?from="+the_from+"&to="+the_to+"&hostel="+the_hostel;
	var str="";
	
	for(i=0; i<form.elements.length; i++)
	{
		switch(form.elements[i].name)
		{
			case "FORM_PRICE":
				url=url+"&price="+form.elements[i].value;
				break;
			case "FORM_GROUP":
				url=url+"&group="+form.elements[i].value;
				break;
			case "FORM_BED":
				url=url+"&bed="+form.elements[i].value;
				break;
			case "FORM_BOOKINGS":
				break;
			case "FORM_TARGET":
				url=url+"&target="+form.elements[i].value;
				break;
			case "FORM_ACTION":
					url=url+"&action="+form.elements[i].value;
					break;
			case "FORM_NIGHTS":
				break;
			case "ADULT":
				break;
			case "CHILD":
				break;
			case "COST":
				break;
			case "CURRENCY":
				break;
			case "DISCOUNT":
				url=url+"&discount="+form.elements[i].value;
				break;
			case "EDA_DAYS":
				break;
			case "EDA_MONTHS":
				break;
			case "EDA_YEARS":
				break;
			case "EDL_DAYS":
				break;
			case "EDL_MONTHS":
				break;
			case "EDL_YEARS":
				break;
			case "GO":
				form.elements[i].disabled=true;
				break;
			case "HOSTEL":
				break;
			case "BOOKED":
				break;
			case "FORM_LEAVINGDAYS":
				break;
			case "FORM_LEAVINGMONTHS":
				break;
			case "FORM_LEAVINGYEARS":
				break;
			case "FORM_LEAVING_DATE":
				break;
			default:
				str=form.elements[i].name;
				if(str.substr(0,1)!="*")
				{
					url=url+"&"+form.elements[i].name+"="+form.elements[i].value;
				}
				break;
		}
	}
	//calculate the leaving date from the nights and the eda - need to convert the dates to javascript date in order to calculate the nights
	var eda = new Date();
	eda.setFullYear(form.elements['EDA_YEARS'].value,form.elements['EDA_MONTHS'].value-1,form.elements['EDA_DAYS'].value);
	//*1 in order to make it into an integer for the calculation
	var the_nights=form.elements['FORM_NIGHTS'].value*1;
	eda.setDate(eda.getDate() + the_nights);
	var newyear = eda.getFullYear();
	var newmonth = eda.getMonth();
	//need to add 1 to the month as the months start at 0 (january = 0)
	newmonth=newmonth+1;
	var newday = eda.getDate();
	//need to add 0 at the beginning of the day and month if less than 10 (need this to reformat the date)
	if(newday<10)
	{
		newday="0"+newday;
	}
	if(newmonth<10)
	{
		newmonth="0"+newmonth;
	}
	var the_leavingdate = newyear +"-"+newmonth+"-"+newday;
	url=url+"&nights="+the_nights+"&leavingdate="+the_leavingdate;
	window.location.replace(url);
}
function display_validate(form)
	{	
		var adult=0;
		var child=0;	
		var totalguests=0;
		for(i=0; i<form.elements.length; i++)
		{
			switch(form.elements[i].name)
			{
				case "BOOKED":
					if (form.elements['BOOKED'].value==0)
					{
						alert("Please select ACCOMMODATION required.");
						return false;
					}
					break;
				case "ADULT":
					adult = form.elements['ADULT'].value;
					break;
				case "CHILD":
					child = form.elements['CHILD'].value;
					break;
				default:
					break;
			}
		}
		totalguests = parseInt(adult)+parseInt(child);
		if(totalguests<form.elements['BOOKED'].value)
		{	
			alert("Please select at least 1 guest per unit.");
			return false;
		}
		form.elements['GO'].disabled=true;
		form.submit()			
		return true;
	}
function form_validatesales(form)
	{		
		form.elements['GO'].disabled=true;
		form.submit()			
		return true;
	}
function form_validatecard(form)
{		
		var the_hostel=form.elements['HOSTEL'].value;
		var the_from=form.elements['EDA'].value;
		var the_expiry="";
		var the_number="";


		for(i=0; i<form.elements.length; i++){
		switch(form.elements[i].name){
		case "CCNUMBER_1":
				the_number=form.elements['CCNUMBER_1'].value+form.elements['CCNUMBER_2'].value+form.elements['CCNUMBER_3'].value+form.elements['CCNUMBER_4'].value;
				if ((the_number=="") && (the_hostel!="possumlodge"))
				{
					alert("Please provide credit card NUMBER.");
					form.elements[i].focus();
					return false;		
				}
				break;
			case "CCPROVIDER":
				the_number=form.elements['CCNUMBER_1'].value+form.elements['CCNUMBER_2'].value+form.elements['CCNUMBER_3'].value+form.elements['CCNUMBER_4'].value;
				if(the_number!="")
				{
					if (form.elements['CCPROVIDER'].value=="Type")
					{
						alert("Please provide credit card TYPE.");
						form.elements[i].focus();
						return false;
					}
				}
				break;
			case "CCVALID_MONTHS":
				the_number=form.elements['CCNUMBER_1'].value+form.elements['CCNUMBER_2'].value+form.elements['CCNUMBER_3'].value+form.elements['CCNUMBER_4'].value;
				if(the_number!="")
				{
					if (form.elements['CCVALID_MONTHS'].value=="Month")
					{
						alert("Please provide credit card DATE.");
						form.elements[i].focus();
						return false;
					}
				}
				break;
			case "CCVALID_YEARS":
				the_number=form.elements['CCNUMBER_1'].value+form.elements['CCNUMBER_2'].value+form.elements['CCNUMBER_3'].value+form.elements['CCNUMBER_4'].value;
				if(the_number!="")
				{
					if (form.elements['CCVALID_YEARS'].value=="Year")
					{
						alert("Please provide credit card DATE.");
						form.elements[i].focus();
						return false;
					}
				}
				break;
			case "CCNAME":
				the_number=form.elements['CCNUMBER_1'].value+form.elements['CCNUMBER_2'].value+form.elements['CCNUMBER_3'].value+form.elements['CCNUMBER_4'].value;
				if(the_number!="")
				{
					if (form.elements['CCNAME'].value=="")
					{
						alert("Please provide credit card holder NAME.");
						form.elements[i].focus();
						return false;
					}
				}
				break;
			case "CCAUTHORISE":
				the_number=form.elements['CCNUMBER_1'].value+form.elements['CCNUMBER_2'].value+form.elements['CCNUMBER_3'].value+form.elements['CCNUMBER_4'].value;
				if(the_number!="")
				{
					if (form.elements['CCAUTHORISE'].value=="")
					{
						alert("Please provide credit card CVC number.");
						form.elements[i].focus();
						return false;
					}
				}
				break;
			}
		}	
		if(the_number!="")
		{
			if (invalidcc(the_number))
			{
				alert("Invalid credit card NUMBER. Please check.");
				return false;
			}
		}
		if(the_number!="")
		{
			the_expiry='20'+form.elements['CCVALID_YEARS'].value+'-'+form.elements['CCVALID_MONTHS'].value+'-31';
			if(the_expiry<the_from)
			{
				alert("Credit card EXPIRES before arrival date. Please check.");
				return false;
			}	
		}

		form.elements['GO'].disabled=true;
		form.submit()			
		return true;
}

function form_openwindow(url,width,height)
	{
		var NewWindow;
		var the_width=width;
		var the_height=height;
		var the_left = Math.round((screen.availWidth - 10 - the_width) / 2);
		var the_top = Math.round((screen.availHeight - 10 - the_height) / 2);
		NewWindow=window.open(url,'','toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=' + the_width + ',height=' + the_height + ',top=' + the_top + ',left=' + the_left);
	}
function form_submitform(the_label)
	{
		document.write("<input type=button name='GO' class='form' value='"+the_label+"' onClick='form_validate(this.form)'>");
	}
function form_submitsubmit(the_label,the_address)
	{
		document.write("<input type=button name='GO' class='form' value='"+the_label+"' onClick=window.location.href='http://"+the_address+"'>");
	}
function form_submitcard(the_label)
	{
		document.write("<input type=button name='GO' class='form' value='"+the_label+"' onClick='form_validatecard(this.form)'>");
	}
function form_submitsales(the_label)
	{
		document.write("<input type=button name='GO' class='form' value='"+the_label+"' onClick='form_validatesales(this.form)'>");
	}
function form_submitdisplay(the_label)
{
	document.write("<input type=button name='GO' class='form' value='"+the_label+"' onClick='display_validate(this.form)'>");
}
function form_validate(form)
	{	
		var the_from=form.elements['EDA'].value;
		var the_expiry="";
		var the_number="";
		var the_hostel=form.elements['HOSTEL'].value;

		for(i=0; i<form.elements.length; i++){
			switch(form.elements[i].name){
			case "EMAIL":
				//validate email address
				if (form.elements['EMAIL'].value == "")
				{
					alert("Please provide EMAIL address.");
					form.elements[i].focus();
					return false;
				}else
				{
					if(echeck(form.elements['EMAIL'].value)==false)
					{
						alert("Invalid E-mail ID");
						form.elements[i].focus();
						return false;
					}
				}
				break;
			case "EMAIL2":
				if (form.elements['EMAIL'].value!=form.elements['EMAIL2'].value)
				{
					alert("Please check EMAIL address.");
					form.elements[i].focus();
					return false;
				}
				break;
			case "FORENAME":
				if (form.elements['FORENAME'].value=="")
				{	
					alert("Please provide FORENAME.");
					form.elements[i].focus();
					return false;	
				}
				break;
			case "SURNAME":
				if (form.elements['SURNAME'].value=="")
				{
					alert("Please provide SURNAME.");
					form.elements[i].focus();
					return false;	
				}
				break;
			case "PHONE":
				if(the_hostel!="greenkiwi")
				{
					if ((form.elements['PHONE'].value=="") && ((the_hostel=="rentgps")||(the_hostel=="erualodge")))
					{
						alert("Please provide PHONE number.");
						form.elements[i].focus();
						return false;	
					}else
					{	
						if (checkPhone(form.elements['PHONE'].value)==false)
						{
							alert("Please Enter a Valid Phone Number");
							form.elements[i].focus();
							return false;					
						}
					}
				}
				break;
			case "ETA":
				if (form.elements['ETA'].value=="")
				{
					alert("Please complete ARRIVAL time.");
					form.elements[i].focus();
					return false;	
				}
				break;
			case "ETA_HOURS":
				if (form.elements['ETA_HOURS'].value=="Hrs")
				{
					alert("Please complete ARRIVAL time.");
					form.elements[i].focus();
					return false;	
				}
				break;
			case "ETA_MINUTES":
				if (form.elements['ETA_MINUTES'].value=="Mins")
				{
					alert("Please complete ARRIVAL time.");
					form.elements[i].focus();
					return false;	
				}
				break;
			case "ETA_AMPM":
				if (form.elements['ETA_AMPM'].value=="am/pm")
				{
					alert("Please complete ARRIVAL time.");
					form.elements[i].focus();
					return false;	
				}
				break;
			case "NATIONALITY":
				if (form.elements['NATIONALITY'].value=="")
				{
					alert("Please complete NATIONALITY.");
					form.elements[i].focus();
					return false;	
				}
				break;
			case "REFERRAL":
				if (form.elements['REFERRAL'].value=="")
				{
					alert("Please complete REFERRAL.");
					form.elements[i].focus();
					return false;	
				}
				break;
			case "MEAL":
				if (form.elements['MEAL'].value=="")
				{
					alert("Please complete MEAL.");
					form.elements[i].focus();
					return false;	
				}
				break;
			case "TRAVELBY":
				if (form.elements['TRAVELBY'].value=="")
				{
					alert("Please complete TRAVEL.");
					form.elements[i].focus();
					return false;	
				}
				break;
			case "TERMS":
				if (form.elements[i].checked)
				{
				} else
				{
					alert("Please agree to booking TERM and CONDITIONS.");
					form.elements[i].focus();
					return false;	
				}
				break;
			}
		}	
		form.elements['GO'].disabled=true;
		form.submit()			
		return true;
	}
function updatesales(form,tickets)
{
	var quantity = 0;
	var newvalue = 0;
	var value = 0;
	var sales="";
	var salesA="";
	var salesP="";
	var salestotal = 0;
	var bookingcost=form.elements['COSTBOOKING'].value;
	for(i=0; i<form.elements.length; i++)
	{
		if((form.elements[i].name.substr(0, 2)=="!s") && (form.elements[i].name.indexOf(":")==-1) && (form.elements[i].name!="!sCOSTSALES"))
		{		
			//get name of sales
			sales=form.elements[i].name;
			salesA=form.elements[i].name+":A";
			salesP=form.elements[i].name+":P";
			quantity = form.elements[sales].value;
			value = form.elements[salesA].value;
			total=quantity*(value*1);
			form.elements[salesP].value=total.toFixed(2);
			//add to extras total
			salestotal+=total;
		}
	}
	//update the cost value
	if(tickets=="t")
	{
		tickets = form.elements['!tCOSTTICKETS'].value;
		form.elements['!sCOSTSALES'].value=(salestotal*1).toFixed(2);
		form.elements['COST'].value=(bookingcost*1)+(salestotal*1)+(tickets*1);
	}else
	{
		form.elements['!sCOSTSALES'].value=(salestotal*1).toFixed(2);
		form.elements['COST'].value=(bookingcost*1)+(salestotal*1);
	}
}
function updatetickets(form,sales)
{
	var ticket="";
	var ticket1="";
	var ticket2="";
	var ticketProvider="";
	var ticketDescription="";
	var ticketAdult="";
	var ticketChild="";
	var ticketTotal="";
	var ticketAdult$="";
	var ticketChild$="";
	var record="";
	var adult=0;
	var child=0;
	var ticketstotal=0;
	var bookingcost=form.elements['COSTBOOKING'].value;
	for(i=0; i<form.elements.length; i++)
	{
		if((form.elements[i].name.substr(0, 7) == "TICKET_") && (form.elements[i].name.indexOf(":")==-1)&& (form.elements[i].name!="TICKET_COSTTICKETS"))
		{	
			//get ticket identifier
			ticket=form.elements[i].name.substr(7);
			//get associated names
			ticketProvider=form.elements[i].name+":PROVIDER";
			ticketDescription=form.elements[i].name+":DESCRIPTION";
			ticketDate=form.elements[i].name+":DATE";
			ticketAdult=form.elements[i].name+":ADULT";
			ticketChild=form.elements[i].name+":CHILD";
			ticketTotal=form.elements[i].name+":TOTAL";
			//cost of tickets (Adult/Child)
			ticket1=form.elements[i].name+":1";
			ticket2=form.elements[i].name+":2";
			//clear existing ticket value
			form.elements[ticket].value="";
			//set disabledness
			if(form.elements[ticketDate].value=="")
			{
				form.elements[ticketAdult].disabled="disabled";
				form.elements[ticketAdult].value="0";
				form.elements[ticketChild].disabled="disabled";
				form.elements[ticketChild].value="0";
			}else
			{
				form.elements[ticketAdult].disabled="";
				form.elements[ticketChild].disabled="";
			}
			//calculate cost of adults
			adult=form.elements[ticketAdult].value*form.elements[ticket1].value;
			//calculate cost of child
			child=form.elements[ticketChild].value*form.elements[ticket2].value;
			//total cost
			total=adult+child;
			form.elements[ticketTotal].value=total.toFixed(2);
			//add to extras total
			ticketstotal+=total;
			//create ticket record
			if((form.elements[ticketAdult].value>0)||(form.elements[ticketChild].value>0))
			{
				record="";
				record=record + "PROVIDER=" + form.elements[ticketProvider].value + ";";
				record=record + "DESCRIPTION=" + form.elements[ticketDescription].value + ";";
				record=record + "DATE=" + form.elements[ticketDate].value + ";";
				record=record + "ADULT=" + form.elements[ticketAdult].value + ";";
				record=record + "CHILD=" + form.elements[ticketChild].value + ";";
				record=record + "ADULT$=" + adult.toFixed(2) + ";";
				record=record + "CHILD$=" + child.toFixed(2) + ";";
				record=record + "TOTAL$=" + total.toFixed(2) + ";";
				form.elements[ticket].value=record;
			}
		}
	}
	//update the cost value
	if(sales=="t")
	{
		sales = form.elements['!sCOSTSALES'].value;
		form.elements['TICKET_COSTTICKETS'].value=(ticketstotal*1).toFixed(2);
		form.elements['COST'].value=(bookingcost*1)+(ticketstotal*1)+(sales*1);
	}else
	{
		form.elements['TICKET_COSTTICKETS'].value=(ticketstotal*1).toFixed(2);
		form.elements['COST'].value=(bookingcost*1)+(ticketstotal*1);
	}
}
function echeck(str) 
{
		var at="@";
		var dot=".";
		var lat=str.indexOf(at);
		var lstr=str.length;
		var ldot=str.indexOf(dot);
		if (str.indexOf(at)==-1){
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		    return false;
		 }
 		 return true;					
	}
function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}
function trim(s)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not a whitespace, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (c != " ") returnString += c;
    }
    return returnString;
}
function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}
function checkPhone(strPhone)
{
	var bracket=3
	// Declaring required variables for phone validation
	var digits = "0123456789";
	// non-digit characters which are allowed in phone numbers
	var phoneNumberDelimiters = "()- ";
	// characters which are allowed in international phone numbers
	// (a leading + is OK)
	var validWorldPhoneChars = phoneNumberDelimiters + "+";
	// Minimum no of digits in an international phone no.
	var minDigitsInIPhoneNumber = 3;

	strPhone=trim(strPhone);
	if(strPhone.indexOf("+")>1) return false;
	if(strPhone.indexOf("-")!=-1)bracket=bracket+1;
	if(strPhone.indexOf("(")!=-1 && strPhone.indexOf("(")>bracket)return false;
	var brchr=strPhone.indexOf("(")
	if(strPhone.indexOf("(")!=-1 && strPhone.charAt(brchr+2)!=")")return false;
	if(strPhone.indexOf("(")==-1 && strPhone.indexOf(")")!=-1)return false;
	s=stripCharsInBag(strPhone,validWorldPhoneChars);
	return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}
function autotab(original,destination)
{
	if (original.value.length==original.getAttribute("maxlength"))
	{
		destination.focus();
	}
}
function DarkenPage(url)
{
	var page_screen = document.getElementById('page_screen');
    page_screen.style.height = document.body.parentNode.scrollHeight + 'px';
    page_screen.style.display = 'block';
    form_openwindow(url,850,500);
}
function LightenPage()
{
    var page_screen = document.getElementById('page_screen');
    page_screen.style.display = 'none';
}
function limitText(limitField, limitNum) 
{
    if (limitField.value.length > limitNum) 
    {
        limitField.value = limitField.value.substring(0, limitNum);
    } 
}

