

function chk_del() {

	if(confirm("Are You Sure You Want to Delete ?")){

		return	true;

	}

	else{

		return false;	

	}

}

function chk_form1(frm,arr){

	var err=0;

	var msg='';

	for (var word in arr){

		if(alltrim(document.forms[frm].elements[word].value=='')){

			msg +='* '+arr[word]+' Cannot be empty\n';

			err = err+1;

		}

	}

	

	if(err >0){

		alert(msg);

		return false;

	}

	

	return true;

}



function chk_form(frm,arr){

	var err = 0;

	var elmnt = new Array();

	var msg ='';

	

	var e;

	for(var word in arr){

		if(alltrim(document.forms[frm].elements[word].value=='')){

			msg +='* '+arr[word]+' Cannot be empty\n';

			elmnt[err] = word;

			err = err+1;

		}

		

	}

	

	if(err >0){

		alert(msg);

		e = elmnt[0];	

		document.forms[frm].elements[e].focus();

		return false;

	}

	

	return true;

}

function popup(who,where,hite,wide){   

	if (window.event)

		{  window.event.returnValue = false;   }

		who = where + who ;

		hite=screen.height-200;

		wide=screen.width-450;



		var props=window.open(who, 'popwin', 'scrollbars=1,toolabars=0,resizable=0,status=0,menubar=0,directories=0,location=0,height='+hite+', width='+wide);

		

		var windowX = (screen.width/2-screen.width/3);

		var windowY = (screen.height/2)-screen.height/3;



		props.moveTo(windowX,windowY);

}

function footerpopup(who,where,hite,wide)

{   

	if (window.event)

	{  window.event.returnValue = false;   }

	who = where + who ;

	hite=screen.height-200;

	wide=screen.width-150;



	var props=window.open(who, 'popwin', 'scrollbars=1,toolabars=0,resizable=0,status=0,menubar=0,directories=0,location=0,height='+hite+', width='+wide);

	

	var windowX = (screen.width/2-screen.width/3);

	var windowY = (screen.height/2)-screen.height/3;



	props.moveTo(windowX,windowY);

}

/*	FUNCTION ALLTRIM 	*/

/*	Usage -> alltrim(string)	*/

function alltrim(para){

var word, temp, chr, flag;



word = para;

word = rtrim(ltrim(word))
if (word[0] == '\n')
{
	word = word.substr(1,word.length-1);
}
return word;

}





/*	FUNCTION LTRIM 		*/

/*	Usage -> ltrim(string)	*/

function ltrim(para){

var word, temp, chr, flag;

word = para;

if (word.length>0){

	flag = false;

	temp = '';

	for (i=0;i<word.length;i++){

		chr = word.charAt(i);

		if (chr!=' '){

			flag = true;

		}

		if (flag==true){

			temp = temp + chr;

		}

	}

	word = temp;

}

return word;

}



/*	FUNCTION ISPHONE	*/

/*	Usage -> ISPHONE(string, integer [Optional])	*/

function isPhone(para) {

	var validchars = "0123456789.+- ";

	var parsed = true;

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

		var letter = para.charAt(i).toLowerCase();

		if (validchars.indexOf(letter) != -1)

			continue;

		if (isPhone.arguments.length==2){

			if (isPhone.arguments[1] == 0){

			alert('"' + para + '" is not a valid phone number.\n\n Please make sure to input a valid phone number.')

			}

		}else{

			alert('"' + para + '" is not a valid phone number.\n\n Please make sure to input a valid phone number.')

		}

		parsed = false;

		break;

	}

	return parsed;

}

/*	FUNCTION RTRIM 		*/

/*	Usage -> rtrim(string)	*/

function rtrim(para){

var word, temp, chr, flag;

word = para;

if (word.length>0){

	flag = false;

	temp = '';

	for (i=word.length - 1;i>=0;i--){

		chr = word.charAt(i);

		if (chr!=' '){

			flag = true;

		}

		if (flag==true){

			temp = chr + temp;

		}

	}

	word = temp;

}

return word;

}



/*	FUNCTION ISDIGIT	*/

/*	Usage -> isDigit(string, integer [Optional])	*/

