function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
  var rv = -1; // Return value assumes failure.
  if (navigator.appName == 'Microsoft Internet Explorer')
  {
	var ua = navigator.userAgent;
	var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
	if (re.exec(ua) != null)
	  rv = parseFloat( RegExp.$1 );
  }
  return rv;
}

function sfHover () {
	var sfEls = document.getElementById("nav").getElementsByTagName("li");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}

}

if (window.attachEvent) window.attachEvent("onload", sfHover);

function changeBG(newElement,newImage){
	var theImage = newImage;
	var theElement = document.getElementById(newElement);
	theElement.style.backgroundImage="url(" + theImage + ")";
}
	
function trim(s)
{
  return s.replace(/^\s+|\s+$/, '');
} 

function validateEmail(fld) {
    var error="";
    var tfld = trim(fld.value);                        // value of field with whitespace trimmed off
    var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
    var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
    
    if (fld.value == "") {
        fld.style.background = '#9fd8f7';
        error = "Veuillez entrer votre adresse e-mail.\n";
    } else if (!emailFilter.test(tfld)) {              //test email for illegal characters
        fld.style.background = '#9fd8f7';
        error = "L'adresse e-mail entrée n'est pas valide.\n";
    } else if (fld.value.match(illegalChars)) {
        fld.style.background = '#9fd8f7';
        error = "L'adresse e-mail entrée contient des caractères non valides.\n";
    } else {
        fld.style.background = '#ffffff';
    }
    return error;
}

function validateFormOnSubmit(theForm) {
var reason = "";

reason += validateEmail(theForm.email);

      
  if (reason != "") {
    alert(reason);
    return false;
  }

  return true;
}

