
function submitForm(f) {
	if (isReady(f)) {
		f.submit();
	}
}


function isReady(f) {
    var filterDay = /^((0{0,1}[0-9])|(1[0-9])|(2[0-9])|(3[0-1]))$/;
    var filterMonth = /^((0{0,1}[0-9])|(1[0-2]))$/;
    var filterYear = /^(19[0-9][0-9])|(200[0-9])$/;

    msg = "";
    error = "";

    if (f.lang.value == "fr") {
    	msg             = "Veuillez corriger les champs suivants :\n\n";
        msgDob          = "Date de naissance\n";
        msgProvince     = "Province\n";
    } else {
    	msg             = "Please correct the following fields:\n\n";
        msgDob          = "Date of birth\n";
        msgProvince     = "Province\n";
    }

    f.dobDay.value = trim(f.dobDay.value);
    f.dobMonth.value = trim(f.dobMonth.value);
    f.dobYear.value = trim(f.dobYear.value);

	if (! (filterDay.test(f.dobDay.value)
	        && filterMonth.test(f.dobMonth.value)
	        && filterYear.test(f.dobYear.value)) ) {error += msgDob;}

    if (f.province.value == "") {error += msgProvince;}

    if (error != "") {
		alert(msg + error);
		return false;

	} else {
        return true;
	}
}

function trim(str) {
    if (str.length < 1) {
        return "";
    }
    return ltrim(rtrim(str));
}

function rtrim(str) {
    if (str.length < 0) {
        return "";
    }
    var strTemp = "";
    for (i = str.length-1; i > -1; i--) {
        if (str.charAt(i) != ' ') {
            strTemp = str.substring(0, i+1);
            break;
        }
    }
    return strTemp;
}

function ltrim(str) {
    if (str.length < 1){
        return "";
    }
    var strTemp = "";
    for (i = 0; i < str.length; i++) {
        if (str.charAt(i) != ' ') {
            strTemp = str.substring(i, str.length);
            break;
        }
    }
    return strTemp;
}
