/**
 * DHTML date validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */
// Declaring valid date character, minimum year and maximum year
if (!String.prototype.trim) {
    String.prototype.trim = function(){
        return this.replace(/^\s+|\s+$/g, '');
    };
}


function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function CharsInBag(s, bag){
	var i;
    // Search through string's characters one by one.
    // If character is in bag, return true.
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) > 0) 
			return true;
    }
    return false;
}


function isValidEmail(strEmail){
   	return (strEmail.match(/^\w+([\.\-]\w+)*\@\w+([\.\-]\w+)*\.[a-z]{2,3}$/));
}


function isNumber(s, vmin, vmax){
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) {
			alert("Please enter a valid number")
			return false;
		}
    }

    // All characters are numbers.
	if (s < vmin || s > vmax) {
		alert("Please enter a valid number between " + vmin + " and " + vmax)
		return false;
	}

    return true;
}

function validate_mandatory_field(Ctrl, PromptStr) {
    if (Ctrl != null && Ctrl.value.trim() == '') {
        force_field(Ctrl, PromptStr);
    	return false;
    }
	return true;
}

function validate_email_field(Ctrl, PromptStr) {
    if (PromptStr == "" || validate_mandatory_field(Ctrl, PromptStr)) {

    	if (Ctrl.value == '' || isValidEmail(Ctrl.value))
            return true;

   		force_field(f, "Invalid characters found in the Email Address!");
	}
	
    return false;
}

function validate_date_field(Ctrl, PromptStr) {
    if (PromptStr == "" || validate_mandatory_field(Ctrl, PromptStr)) {
    	if (Ctrl.value == '' || isDate(Ctrl.value, 'M/d/y'))
	    	return true;

	    force_field(Ctrl, "Please enter date in correct format or use the pop-up calendar to select a valid date!");
	}
	
    return false;
}
/*
function isDate(value, format) {
	var date = new Date().parse(value);
	var str = date.format(format);
	return (value == str);
}
*/

function force_field(Ctrl, PromptStr) {
    if (PromptStr)
	    alert(PromptStr);
    if (Ctrl != null && Ctrl.focus)	    
	    Ctrl.focus();
	return;
}


function get_radio_choice(radio) {
    
    if (radio == null)
        return null;
        

	if (radio.checked) {
		return radio.value;
	}

	for (counter = 0; counter < radio.length; counter++) {
		if (radio[counter].checked) {
			return radio[counter].value;
		}
	}

	return null;
} 