function isDigit(para) {

	var validchars = "0123456789";

	var parsed = true;

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

		var letter = para.charAt(i).toLowerCase();

		if (validchars.indexOf(letter) != -1)

			continue;

		if (isDigit.arguments.length==2){

			if (isDigit.arguments[1] == 0){

				alert(letter + " is not a digit. Please enter a digit.");

			}

		}else{

			alert(letter + " is not a digit. Please enter a digit.");

		}

		parsed = false;

		break;

	}

	return parsed;

}



function isDecimal(para) {

	var validchars = "0123456789.";

	var parsed = true;

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

		var letter = para.charAt(i).toLowerCase();

		if (validchars.indexOf(letter) != -1)

			continue;

		if (isDecimal.arguments.length==2){

			if (isDecimal.arguments[1] == 0){

				alert('"' + para + '" is not a valid cost.\n\n Please make sure to input a valid cost.')

				

			}

		}else{

			alert('"' + para + '" is not a valid cost.\n\n Please make sure to input a valid cost.')

		}

		parsed = false;

		break;

	}

	return parsed;

}



function getDecimalPlaceValue(prmValue, prmDecimalPlace)

{

    var num = new Number(parseFloat(prmValue));

    return (num.toFixed(parseInt(prmDecimalPlace)));

}



/*	FUNCTION ISALPHA	*/

/*	Usage -> isAlpha(string)	*/

function isAlpha(para) {

	var validchars = "abcdefghijklmnopqrstuvwxyz";

	var parsed = true;

		var letter = para.toLowerCase();

		if (validchars.indexOf(letter) == -1)		

			parsed = false;

	return parsed;

}



/*	FUNCTION BLOCKCHARS	*/

/*	Usage -> blockChars(Checking String, Blocking Character List, integer [Optional])	*/

function blockChars(string, para) {

	var validchars = para;

	var parsed = true;

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

		var letter = string.charAt(i);

		if (validchars.indexOf(letter) == -1)

			continue;

		if (blockChars.arguments.length==3){

			if (blockChars.arguments[2] == 0){

				alert(letter + " is not allowed.");

			}

		}else{

			alert(letter + " is not allowed.");

		}

		parsed = false;

		break;

	}

	return parsed;

}



/*	FUNCTION AllOWLOGINCHARS	*/

/*	Usage -> allowLoginChars(Checking String, integer [Optional])	*/

function allowLoginChars(string) {

	var parsed = true;

	var blockCharacters = "~`!@#$%^&*()-+=|\\{[}]:;\"'<,>.?/ ";

	parsed = blockChars(string, blockCharacters,1);

	if (parsed==false){

		if ((allowLoginChars.arguments.length==1) || 

		(allowLoginChars.arguments.length==2 && allowLoginChars.arguments[1] == 0)){

			alert("Invalid Character(s) Used!!!\nAllowed Characters: [A-Z], [a-z], [0-9], _");

		}

	}

	return parsed;

}





/*	FUNCTION AllOWSKUCHARS	*/

/*	Usage -> allowSkuChars(Checking String, integer [Optional])	*/

function allowSkuChars(string) {

	var parsed = true;

	var blockCharacters = "~`!@#$%^&*()_+=|\\{[}]:;\"'<,>.?/ ";

	parsed = blockChars(string, blockCharacters,1);

	if (parsed==false){

		if ((allowSkuChars.arguments.length==1) || 

		(allowSkuChars.arguments.length==2 && allowSkuChars.arguments[1] == 0)){

			alert("Invalid Character(s) Used!!!\nAllowed Characters: [A-Z], [a-z], [0-9], -");

		}

	}

	return parsed;

}



/*	FUNCTION ISNUMBER	*/

/*	Usage -> isNumber(string)	*/

function isNumber(para) {

	if (isNaN(para)==true)

		return false;

	else

		return true;



}



/*	FUNCTION CHECKEMAIL	*/

/*	Usage -> checkEmail(string)	*/

