
// either rtn empty or an error message 
function check_field( fld_name, fld_val ) {
	// the name is also the id in js  if you not specifically sent a val we get from the el id
	if (fld_val == null){
    fld_val = $("#"+fld_name).val() ; 
  }
		 
  var str_exp = get_exp(fld_name) ;
		
		if( str_exp.length>1 ) { // just checking we got somat 
		  var reg_exp = new RegExp(str_exp, "g");
			if( fld_val.match(reg_exp) ) {
				return true ;
			} else {
				return get_err_msg( fld_name ) ;
			}
		} else {
			 return true ; //' exp not found for: '+fld_name ;
		}

}


function get_exp( fld_name ) {
	var str = '';

	switch( fld_name) {
		
		case "user_emailx" :       str ='^[^0-9][A-z0-9_.-]+[@][A-z0-9_-]+([.][A-z0-9_-]+)*[.][A-z]{2,4}$' ;  	break ;
		//case "user_email" :       str ='^[@]$' ;  	break ;
		case 'user_name' :        str = '^[ a-zA-Z0-9_.-]{5,21}$' ; break ;
		case 'user_pass':         str = '^[ a-zA-Z0-9_.-]{5,21}$' ; break ;
		case 'region':            str = '^[ A-z0-9]{1,100}$'   ; break ;
		case 'gender':            str = '^[ A-z0-9]{1,100}$'   ; break ;
		case 'name_display':      str = '^[ A-z0-9]{1,25}$'    ; break ;
		case 'tel_display':       str = '^[ 0-9]{10,14}$'      ; break ;
		case 'md5':               str = '^[a-z0-9]{32}$'       ; break ;
		case 'date_expires_unix': str = '^[0-9-]{10}$'         ; break ;
		
		default : str = '' ;
		
	}
	return str ;
}

// these will match all the fld names but poss a few more too 
function get_err_msg( err_name ) {

	var str = '' ;
	switch( err_name) {
		
		case "user_email" :  str = 'Your email address is not valid' ;  break ;
		case 'user_name' :   str = 'Your user name must have 5-20 letters, numbers, spaces, underscore and hyphens only' ;  break ;
		case 'user_pass':    str = 'Your password  must have 5-20 letters, numbers, spaces, underscore and hyphens only' ;  break ;
		case 'region':       str = 'Select your region' ;  break ;
		case 'gender':       str = 'Select your gender' ;  break ;
		case 'name_display': str = 'Your screen name must have 3-25 letters or spaces only' ;  break ;
		case 'tel_display':  str = 'Your screen telephone must have numbers and spaces only' ;  break ;
		case 'md5':          str = 'The encrypted key did match' ;  break ;
		case 'date_expires_unix': str = 'The date was not acceptable' ; break ;
		default : str= 'The error msg was not found for. '+ err_name ;
	}
	return str ;
}


function remove_it(str_in) {

	//var res = str_in.replace(/[=|,9pg]/g, 'XX') 
	var res = str_in.replace(/[^A-Za-z0-9-_.\s]/g, '') 

	return res ;

}

function get_help(name) {
	
	//alert("get_help="+name)

	var str = '' ;
	switch( name) {
		
		case "admin_user_srch_user_name" :   str = ('If you type in \'mary\' only the users who\'s user name starts with \'mary\' will show') ;  break ;
		case "admin_user_srch_office_code" : str = ('Show only the records that contain this office code') ;  break ;
		case "admin_user_srch_region" :      str = ('Show only the users registered in this region') ;  break ;
		case "admin_user_srch_user_type" :   str = ('Show only the user that are clients or escorts for example') ;  break ;
		case "admin_user_srch_mem_status" :  str = ('Show only the users that are have active accounts, ie; paid up') ;  break ;
		case "admin_user_srch_order_by" :    str = ('Change the way the reults are printed on the screen') ;  break ;
		
		default : str = ('Help topic not found') ;
	}
	alert(str) ;
	return false ;

}