
/*  Author :- IndiResource  
	Contains all the General Javascript files in this page.
	Compiled By :- Vishal Ghate
	
	Special Note :- Do not use any kind of Function
					which is based on the specific Form.
					Use only generalize functions.
	File includes the followig Functions
	1.chkQuotes(strTextValue)
	2.BumpUp
	3.move 	 
	4.SortD
	5.MM_swapImgRestore
	6.MM_preloadImages
	7.MM_findObj
	8.MM_swapImage
	9.isBlank
	
 */
<!--

// ****************************************************************************************
function chkQuotes(strTextValue)
{

var intStrTxtLength;
var strTextVal ;

intStrTxtLength = strTextValue.length ;
strTextVal = strTextValue ;

for (var cntLength = 0 ; cntLength < intStrTxtLength ; cntLength++)
{
	var ch;
	ch = strTextVal.charCodeAt(cntLength);
	
	if ((ch >= 33 &&  ch <= 43)||((ch >= 58 &&  ch <= 64)) ||((ch >= 91 &&  ch <= 96))||((ch >= 123 &&  ch <= 126)) )
		{
			return (false);  
		}
}   
return (true);

}

//************************************************************************************************//


function BumpUp(box)  
{
	for( var i = 0; i < box.options.length ; i++ ) 
	{
		if( box.options[i].value == "")  
		{
			for( var j = i ; j < box.options.length - 1 ; j++ )  
			{
				box.options[j].value = box.options[j+1].value;
				box.options[j].text = box.options[j+1].text;
			}
		
			var ln = i;
			break;
		}
	}
	
	if( ln < box.options.length )  
	{
		box.options.length -= 1 ;
		BumpUp(box) ;
	}
}

// ****************************************************************************************
 
function moveall(fbox,tbox)
{
for(var i=0; i<fbox.options.length; i++) {
var no = new Option();
no.value = fbox.options[i].value;
no.text = fbox.options[i].text;
tbox.options[tbox.options.length] = no;
fbox.options[i].value = "";
fbox.options[i].text = "";
}

BumpUp(fbox);

	


} 
 
 
// ****************************************************************************************  
/*
function move(fbox,tbox)
{
	for(var i=0; i<fbox.options.length; i++) 
	{
		if(fbox.options[i].selected && fbox.options[i].value != "") 
		{
			var no = new Option();
			no.value = fbox.options[i].value;
			no.text = fbox.options[i].text;
			tbox.options[tbox.options.length] = no;
			fbox.options[i].value = "";
			fbox.options[i].text = "";
	}
	}
	BumpUp(fbox);
	//if (sortitems) SortD(tbox);
} 
*/
function move(fbox,tbox) {
	var selIndex =-1;
	var strVal="";
	var strText="";

	for(var i=0; i<fbox.options.length; i++) {
		if(fbox.options[i].selected && fbox.options[i].value != "") {
			var no = new Option();
			no.value = fbox.options[i].value;
			no.text = fbox.options[i].text;
		
			for(var j=0; j<tbox.options.length; j++) {
				if (tbox.options[j].selected && tbox.options[j].value != ""){	
					selIndex=j;
				}
			}
		
			tbox.options[tbox.options.length] = no;
			var arr1= new Array(tbox.options.length-1);
			var arr2= new Array(tbox.options.length-1);
		
			for(var j=0; j<tbox.options.length; j++) {
				strVal =  tbox.options[j].value ;
				strText =  tbox.options[j].text ;
				arr1[j]=strText;
				arr2[j]=strVal;		
			}
		
			var lenB=tbox.options.length
				
			if (selIndex != -1){
				tbox.options.length=0;			
				for(var j=0; j<selIndex+1; j++) {				
						var n1 = new Option();
						n1.value = arr2[j];
						n1.text =arr1[j];
						tbox.options[tbox.options.length] = n1				
				}
				tbox.options[tbox.options.length]=no;
				
				for(var j=tbox.options.length-1; j<lenB-1; j++) {
					var n1 = new Option();				
					n1.value = arr2[j];
					n1.text =arr1[j];
					tbox.options[tbox.options.length] = n1				
				}
			}
		
			fbox.options[i].value = "";
			fbox.options[i].text = "";
		}  //End If Else
	} //End For Loop
	tbox.options[selIndex+1].selected=true;
	BumpUp(fbox);
	
}    //End Function

	

//*****************************************************************************************//


