ON_PASTE_ERROR           = "The text you are trying to paste exceeds the character limit of this field!";
var checkObjects	= new Array();
var errors		= "";
var returnVal		= false;
var language		= new Array();
language["header"]	= " Please Enter:"
language["start"]	= " ";
language["field"]	= " ";
language["require"]	= "";
language["min"]		= " and must consist of at least ";
language["max"]		= " and must not contain more than ";
language["minmax"]	= " and no more than ";
language["chars"]	= " characters";
language["num"]		= " ";
language["email"]	= " ";

function define(n, type, HTMLname, min, max, d) {
var p;
var i;
var x;
if (!d) d = document;

if ((p=n.indexOf("?"))>0&&parent.frames.length) {
d = parent.frames[n.substring(p+1)].document;
n = n.substring(0,p);
}
if (!(x = d[n]) && d.all) x = d.all[n];
for (i = 0; !x && i < d.forms.length; i++) {
x = d.forms[i][n];
}
for (i = 0; !x && d.layers && i < d.layers.length; i++) {
x = define(n, type, HTMLname, min, max, d.layers[i].document);
return x;       
}
eval("V_"+n+" = new formResult(x, type, HTMLname, min, max);");
checkObjects[eval(checkObjects.length)] = eval("V_"+n);
}
function formResult(form, type, HTMLname, min, max) {
this.form = form;
this.type = type;
this.HTMLname = HTMLname;
this.min  = min;
this.max  = max;
}
function validate(checkregVal) {

if (checkObjects.length > 0) {
	errorObject = "";
	for (i = 0; i < checkObjects.length; i++) {

		validateObject = new Object();
		validateObject.form = checkObjects[i].form;

		validateObject.HTMLname = checkObjects[i].HTMLname;

		validateObject.val = checkObjects[i].form.value;
				
		validateObject.len = checkObjects[i].form.value.length;
				
		validateObject.min = checkObjects[i].min;
				
		validateObject.max = checkObjects[i].max;
									
		validateObject.type = checkObjects[i].type;

					
		if (validateObject.type == "num" || validateObject.type == "string") {

			if ((validateObject.type == "num" && validateObject.len <= 0) || (validateObject.type == "num" && isNaN(validateObject.val))) { 
							errors += language['start'] + language['field'] + validateObject.HTMLname + language['require'] + language['num'] + "\n";
				} 
			else if (validateObject.min && validateObject.max && (validateObject.len < validateObject.min || validateObject.len > validateObject.max)) {
					 errors += language['start'] + language['field'] + validateObject.HTMLname + language['require'] + language['min'] + validateObject.min + language['minmax'] + validateObject.max+language['chars'] + "\n";
				} 
			else if (validateObject.min && !validateObject.max && (validateObject.len < validateObject.min)) { 
					errors += language['start'] + language['field'] + validateObject.HTMLname + language['require'] + language['min'] + validateObject.min + language['chars'] + "\n";
				}
		 	else if (validateObject.max && !validateObject.min &&(validateObject.len > validateObject.max)) { 
		 			errors += language['start'] + language['field'] + validateObject.HTMLname + language['require'] + language['max'] + validateObject.max + language['chars'] + "\n";
				}
		 	else if (!validateObject.min && !validateObject.max && validateObject.len <= 0) {
		 		  errors += language['start'] + language['field'] + validateObject.HTMLname + language['require'] + "\n";
    			}
		 }
		 else if(validateObject.type == "email") 
		 {
		   if (validateObject.val == "" )	  
			{
			  errors += language['start'] + language['field'] + validateObject.HTMLname + language['email'] + "\n";
			} 
		   else if ((validateObject.val.indexOf("@") == -1) || (validateObject.val.charAt(0) == ".") || (validateObject.val.charAt(0) == "@") || (validateObject.len < 6) || (validateObject.val.indexOf(".") == -1) || (validateObject.val.charAt(validateObject.val.indexOf("@")+1) == ".") || (validateObject.val.charAt(validateObject.val.indexOf("@")-1) == ".")) 
		   {
			 errors += "  Valid " + language['field'] + validateObject.HTMLname + language['email'] + " (Ex: xyz@abc.com)\n";
			}
      	 }
   		}

}
  // var emailObj = "document.all.email"
 /* var  emailVal =document.all.email.value;
  alert(emailVal);
   if ((emailVal.indexOf("@") == -1) || (emailVal.charAt(0) == ".") || (emailVal.charAt(0) == "@") || (emailVal.len < 6) || (emailVal.indexOf(".") == -1) || (emailVal.charAt(emailVal.indexOf("@")+1) == ".") || (emailVal.charAt(emailVal.indexOf("@")-1) == ".")) {
				  alert(errors);
					 errors += language['start'] + language['field'] + "E-mail" + language['email'] + "\n";
			  }
  alert(errors); */
	if (errors) {
		alert(language["header"].concat("\n" + errors));
		errors = "";
		returnVal = false;
	} else {
		returnVal = true;
	}
}