function checkEmail (emailStr) {

var emailPat=/^(.+)@(.+)$/

var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"

var validChars="\[^\\s" + specialChars + "\]"

var quotedUser="(\"[^\"]*\")"

var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/

var atom=validChars + '+'

var word="(" + atom + "|" + quotedUser + ")"

var userPat=new RegExp("^" + word + "(\\." + word + ")*$")

var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")



var matchArray=emailStr.match(emailPat)

if (matchArray==null) {

	//alert('"' + emailStr + '" is not a valid email address.\n\n Please make sure to input a valid email address.')

	return false

}

var user=matchArray[1]

var domain=matchArray[2]



if (user.match(userPat)==null) {

  // alert('"' + emailStr + '" is not a valid email address.\n\n Please make sure to input a valid email address.')

    return false

}



var IPArray=domain.match(ipDomainPat)

if (IPArray!=null) {

	  for (var i=1;i<=4;i++) {

	    if (IPArray[i]>255) {

	       // alert("Destination IP address is invalid.")

		return false

	    }

    }

    return true

}



var domainArray=domain.match(domainPat)

if (domainArray==null) {

	//alert("The domain name you entered doesn't seem to be valid.")

    return false

}



var atomPat=new RegExp(atom,"g")

var domArr=domain.match(atomPat)

var len=domArr.length

if (domArr[domArr.length-1].length<2 || 

    domArr[domArr.length-1].length>3) {

   //alert("The address must end in a three-letter domain, or two letter country code.")

   return false

}



if (len<2) {

   var errStr="This address is missing a hostname."

   //alert(errStr)

   return false

}



return true;

}



/*	FUNCTION STRCMP 	*/

/*	Usage -> strcmp(string1,string2)	*/

function strcmp(para1, para2){

var i, flag;

if (para1.length != para2.length){

	return false;

}



flag = true;

for(i=0;i<para1.length;i++){

	if (para1.substring(i,i+1) == para2.substring(i,i+1)){

		continue;

	}

	flag = false;

	break;

}

return flag;

}





/*	FUNCTION STRCMPI 	*/

/*	Usage -> strcmpi(string1,string2)	*/

function strcmpi(para1, para2){

var i, flag;

if (para1.length != para2.length){

	return false;

}



flag = true;

for(i=0;i<para1.length;i++){

	if (para1.substring(i,i+1).toLowerCase() == para2.substring(i,i+1).toLowerCase()){

		continue;

	}

	flag = false;

	break;

}

return flag;

}





/*	FUNCTION ICAP 	*/

/*	Usage -> iCap(string1)	*/

function iCap(para){

var i, c, flag;

var newstring = '';

flag = true;

for(i=0;i<para.length;i++){

	c = para.substring(i,i+1);

	if (flag==true){

		c = c.toUpperCase();

		flag = false;

	}

	else{

		c = c.toLowerCase();

	}

	if (c == ' '){

		flag = true;

	}

	newstring = newstring + c;

}

return newstring;

}







/*      FUNCTION DATECHECK      */

/*      Usage -> dateCheck(textbox object, dateformat) */

function dateCheck()