function SortD(box)  
{
	var temp_opts = new Array();
	var temp = new Object();
	for(var i=0; i<box.options.length; i++)  
	{
		temp_opts[i] = box.options[i];
	}
	for(var x=0; x<temp_opts.length-1; x++)  
	{
		for(var y=(x+1); y<temp_opts.length; y++)  
		{
			if(temp_opts[x].text > temp_opts[y].text)  
			{
				temp = temp_opts[x].text;
				temp_opts[x].text = temp_opts[y].text;
				temp_opts[y].text = temp;
			}
		}
	}
	
	for(var i=0; i<box.options.length; i++)  
	{
		box.options[i].value = temp_opts[i].value;
		box.options[i].text = temp_opts[i].text;
   }
}

//***********************************************************************************************************//
  
function MM_swapImgRestore() 
{ //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

//***********************************************************************************************************//


function MM_preloadImages() 
{ //v3.0
	var d=document; 
	if(d.images)
	{ 
		if(!d.MM_p) d.MM_p=new Array();
		
		var i,j=d.MM_p.length,a=MM_preloadImages.arguments; 
		
		for(i=0; i<a.length; i++)
			if (a[i].indexOf("#")!=0)
			{ 
				d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];
			}
	}
}

//***********************************************************************************************************//

function MM_findObj(n, d) 
{ //v4.0
  var p,i,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=MM_findObj(n,d.layers[i].document);
  
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}
//***********************************************************************************************************//
function MM_swapImage() 
{ //v3.0
	var i,j=0,x,a=MM_swapImage.arguments; 
	document.MM_sr=new Array; 
	for(i=0;i<(a.length-2);i+=3)
	if ((x=MM_findObj(a[i]))!=null)
	{
		document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];
	}
}  

//***********************************************************************************************************//

function isBlank(strValue)
{
    ch=strValue.charCodeAt(0);      
     
     if (ch==32)
      {
        alert("Field cannot be left blank.");		 
		return (false);
      }
   
   }  
//***********************************************************************************************************//

// * ******************* Please do not use this function *******************************
//  As this function is old and is having bugs in the coding. Insted of this function
//  use the function named echeck () which is listed in the s
function ValidateEmail(strEmail )
{
	var checkEmail = "@.";
	var checkStr = strEmail;
	var EmailValid = false;
	var EmailAt = false;
	var EmailPeriod = false;
	for (i = 0;  i < checkStr.length;  i++)
		{
			ch = checkStr.charAt(i);
			for (j = 0;  j < checkEmail.length;  j++)
				{
					if (ch == checkEmail.charAt(j) && ch == "@")
						EmailAt = true;
					if (ch == checkEmail.charAt(j) && ch == ".")
						EmailPeriod = true;
					if (EmailAt && EmailPeriod)
						break;
					if (j == checkEmail.length)
						break;
				}
					// if both the @ and . were in the string
				if (EmailAt && EmailPeriod)
					{
						EmailValid = true
						break;
					}
 
				}
				if (!EmailValid)
				{
					return (false);
				}
}
//***************************************************************************************************

function valid_onkey()
{
	  
	  if ((event.keyCode <=45)||(event.keyCode >=58))
		{
			event.keyCode=0;
		}	
}


//***************************************************************************************************
/*
	Function Name	:-	chkTwoDigit(mystr)
	Description		:-	Checks that Values entered in the Textbox should
						Not have more than 3 digits after decimal points.
	Input Parameters:-	mystr, passes the text value entered in the text box for validations.
	Date			:-	27/05/2003							

*/



function chktwodigit(mystr)
{
var mCtr;
var dCtr;
mCtr = 0;
dCtr = 0;
var lstr = mystr.value;
var mlen = lstr.length;
for(i=0; i<= mlen; i++)
{
	var ch = lstr.charAt(i);
	if (ch == "-")
	{
		mCtr++;
	}
	
	if (mlen == 1)
	 {
	 if (ch == "-")
	 {
		alert("Invalid Number");
		mystr.focus();
		return false;
	  }
	}
		
	if (mlen == 1)
	 {
	 if (ch == ".")
	 {
		alert("Invalid Number");
		mystr.focus();
		return false;
	  }
	 }


	if (ch == ".")
	{
		dCtr++;
	}
	
	if (mCtr > 1 || dCtr >1)
	{
		alert("Invalid Number");
		mystr.focus();
		return false;
	}

	if (ch == ".")
	{
		
		var pos = lstr.substring(i,mlen);
		var lnum = pos.length;
		if (lnum > 4 )
		{ 
		alert("only Three digits after decimal point");
		mystr.focus();
		return false;
		}
	}
}

}