function changeCase(oObject)
{
  
  var iKey = window.event.keyCode;
  if(iKey > 96 && iKey < 123)
  {
    window.event.keyCode = iKey -32;

  }
}

function cleardefines()
{
	checkObjects = new Array();
}
//---------------------------------------------------------------------------------------------------------------------------
var val;
var sHTML="";
var Regval="";
var validChar = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
function setHits() 
{
	RandNum = new randomNumberGenerator();
	val = RandNum.next() + "";
//	alert(val)
	val = val.substring (5, 11);
	PicSize = "HEIGHT=16 WIDTH=8 ALIGN='absmiddle'>";
	Digit = new Array();
	Head = "#define count_width 8\n#define count_height 16\nstatic char count_bits[] = {"
	Digit[0]=Head+"0xff,0xff,0xff,0xc3,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0xc3,0xff,0xff,0xff};"; // 0  
	Digit[1]=Head+"0xff,0xff,0xff,0xcf,0xc7,0xcf,0xcf,0xcf,0xcf,0xcf,0xcf,0xcf,0xc7,0xff,0xff,0xff};"; // 1
	Digit[2]=Head+"0xff,0xff,0xff,0xc3,0x99,0x9f,0x9f,0xcf,0xe7,0xf3,0xf9,0xf9,0x81,0xff,0xff,0xff};"; // 2
	Digit[3]=Head+"0xff,0xff,0xff,0xc3,0x99,0x9f,0x9f,0xc7,0x9f,0x9f,0x9f,0x99,0xc3,0xff,0xff,0xff};"; // 3
	Digit[4]=Head+"0xff,0xff,0xff,0xcf,0xcf,0xc7,0xc7,0xcb,0xcb,0xcd,0x81,0xcf,0x87,0xff,0xff,0xff};"; // 4
	Digit[5]=Head+"0xff,0xff,0xff,0x81,0xf9,0xf9,0xf9,0xc1,0x9f,0x9f,0x9f,0x99,0xc3,0xff,0xff,0xff};"; // 5
	Digit[6]=Head+"0xff,0xff,0xff,0xc7,0xf3,0xf9,0xf9,0xc1,0x99,0x99,0x99,0x99,0xc3,0xff,0xff,0xff};"; // 6
	Digit[7]=Head+"0xff,0xff,0xff,0x81,0x99,0x9f,0x9f,0xcf,0xcf,0xe7,0xe7,0xf3,0xf3,0xff,0xff,0xff};"; // 7
	Digit[8]=Head+"0xff,0xff,0xff,0xc3,0x99,0x99,0x99,0xc3,0x99,0x99,0x99,0x99,0xc3,0xff,0xff,0xff};"; // 8
	Digit[9]=Head+"0xff,0xff,0xff,0xc3,0x99,0x99,0x99,0x99,0x83,0x9f,0x9f,0xcf,0xe3,0xff,0xff,0xff};"; // 9

              Digit[10]=Head+"0xff,0xff,0xff,0xc3,0x99,0x99,0x99,0x99,0x81,0x99,0x99,0x99,0x99,0xff,0xff,0xff};"; // A
	Digit[11]=Head+"0xff,0xff,0xff,0xc1,0x99,0x99,0x99,0xc1,0x99,0x99,0x99,0x99,0xc1,0xff,0xff,0xff};"; // B 
	Digit[12]=Head+"0xff,0xff,0xff,0xc3,0x99,0x99,0xf9,0xf9,0xf9,0xf9,0x99,0x99,0xc3,0xff,0xff,0xff};"; // C
	Digit[13]=Head+"0xff,0xff,0xff,0xc1,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0xc1,0xff,0xff,0xff};"; // D
	Digit[14]=Head+"0xff,0xff,0xff,0x81,0xf9,0xf9,0xf9,0xc1,0xf9,0xf9,0xf9,0xf9,0x81,0xff,0xff,0xff};"; // E
	Digit[15]=Head+"0xff,0xff,0xff,0x81,0xf9,0xf9,0xf9,0xc1,0xf9,0xf9,0xf9,0xf9,0xf9,0xff,0xff,0xff};"; // F
    Digit[16]=Head+"0xff,0xff,0xff,0xc3,0x99,0x99,0xf9,0xf9,0xC9,0x99,0x99,0x99,0xc3,0xff,0xff,0xff};"; // G
	Digit[17]=Head+"0xff,0xff,0xff,0x99,0x99,0x99,0x99,0x81,0x99,0x99,0x99,0x99,0x99,0xff,0xff,0xff};"; // H
//	Digit[18]=Head+"0xff,0xff,0xff,0xcf,0xcf,0xcf,0xcf,0xcf,0xcf,0xcf,0xcf,0xcf,0xcf,0xff,0xff,0xff};"; // I
	Digit[18]=Head+"0xff,0xff,0xff,0xf9,0xf9,0xf9,0xf9,0xf9,0xf9,0xf9,0xf9,0xf9,0xf9,0xff,0xff,0xff};"; // I
	Digit[19]=Head+"0xff,0xff,0xff,0xcf,0xcf,0xcf,0xcf,0xcf,0xcf,0xc9,0xc9,0xc9,0xe3,0xff,0xff,0xff};"; // J
	

   var StrInt = new Array(); 
   for (Count = 0; Count < val.length; Count++) 
	{
		dig= Math.round(Math.abs(val.substring (Count, Count+2)));
		if(dig > 19) dig = Math.round(dig/10);
		sHTML = sHTML + "<img src='javascript:Digit["+ dig +"]'" + PicSize;
		StrInt[Count] = dig;
		Regval = Regval + validChar.charAt(dig);
	}
   //for(i=0; i<16; i++) document.write("<img src='javascript:Digit["+ i +"]'" + PicSize);
//   alert(Regval);
}

