function validateusername(str,name) 
{
	var txt=str.value;
	var retval=true;
	if (/^[a-z][a-z0-9._-]{0,25}[a-z0-9]$/i .test(txt))	
	 retval=true;		
	else
	 retval=false;		
	if(!retval)
	{
		alert(document.)
		alert (name);
		str.focus();
	}
	return retval;
}

function validatepassword(str,name) 
{
	var txt=str.value;
	var retval=true;
	if(txt=="")
	{
		alert (name);
		str.focus();
		retval=false;				
	}
	if (/^[a-z0-9]{0,25}$/i .test(txt))	
	 retval=true;		
	else
	 retval=false;		

	if(!retval)
	{
		alert (name);
		str.focus();
	}
	return retval;
}








function validatemultiplemail(str,name,focusing) 

{

	var txt=str;

	var retval=true;



	

	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(txt))	

	 retval=true;		

	else

	 retval=false;		

	

	 

	if(!retval)

	{

		alert (name);

		focusing.focus();

	}

	return retval;

}










function validatefax(str,name) 

{

	var validchar="1234567890-";

	var txt=str.value;

	var retval=true;

	for (var i=0;i<txt.length;i++)

	{

		var ex=validchar.indexOf(txt.substring(i,i+1));

		if(ex==-1)

		{

			alert (name);

			retval=false;		

			str.focus();

			break;

		}	

	}

	return retval;	

}





function validateprice(str,name) 

{

	var validchar="1234567890.";

	var txt=str.value;

	var retval=true;

	for (var i=0;i<txt.length;i++)

	{

		var ex=validchar.indexOf(txt.substring(i,i+1));

		if(ex==-1)

		{

		alert (name);

		retval=false;		

		str.focus();

		break;



		}	

	}

	return retval;	

}





function trim(inputString) 

{

   if (typeof inputString != "string") { return inputString; }

   var retValue = inputString;

   var ch = retValue.substring(0, 1);

   while (ch == " ") 

   {

      retValue = retValue.substring(1, retValue.length);

      ch = retValue.substring(0, 1);

   }

   ch = retValue.substring(retValue.length-1, retValue.length);

   while (ch == " ")

    {

      retValue = retValue.substring(0, retValue.length-1);

      ch = retValue.substring(retValue.length-1, retValue.length);

   }

   while (retValue.indexOf("  ") != -1)

    {

      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length); // Again, there are two spaces in each of the strings

   }

   return retValue;

}





function validempty(txt,name)

{

	val=txt.value;

	var retval=true;

	if (trim(val)=="")

	{

	alert (name);

	txt.focus();

	retval=false;

	}

	return retval; 

}



function validemptyCombo(cbo,name)

{

	val = -1;

	val=cbo.value;

	var retval=true;

	if (val == 0 || val == -1)

	{

		alert (name);

		cbo.focus();

		retval=false;

	}

	return retval; 

}





function validcompare(txt1,txt2,name)

{

	var val1=txt1.value;

	var val2=txt2.value;

	

	var retval=true;

	if (val1!=val2)

	{

	alert (name);

	txt2.focus();

	retval=false;

	}

	return retval; 

}



function CheckUncheckAll(form)

{

	var SelectAll=form.SelectAll;

	for (var i=0;i<form.elements.length;i++)

	{

		var e=form.elements[i];

		if (SelectAll.checked)

			e.checked=true;

		else

			e.checked=false;

	}



}



function validemptyCheck(txt,name)

{

	var retval=true;

	if (!txt.checked)

	{

	alert ("Please You Must "+name);

	txt.focus();

	retval=false;

	}

	return retval; 

}



function validemptyherefor(txt1,txt2,txt3,name)

{

	var retval=true;

	if ( (!txt1.checked)&&(!txt2.checked)&&(!txt3.checked) )

	{

	alert ("Please You Must "+name);

//	txt.focus();

	retval=false;

	}

	return retval; 

}



// getting the selected index of the radio group

function getSelectedIndex(radgroup)

{

	/* Returns back the id of selected radio button in a radio button group  */

	var j = -1;

	for( i=0; i < radgroup.length; i++ )

	{

		if( radgroup[i].checked )

		{

			j = i;

		}

	}

	return j;

}





function validateimage(txt,name)