//***************************

function chkDecimals(mystr,strDcml)
{
var mCtr;
var dCtr;
mCtr = 0;
dCtr = 0;
var lstr = mystr.value;
var mlen = lstr.length;
for(i=0; i<= mlen; i++)
{
	var ch = lstr.charAt(i);
	if (ch == "-")
	{
		mCtr++;
	}
	
	if (mlen == 1)
	 {
	 if (ch == "-")
	 {
		alert("Invalid Number");
		mystr.focus();
		return false;
	  }
	}
		
	if (mlen == 1)
	 {
	 if (ch == ".")
	 {
		alert("Invalid Number");
		mystr.focus();
		return false;
	  }
	 }


	if (ch == ".")
	{
		dCtr++;
	}
	
	if (mCtr > 1 || dCtr >1)
	{
		alert("Invalid Number");
		mystr.focus();
		return false;
	}

	if (ch == ".")
	{
		
		var pos = lstr.substring(i,mlen);
		var lnum = pos.length;
		
		var intDcml = Number(strDcml);
		var strMsg;
		
		if (lnum > intDcml + 1 )
		{ 
		strMsg = "Only " + intDcml + " digits after decimal point";
		alert(strMsg);
		mystr.focus();
		return false;
		}
	}
}

}




//***************************************************************************************************

function validate(field) {
	var valid = "0123456789."
	var ok = "yes";
	var temp;
	for (var i=0; i<field.value.length; i++) {
	temp = "" + field.value.substring(i, i+1);
	if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (ok == "no") {
		alert("Enter numbers only!");
		return (false);
	}
	
	if (field.value == 0 ) 
 	{
 		alert("Enter numbers only!");
		field.focus();
		return (false);
 	}
 	
}
function validateWithoutDecimal(field) {
	var valid = "0123456789"
	var ok = "yes";
	var temp;
	for (var i=0; i<field.value.length; i++) {
	temp = "" + field.value.substring(i, i+1);
	if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (ok == "no") {
		//alert(" Enter whole numbers only!");
		field.focus();
		return (false);
	}
	
 	if (field.value == 0 ) 
 	{
 		//alert("Enter whole numbers only!");
		field.focus();
		return (false);
 	}
 	
}

//***************************************************************************************************

function isValidTime(dateStr) {
			var datePat = "([0-1][0-9]|2[0-3]):[0-5][0-9]"; // requires 4 digit year
			var matchArray = dateStr.match(datePat); // is the format ok?
			if (matchArray == null) {
				alert(dateStr + " Time is not in a valid format.")
				return false;
			}
		}
function isValidDate(dateStr) {

// MM/DD/YY   MM/DD/YYYY   MM-DD-YY   MM-DD-YYYY
var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/; // requires 4 digit year

var matchArray = dateStr.match(datePat); // is the format ok?
if (matchArray == null) {
	alert(dateStr + " Date is not in a valid format.")
	return false;
}
day= matchArray[1]; // parse date into variables
month= matchArray[3];
year = matchArray[4];
if (month < 1 || month > 12) { // check month range
	alert("Month has to be between 1 and 12");
	return false;
}
if (day < 1 || day > 31) {
	alert("Day has to be between 1 and 31");
	return false;
}
if ((month==4 || month==6 || month==9 || month==11) && day==31) {
	alert("Month "+month+" doesn't have 31 days!")
	return false;
}
if (month == 2) { // check for february 29th
	var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
	if (day>29 || (day==29 && !isleap)) {
		alert("February " + year + " doesn't have " + day + " days!");
		return false;
	}
}
return true;

}

//***************************************************************************************************
function valid_Negonkey()
{if ((event.keyCode <=44)||(event.keyCode >=58)){event.keyCode=0;}}


//***************************************************************************************************
function validateWithNegative(field)
{
	var valid = "-0123456789."
	var ok = "yes";
	var temp;
	for (var i=0; i<field.value.length; i++) {
	temp = "" + field.value.substring(i, i+1);
	if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (ok == "no") {
		alert("Invalid entry!  Only  numbers are accepted!");
		return (false);
	}

}

function showIt() 
{
	document.f0.txtCompCode.style.visibility="visible"; //set to visible
}

function hideIt() 
{
	document.f0.txtCompCode.style.visibility="hidden"; //set to hidden
}





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){
		   alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid E-mail ID")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid E-mail ID")
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }

 		 return true					
	}