{

    var dd, mm, yy;

    var ddstr, mmstr, yystr;

    var mmname = new Array("January","February","March","April","May","June","July","August","September","October","November","December");



    obj = dateCheck.arguments[0];

    obj.value = alltrim(obj.value);

	alert(obj.value);



    if (obj.value.length > 0)

    {

	    if (obj.value.length < 10)

	    {

            if (dateCheck.arguments.length==2)

            {

                if (strcmpi("dd/mm/yyyy", dateCheck.arguments[1]))

                {

		            alert('Invalid date format !!!\n\n' + 'Correct Format:\n' + 'dd/mm/yyyy');

		            obj.select();

		            obj.focus();

		            return false;

	            }

	            else

	            {

		            alert('Invalid date format !!!\n\n' + 'Correct Format:\n' + 'mm/dd/yyyy');

		            obj.select();

		            obj.focus();

		            return false;

	            }

            }

            else

            {

		        alert('Invalid date format !!!\n\n' + 'Correct Format:\n' + 'mm/dd/yyyy');

		        obj.select();

		        obj.focus();

		        return false;

		    }

	    }

	    else

	    {

	        if (dateCheck.arguments.length==2)

	        {

	            if (strcmpi("dd/mm/yyyy", dateCheck.arguments[1]))

	            {

                    ddstr = obj.value.substring(0,2);

                    mmstr = obj.value.substring(3,5);

                    yystr = obj.value.substring(6,10);

		        }

		        else

		        {

		            mmstr = obj.value.substring(0,2);

		            ddstr = obj.value.substring(3,5);

		            yystr = obj.value.substring(6,10);

		        }

	        }

	        else

	        {

	            mmstr = obj.value.substring(0,2);

	            ddstr = obj.value.substring(3,5);

	            yystr = obj.value.substring(6,10);

	        }





		    if ((isNaN(ddstr)==true) || (isNaN(mmstr)==true) || (isNaN(yystr)==true))

		    {

			    alert('Invalid Characters');

			    obj.select();

			    obj.focus();

			    return false;

		    }



		    if ((obj.value.substring(2,3)!='/') || (obj.value.substring(5,6)!='/'))

		    {

			    obj.value = mmstr + '/' + ddstr + '/' + yystr;

		    }



/* Converting to Numeric Date */

		    dd = parseInt(ddstr);

		    mm = parseInt(mmstr);

		    yy = parseInt(yystr);



		    if (mm >12)

		    {

			    alert('Invalid Month !!!');

			    obj.select();

			    obj.focus();

			    return false;

		    }



/* Check For the Month of February */

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

		    {

			    alert('Invalid Date !!!\nFebruary has 29 days in ' + yystr);

			    obj.select();

			    obj.focus();

			    return false;

		    }

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

		    {

			    alert('Invalid Date !!!\nFebruary has 28 days in ' + yystr);

			    obj.select();

			    obj.focus();

			    return false;

		    }



/* Check For the Months having 30 days */

		    if (((mm == 4) || (mm == 6) || (mm == 9) || (mm == 11))&& (dd>30))

		    {

			    alert('Invalid Date !!!\n' + mmname[mm-1] + ' has 30 days.');

			    obj.select();

			    obj.focus();

			    return false;

		    }

			

/* Check For the Month having 31 days */

		    if (((mm == 1) || (mm == 3) || (mm == 5) || (mm == 7) || (mm == 8) || (mm == 10) || (mm == 12))&& (dd>31))

		    {

			    alert('Invalid Date !!!\n' + mmname[mm-1] + ' has 31 days.');

			    obj.select();

			    obj.focus();

			    return false;

		    }

	    }

    }

    return true;

}





/* FUNCTION DROPDOWN_DATECHECK */

/* Usage -> dropdown_datecheck(date dropdown Object, month dropdown Object, year dropdown Object) */

function dropdown_datecheck(dateObj,monthObj,yearObj)

{

	var dd;

	var mm;

	var yy;

	var mmname = new Array("January","February","March","April","May","June","July","August","September","October","November","December");

	dd=parseInt(dateObj[dateObj.selectedIndex].value);

	mm=parseInt(monthObj[monthObj.selectedIndex].value);

	yy=parseInt(yearObj[yearObj.selectedIndex].value);

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

	{

		alert('Invalid Date !!!\nFebruary has 29 days in ' + yy);

		dateObj.select();

		dateObj.focus();

		return false;

	}

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

	{

		alert('Invalid Date !!!\nFebruary has 28 days in ' + yy);

		dateObj.select();

		dateObj.focus();

		return false;

	}



	if (((mm == 4) || (mm == 6) || (mm == 9) || (mm == 11))&& (dd>30))

	{

		alert('Invalid Date !!!\n' + mmname[mm-1] + ' has 30 days.');

		dateObj.select();

		dateObj.focus();

		return false;

	}

	return true;

}





/*	FUNCTION FORMATDATE 	*/

/*	Usage -> formatDate(string [optional])	*/

function formatDate(){

today = new Date();

if (formatDate.arguments.length!=1){

	delim='-';

}

else{

	delim = alltrim(formatDate.arguments[0]);

}

return (today.getFullYear() + delim + Ctos(today.getMonth() + 1) + delim+Ctos(today.getDate()));

}





/*	FUNCTION CTOS 	*/

/*	Usage -> Ctos(string)	*/

function Ctos(para){

if (para<10){

	return ("0" + para);

}

	return para;

}



/*  CHECK DOMAINS */

/* Usage -> checkDomain(String domainname) */

function checkDomain(fieldName)

