// Fonctions de la section impression

function frmSujet_btnProceder_onClick()
{
    document.forms["frmSujet"].submit();
}

function frmSujet_btnRetour_onClick()
{
    window.location = 'arbre-genealogique.asp';
}

function frmChoixArbre_btnProceder_onClick(produit, style)
{
    document.getElementById('ProduitChoisi').value = produit;
    document.getElementById('StyleChoisi').value = style;
    
    document.forms["frmChoixArbre"].submit();
}

function frmChoixArbre_btnRetour_onClick()
{
    window.location = 'arbre-genealogique.asp';
}

function frmConfConj_btnProceder_onClick()
{
    document.forms["frmConfConj"].submit();
}

function frmConfConj_btnRetour_onClick()
{
    window.history.back();
}

function frmConfCont_btnProceder_onClick()
{
    document.forms["frmConfCont"].submit();
}

function frmConfCont_btnRetour_onClick()
{
    window.history.back();
}

function btnRetour_onClick()
{
    window.history.back();
}

function frmAncMod_btnProceder_onClick()
{
    var strHistoire = document.getElementById("txtaHistoire").value;
    var strAnNaiss = document.getElementById("txtAnNaiss").value;
    var strAnDeces = document.getElementById("txtAnDeces").value;

    if(strHistoire != "" && (strAnNaiss == "" || strAnDeces == ""))
        alert("You must enter the years of birth and death.");
    else
	document.forms["frmAncMod"].submit();
}

function frmDescPersonne_btnProceder_onClick()
{
    var strDesc = document.getElementById("txtDescription").value;

    if(strDesc.toUpperCase().indexOf(strNomComplet.toUpperCase()) == 0 || strDesc == "")
    {
		document.forms["frmDescPersonne"].submit();
    }    
    else
    {
		AfficherErreurs2("The description must begin with the name ' " + strNomComplet + " '.", "labelDesc", "txtDescription");
    }
}

function checkNbChars(txtaDesc)
{
    var strDesc = txtaDesc.value;
    
    var sPath = window.location.pathname;

    var sPage = sPath.substring(sPath.lastIndexOf("/") + 1);
    
    var maxChars = 0;
    
    switch(sPage)
    {
	case "imp_cmd_desc_nam_mod.asp":
	    maxChars = 350;
	    break;
	case "imp_cmd_desc_anc_mod.asp":
	    maxChars = 900;
	    break;
	case "imp_desc_personne.asp":
	    maxChars = 400;
	    break;
	case "genealogiepro_informations.asp":
	    maxChars = 400;
	    break;		    
	case "imp_cmd_desc.asp":
	    maxChars = 500;
	    break;
    }
    
    if(strDesc.length > maxChars)
    {
	txtaDesc.value = strDesc.substring(0, maxChars);
	AfficherErreurs2("The description must be at most " + maxChars + " characters.", "", txtaDesc.name);
    }
    else if(event.keyCode == 13)
    {
	txtaDesc.value = strDesc.replace("\r\n", "");
	AfficherErreurs2("The ENTER key is forbidden here.", "", txtaDesc.name);
    }
    else
    {
	document.getElementById("bloc_erreur_m").style.display = "none";
	document.getElementById("bloc_erreur_b").style.display = "none";
	document.getElementById("msg_erreur").innerHTML = "";
	
	txtaDesc.className = "";
    }
}

function frmTarifs_btnProceder_onClick()
{
    var strNbCopies = document.getElementById("selNbCopies").value;
    
    if(isNaN(strNbCopies) || parseInt(strNbCopies) < 0)
    {
	AfficherErreurs2("The number of copies must be a number between 0 and 999 included.", "labelNbCopies", "selNbCopies");
    }
    else
    {
	if (strNbCopies == "")
	{
	    document.getElementById("selNbCopies").value = "0";
	}
	document.forms["frmTarifs"].submit();
	//window.location = "arbre-genealogique.asp";
    }
}

function frmTarifs_btnRetour_onClick()
{
    window.location = 'imp_choix_arbre.asp';
}