////******************************************************************************

function isNumeric(args)
							{
								var strChar;
								var strValidChars = "0123456789";
								var strString = args;
								var blnResult = true;
								if (strString.length ==0) return false;
								for (var i = 0; i< strString.length ; i++)
								{
									strChar = strString.charAt(i);
									if (strValidChars.indexOf(strChar) == -1)
									{   
										blnResult = false;
										break;
									}
								}
								return blnResult;
								
							}
		
	
///////////////***********************************************
/*function ValidateForm(){
	var emailID=document.frmSample.txtEmail
	
	if ((emailID.value==null)||(emailID.value=="")){
		alert("Please Enter your Email ID")
		emailID.focus()
		return false
	}
	if (echeck(emailID.value)==false){
		emailID.value=""
		emailID.focus()
		return false
	}
	return true
 }
 */
 // this function return false if arg does not contain numeric values
function isNumericValue(args)
							{
								var strChar;
								var strValidChars = "0123456789";
								var strString = args;
								var blnResult = true;
								//alert(strString.length);
								if (strString.length ==0) return false;
								for (var i = 0; i< strString.length ; i++)
								{
									strChar = strString.charAt(i);
									//alert(strValidChars.indexOf(strChar));
									if (strValidChars.indexOf(strChar) == -1)
									{   
										blnResult = false;
										break;
									}
								}
								return blnResult;
								
							}

		//
//
function AllowAlphanumeric(str)
{
	// if ((event.keyCode > 32 && event.keyCode < 48) || (event.keyCode > 57 && event.keyCode < 65) || (event.keyCode > 90 && event.keyCode < 97))
	//	{
	//		event.keyCode=0;
	//	}	
	var iChars = "!@#$%^&*()+=-[]\\\';,/{}|\":<>?";
				for (var i = 0; i < str.length; i++) 
				{
                if (iChars.indexOf(str.charAt(i)) != -1) 
                {
                alert ("Special characters are not allowed.");
                return false;
				}
                }
}
////////
function round(number,X) {
// rounds number to X decimal places, defaults to 2
X = (!X ? 2 : X);
return Math.round(number*Math.pow(10,X))/Math.pow(10,X);
}




function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}
function valImageType(strFileName)
{
	var vname =strFileName   ///document.getElementById("fileP").value;					
	do
		{
			if (vname.indexOf(".")==-1)
				{
					break;
				}
				var index = vname.indexOf(".");
					
				vname=vname.substring(index+1);
					
		}
	while (index !=-1)
				
	var filetype=vname;
					
	filetype=filetype.toUpperCase();
	if (filetype!="JPG" && filetype!="GIF" && filetype!="JPEG")
	{
		return (false);
	}
	
	return (true);
}
function valImageSize(strFileName,intSize)
{
		
	
	var im = new Image();
	im.src = strFileName;
			
	var size=(im.fileSize)/1024;
	
	if (size>intSize)
	{
		return false;
	
	}
	return (true);
}

//
function GetImageType(strFileName)
{
	var vname =strFileName   ///document.getElementById("fileP").value;					
	do
		{
			if (vname.indexOf(".")==-1)
				{
					break;
				}
				var index = vname.indexOf(".");
					
				vname=vname.substring(index+1);
					
		}
	while (index !=-1)
				
	var filetype=vname;
					
	filetype=filetype.toUpperCase();
	if (filetype!="JPG" && filetype!="GIF" && filetype!="JPEG")
	{
		return ("");
	}
	
	return (filetype);
}
//
//
function GetAllImageType(strFileName)
{
	var vname =strFileName   ///document.getElementById("fileP").value;					
	do
		{
			if (vname.indexOf(".")==-1)
				{
					break;
				}
				var index = vname.indexOf(".");
					
				vname=vname.substring(index+1);
					
		}
	while (index !=-1)
				
	var filetype=vname;
					
	filetype=filetype.toUpperCase();
	//if (filetype!="JPG" && filetype!="GIF" && filetype!="JPEG")
	//{
		//return ("");
	//}
	
	return (filetype);
}
//
//
function isEmpty(strText)
			{				
				var intCode
				if (strText=="") 
				{
					return(true);
				}
				else
				{
				for (i=0;i<strText.length;i++)
					{
						intCode = strText.charCodeAt(i);
						//alert("intCode > " + intCode);
						if (intCode != 13 && intCode != 32	&& intCode!= 10)
							{
							return (false);
							}
					}
					return (true);
				}	
			}