{

	filename=txt.value;

	var retval=true;

	var extension;

	var Img1 = new Image();

	if (filename != '')

	{  

	  extension = filename.substring(filename.length - 3, filename.length);

	  if ((extension.toUpperCase() != 'JPG') && (extension.toUpperCase() != 'GIF') && (extension.toUpperCase() != 'PNG') && (extension.toUpperCase() != 'BMP') )

	  {

		retval = false;

		alert(name);

		txt.focus();

	  }

	}

	return retval;

}



function validatedocument(txt,name)

{

	filename=txt.value;

	var retval=true;

	var extension;

	var Img1 = new Image();

	if (filename != '')

	{  

	  extension = filename.substring(filename.length - 3, filename.length);

	  if ((extension.toUpperCase() != 'DOC') && (extension.toUpperCase() != 'PDF') && (extension.toUpperCase() != 'TXT') && (extension.toUpperCase() != 'HTML'))

	  {

		retval = false;

		alert(name);

		txt.focus();

	  }

	}

	return retval;

}







//ajax Functions--------------------------



function createRequestObject() {

	req = false;

    // branch for native XMLHttpRequest object

    if(window.XMLHttpRequest) {

    	try {

			req = new XMLHttpRequest();

        } catch(e) {

			req = false;

        }

    // branch for IE/Windows ActiveX version

    } else if(window.ActiveXObject) {

       	try {

        	req = new ActiveXObject("Msxml2.XMLHTTP");

      	} catch(e) {

        	try {

          		req = new ActiveXObject("Microsoft.XMLHTTP");

        	} catch(e) {

          		req = false;

        	}

		}

    }

	return req;

}



function processReqChange() {

    // only if req shows "loaded"

    if (req.readyState == 4) {

        // only if "OK"

        if (req.status == 200) {

            // ...processing statements go here...

			var response = req.responseText;

			//alert(response);

			var resarray = response.split("|");

			

			if(resarray[0] != "")

			{

				if(resarray[3] == "regform")

					document.getElementById('city').value   = resarray[0];

				else

					document.getElementById('location').value = resarray[0];

			}

			if(resarray[1] != "")

			document.getElementById('region').value = resarray[1];

			if(resarray[2] != "")

			document.getElementById('country').value= resarray[2];

			

			//document.getElementById('zipcode_cage').innerHTML = response;

        } else {

			

            alert("There was a problem retrieving the data:\n" +

                req.statusText);

        }

    }

}





//ajax Functions--------------------------

function validyear(dd,mm,yy,date,month,year)

{

		var validchar="1234567890";

		var txt=yy.value;

		if(dd.value=="")

		{

			alert(date);

			dd.focus();

			return false;

		}

		if(mm.value=="")

		{

			alert(month);

			mm.focus();

			return false;

		}

		if(yy.value=="")

		{

			alert(year);

			yy.focus();

			return false;

		}

		

		if(yy.value.length!=4)

		{

			alert (year);

			yy.focus();

			return false;

		}

		for (var i=0;i<yy.value.length;i++)

		{

			var ex=validchar.indexOf(yy.value.substring(i,i+1));

			if(ex==-1)

			{

				alert (year);

				yy.focus();

				return false;

				break;

			}	

		}

		

		if((parseInt(yy.value/100) !=19) && (parseInt(yy.value/100)!=20))

		{

			alert('year'+year);

			yy.focus();

			return false;

		}

		if((yy.value%4!=0) && (mm.value==2) && (dd.value>28))

		{

			alert(date);

			dd.focus();

			return false;

		}

		if((yy.value%4==0) && (mm.value==2) && (dd.value>29))

		{

			alert(date);

			dd.focus();

			return false;

		}

		if((mm.value==4) || (mm.value==6) || (mm.value==9) || (mm.value==11))

		{

			if(dd.value>30)

			{

				alert(date);

				dd.focus();

				return false;

			}

		}

		else

		{

			return true;			

		}

}



function datediff(d1,m1,y1,d2,m2,y2,mesg1,mesg2,mesg3)

{

	if(y2.value<y1.value)

	{

		alert(mesg3);		

		y2.focus();

		return false;

	}

	if(y2.value==y1.value)

	{

		if(m2.value < m1.value)

		{

			alert(mesg2);

			m2.focus();

			return false;

		}

		else if(m1.value==m2.value)

		{

			if(d2.value < d1.value)

			{

				alert(mesg1);

				d2.focus();

				return false;

			}

		}

	}

}