function frmImpListeCmd_btnRetour_onClick()
{
    document.forms["frmImpListeCmd"].submit();
}

function set_cookie(name,value,expires) {
  if (!expires) expires = new Date();
  document.cookie = name + '=' + escape(value) + '; expires='
    + expires.toGMTString() + '; path=/';
}

function get_cookie (name) {
  var dcookie = document.cookie;
  var cname = name + "=";
  var clen = dcookie.length;
  var cbegin = 0;
  while (cbegin < clen) {
    var vbegin = cbegin + cname.length;
    if (dcookie.substring(cbegin, vbegin) == cname) {
      var vend = dcookie.indexOf (";", vbegin);
      if (vend == -1) vend = clen;
      return unescape(dcookie.substring(vbegin, vend));
      }
    cbegin = dcookie.indexOf(" ", cbegin) + 1;
    if (cbegin == 0) break;
    }
  return null;
}

function del_cookie(name) {
  document.cookie = name + '=' + '; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/';
}

function frmCmdDescSave() {

	var intNomNo = document.getElementById("lstNoms").options[document.getElementById("lstNoms").selectedIndex].text;
	var intAncNo = document.getElementById("lstAncetres").options[document.getElementById("lstAncetres").selectedIndex].text;
	var strTxtSubject = document.getElementById("txtaSujetDesc").value;

	var dateExpire = new Date();
	
	dateExpire.setHours(dateExpire.getHours() + 1);
	
	set_cookie("imp_NomNo", intNomNo, dateExpire);
	set_cookie("imp_AncNo", intAncNo, dateExpire);
	set_cookie("imp_SubTxt", strTxtSubject, dateExpire);
}

function LoadFrm() {

	var lstAnc = document.getElementById("lstAncetres")
	var lstNom = document.getElementById("lstNoms")
	
	if(get_cookie("imp_AncNo") != null)
	{
		for(var i=0; i < lstAnc.options.length; i++)
		    if(lstAnc.options[i].text == get_cookie("imp_AncNo"))
			lstAnc.options[i].selected = true;
		    else
			lstAnc.options[i].selected = false;
	}	
	
	if(get_cookie("imp_NomNo") != null)
	{
		for(var i=0; i < lstNom.options.length; i++)
		    if(lstNom.options[i].text == get_cookie("imp_NomNo"))
			lstNom.options[i].selected = true;
		    else
			lstNom.options[i].selected = false;
	}
	
	if(get_cookie("imp_SubTxt") != "" && get_cookie("imp_SubTxt") != null)
	{
		document.getElementById("txtaSujetDesc").value = get_cookie("imp_SubTxt");
	}
}

function frmImpListeCmd_linkAncVM_onClick()
{

    frmCmdDescSave();

    var lstAnc = document.getElementById("lstAncetres");
    
    if(lstAnc.options[lstAnc.selectedIndex].value == "")
	alert("You must select an ancestor.");
    else
	window.location = "imp_cmd_desc_anc_mod.asp?NoAncetre=" + lstAnc.options[lstAnc.selectedIndex].value.split("_")[0] + "&IDMembre=" + getURLParam("IDMembre") + "&NoCommande=" + getURLParam("NoCommande");
}

function frmImpListeCmd_linkAncA_onClick()
{
    frmCmdDescSave();

    window.location = "imp_cmd_desc_anc_mod.asp?IDMembre=" + getURLParam("IDMembre") + "&NoCommande=" + getURLParam("NoCommande");
}

function frmImpListeCmd_linkNamVM_onClick()
{
    frmCmdDescSave();

    var lstNam = document.getElementById("lstNoms");
    
    if(lstNam.options[lstNam.selectedIndex].value == "")
	alert("You must select the origin of a name.");
    else
	window.location = "imp_cmd_desc_nam_mod.asp?NoOrigineNom=" + lstNam.options[lstNam.selectedIndex].value.split("_")[0] + "&IDMembre=" + getURLParam("IDMembre") + "&NoCommande=" + getURLParam("NoCommande");
}

