
//Field Delimiter
var FLD_DM = "~";

//Record Delimiter
var RCD_DM = "|";

//Grand Child Starting point
var GND_DM = "!";
	
//Grand Child Record Delimiter
var GRD_DM = "^"; 

//purpose : To replace the single quote with double quote in a given string
function replaceQuote(str)
{
  return str.replace(regQuote,"''");
}

// Utility function to trim the leading and trailing white spaces
function trimStr(str)
{
	if (str != "")
		return str.replace(/^(\s+)/, "").replace(/(\s+)$/, "");
	else
		return str;
}

// Utility function to encode the &,<,>,'
function htmlEncRcs(str)
{
	if (str != "")
	{
		str = str.replace(/&gt;/g,">");	    //	>
		str = str.replace(/&lt;/g,"<");     // <
		str = str.replace(/&amp;/g,"&");    // &
		str = str.replace(/<br>/gi,"");     // <Br>
		str = str.replace(/&quot;/gi,"\""); // quote
	}
	return str;
}

function formatStrRcs(str)
{
	if (str != "")
	{
		str = htmlEncRcs(str);
		str = str.replace(/\\/g,"\\\\");
	}
	return str;
}	

// To format the given number as a float with 2 decimal places
function numFormat2(value)
{
  var fltResult = "";
  var part1 = "";
  var part2 = "";
  
  if (value == "")
    return "0.00";
  
    tmpArr = value.toString().split(".");
  
    part1 = tmpArr[0];
  
    if (tmpArr.length == 2)
      part2 = tmpArr[1];
  
    if (tmpArr.length == 1)
      part2 = "00";
  
    if (part2.length == 1)
      part2 = part2 + "0";
  
    fltResult = part1 + "." + part2;
  
  return fltResult;
}

// To format the given number as a float with 3 decimal places
function numFormat3(value)
{
  var fltResult = "";
  var part1 = "";
  var part2 = "";
  
  if (value == "")
    return "0.000";
 
    tmpArr = value.toString().split(".");
    part1 = tmpArr[0];
  
    if (tmpArr.length == 2)
      part2 = tmpArr[1];
  
    if (tmpArr.length == 1)
      part2 = "000";
  
    if (part2.length == 1)
      part2 = part2 + "00";
  
    if (part2.length == 2)
      part2 = part2 + "0";
      
    fltResult = part1 + "." + part2;
  
  return fltResult;
}

function numFormat4(value)
{
  var fltResult = "";
  var part1 = "";
  var part2 = "";
  
  if (value == "")
    return "0.0000";
 
    tmpArr = value.toString().split(".");
    
    part1 = tmpArr[0];
    
    if (tmpArr.length == 2)
      part2 = tmpArr[1];
  
    if (tmpArr.length == 1)
      part2 = "000";
  
		if (part2.length == 2)
      part2 = part2 + "00";
  
		if (part2.length == 1)
      part2 = part2 + "000";
      
    fltResult = part1 + "." + part2;
  
  return fltResult;
}
 
// Regular Expressions for checking in keypress event
// Declarations
var regNumeric  =		/\d/;                //matches digits 0-9
var regDecimal  =		/^([0-9.])/;         //matches digits 0-9 and dot
var regUpper    =		/^([A-Za-z0-9])/;
var regLower    =		/^([a-z])/;
var regAlphabet =		/^([A-Za-z])/;
var regCountry	=		/^([A-Za-z. ()])/;
var regAN       =		/^([a-zA-Z0-9_. -])/;			//matches a-z, A-Z, 0-9
var regANCaps   =		/^([A-Z0-9])/;				//matches  A-Z, 0-9
var regWebSite  =		/^([A-Za-z0-9.])/;		//matches alpha numeric,dot
var regEmail    =		/^([A-Za-z0-9.@_-])/; //matches alpha numeric,dot,@,_
var regDate     =		/^([\d/])/;
var regName     =		/^([A-Za-z0-9 ])/;
var regloginName=		/^([A-Za-z0-9])/;	
var regzipcode  =		/^([A-Za-z0-9 ])/;	