{



if( (fieldName == null) || 

(fieldName.length == 0 ) ||

(fieldName.indexOf("!") != -1)||

(fieldName.indexOf("@") != -1) ||

(fieldName.indexOf("#") != -1   )||

(fieldName.indexOf("$") != -1   )||

(fieldName.indexOf("%") != -1   )||

(fieldName.indexOf("^") != -1   )||

(fieldName.indexOf("*") != -1   )||

(fieldName.indexOf(",") != -1   )||

(fieldName.indexOf(".") != -1   )||

(fieldName.indexOf("_") != -1   )||

(fieldName.indexOf("+") != -1   )||

(fieldName.indexOf("=") != -1   )||

(fieldName.indexOf("{") != -1   )||

(fieldName.indexOf("}") != -1   )||

(fieldName.indexOf("[") != -1   )||

(fieldName.indexOf("]") != -1   )||

(fieldName.indexOf(":") != -1   )||

(fieldName.indexOf(";") != -1   )||

(fieldName.indexOf(">") != -1   )||

(fieldName.indexOf("|") != -1   )||

(fieldName.indexOf("<") != -1   )||

(fieldName.indexOf("&") != -1   )||

(fieldName.indexOf("(") != -1   )||

(fieldName.indexOf(")") != -1   )||

(fieldName.indexOf("\"") != -1   )||

(fieldName.indexOf("~") != -1   )||

(fieldName.indexOf("'") != -1   )||

(fieldName.indexOf(" ") != -1   )||

(fieldName.indexOf("www") != -1   )||

(fieldName.indexOf("?") != -1   )||

(fieldName.indexOf(".") != -1   ))

{

		alert("Please enter valid characters and do not leave field empty.");

		return false;

}

else

{

	

	return true;

}

}







/*	FUNCTION CBOXCHECKED 	*/

/*	Usage -> cboxChecked(checkbox Object)	*/

/*

---------------------------------------------------

This function can checkout if the given checkbox or 

at least one option of checkbox array is checked.

Parameter checkbox -> Object reference variable of FORM CHECKBOX [Single or Array]

---------------------------------------------------

*/

function cboxChecked(obj){

	var option_selected = false;

	if (typeof obj.length =='undefined'){

		option_selected = obj.checked;

	}else{

		for(i=0;i<obj.length && option_selected==false;i++){

			option_selected = obj[i].checked;

		}

	}

	if (option_selected == true){

		return true;

	}else{

		return false;

	}

}





/*	FUNCTION KITKAT 	*/

/*	Usage -> KitKat(ParentPathName String, ObjName String, RelObjName String)	*/

/*

---------------------------------------------------

This function can checkout if the given checkbox or 

at least one option of checkbox array is checked.

---------------------------------------------------

*/

function KitKat(ParentObjName, ObjName, RelObjName){

	//alert("fgfg")

	var Obj = ParentObjName + "." + ObjName;

	

	var relObj = ParentObjName + "." + RelObjName;

	

	if (typeof eval(Obj).length == 'undefined'){

		eval(relObj).checked = !(eval(Obj).checked);

	}else{

		for(var i=0; i<eval(Obj).length;i++){

			tmpObj = eval(ParentObjName + "." + ObjName + "[" + i + "]");

			tmprelObj = eval(ParentObjName + "." + RelObjName + "[" + i + "]");

			tmprelObj.checked = !(tmpObj.checked);

		}

	}

}





function changeColor(ele,clsName){

	ele.className = clsName;

}



function Set_Cookie( name, value, expires, path, domain, secure ) 

{

	// set time, it's in milliseconds

	var today = new Date();

	today.setTime( today.getTime() );



	/*

	if the expires variable is set, make the correct 

	expires time, the current script below will set 

	it for x number of days, to make it for hours, 

	delete * 24, for minutes, delete * 60 * 24

	*/

	if ( expires )

	{

	expires = expires * 1000 * 60 * 60 * 24;

	}

	var expires_date = new Date( today.getTime() + (expires) );

	

	document.cookie = name + "=" +escape( value ) +

	( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) + 

	( ( path ) ? ";path=" + path : "" ) + 

	( ( domain ) ? ";domain=" + domain : "" ) +

	( ( secure ) ? ";secure" : "" );

	

}