function frmImpListeCmd_linkNamA_onClick()
{
    frmCmdDescSave();
    
    window.location = "imp_cmd_desc_nam_mod.asp?IDMembre=" + getURLParam("IDMembre") + "&NoCommande=" + getURLParam("NoCommande");
}

function frmCmdDescPersonne_btnProceder_onClick()
{

    del_cookie("imp_NomNo");
    del_cookie("imp_AncNo");
    del_cookie("imp_SubTxt");

    var txtaSujetDesc = document.getElementById("txtaSujetDesc").value;
    var lstNoms = document.getElementById("lstNoms");
    var lstAncetres = document.getElementById("lstAncetres");
    
    var valid;
    
	if(lstNoms == null && lstAncetres == null)
	{
		frmCmdDescPersonne_initialiserErreurs(false);
	}
	else
	{
		frmCmdDescPersonne_initialiserErreurs(true);
	}
    
    if(lstNoms == null && lstAncetres == null && (txtaSujetDesc.toUpperCase().indexOf(strNomComplet.toUpperCase()) == 0 || txtaSujetDesc == ""))
    {
		valid = true;
    }
    else
    {
        valid = false;
		
		if(txtaSujetDesc.toUpperCase().indexOf(strNomComplet.toUpperCase()) != 0 && txtaSujetDesc != "")
		{
			AfficherErreurs2("The desfription must begin with the name « " + strNomComplet + " ».", "labelSubjectDesc", "txtaSujetDesc");
			valid = false;
		}
		else
		{
			var lstNomsValue = lstNoms[lstNoms.selectedIndex].value;
			var lstAncetresValue = lstAncetres[lstAncetres.selectedIndex].value;
		
			switch(getRadioCheckedValue("grpDesc"))
			{
				case "1":
				if(lstNomsValue != "" && lstAncetresValue != "" && lstAncetresValue.indexOf("txto", 0) > -1 && lstNomsValue.indexOf("txto", 0) > -1)
					valid = true;
				else
				{
					valid = false;
					
					if(lstAncetresValue.indexOf("txto", 0) > -1 && lstNomsValue.indexOf("txto", 0) == -1)
						AfficherErreurs2("Les textes de l’histoire de l’ancêtre et de l’origine du nom sont obligatoire.", "labelLstNom", "lstNoms");
					else
						AfficherErreurs2("Les textes de l’histoire de l’ancêtre et de l’origine du nom sont obligatoire.", "labelLstAncetres", "lstAncetres");
				}
				break;
				case "2":
				if(lstNomsValue != "" && lstNomsValue != "" && (lstAncetresValue.indexOf("txtn", 0) > -1 || lstNomsValue.indexOf("txtn", 0) > -1))
					valid = true;
				else
				{
					valid = false;
					AfficherErreurs2("Les textes de l’histoire de l’ancêtre et de l’origine du nom existe déjà.", "labelLstAncetres", "lstAncetres");
				}
				break;
				case "3":
				if(lstNomsValue == "" && lstNomsValue == "")
					valid = true;
				else
				{
					valid = false;
					AfficherErreurs2("Les textes de l’histoire de l’ancêtre et de l’origine du nom ne peut être sélectionné.", "labelLstAncetres", "lstAncetres");
				}
				break;
			}
		}
    }

    if(valid) document.forms["frmCmdDescPersonne"].submit();
}

function getURLParam(strParamName){
  var strReturn = "";
  var strHref = window.location.href;
  if ( strHref.indexOf("?") > -1 ){
    var strQueryString = strHref.substr(strHref.indexOf("?")).toLowerCase();
    var aQueryString = strQueryString.split("&");
    for ( var iParam = 0; iParam < aQueryString.length; iParam++ ){
      if (
aQueryString[iParam].indexOf(strParamName.toLowerCase() + "=") > -1 ){
        var aParam = aQueryString[iParam].split("=");
        strReturn = aParam[1];
        break;
      }
    }
  }
  return unescape(strReturn);
} 