function nextRandomNumber ()  {
var Hi = this.seed / this.Q;
var Lo = this.seed % this.Q;
var Test = this.A * Lo - this.R * Hi;
if (Test > 0)
this.seed = Test
else
this.seed = Test + this.M;
return (this.seed * this.oneOverM);
}

function randomNumberGenerator() {
var D = new Date();
this.seed = 2345998901 + (D.getSeconds() * 0xFFFFFF) + (D.getMinutes() * 0xFFFF);
this.A = 482719;
this.M = 2147483647;
this.Q = this.M / this.A;
this.R = this.M % this.A;
this.oneOverM = 1.0 / this.M;
this.next = nextRandomNumber;
}
function enforcechar(obj,limit)      //  TO LIMIT NO OF CHARTERS IN TEXT AREA 
{
  var len =  obj.value.length ;
  if (len >= limit) return false;
  if((len == (limit-1))&&(event.keyCode==13) )  return false;
}
	
function chkLengthOnpasteEvent(obj,limit)
{
  var len = obj.value.length ;
  var cliplength = window.clipboardData.getData('Text').length;
  if (( len + cliplength) > limit)
  {
	alert(ON_PASTE_ERROR);
   	return false;
  }
  else
	return true;
}

function Trim(TRIM_VALUE)
{
	if(TRIM_VALUE.length < 1)
		return""; 
	TRIM_VALUE = RTrim(TRIM_VALUE);
	TRIM_VALUE = LTrim(TRIM_VALUE);
	if(TRIM_VALUE=="")
		return "";
	else
		return TRIM_VALUE;
}

function RTrim(VALUE){
	var w_space = String.fromCharCode(32);
	var v_length = VALUE.length;
	var strTemp = "";
	if(v_length < 0)
		return"";
	var iTemp = v_length -1;
	while(iTemp > -1)
	{
		if(VALUE.charAt(iTemp) == w_space){}
		else
		{
			strTemp = VALUE.substring(0,iTemp +1);
			break;
		}
		iTemp = iTemp-1;
	}
	return strTemp;
}
function LTrim(VALUE)
{
	var w_space = String.fromCharCode(32);
	if(v_length < 1)
		return"";
	var v_length = VALUE.length;
	var strTemp = "";
	var iTemp = 0;
	while(iTemp < v_length)
	{
		if(VALUE.charAt(iTemp) == w_space){}
		else
		{
			strTemp = VALUE.substring(iTemp,v_length);
			break;
		}
		iTemp = iTemp + 1;
	}
	return strTemp;
}
function CheckQuotes()
{
var iKey = window.event.keyCode;
// 222 code for single Quote
// 22 Code for Double Quote
if(iKey == 222 || iKey == 22)
	return false;
}

//---------------------------------------------------------------------------------------------------------------------------
