
function UseridAvailable(userid)
{
    if(userid != "")
	{
		var url="ajax_id_available.php?userid="+ userid+"&"+Math.random();			
		if(makAx())
		{
			callCpass(url);
		}
	}
	else
	{
		//alert("Name field cann't be empty");
	}	
}

function ValidateName(name)
{
	var str = name;
	var filter=/[^A-Za-z\s\-\.\_]/;

	if (filter.test(str))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function ValidateEmail(email)
{
	var str = email;
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	if (filter.test(str))
	{
		return true;
	}
	else
	{
		return false;
	}
}
function ValidateEmailCommaList(email_field)
{
        fieldlen=0;
        efields="";
        email_field=trim(email_field);
        fieldlen=email_field.length;


        if(email_field[(fieldlen-1)] == ","){
                email_field=email_field.substring(0,(fieldlen-1));
        }
	email_field = email_field.replace(/ /g, '');
        var email = email_field.split(',');

        if(email.length > 50){
                return 'Limited to 50 email address at a time\n';
        }
        else{
                for (var i = 0; i < email.length; i++)
                {
                        if (!ValidateEmail(email[i])) {
				var pemail=i+1;
                                return 'email '+pemail+' is invalid\n';
                        }
                }
                return '';
        }

} 
// yyyy-mm-dd
function ValidateDate(str)
{
	if (str.length!=10) return "format is wrong (yyyy-mm-dd)";
	var date_str = str.split('-');

	var year_str = parseInt(date_str[0]);
	var month_str = parseInt(date_str[1]);
	var day_str = parseInt(date_str[2]);

      if (year_str < 1700 || year_str > 2070) return "year range is wrong";
      if (month_str <1 || month_str >12) return "month outof range";
      if (day_str <1 || day_str >31) return "day outof range";
      
      if (month_str ==2 && day_str >29) return "february day outof range";
      
      return "";
}

function ValidateDateCompare(start, end)
{

	var start_array = start.split('-');
	var end_array = end.split('-');

	if (parseInt(start_array[0]) < parseInt(end_array[0]) ) return ""; //ok
	if (parseInt(start_array[0]) > parseInt(end_array[0]) ) return "start date is bigger than end date";

	if (parseInt(start_array[1]) < parseInt(end_array[1]) ) return ""; //ok
	if (parseInt(start_array[1]) > parseInt(end_array[1]) ) return "start date is bigger than end date";

	if (parseInt(start_array[2]) < parseInt(end_array[2]) ) return ""; //ok
        if (parseInt(start_array[2]) > parseInt(end_array[2]) ) return "start date is bigger than end date";

	return  ""; // same date
}
function ValidateUserID(name)
{
	var str = name;
	var filter=/[^A-Za-z0-9\-_\.\#]/;

	if (filter.test(str))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function ValidateUserPassword(name)
{
	var str = name;
	var filter=/[^A-Za-z0-9\-_\s\.\,\$\!\@\#]/;

	if (filter.test(str))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function ValidateConfirmPass(Pass,conPass)
{	
	if (Pass != conPass)
	{
		return false;
	}
	else
	{
		return true;
		
	}	
}

function ValidateCompany(name)
{
	var str = name;
	var filter=/[^A-Za-z0-9\-_\s\.\?\,\&\#]/;

	if (filter.test(str))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function ValidateCustomDesc(name)
{
	var str = name;
	var filter=/[^A-Za-z0-9\-_\s\.\!\%\$\?\&\'\"\@\,\#]/;

	if (filter.test(str))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function ValidatePhone(phone)
{
	var str = phone;
	var filter=/[^0-9\-\.\_\ \+\s]/;

	if (filter.test(str))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function ValidateSCode(input)
{
	var str=input;
	var filter=/[^A-Za-z0-9\s]/;

	if (filter.test(str))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function ValidateZip(input)
{
	var str=input;
	var filter=/[^A-Za-z0-9\s]/;

	if (filter.test(str))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function ValidateInteger(input)
{
	var str=input;
	var filter=/\D/;

	if (filter.test(str))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function ValidateCurrency(input)
{		
	var str=input;
	var filter=/^(\d*)(\.\d{0,2})?$/;
	
	if (filter.test(str))
	{		
		return true;
	}
	else
	{
		return false;
	}	
}

function ValidateURL(url)
{
	var str = name;
	var filter=/[^a-z0-9\-_\s\.\!\%\$\?\&\'\"\@\,\#]/;

	if (filter.test(str))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function trim(str)
{
	str =str.replace(/^\s+/, '');
	str =str.replace(/\s+$/, '');
	return str;
}

//Function for Forgot Password Module
function ForgotPWD()
{	         
	document.frmRegister.userid.value = trim(document.frmRegister.userid.value);
	document.frmRegister.password.value = trim(document.frmRegister.password.value);
	if (document.frmRegister.userid.value == "" )
	{
		alert("Please specify email address or user id");
		document.frmRegister.userid.focus();
		return false;
	}
	else{
		if (confirm("Are you sure you want to reset the password for user id "+document.frmRegister.userid.value))
		{
			document.frmRegister.hoperation.value = "F";
			document.frmRegister.action="index.php";
			document.frmRegister.method="post" 
			document.frmRegister.submit();
			return true;
		}	
	} 	
}
//simulate guest login button click
function on_guest_login_click()
{
     
	document.getElementById("userid").value="guest";
	document.getElementById("password").value="guest";
	//document.getElementById("btnLogin").click();
	document.frmRegister.action="index.php?btnLogin_x=1&userid=guest&password=guest";
	document.frmRegister.method="post" 
	document.frmRegister.submit();

}
function show_confirm(msg)
{
   var reply=confirm(msg);
   return reply;
}

function reject_cw_confirm(cwid, compiler, topic)
{
   var reply=confirm("Are you sure to Reject "+cwid+" by "+compiler+ " on topic " +topic);
   return reply;
}
function ValidateIP (ipaddr) {

    ipaddr = ipaddr.replace( /\s/g, "");
    var re = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/;
                                         
    if (re.test(ipaddr)) {
      
        var parts = ipaddr.split(".");

        for (var i=0; i<parts.length; i++) {
            if (parseInt(parseFloat(parts[i])) > 255){
                return false;
            }
        }
        return true;
    } else {
        return false;
    }
}
function dictionary_search(word)
{
    mashithantu_url = "http://www.dictionary.mashithantu.com/dictionary/"+ encodeURIComponent(word);
    window.open(mashithantu_url);
}

function google_search(word)
{
    google_url = "http://www.google.com/search?q="+ encodeURIComponent(word)+"&hl=en";
    window.open(google_url);
}


