function isValidEmail(input) {
//    var format = /^(\S+)@(\S+)\.([A-Za-z]+)$/;
//    var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
    var format =/^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$/i;    
    return isValidFormat(input,format);
}
function isDate(sDate) {
	var sOrgDate, sPatt;
	var sYear = "", sMonth = "", sDay = "";   
	var iYear = 0, iMonth = 0, iDay = 0;

 	sPatt = /\//g; sDate = sDate.replace(sPatt,"");
 	sPatt = /-/g;  sDate = sDate.replace(sPatt,"");
 	sPatt = /\./g; sDate = sDate.replace(sPatt,"");

 	if(sDate == "") return "";
 	if(sDate.length != 8) return "";
 	else {
    	sYear = sDate.substring(0,4);
		sMonth = sDate.substring(4,6); 
		sDay = sDate.substring(6,8); 
 	}  
    
    if(isNaN(sYear) || isNaN(sMonth) || isNaN(sDay)) return "";

  	iYear = parseInt(sYear,'10'); 
    iMonth = parseInt(sMonth,'10'); 
    iDay = parseInt(sDay,'10'); 

    if (iYear < 1) iYear = 0;
    if (iMonth < 1 || iMonth > 12)  iMonth = 0;
    if (iDay < 1) iDay = 0;
       
    if ( iMonth == 1 || iMonth == 3 || iMonth == 5 || iMonth == 7 || iMonth == 8 || iMonth == 10 || iMonth == 12)  { 
  		if (iDay > 31) iDay = 0;  
    } 
    else if (iMonth == 4 || iMonth == 6 ||  iMonth == 9 || iMonth == 11) {
  		if (iDay > 30) iDay = 0;  
    } 
    else if (iMonth == 2 )  { 
  		if (iYear % 4 != 0 || (iYear % 100 == 0 && iYear % 400 != 0)) {
   			if (iDay > 28) iDay = 0;  
  		} 
  		else if (iDay > 29) iDay = 0;  
    } 
    if(iYear == 0 || iMonth == 0 || iDay == 0) return "";
 	else return sYear + "-" + sMonth + "-" + sDay;  
}

function isValidFormat(input,format) {
	if(format.test(input)){
		return true;
	}   
    return false;
}

function isValidPhone(input){
	var format = /^(d+)-(d+)-(d+)$/;
	return isValidFormat(input,format);
}

function ltrim(target) {
 var i;
 var str = (target == "[object]") ? target.value : target;

 str = str == null ? "" : str;

 for (i = 0; i < str.length; i++) {
  if (str.charAt(i) != ' ') {
   break;
  }
 }
 return str.substring(i, str.length);
}

function rtrim(target) {
 var i;
 var str = (target == "[object]") ? target.value : target;
 str = str == null ? "" : str;

 for (i = str.length; i > 0; i--) {
  if (str.charAt(i - 1) != ' ') {
   break;
  }
 }

 return str.substring(0, i);
}

function trim(target) {
 return rtrim(ltrim(target));
}


String.prototype.trim = function()
{
    return this.replace(/(^\s*)|(\s*$)/g, "");
}

function isBlank(s)
{
	return (trim(s).length == 0);
}		

function overSize_utf8(s, maxlen)
{
	var vlen = 0;
	for(i = 0; i < s.length; i++)
	{ 
		var c = s.charAt(i); 
		vlen += (c.charCodeAt() > 128) ? 3 : 1;
	}
	
	return (vlen > maxlen);
}

function str_encode(str)
{
	var enstr = escape(str);
	enstr = enstr.replace("+", "%2B");
	enstr = enstr.replace("/", "%2F");        
	
	return enstr;
}

function isNumeric(s)
{
	if (isBlank(s))
		return false;
		
	var ValidChars = "0123456789";
	var IsNumber=true;
	var Char;

	for (var i = 0; i < s.length && IsNumber == true; i++) 
	{ 
		Char = s.charAt(i); 
		if (ValidChars.indexOf(Char) == -1) 
			IsNumber = false;
	}
	
	return IsNumber;
}
function isValidKey(s)
{
	if (isBlank(s))
		return false;
		
	var ValidChars = "~!@#$%^&*()`\"\'";
	var IsValid=false;
	var Char;

	for (var i = 0; i < s.length && IsValid == false; i++) 
	{ 
		Char = s.charAt(i); 		
		if (ValidChars.indexOf(Char) > -1) 
			IsValid = true;
	}
	
	return IsValid;
}

