// @author linda_chuang 

function ignoreWord(string,ignorestring) {
	var temp = "";
	string = '' + string;
	splitstring = string.split(ignorestring);
	for (i = 0; i < splitstring.length; i++) {
		temp += splitstring[i];
	}
	return temp;
}

function ignoreSpaces(string) {
	var temp = string;
	temp = ignoreWord(temp," ");
	return temp;
}

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;
}

//check e-mail format
function checkMailFormat(objField,strFieldName){
	if (objField.value.indexOf('\'')!=-1){
		alert("[ "+strFieldName+" ] can not include [ ' ].");
		objField.focus();
		return true;
	}

	if (objField.value.length >0){
		i=objField.value.indexOf("@");
		j=objField.value.indexOf(".",i);
		k=objField.value.indexOf(",");
		kk=objField.value.indexOf(" ");
		jj=objField.value.lastIndexOf(".") + 1;
		len=objField.value.length;
		
		if ((i <= 0) || (j <= (1+1)) || (k != -1) || (kk != -1) || (len-jj < 2) || (len-jj > 3)){
			alert("[ "+strFieldName +" ] is invalid.");
			objField.focus();
			return true;
		}
	}
}

//check field isNumber 
function isNumber(objField,strFieldName,len){
	if(objField.value==""){
		if(strFieldName!=""){
			alert("Please input [ " + strFieldName + " ].") ;
			objField.focus() ;
		}
		return true ;
	}
	if (objField.value.length > len){
		alert("[ "+strFieldName+" ] is the wrong length.");
		return true;
	}else{
		for(i=0;i<objField.value.length;i++){
			if(isNaN(objField.value.charAt(i))){
				alert("[ "+ strFieldName + " ] should be a number.") ;
				objField.focus() ;
				return true ;
			}
		}
	}
}

function trimIsNumberField1(aString){
	var temp="";
	if(aString==""){
		return aString;
	}else if (aString.indexOf(",")!=-1){
		for(i=0;i<aString.length;i++){
			if(isNaN(aString.charAt(i)) && aString.charAt(i)!=","){
			} else {
				temp = temp + aString.charAt(i);
			}
		}
		return temp;
	}else{
		for(i=0;i<aString.length;i++){
			if(isNaN(aString.charAt(i)) && aString.charAt(i)!="%"){
			} else {
				temp = temp + aString.charAt(i);
			}
		}
		return temp;
	}
}

 
//check field isNull
function isNull(objField,strFieldName){
	if(objField.value==""){
		if(strFieldName!=""){
			alert("Please input [ " + strFieldName + " ].") ;
			objField.focus() ;
		}
		return true ;
	}//else{
	 //	if (checkStrField(objField,strFieldName)) return true;
	//}
}


//check field
function checkSqlStrField1(objField,strFieldName){
	if (objField.value.indexOf("'")!=-1){
		alert("[ "+strFieldName+" ] can not include [ ' ].");
		objField.focus();
		return true;
	}
}

function trimSqlStrField1(aString) {
	var temp = aString;
	temp = ignoreWord(temp,"'");
	return temp;
}

function trimSqlStrField2(aString) {
	var temp = aString;
	temp = ignoreWord(temp,"'");
	temp = ignoreWord(temp," ");
	temp = temp.toUpperCase();
	return temp;
}

//check textarea length
function checkStrLength(objField,strFieldName,len){
	if (objField.value.length > len){
		alert("[ "+strFieldName+" ] is the wrong length.");
		objField.focus() ;
		return true;
	}
}



//checkPassword
function checkPassword (objField, strFieldName) {
 	if (objField.value == "") {
   	   alert("Please input [ " + strFieldName + " ].") ;
   	   objField.focus() ;
   	   return true;
 	}
    var illegalChars = /[\W_]/; // allow only letters and numbers
    
    if ((objField.value.length < 6) || (objField.value.length > 8)) {
       alert("[ "+strFieldName+" ] must have 6-8 digit. ");
       objField.focus() ;
       return true;
    }
    else if (illegalChars.test(objField.value)) {
       alert("The [ "+strFieldName+" ] contains illegal characters.");
       objField.focus() ;
       return true;
    }
//	else if (!((objField.value.search(/(a-z)+/))
//  			|| (objField.value.search(/(A-Z)+/))
//  			|| (objField.value.search(/(0-9)+/)))) {
// 	  alert("The password must contain letters or numerals.");
//  	  return true;
// }

}