function getRadioCheckedValue(radio_name) {
var oRadio;
if(document.forms[0].elements[radio_name])
	oRadio = document.forms[0].elements[radio_name];
else
	oRadio = document.forms[1].elements[radio_name];

for(var i = 0; i < oRadio.length; i++) {

if(oRadio[i].checked) {
return oRadio[i].value;
}

}

return '';
}

function frmCmdDescAncMod_btnProceder_onClick()
{
    var strNomNouv = document.getElementById("txtPrenom").value + " " + document.getElementById("txtNom").value;
    var strNomNew = document.getElementById("txtNom").value + " " + document.getElementById("txtPrenom").value;
    var strHistoire = document.getElementById("txtaHistoire").value;
    var strAnNaiss = document.getElementById("txtAnNaiss").value;
    var strAnDeces = document.getElementById("txtAnDeces").value;
    
    if(strHistoire != "" && (strAnNaiss == "" || strAnDeces == ""))
    {
	alert("Vous devez entrer les années de naissance et de décès.");
    }    
    else if(strNom != strNomNouv && strNom != "")
    {
	var reponse = confirm("Voulez-vous vraiment modifier le nom ?");
	if(reponse) document.forms["frmAncMod"].submit();
    }
    else
    {
	document.forms["frmAncMod"].submit();
    }
    
    var dateExpire = new Date();
	
    dateExpire.setHours(dateExpire.getHours() + 1);
	
    var value;
	
    if(strAnNaiss == "" && strAnDeces == "")
	value = strNomNew + " (" + strLangue + ")";
    else
	value = strNomNew + " (" + strLangue + ") " + strAnNaiss + "-" + strAnDeces;
	
    set_cookie("imp_AncNo", value, dateExpire);
}

function frmCmdDescNamMod_btnProceder_onClick()
{
    var strNomNouv = document.getElementById("txtNom").value;

    if(strNom != strNomNouv && strNom != "")
    {
	var reponse = confirm("Voulez-vous vraiment modifier le nom ?");
	if(reponse) document.forms["frmNamMod"].submit();
    }
    else
    {
	document.forms["frmNamMod"].submit();
    }
    
    var dateExpire = new Date();
	
    dateExpire.setHours(dateExpire.getHours() + 1);
	
    set_cookie("imp_NomNo", strNomNouv + " (" + strLangue + ")", dateExpire);
}

function frmDescPersonne_initialiserErreurs() 
{
	document.getElementById("bloc_erreur_m").style.display = "none";
	document.getElementById("bloc_erreur_b").style.display = "none";
	document.getElementById("msg_erreur").innerHTML = "";
	
	document.getElementById("labelDesc").className = "";
	document.getElementById("txtDescription").className = "";
}

function frmCmdDescPersonne_initialiserErreurs(ShowLst) 
{
	document.getElementById("bloc_erreur_m").style.display = "none";
	document.getElementById("bloc_erreur_b").style.display = "none";
	document.getElementById("msg_erreur").innerHTML = "";
	
	document.getElementById("labelSubjectDesc").className = "";
	document.getElementById("txtaSujetDesc").className = "";
	
	if(ShowLst)
	{
		document.getElementById("labelLstNom").className = "";
		document.getElementById("lstNoms").className = "";
		
		document.getElementById("labelLstAncetres").className = "";
		document.getElementById("lstAncetres").className = "";
	}
}

function frmTarifs_initialiserErreurs() 
{
	document.getElementById("bloc_erreur_m").style.display = "none";
	document.getElementById("bloc_erreur_b").style.display = "none";
	document.getElementById("msg_erreur").innerHTML = "";
	
	document.getElementById("labelNbCopies").className = "";
	document.getElementById("selNbCopies").className = "";
}

function AfficherErreurs2(messages, idLabel, idInput) 
{
    document.getElementById("bloc_erreur_m").style.display = "block";
    document.getElementById("bloc_erreur_b").style.display = "block";
    document.getElementById("msg_erreur").innerHTML = messages;
    if(idLabel != "") document.getElementById(idLabel).className = "txt_erreur";
    document.location = "#bloc_erreur_m"; 
	
    document.getElementById(idInput).className = "champs_erreur";
    document.getElementById(idInput).focus();
    
    return false;
}


