var IsHomePage = false;
// Determine browser.
var isMinNS4 = (navigator.appName.indexOf("Netscape") >= 0 &&
                parseFloat(navigator.appVersion) >= 4) ? 1 : 0;
isMinNS4 = isMinNS4;
var isMinIE4 = (document.all) ? 1 : 0;
var isMinIE5 = (isMinIE4 && navigator.appVersion.indexOf("5.")) >= 0 ? 1 : 0;

function hideLayer(layer)
{

  if (isMinNS4)
    layer.visibility = "hide";
  if (isMinIE4)
    layer.style.visibility = "hidden";
}

function showLayer(layer)
{

  if (isMinNS4)
    layer.visibility = "show";
  if (isMinIE4)
    layer.style.visibility = "visible";
}

function checkEmailEx(emailValue) {
  var str = emailValue /* email string */
  var reg1 = /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)|(@\-)/; /* not valid */
  var reg2 = /^[a-zA-Z0-9\-\._!#\$%&\*\+=\^\{\}~]+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/;
  if (!reg1.test(str) && reg2.test(str)) { /* if syntax is valid */
    return true;
  }
  alert("Adresse email incorrecte. Exemple : prenom.nom@site.fr"); /* this is also optional */
  return false;
}

function GetFormValues(input)
{
	var values = "";
	var AND = "";
	var field;
	for(var i=0;i<input.elements.length; i++){
		field = input.elements[i];
		if(
			field != null &&
			((field.type != "checkbox" && field.type != "radio") ||	field.checked)
		){
			values += (AND + field.name + "=" + escape(field.value));
			AND = "&";
		}
	}
	return values;
}

function checkRequiredFields(input,fields)
{
    var argv = checkRequiredFields.arguments;
    var argc = checkRequiredFields.arguments.length;
    // if(argc < 3) return true;
    var requiredFields = new Array();
    var FieldsName = new Array();
    var entry = new Array();
    for(var i=1;i<argc;i++)
	{
		if(argv[i].indexOf("|")!=-1)
		{
			entry = argv[i].split("|");
			requiredFields[i-1] = entry[0];
			FieldsName[i-1] = entry[1];
			if(FieldsName[i-1]=="")
				FieldsName[i-1]=requiredFields[i-1];
		}
	 	else
		{
			requiredFields[i-1] = argv[i];
			FieldsName[i-1] = argv[i];
		}
	}

    var fieldCheck   = true;
    var fieldsNeeded = "Les champs suivants doivent être remplis :";
	var fieldvalue;
	var obj = null;
	re = /\w+/; //au moins un caractère
    for(var fieldNum=0; fieldNum < requiredFields.length; fieldNum++) {
		//alert(requiredFields[fieldNum]);
		var szFieldName = FieldsName[fieldNum];
		if(szFieldName.indexOf("*")==-1)
		{
			fieldvalue = input.elements[requiredFields[fieldNum]].value;
			if(!re.test(fieldvalue)){
				if(obj == null) obj = input.elements[requiredFields[fieldNum]];
	            fieldsNeeded += "\n  " + szFieldName;
	            fieldCheck = false;
	        }
		}
		else
		{
			var entry2 = new Array();
			entry2 = szFieldName.split("*");
			var nCh = entry2.length;
			if(entry2[0] == "CHECK"){
				for(var k = 2; k<=nCh;k++){
					if(!input.elements[entry2[k]].checked) nCh--;
				}
				if(nCh-2==0){
			        fieldsNeeded += "\n  " + entry2[1];
			        fieldCheck = false;
			    }
			}
		}
    }
    if (!fieldCheck)
    {
        alert(fieldsNeeded);
		obj.focus();
        return false;
    }
    return true;
}

function checkRequiredFieldsEx(input)
{
	var el;
    for(var i=0;i<input.elements.length;i++)
	{
		el = input.elements[i];
		if(el.className.indexOf("required") != -1)
		{
			if(el.type == "text" || el.type == "radio" || el.type == "checkbox")
			{
				if(el.value == "")
				{
					alert(el.title + " est obligatoire");
					el.focus();
					return false;
				}
				else if(el.className.indexOf("mail") != -1 && !checkEmailEx(el.value))
				{
					el.focus();
					return false;
				}
			}
			else if(el.type == "textarea" && el.innerHTML == "" && el.innerText == "")
			{
 				alert(el.title + " est obligatoire");
				el.focus();
				return false;
			}
		}
	}
	return true;
}

function OpenWindow(url, titre, width, height)
{	
	// center window
	var WLeft = (screen.width-parseInt(width))/2;
	var WTop  = (screen.height-parseInt(height))/2;

	var options="toolbar=no,location=no,directories=no,status=no,scrollbars=no,resizable=no,screenX="+String(WLeft)+",screenY="+String(WTop)+",Left="+String(WLeft)+",Top="+String(WTop)+",width="+width+",height="+height;
  	window.open(url,titre,options);
  	return false;
}

function openPanel(id, btn)
{	
	document.getElementById(id).style.display = 'block';
	if(btn) {
		btn.onclick = function(e){closePanel(id, btn);};
	}
	return false;
}

function closePanel(id, btn)
{	
	document.getElementById(id).style.display = 'none';
	if(btn) {
		btn.onclick = function(e){openPanel(id, btn);};
	}
		
	return false;
}