/// for popup windows
function ResizeToFit()
{


//var imgWidth
var imgHeight


//imgWidth = document.imgLarge.width;
imgHeight = document.imgLarge.height;

window.resizeTo(imgHeight)
}


    // JavaScript to interpolate random images into a page.
    var ic = 10;     // Number of alternative images
    var xoxo = new Array(ic);  // Array to hold image displayfilenames
	var banner = new Array(ic);// Array to hold banner filenames
        
xoxo[0] = "swf/Profile1";
xoxo[1] = "swf/Profile2";
xoxo[2] = "swf/Profile3";
xoxo[3] = "swf/Profile4";
xoxo[4] = "swf/Profile5";
xoxo[5] = "swf/Profile6";
xoxo[6] = "swf/Profile7";
xoxo[7] = "swf/Profile8";
xoxo[8] = "swf/Profile9";
xoxo[9] = "swf/Profile10";

//for banners
banner[0] = "images/banner_goldStar01.jpg";
banner[1] = "images/banner_goldStar02.jpg";
banner[2] = "images/banner_goldStar03.jpg";
banner[3] = "images/banner_goldStar04.jpg";

function pickRandom(range) {
if (Math.random)
return Math.round(Math.random() * (range-1));
else {
var now = new Date();
return (now.getTime() / 1000) % range;
}
}
// Write out an IMG tag, using a randomly-chosen image name.
var choice = pickRandom(ic);

//for banners
function pickRandom(range) {
if (Math.random)
return Math.round(Math.random() * (range-1));
else {
var now = new Date();
return (now.getTime() / 1000) % range;
}
}
// Write out an IMG tag, using a randomly-chosen image name.
var bannerchoice = pickRandom(ic);

// -->
		
function compareDates (value1, value2) {
   var date1, date2;
   var month1, month2;
   var year1, year2;
   
  var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/;
  
  var matchArray = value1.match(datePat); // is the format ok?
  if (matchArray == null) {
			return 0;
	}
	date1= matchArray[1]; // parse date into variables
	//alert("date1 " + date1);
	month1= matchArray[3];
	year1 = matchArray[4];
			
  // alert(" value1" + value1);
   /*month1 = value1.substring (0, value1.indexOf ("/"));
   date1 = value1.substring (value1.indexOf ("/")+1, value1.lastIndexOf ("/"));
   year1 = value1.substring (value1.lastIndexOf ("/")+1, value1.length);*/
  // alert(" value2" + value2);
  
  
 /*  month2 = value2.substring (0, value2.indexOf ("-"));
   date2 = value2.substring (value2.indexOf ("/")+1, value2.lastIndexOf ("/"));
   year2 = value2.substring (value2.lastIndexOf ("/")+1, value2.length);*/
	var matchArray = value2.match(datePat); // is the format ok?
	if (matchArray == null) {
			return 0;
	}
	date2= matchArray[1]; // parse date into variables
	//alert("date2 " + date2);
	month2= matchArray[3];
	year2 = matchArray[4];
	
   if (year1 > year2) 
   {
	//alert("year1 >year2" + year1 + ">" + year2);
	return 1;
	}
   else if (year1 < year2) 
   {
   //alert("year1 <year2" + year1 + "<" + year2);
   return -1;
   }
   else if (month1 > month2) 
   {
   //alert("month1 >month2" + month1 + ">" + month2);
   return 1;
	}
   else if (month1 < month2)
   {
    //alert("month1 < month2" + month1 + "<" + month2);
    return -1;
    }
   else if (date1 > date2) 
   {
   //alert("date1 > date2" + date1 + ">" + date2);
   return 1;
   }
   else if (date1 < date2)
   {
   //alert("date1 < date2" + date1 + "<" + date2);
   return -1;
   }
   else return 0;
}


function isCharactor(args)
{
	var strChar;
	var strValidChars = "0123456789";
	var strString = args;
	var blnResult = true;
	if (strString.length ==0) return false;
	for (var i = 0; i< strString.length ; i++)
								{
									strChar = strString.charAt(i);
									if (strValidChars.indexOf(strChar) != -1)
									{   
										
										blnResult = false;
										break;
									}
								}
								return blnResult;
								
							}