function isCode(s)
{
	if (isBlank(s))
		return false;
		
	var ValidChars = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
	var IsNumber=true;
	var Char;

	for (var i = 0; i < s.length && IsNumber == true; i++) 
	{ 
		Char = s.charAt(i); 
		
		if (ValidChars.indexOf(Char) == -1) 
			IsNumber = false;		
	}
	
	return IsNumber;
}

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.01
  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 && d.getElementById) x=d.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 writeflash(szFileName, iSizeX, iSizeY)
{
	document.write("<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0' width='"+iSizeX+"' height='"+iSizeY+"'>");
	document.write("<param name='movie' value='"+szFileName+"'>");
	document.write("<param name='quality' value='high'>");
	document.write("<param name='menu' VALUE='false'>"); 
	document.write("<param name='wmode' value='transparent'>");
	document.write("<embed src='"+szFileName+"' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='"+iSizeX+"' height='"+iSizeY+"' wmode='transparent' style='position:relative;z-index:1;'></embed></object>");
}
function tblMOver(idName, rnum, color) {
	cols = idName.rows[rnum].cells.length;	
	for ( i = 0; i < cols  ; i++ ) {		
		idName.rows[rnum].cells[i].style.backgroundColor=color;
	}
}
function tblMOut(idName, rnum, color) {
	cols = idName.rows[rnum].cells.length;	
	for ( i = 0; i < cols  ; i++ ) {	
		idName.rows[rnum].cells[i].style.backgroundColor='';	
	}
}
function tblMOverOut(idName, num, color) {
	rows = idName.rows.length;
	cols = idName.rows[0].cells.length;
	for ( i = 0; i < rows  ; i++ ) {
		idName.rows[i].cells[num].style.background=color;
	}
}

function tblCrossMOverOut(idName, rnum,cnum, color) {
	rows = idName.rows.length;
	cols = idName.rows[0].cells.length;
	for ( i = 0; i < rows  ; i++ ) {
		idName.rows[i].cells[cnum].style.background=color;
	}

    for ( i = 0; i < cols  ; i++ ) {
		idName.rows[rnum].cells[i].style.background=color;
	}
}
function imgConvert(page_name, focus_name, img_name, img_format, form_name, link_url){
	var pagefrm;
	if(page_name == focus_name){		
		pagefrm = "<a href=\""+link_url+"\">";
		pagefrm = pagefrm + "<img src=\"../hpkr/image2/"+img_name+"_fc." +img_format + "\" name=\""+form_name+"\" width=\"138\" height=\"23\" border=\"0\"></a>";
	} 
	else {
		pagefrm = "<a href=\""+link_url+"\" onMouseOut=\"MM_swapImgRestore()\" onMouseOver=\"MM_swapImage(\'"+form_name+"\',\'\',\'../hpkr/image2/"+img_name+"_on." + img_format + "\',1)\">";
		pagefrm = pagefrm + "<img src=\"../hpkr/image2/"+img_name+"." +img_format + "\" name=\""+form_name+"\" width=\"138\" height=\"23\" border=\"0\"></a>";
	}
	document.write(pagefrm);
}
function imgConvert2(img_name, img_format, form_name, link_url){
	var pagefrm;	
	pagefrm = "<a href=\""+link_url+"\" onMouseOut=\"MM_swapImgRestore()\" onMouseOver=\"MM_swapImage('" + form_name + "', '', '../hpkr/image2/"+ img_name + "_on." + img_format +"',1)\">";	
	pagefrm += "<img src=\"../hpkr/image2/"+ img_name + "." + img_format + "\" name=\""+ form_name + "\" width=\"138\" height=\"23\" border=\"0\"></a>";
		
	document.write(pagefrm);
}

//Java Ajax Part
function createHttpRequest()
{
    if (window.ActiveXObject) {
        try {
            // IE6
            return new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                // IE4, IE5
                return new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e2) {
                return null;
            }
        }
    } else if (window.XMLHttpRequest) {
        // Mozilla, FireFox, Opera, Safari, Konqueror3
        return new XMLHttpRequest();
    } else {
        return null;
    }
}
function getValues(url, param, func){	
    var request = createHttpRequest();	
	if(param != ''){	
		request.onreadystatechange = function() {
	    	if (request.readyState == 4) {  
	    		if(request.status == 200){   	    			
	    			eval(func + "(" + request.responseText + ")");
	    			return true;
		        }
		        else {
		        	return false;
				}
	        }
	    }	
		request.open("POST", url);
	    request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
	    request.setRequestHeader('Ajax', 'true');        
	   	request.send(param);    
    }
    return true;
}
function writefrmtoDocument(name, val){
	if(navigator.appName.indexOf("Microsoft") != -1){
		if(document.layers){	
			eval("document.layers." + name + ".document.write(" + val + ")");
			eval("document.layers." + name + ".close()");
		}
		else {
			if(document.all){				
				document.getElementById(name).innerHTML = "";
				document.getElementById(name).innerHTML = val;
			}
		}
	}
	else {		
		document.getElementById(name).innerHTML = "";
		document.getElementById(name).innerHTML = val;
	}
}