function Get_Cookie( name ) {

	var start = document.cookie.indexOf( name + "=" );

	var len = start + name.length + 1;

	if ( ( !start ) &&

	( name != document.cookie.substring( 0, name.length ) ) )

	{

	return null;

	}

	if ( start == -1 ) return null;

	var end = document.cookie.indexOf( ";", len );

	if ( end == -1 ) end = document.cookie.length;

	return unescape( document.cookie.substring( len, end ) );

}



// this deletes the cookie when called

function Delete_Cookie( name, path, domain ) {

	

	if ( Get_Cookie( name ) ) document.cookie = name + "=" +

	( ( path ) ? ";path=" + path : "") +

	( ( domain ) ? ";domain=" + domain : "" ) +

	";expires=Thu, 01-Jan-1970 00:00:01 GMT";

}



//Showing loader

function showLoader(opt){

	if(opt == 1){

		document.getElementById('systemWorking').style.display = ''; 

	}

	else{

		document.getElementById('systemWorking').style.display = 'none'; 

	} 

}

function showUploadLoader(opt, _suffix){
  
	if(opt == 1){
		window.parent.document.getElementById('systemWorkingUpload' + _suffix).style.display = ''; 
	}
	else{
   		window.parent.document.getElementById('systemWorkingUpload' + _suffix).style.display = 'none';  
    } 

}


function showLoaderParent(opt){

	if(opt == 1){

		window.parent.document.getElementById('systemWorking').style.display = ''; 

	}

	else{

		window.parent.document.getElementById('systemWorking').style.display = 'none'; 

	} 

}



function showBgLoader(opt){

	if(opt == 1){

		document.getElementById('bgDiv').style.width = screen.width+'px';

        document.getElementById('bgDiv').style.height = screen.height+'px'; 

		document.getElementById('bgDiv').style.display = ''; 

	}

	else{

		document.getElementById('bgDiv').style.width = '0px';

        document.getElementById('bgDiv').style.height = '0px'; 

		document.getElementById('bgDiv').style.display = 'none'; 

	} 

}
function showBgLoaderParent(opt){
	if(opt == 1){

		window.parent.document.getElementById('bgDiv').style.width = screen.width+'px';

        window.parent.document.getElementById('bgDiv').style.height = screen.height+'px'; 

		window.parent.document.getElementById('bgDiv').style.display = ''; 

	}

	else{

		window.parent.document.getElementById('bgDiv').style.width = '0px';

        window.parent.document.getElementById('bgDiv').style.height = '0px'; 

		window.parent.document.getElementById('bgDiv').style.display = 'none'; 

	} 

}

function emptyField(emArr){

	if (emArr.length > 0)

	{

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

		{

			if(document.getElementById(emArr[i]).type == 'password' || document.getElementById(emArr[i]).type == 'text' ){

				 document.getElementById(emArr[i]).value = '';

			}

			if(document.getElementById(emArr[i]).type == 'checkbox'){

				 document.getElementById(emArr[i]).checked = false;

			}

		}

	}



}





/*  For password Strength */

	var pass_strength_phrases = {

		0: 'Very Weak',

		10: 'Very Weak',

		20: 'Weak',

		30: 'Weak',

		40: 'Weak',

		50: 'Ok',

		60: 'Ok',

		70: 'Strong',

		80: 'Strong',

		90: 'Very Strong',

		100: 'Very Strong'

	};



	function hideError(id){

		$(id+'Tr').style.display = 'none';

		$('w'+id).style.display = 'none';

	}

	function hideError1(id){

		$(id+'Tr').style.display = 'none';

	}



	 function getkey(e)

	{

		if (window.event)

		return window.event.keyCode;

		else if (e)

		return e.which;

		else

		return null;

	}

	

	function goodchars(e, goods)

	{

		var key, keychar;

		key = getkey(e);

		if (key == null) return true;

		// get character

		keychar = String.fromCharCode(key);

		keychar = keychar.toLowerCase();

		goods = goods.toLowerCase();

		// check goodkeys

		if (goods.indexOf(keychar) != -1)

		return true;

		// control keys

		if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 )

		return true;

		// else return false

		return false;

	}

function addFav() {

	if (navigator.appName=="Netscape") {

		alert("Bookmark this site(Ctrl+D)");

		return false;

	}

	else {

		return window.external.AddFavorite(location.href, document.title);

	}

	

}