//check field IP 
function checkIP(objField,strFieldName,len){
	if(objField.value==""){
		if(strFieldName!=""){
			alert("Please input [ " + strFieldName + " ].") ;
			objField.focus() ;
		}
		return true ;
	}
	if (objField.value.length > len){
		alert("[ "+strFieldName+" ] is the wrong length.");
		return true;
	}else{
		for(i=0;i<objField.value.length;i++){
			if(isNaN(objField.value.charAt(i))){
				alert("[ "+ strFieldName + " ] should be a number.") ;
				objField.focus() ;
				return true ;
			}
		}
	}
	
	if (objField.value < 1 || objField.value > 254){
	    alert("[ "+ strFieldName + " ] is not a valid IP .") ;
		objField.focus() ;
		return true ;	    
	}
}

function validFtpPath(objField,strFieldName) {
	var illegalChars = /[\(\)\<\>\,\;\:\\\"\[\]]/;
	if ( illegalChars.test(objField.value) ) {
       		alert("The [ "+strFieldName+" ] contains illegal characters.");
       		objField.focus() ;
		return true;
	}
}

// == trim for javascript == //

function trim(aString) {
	return aString.replace(/^\s*|\s*$/g, '');
}

// == handle user key enter == //

function handleEnter(e, selection, field) {
	if (e.keyCode == 13) {
		addEmail(selection, field);
		return false;
	}
}

// == Only return true/false validate function == //

function validPasswd(passwd) {
	var illegalChars = /[\W_]/;
	if ( passwd.match(illegalChars) ) return false;
	return ((passwd.length >= 6) && (passwd.length <= 8));
}

function validEmail(email) {
	var emailFilter = /^.+@.+\..{2,3}$/;
	var illegalChars = /[\(\)\<\>\,\;\:\\\/\"\[\]]/
	if ( email.match(illegalChars)) return false;
	return emailFilter.test(email);
}

function checkText(txtField, regx) {
	if (txtField.value.match(regx)) {
		return true;
	}
	return false;
}

function selectRadio(radioField, value) {
	for (var i = 0; i < radioField.length; i++) {
		if ( radioField[i].value == value ) {
			radioField[i].checked = true;
		}
	}
}

function checkRadio(radioField, value) {
	for (var i = 0; i < radioField.length; i++) {
		if ( radioField[i].checked && (radioField[i].value == value) ) {
			return true;
		}
	}
	return false;
}

function validateCheckBox(field) {
	if ( !field ) return false;
	if ( !field.length && field.checked ) {
		return true;
	}
	for (var i = 0; i < field.length; i++) {
		if ( field[i].checked ) {
			return true;
		}
	}
	return false;
}

/////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////


//uca1 
function chkForm_AddGroup(theForm){
    if (isNull(theForm.groupName,"Group Name"))	  return false ;
    if (isNull(theForm.desc,"Group Discription"))	return false ;
    theForm.submit();
}

//uca5  20051017 
function chkForm_AddNews(theForm){
    if (isNull(theForm.groupName,"Group Name"))	  return false ;
    if (isNull(theForm.desc,"News Discription"))	return false ;
    theForm.submit();
}


//uca3
function chkForm_AddGroupMember(theForm){
    if (isNull(theForm.account,"Account Name"))	  return false ;
    if (checkPassword(theForm.password,"Password"))	return false ;
    if (checkPassword(theForm.password2,"Password Confirm"))	return false ;
    if(theForm.password.value!=theForm.password2.value){ alert("Please confirm your password again!!"); return false;}
    if (checkMailFormat(theForm.email,"Email Address"))	return false ;
    theForm.submit();
}
function chkForm_ModifyGroupMember(theForm){
    if (checkPassword(theForm.password,"Password"))	return false ;
    if (checkPassword(theForm.password2,"Password Confirm"))	return false ;
    
    if(theForm.password.value!=theForm.password2.value){ alert("Your Password is not match!!"); return false;}
    theForm.submit();
}

function chkForm_AddFTP(theForm){
    if (checkIP(theForm.ftp1,"FTP Address",3))	  return false ;
    if (checkIP(theForm.ftp2,"FTP Address",3))	  return false ;    
    if (checkIP(theForm.ftp3,"FTP Address",3))	  return false ;    
    if (checkIP(theForm.ftp4,"FTP Address",3))	  return false ;    
    if (isNumber(theForm.ftpPort,"FTP Port",4))	  return false ;
    if (isNull(theForm.ftpUserId,"FTP User ID"))	return false ;
    if (isNull(theForm.ftpPassword,"FTP User Password"))	  return false ;
    if (validFtpPath(theForm.directoryPath,"Directory Path"))	  return false ;
    
    theForm.submit();
}