var regDesc     =		/^([A-Za-z0-9 '])/;   //matches alpha numeric,space
var regTile     =		/^([0-9Xx])/;					//matches numbers,X,x
var regComp     =		/^([A-Za-z0-9.&' \-()])/; 
var regGST		  =		/^([a-zA-Z0-9 ])/;   
var regPass		  =		/^([A-Za-z0-9])/;
var regPhone	  =		/^([\d-,/()])/;    

var regAnAll    =		/^[^\|~^!$'"]*$/;
var regAll      =		/^[^\|~^!$'"]*$/;

// Regular expression to restrict the delimiters used in grand child model.
// It restricts ~, |, ^, !

var regAnGrand  =	/^[^\|~^!$]*$/;
var regGnd      =	/^[^\|~^!$]*$/;

function chkCharacter(type)
{
  var chr = String.fromCharCode(event.keyCode);
  type    = type.toLowerCase();
  switch(type)
  {
    case "numeric" :
    return regNumeric.test(chr);
	case "zipcode" :
    return regzipcode.test(chr);
    
    
    case "decimal" :
      return regDecimal.test(chr);
      
    case "upper" :
      return regUpper.test(chr);
    
    case "lower" :
      return regLower.test(chr);            
    
    case "alphabet" :
      return regAlphabet.test(chr);
      
    case "an" :      //Alpha numeric
      return regAN.test(chr);
   
   case "ancaps" :
      return regANCaps.test(chr);      
      
   case "website" :
      return regWebSite.test(chr);      
   
   case "email" :
      return regEmail.test(chr);
   
   case "date" :
      return regDate.test(chr);
  
   case "name" :   // Name
      return regName.test(chr);
	    case "loginname" :   // loginName
      return regloginName.test(chr);
   
   case "desc" :   // description
      return regDesc.test(chr);
	
	 case "tile" :   // tile name
      return regTile.test(chr);
	
	case "comp" :    // Company Name
      return regComp.test(chr);
  
  case "gstnum" :  // GST Number
      return regGST.test(chr);
  
  case "country" :  // Country
      return regCountry.test(chr);
  
  case "pass" :     // Password
      return regPass.test(chr);
  
  case "phone" :    // Phone Number
      return regPhone.test(chr);
  
  case "anall" :    // Allows all except |and ~
      return regAnAll.test(chr);
  
  case "regall" :    // Allows all except |~ and 
      return regAll.test(chr);

  case "angrand" :    // Allows all except |, ~, !, ^ 
      return regAnGrand.test(chr);
  
  case "grandall" :    // Allows all except |, ~, !, ^
      return regGnd.test(chr);
  
  //case "taxOne" :    
  //return regTaxOne.test(chr);    
     
  }
} 

// Regular Expressions for validating the field on form submit
// Declarations for checking a word

var regNumW			    =	 /^[0-9]*$/;
var regDecimalW		  =	 /^\d{0,9}([.]{1}\d{1,3})?$/;
var regDeciRateW	  =	 /^\d{0,10}([.]{1}\d{1,2})?$/;
var regDeciRateFrnW	=	 /^\d{0,10}([.]{1}\d{1,4})?$/;
var regUpperW		    =  /^[A-Z0-9]*$/i;
var regLowerW		    =	 /^[a-z]*$/;
var regAlphaW		    =	 /^[a-z]*$/i;

//var regAlphaNumW	=	 /^[A-Z][A-Z0-9]+[A-Z0-9]$/i;

var regAlphaNumW		=	 /^[A-Z0-9_. -]*$/i;
var regAnCapsW			=	 /^[A-Z0-9_]*$/;

// Purpose : To validate  Name .
var regNameW				=	 /^[a-z0-9][a-z0-9!@#$%^&* ()-_+={}\]\['\:;,.<>?\/\\]*$/i;      //Allows alpha numeric and space

// Purpose : To validate  Name .
var regCustW				=	 /^[a-z][a-z0-9!@#$%^&* ()-_+={}\]\['\:;,.<>?\/\\]*$/i;      //Allows alpha numeric and space

// Purpose : To validate a Email address. Returns False If there is no dot,@ symbol in the Email Address
var regEmailW				=	 /^[a-z0-9][A-Za-z0-9._]+\@[a-z0-9-]+(\.\w{2,})+$/i;        //matches  a-z, A-Z, 0-9, _.@ 

// Purpose : To validate a web site address. Returns False If there is no www & dot.
var regWebsiteW		  =	 /^[w][(\w{3})]+\.[a-z0-9-]+[a-zA-Z0-9]+(\.\w{2,5})+$/i; //matches alpha numeric,dot

// Purpose : To validate a date field. Format : dd/mm/yyyy
var regDateW		    =	 /^[0-9][(\d{2})]+\/[0-9][(\d{2})]+\/[0-9][(\d{4})]$/;

//var regNameW		  =	 /^[a-z][a-z0-9 .']+[a-z0-9 ]$/i;
var regDescW		    =	 /^[a-z][a-z0-9 ']*$/i;

var regTileW				=		/^\d{1,9}([x]{1}\d{1,})?$/;

// Purpose : To validate a company name field. 
var regCompW        =  /^[a-zA-Z][A-Za-z0-9.&' \-()]+[A-Za-z0-9.&' \-()]$/; 

//Purpose : UOM Conversion
var regUOMConW		  =	 /^\d{0,5}([.]{1}\d{1,2})?$/;

// Purpose : To validate GST,VAT Number.
var regGSTW			    =	 /^[A-Z0-9 ]*$/i;

// Purpose : To validate Country Name.
 var regCountryW    =  /^[A-Z][a-z. ()]*$/i;
 
// Purpose : To validate Password.
var regPassW		    =	 /^[A-Z0-9]*$/i;
// Purpose : To validate Phone.
var regPhoneW	      =  /^[\d()][\d-, ()/]+[\d-, ()/]$/;    

//Purpose : To validate currency
var regCurrencyW		  =	 /^\d{0,3}([.]{1}\d{1,2})?$/;

//Purpose : To validate percentage
var regPercentageW		  =	 /^\d{0,2}([.]{1}\d{1,2})?$/;

var regSPercentageT =/^\d{0,3}([.]{1}\d{1,2})?$/;




//Purpose : To validate percentage
var regMPercentageW		  =	 /^\d{0,2}([.]{1}\d{1,3})?$/;

var regISOW		      =	 /^[a-z0-9][A-Za-z0-9. \-()/]*$/i;

//Purpose : To validate percentage
var regTaxOneW		 =  /^\P1{1}([\(*/+0-9)])*$/;

// ********* Common validation for varchar fields  ******
//Purpose : Allows all characters except "|~
var regAllW     =/^[^\|~!^$]*$/;  

var regAnAllW   =/^[^\|~!^$]*$/;

//Purpose : For Grand Child Fields Allows all characters 
//except ",|,~,!,^

var regAnGrandW    = /^[^\|~!^$]*$/; 
var regGrandW			 = /^[^\|~!^$]*$/;

// *********     ******
//Purpose : Restricts consequent commas
var regComma =/,,/;

//Purpose : To Validate the usage of contonous quotes 
var regQuotesW			=	 /""/; 

function chkWord(type,word)
{
	type = type.toLowerCase();
	switch (trimStr(type))
  {
    case "numeric" :
      return regNumW.test(word);
    
    case "decimal" :
      return regDecimalW.test(word);
        
    case "decirate" :
      return regDeciRateW.test(word);

		case "decifrnrate" :
		  return regDeciRateFrnW.test(word);

    case "code" :
      return regUpperW.test(word);
    
    case "lower" :
      return regLowerW.test(word);
    
    case "alphabet" :
      return regAlphaW.test(word);
      
   case "an" :      // Alpha numeric
      return regAlphaNumW.test(word);
   
   case "ancaps" :  // Alpha numeric Caps
      return regAnCapsW.test(word);
      
   case "website" :	// Website		
      return regWebsiteW.test(word);      
   
   case "email" :		// Email
      return regEmailW.test(word);

   case "name" :    // Name
      return regNameW.test(word);
	
	 case "desc" :    // Description
      return regDescW.test(word);
      
	 case "tile" :    // Tile
      return regTileW.test(word);
   
  case "comp" :    // Company Name
      return regCompW.test(word);
   
  case "gstnum" :  // GST Number
      return regGSTW.test(word);
	
  case "custname" :    
     return regCustW.test(word);

  case "uomcon" :    
      return regUOMConW.test(word);  

  case "country" : // Country
      return regCountryW.test(word);
  
  case "pass" :   // Password
      return regPassW.test(word);
  
  case "phone" :  // Phone Number
      return regPhoneW.test(word);  
  
	case "iso" :    
      return regISOW.test(word);  

  case "currency" :    
      return regCurrencyW.test(word);  
   
  case "percentage" :    
      return regPercentageW.test(word);
  
  case "mpercentage" :
			return regMPercentageW.test(word);
			
case "spercentage" :
			return regSPercentageT.test(word);
			
			
  case "taxOne" :    
      return regtaxOneW.test(word);
  
  case "regall" :
	case "anall" :
    var blnFlag=false;
		var blnTemp;
				
		blnTemp = regAnAllW.test(word);
		if (!(blnTemp))
			return false;
		else		
			blnFlag = blnFlag || false;
		
		blnTemp = !(regComma.test(word));
		
		if (!(blnTemp))
			return false;
		else
			blnFlag = blnFlag || false;
		
		blnTemp = (!(regQuotesW.test(word)));
		
		if (!(blnTemp))
			return false;
		else
			blnFlag = blnFlag || false;
		
		blnFlag	= (!(blnFlag));
		return blnFlag;
		break;
  
  case "angrand" :
  case "grandall":
		var blnFlag=false;
		var blnTemp;
				
		blnTemp = regGrandW.test(word);
		if (!(blnTemp))
			return false;
		else		
			blnFlag = blnFlag || false;
		
		blnTemp = !(regComma.test(word));
		
		if (!(blnTemp))
			return false;
		else
			blnFlag = blnFlag || false;

		blnTemp = (!(regQuotesW.test(word)));
		
		if (!(blnTemp))
			return false;
		else
			blnFlag = blnFlag || false;
		
		blnFlag	= (!(blnFlag));
		return blnFlag;
		break;      
       
  case "quotes" :    
      return regQuotesW.test(word);
      
  case "comma" :
      return regComma.test(word);
  }
 } 

// purpose : to validate date and to format the given date.
// if format is 1 - checks day, month and returns mm/dd/yyyy
// if format is 2 - returns dd/mm/yyyy
function formDate(dateVal,format)
{
	var arrDate,str="";
  if (dateVal == "")
    return "";					// return empty string
  
  arrParts = dateVal.split(" ");
	arrDate = arrParts[0].split("/");
  
  if ((arrDate.length) != 3)
		{	alert("Invalid Date"); return false; }
  
  if (format == "1")            // if format is 1 check the fields.
  {
		intDay  = arrDate[0];
		intMon  = arrDate[1];
		intYear = arrDate[2];
		
		if (intDay.length == 0)
		{alert("Invalid Date"); return false;	}
		
		if (intMon.length == 0)
		{	alert("Invalid Month"); return false;	}
		
		if ((intDay.length == 2) && (intDay.substring(0,1) == "0"))
			intDay = intDay.substring(1);
			
		if ((intMon.length == 2) && (intMon.substring(0,1) == "0"))
			intMon = intMon.substring(1);
		
		intDay = parseInt(intDay);
		intMon = parseInt(intMon);
		intYear = parseInt(intYear);
		
		var tempYear = "";
    tempYear=intYear.toString();
    
    if (tempYear.length != 4)
		{	  alert("Invalid Year"); return false;	}
		
		if (parseInt(intYear) > 2078)
	  { 
        alert("Year Should not exceed 2078.Invalid Year.");
        return false;
	  }
	  
		if ((intMon >12) || (intMon ==0))
      {	alert("Invalid Month"); return false;	}
      
    intDaysInMonth = parseInt(daysInMonth(intMon,intYear));
      
		if ((intDay > intDaysInMonth) || (intDay == 0))
      {	alert("Invalid Date"); return false;	}
    
		tempYear = tempYear.substring(0,2);
		tempYear = parseInt(tempYear);
		
		if ((tempYear < 19) ||  (tempYear > 21))
		 {	alert("Invalid  Year"); return false;	}
  }
  if(arrDate[1].length == 1)
    arrDate[1] = "0" + arrDate[1];
   
  if(arrDate[0].length == 1)
    arrDate[0] = "0" + arrDate[0];
  
  str = arrDate[1] + "/" + arrDate[0] + "/" + arrDate[2];
  return str;
} 
  
function daysInMonth(mon,intTYear)
{	
	if ((mon.length == 2) && (mon.substring(0,1) == "0"))
		mon = mon.substring(1);

	days = 0;
	
	switch(mon)
	{
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:		
			{
			days = 31;
			break;
			}
		case 4:
		case 6:
		case 9:	
		case 11:
			{
			days = 30;
			break;
			}
		case 2:
			{
			days = 28;
			// check for leap year.
			if ((intTYear % 4 == 0) && ((intTYear%400 == 0) || (intTYear%100 != 0)))
			  days = 29;
			break;  
			}
	}
	return days;
	
/*	
	if ((mon % 2) == 0)
		days = 30;
	else
		days = 31;
	
	if (mon == 2)
	{
		days = 28;
		// check for leap year.
		if ((intTYear % 4 == 0) && ((intTYear%400 == 0) || (intTYear%100 != 0)))
		  days = 29;
	}
*/
	

}
 
//To check the given date is greater than current date
function checkCrntDate(mdate,cdate)
{	

	if ((cdate == "") || (mdate == ""))
		return true;
		
  dateToChk = mdate; //formDate(mdate,1);  
  curDate   = cdate;
  
  // To split the day,month,year of Manufactured date
     arrDate = dateToChk.split("/");
     
     intMonth = arrDate[0];
     intDay = arrDate[1];
     intYear  = arrDate[2];
		
		if ((intDay.length == 2) && (intDay.substring(0,1) == "0"))
			intDay = intDay.substring(1);
		
		if ((intMonth.length == 2) && (intMonth.substring(0,1) == "0"))
			intMonth = intMonth.substring(1);
		
		
		intDay = parseInt(intDay);
		intMonth = parseInt(intMonth);
		intYear = parseInt(intYear);
		
     arrCur = curDate.split("/");
     
     intCmonth = arrCur[0]; 
     intCday   = arrCur[1]; 
     intCyear  = arrCur[2];
     
     if ((intCday.length == 2) && (intCday.substring(0,1) == "0"))
			intCday = intCday.substring(1);
		
		if ((intCmonth.length == 2) && (intCmonth.substring(0,1) == "0"))
			intCmonth = intCmonth.substring(1);

  
  // To check whether given date is greater than current date
    if (parseInt(intYear) < parseInt(intCyear))
    {
      return false;
    }  

    if((parseInt(intYear) == parseInt(intCyear)) && 
			(parseInt(intMonth) < parseInt(intCmonth)))
		{	
      return false;
     } 
         
   if((parseInt(intYear) == parseInt(intCyear)) && 
			(parseInt(intMonth) == parseInt(intCmonth)) && 
			(parseInt(intDay) < parseInt(intCday)))
	 {		
     return false;
   }  
     
   return true;
}

//To check the given date is greater than or equal to current date
function checkCrntDateEQ(mdate,cdate)
{	
	if ((cdate == "") || (mdate == ""))
		return true;
		
  dateToChk = mdate; //formDate(mdate,1);  
  curDate   = cdate;
  
  // To split the day,month,year of Manufactured date
     arrDate = dateToChk.split("/");
     
     intMonth = arrDate[0];
     intDay = arrDate[1];
     intYear  = arrDate[2];
		
		if ((intDay.length == 2) && (intDay.substring(0,1) == "0"))
			intDay = intDay.substring(1);
		
		if ((intMonth.length == 2) && (intMonth.substring(0,1) == "0"))
			intMonth = intMonth.substring(1);
		
		intDay = parseInt(intDay);
		intMonth = parseInt(intMonth);
		intYear = parseInt(intYear);
    
     arrCur = curDate.split("/");
     intCmonth = parseInt(arrCur[0]); 
     intCday   = parseInt(arrCur[1]); 
     intCyear  = parseInt(arrCur[2]);

  // To check whether given date is greater than current date
    if (parseInt(intYear) < parseInt(intCyear))
      return false;

    if((parseInt(intYear) == parseInt(intCyear)) && 
			(parseInt(intMonth) < parseInt(intCmonth)))
      return false;
         
   if((parseInt(intYear) == parseInt(intCyear)) && 
			(parseInt(intMonth) == parseInt(intCmonth)) && 
			(parseInt(intDay) <= parseInt(intCday)))
     return false;
     
   return true;
}

 
  

// To select a radio button of given value out of the radio group.
function chkRadioVal(strRadio,val,cnt,strFormName)
{
 with(document.forms.item(strFormName).item(strRadio))
  {
		for(i=0;i<cnt;i++)
			if (val.substr(0,item(i).value.length) == item(i).value)
			{	
			  item(i).checked=true;    
			  break;  
			}
	}		
}

// To get the radio button value selected
function getRadioVal(strRadio,cnt,strFormName)
{ 
  var strRadVal=""; 
  with (document.forms.item(strFormName).item(strRadio))  
  { 
   for(i=0;i<cnt;i++)
		if (item(i).checked)
    {  strRadVal = item(i).value; break;  }
  }
   return strRadVal;
}

function getRadActive(strType)
{
	if (strType == "Y")
    return "Yes";
  else if (strType == "N")
    return "No";
}

// Function to Validate a Field
// Inputs : Field Name. ex - txtItemCd
//          Field Name Message. ex - Item Code
//          Validate condition. ex - numeric / an
//          Optional. ex - 1 : mandatory fld 0 : optional fld
function validateFld(strFld,strFldName,strVald,intOptional)
{
  if (document.frmHeader.item(strFld) == null)
    return true;
  
  if (document.frmHeader.item(strFld).disabled)
    return true;
      
  if (intOptional == 1)
  { 
    if (document.frmHeader.item(strFld).value == "")
	  {
	  	alert("Please Fill up the "+strFldName);
	  	document.frmHeader.item(strFld).focus();
	  	return false;
	  }
	  
	  if (!chkWord(strVald,frmHeader.item(strFld).value))
	  {
	  	alert("Invalid "+strFldName);
	  	document.frmHeader.item(strFld).focus();
	  	return false;
	  }	
	}
	else
	{
	  if (document.frmHeader.item(strFld).value == "")
	  {
	    if (!chkWord(strVald,frmHeader.item(strFld).value))
	    {
	    	alert("Invalid "+strFldName);
	    	document.frmHeader.item(strFld).focus();
	    	return false;
	    }	
	  }
  }	    
	return true;
}

//////////////// Coding  for Button Operations ////////////////////

// Variables for storing button state. it is set to True if the 
//button is enabled. False in disabled state.

var isEnabled = new Array();
var i;
for(i=0;i<=22;i++)
	isEnabled[i] = true;

// all the button states are maintained in the array isEnabled[].
// To get the state of a button, its array index is neccessary.
// This function returns the array index of the given button.
function getIndex(btnName)
{	
	switch(btnName)
	{ 
		case "Add" :		return 0;
		case "Edit" :		return 1;
		case "Delete" :	return 2;
		case "Save" :		return 3;
		case "Cancel" :	return 4;
		case "Search" :	return 5;
		case "First" :	return 6;
		case "Prev" :		return 7;
		case "Next" :		return 8;
		case "Last" :		return 9;
		case "Print" :	return 10;
		case "Approve" :return 11;
		
		case "AddC" :		return 12;
		case "EditC" :	return 13;
		case "DeleteC" :	return 14;
		case "SaveC" :		return 15;
		case "CancelC" :	return 16;
		case "SearchC" :	return 17;
		case "FirstC" :		return 18;
		case "PrevC" :		return 19;
		case "NextC" :		return 20;
		case "LastC" :		return 21;
		
		case "Mail" :		return 22;
 }
}

//enables / disables the given button. (i.e)
function enableBtn(btnName,blnState)
{	

	var index,btn,type,strImage;
	var isChild = "";
	type="e";				// Enable button by default.  
	if (!blnState)  // if blnstate is false, use Disable the button.
		type="d";
   
	index = getIndex(btnName);
	isEnabled[index] = blnState;
	btn = "img" + btnName;	
	strImage = btnName;
	isChild = btnName.substring(btnName.length-1);
	
	if ((isChild == "0") || (isChild == "1"))
		strImage = btnName.substring(0,btnName.length-1);
		
	if (document.images.item(btn) != null)
		document.images.item(btn).src="..\\images\\" + type + strImage +".gif";
		
}
//To close the form at esc only to be used in popups
function getCloseEvtCaptured()
{
	if(window.event.keyCode==27) 
	{
		self.close();	
		window.opener.focus();
	}
	
}

// To chage the image of given button.
function changeImage(btnName,type)
{
	var index,btn,strImage;
	var isChild = "";
	strImage = btnName;
	
	index = getIndex(btnName);
  btn = "img" + btnName;
  
	isChild = btnName.substring(btnName.length-1);
	
	if ((isChild == "0") || (isChild == "1"))
		strImage = btnName.substring(0,btnName.length-1);
  
  if (isEnabled[index])
  {
  
		if (document.images.item(btn) != null)
			document.images.item(btn).src="..\\images\\" + type + strImage +".gif";
	}
}







