/**************************************************************************

LIBRAIRIE DE FONCTIONS JAVASCRIPT POUR SITE COEUVATTE SUARCINE VENDELINE

Copyright (c) Jean-Marie Cordonnier 2008


Liste des fonctions dans l'ordre du script :

      	  	    	 	 creer_parents()


/******************************************************************************/
/******************************************************************************
Fonction 'LienPage3' : Lien sur la page avec transmission de 'posit'
          pour un lien dans la MAJ de la fiche membre
*******************************************************************************/					
					
     function LienPage3(posit,opt)
	     {
	      lien='suprmb.php?idmb='+posit+'&option='+opt;
	      self.location.href = lien;
         }
						 
						 
/******************************************************************************
Fonction 'LienPage2' : Lien sur la page avec transmission de 'posit'
          pour un lien dans la MAJ de la fiche membre
*******************************************************************************/					
					
     function LienPage2(posit,opt)
	     {
	      lien='administration_compta.php?idmb='+posit+'&option='+opt;
	      //self.location.href = lien;
		  document.location.href = lien;
         }
/******************************************************************************
Fonction 'LienPage4' : Lien sur la page avec transmission de 'posit'
          pour un lien vers fiche individuelle gene
*******************************************************************************/					
					
     function LienPage4(posit,opt)
	     {
	      lien='administration_genebase.php?idmb='+posit+'&option='+opt;
	      self.location.href = lien;
         }	
		 
/********************************************************************************
Fonction supprimer() :lien vers la suppression d'un document.
*******************************************************************************/
function supprimer(categorie)
{

objet=document.getElementsByTagName("img")[0];
ident=objet.src;
lien="suppr.php?url="+ident+"&categorie="+categorie;


	document.location.href = lien;

}

/********************************************************************************
Fonction change_image() :changement d'image au survol
*******************************************************************************/
function change_image(objet)
{

objet.src="/Images/m_acc.jpg";

}

	
/********************************************************************************
Fonction survol() :changement d'image au survol
*******************************************************************************/
function survol(num,remplace)
{
objet=document.getElementsByTagName("img")[num]
objet.src=remplace;

}
/********************************************************************************
Fonction pointer() :afficher une page dans une iframe
*******************************************************************************/

function pointer(lien)
{
lien=encodeURI(lien);
objet=document.getElementsByTagName("iframe")[0]
objet.src=lien;

}

/************************COMPTA*************************************************/
/********************************************************************************
Fonction modi_ligne() :ouvre la procédure de modification de ligne d'écriture
*******************************************************************************/
function modif_ligne(jj,mm,libelle,code,debit,credit,ligne,ecriture)
{
//alert(code);



objet=document.getElementById("correction");
objet.style.visibility="visible";

objet=document.getElementById("jr_c");
objet.value=jj;

objet=document.getElementById("mo_c");
objet.value=mm;

objet=document.getElementById("lib_c");
objet.value=libelle;

objet=document.getElementById("lgn");
objet.value=ligne;

objet=document.getElementById("ecr");
objet.value=ecriture;

//document.getElementsByTagName("body")[0].setAttribute("choix", code);
objet=document.getElementById("cpt_c");
objet.options[code].selected=true;



objet=document.getElementById("deb_c");
objet.value=debit;

objet=document.getElementById("cre_c");
objet.value=credit;




}






/********************************************************************************
Fonction affecter_exercice() Change d'exercice
***************************************************************************/
function affecter_exercice(annee)
{

 objet=document.getElementById("ex_encours");
 objet.value=annee;
 objet=document.getElementById("ex_encours");
 objet.value=annee;
 lien='administration_compta.php?idmb='+annee+'&option=-7';
 self.location.href = lien;


} 
/********************************************************************************
Fonction choix_cpt() choisir un compte
***************************************************************************/
function choix_cpt(code)
{

 lien='administration_compta.php?idmb='+code+'&option=-6';
 self.location.href = lien;


} 


/********************************************************************************
Fonction verif_ecriture() : vérifier si le formulaire d'écriture comptable est bien rempli
*******************************************************************************/
function verif_ecriture( formulaire)
{
var flag=0;

//recherche des lignes véritablement utilisées
for (i=1;i<=10;i++)
 {
   d_ident="D"+i;
   DB=document.getElementById(d_ident);
   c_ident="C"+i;
   CR=document.getElementById(c_ident);
   if (DB.value == 0 && CR.value ==0 && flag==0) flag=i-1;
 }
 
 nbl=flag;
 flag=0;
 
 NL=document.getElementById("nl");
 NL.value=nbl;
 
 
var solde   =document.getElementById("solde_ecriture").value;
var jour    =document.getElementById("jr").value;
var mois    =document.getElementById("ms").value;
var annee   =document.getElementById("an").value;

/*/var credit =document.getElementById("Cred").value;
var debit  =document.getElementById("Deb").value;*/
//nbl    = document.getElementById("nl").value;

if (solde!=0) { erreur="écriture non soldée";
                        flag=-1; }
						
if (jour==0 || jour>31 ) { erreur="Date invalide";
                        flag=-1; }
if (mois==0 || mois>12 ) { erreur="Date invalide";
                        flag=-1; }	
if (annee==0 || annee<2009 ) { erreur="Date invalide";
                        flag=-1; }						
						
						
for (i=1;i<=nbl;i++)
 {
   p_ident="P"+i;
   CP=document.getElementById(p_ident);
   if (CP.value == 0) { erreur="écriture non affectée";
                        flag=-1; }
 }
 
if (flag==0) formulaire.submit();
              
else alert(erreur);



}

/********************************************************************************
Fonction equilibre() : verifie l'équilibre du débit-crédit
*******************************************************************************/

function equilibre()
{
var SOLDE=0;
var flag=0;
var libelle="Libellé non saisi";
var a_solde=0;
var a_credit=0;
var a_debit=0;
var debit=0;
var credit=0;
var d_temp,c_temp;

//recherche des lignes véritablement utilisées
for (i=1;i<=10;i++)
 {
   d_ident="D"+i;
   DB=document.getElementById(d_ident);
   d_temp=parseFloat(DB.value);
   c_ident="C"+i;
   CR=document.getElementById(c_ident);
   c_temp=parseFloat(CR.value);
   
   if (DB.value == 0 && CR.value ==0 && flag==0) flag=i-1;
   
   DB.value=d_temp.toFixed(2);
   CR.value=c_temp.toFixed(2);
   
 }
 
 nbl=flag;
 flag=0;
 
 NL=document.getElementById("nl");
 NL.value=nbl;
 

for (i=1;i<=nbl;i++)// Détection d'un libellé saisi
  {
   t_ident="T"+i;
   LB=document.getElementById(t_ident);;
   
   if (LB.value=="" )  LB.value= libelle;
   if (LB.value!="" && LB.value!=libelle) libelle=LB.value;		  
							
  
}   


for (i=1;i<=nbl;i++)// calcul du solde par ligne
  {
      
   d_ident="D"+i;
   DB=document.getElementById(d_ident);
   c_ident="C"+i;
   CR=document.getElementById(c_ident);
   s_ident="S"+i;
   SO=document.getElementById(s_ident);
   
   debit=DB.value;
   credit=CR.value;
   a_solde=parseFloat(credit-debit);
   a_debit+=parseFloat(debit);
   a_credit+=parseFloat(credit);
   
   SOLDE=SOLDE+a_solde; // calcul du solde de l'écriture
   
   SO.value=SOLDE.toFixed(2);
  
			 
}

d_ident="solde_ecriture";
SE=document.getElementById(d_ident);
SE.value=SOLDE.toFixed(2);

d_ident="Cred";
CE=document.getElementById(d_ident);
CE.value=a_credit.toFixed(2);

d_ident="Deb";
DE=document.getElementById(d_ident);
DE.value=a_debit.toFixed(2);

if (solde!=0)//création d'une nouvelle ligne si le solde est différent de zéro
    {
     
	
	
	}	
 //txt="valeur : "+credit;
 //alert(txt);
}

/******************FIN    COMPTA********************************************/

      	  	    	 	 
/********************************************************************************
Fonction visu() :voir une image dans les pages d'administration des docs
*******************************************************************************/
function visu(opt,ident,ct,ca,id)
{

objet=document.getElementsByTagName("img")[0]
objet.src=ident;


sm="kill";

objet=document.getElementById(sm);

 if (opt==0) objet.style.visibility="hidden";
 else objet.style.visibility="visible";
 
if (opt==3) {
sm="comment";

objet=document.getElementById(sm);
objet.value=ct;

sm="categorie";

objet=document.getElementById(sm);
for(i=0;i<objet.length;++i)
  if(objet.options[i].value == ca)
   objet.options[i].selected = true;
   
   
sm="devolu";
objet=document.getElementById(sm);
objet.value=id;

 }
 
 
 
}	  	    	 	
/********************************************************************************
Fonction voir_image() : afficher une image dans une fenêtre indépendante
*******************************************************************************/
function voir_image(url)

       {
//titre=texte;	

F6 = window.open("afficheur.php?url="+url,"Image",
                 "width=600,height=450,left=80,top=150,scrollbars=yes");


       }      	  	    	 	
      	  	    	 	 
      	  	    	 	 
      	  	    	 	 
/********************************************************************************
Fonction voir_valid() : apparition bouton de validation
*******************************************************************************/
function voir_valid()
{
sm="v_filia";
objet=document.getElementById(sm);
objet.style.visibility="visible";
}
/********************************************************************************
Fonction voir_fiche() : creation de la fenêtre de visu des infos individuelles
*******************************************************************************/
function voir_fiche(id,nm,pr)

       {
 titre="Fiche de : "+nm+" "+pr;	
       
F3 = window.open("fiche_indiv.php?titre="+titre+"&id="+id,"Individu",
                 "width=500,height=200,left=80,top=150,scrollbars=no");


       }
/********************************************************************************
Fonction modif_indiv() : creation de la fenêtre de modification
                         d'un enregistrements
*******************************************************************************/
function modif_indiv(id)

       {
 titre="Entrée n° : "+id+" dans la base. Saisissez les modifications";

F4 = window.open("fiche_indiv_modif.php?titre="+titre+"&id="+id,"Individu_modif",
                 "width=500,height=350,left=80,top=150,scrollbars=no");


       }
       
       
       
       
/********************************************************************************
Fonction voir_mariages() : creation de la fenêtre de visu du listing mariages
*******************************************************************************/
function voir_mariages(nom,annee,sexe)

       {
 titre="Patronyme : "+nom+" Mariages dans le fichier DBF";	

F4 = window.open("fiche_mariages.php?titre="+titre+"&nom="+nom+"&annee="+annee+
                 "&sexe="+sexe,"Mariages",
                 "width=930,height=200,left=150,top=480,scrollbars=yes");


       }
/********************************************************************************
Fonction sepulture() : creation de la fenêtre de visu de l'enregistrement
                          des décès
*******************************************************************************/
function sepulture(id,ligne,nom,prenom,annee)

       {
 titre="Sépulture : "+nom+" "+prenom;	

F5 = window.open( "sepulture.php?titre="+titre+"&code="+id+
                  "&annee="+annee+"&nom="+nom+"&prenom="+prenom+"&ligne="+ligne,
		  "Sepultures",
                  "width=930,height=200,left=150,top=600,scrollbars=yes");


       }
       
/********************************************************************************
Fonction eenregistrer_dc() : redirection vers la page d'enregistrement
	                     sepulture
*******************************************************************************/
function enregistrer_dc(ligne,id,jour,mois,annee,lieu)

       {

   
nc="L"+ligne+"C0";


  objet=opener.document.getElementById(nc);
  objet.style.backgroundColor="#FFCC00";	
	
       
 lien="valid_dc.php?&code="+id+"&jour="+jour+"&mois="+mois+"&annee="+annee+
       "&lieu="+lieu;
 
 
	document.location.href = lien;

       }
/********************************************************************************
Fonction Analyse_A() : comparaison données brutes à GENINDIV
*******************************************************************************/
function Analyse_A(nom)
{
objet=document.getElementsByTagName("iframe")[0];
objet.src="test.php?nom="+nom;
}

/********************************************************************************
Fonction creer_parents() : enregistrement des parents dans GENINDIV
*******************************************************************************/
function creer_parents(nm,pr,date,sexe,ligne,ident)

       {
	 //pere_mere.style.visibility='visible';
	 
     if(sexe==1) nc="L"+ligne+"C3";
     else nc="L"+ligne+"C5";


  objet=document.getElementById(nc);
  objet.style.backgroundColor="#9999FF";	
	 
	 
      titre="Etablir la filiation avec  : "+nm+" "+pr;	
      	
      F2 = window.open("filiation.php?titre="+titre+
                       "&nom="+nm+"&prenom="+pr+
		       "&date="+date+"&sexe="+sexe+"&ligne="+ligne+"&ident="+ident,
		       "Filiation",
	               "width=500,height=200,left=150,top=250,scrollbars=yes");

       }
       

/********************************************************************************
Fonction bon_commande() : Création de la fenêtre BC
*******************************************************************************/
function bon_commande()

       {
 
	
 //titre="Commande  ";
 FCD = window.open("commande.php?service=1&ident=0",
		  "Commandes",
                  "width=550,height=400,left=30,top=200,scrollbars=yes");


       }
/******************************************************************************
Fonction veri_compte() :lance la vérification de l'existence du compte client
******************************************************************************/
function veri_compte(ident,q)
{
if (q==1) lien="commande.php?service=2&ident="+ident;
else lien="ticketgene.php?service=2&ident="+ident;
document.location.href = lien;
}


       
/********************************************************************************
Fonction ModifEnrg() : modifie une ligne du listing
*******************************************************************************/
function ModifEnrg(ligne,cde)
{
for (i=0;i<8;i++)
{
  nm="L"+ligne+"C"+i;
  cde=0;
  objet=document.getElementById(nm);
  objet.style.backgroundColor="#CC0066";
 }
 
pt_zone= new Array();
    pt_zone[0]= new Array();
    pt_zone[1]= new Array();
    
    pt_zone[0][0]=1;
    pt_zone[0][1]=3;
    pt_zone[0][2]=5;
    
    pt_zone[1][0]=15;
    pt_zone[1][1]=30;
    pt_zone[1][2]=30;
    
for (i=0;i<3;i++)
{

  nm="L"+ligne+"C"+pt_zone[0][i];
  objet=document.getElementById(nm);
  
  zone=document.createElement("input");
  zone.setAttribute("className","arial8_rouge");
  zone.setAttribute("type","text");
  zone.setAttribute("size",pt_zone[1][i]);
  
  contenu=objet.firstChild;
  valeur=objet.firstChild.nodeValue;
  objet.removeChild(contenu)
  objet.appendChild(zone);
  
  
  zone.setAttribute("value",valeur);
  
  }
  
 
}

/********************************************************************************
Fonction CentrAll() RECENTRE TOUS LES AFFICHAGES DANS UNE ZONE CENTRALE DE
	            700 PIXEL
*******************************************************************************/
function CentrAll(n)
{
lg=screen.width;
mrg=(lg-700)/2;

ht=screen.availHeight-200;

for (i=0;i<n;i++){
objet=document.getElementsByTagName("div")[i];

   switch (objet.id) {
   
       case "bandeau" :
       objet.style.left=mrg;
       break;

       case "menus" :
       objet.style.left=mrg;
       break;

       case "page" :
       objet.style.left=mrg;
       objet.style.height=ht;
       break;
       
       case "nav" :
       objet.style.left=mrg;
       objet.style.height=ht;
       break;

       
       
       default :
       break;
       }



	         }
//for (i=0;i<n;i++)Fondu(i,100);

}

/******************************************************************************
Fonction Fondu()
*******************************************************************************/
function Fondu(n,v)
{

 objet=document.getElementsByTagName("div")[n];

 
 objet.filters.alpha.opacity=v;


}
/*****************************************************************************/
function adresse(qui)
{
 e_tab = new Array(10)
   for (var i=0; i < e_tab.length; ++i) e_tab[i] = new Array(3);
   
 e_tab[0][0]="webmestre";
 e_tab[0][1]="csv-patrimoine";
 e_tab[0][2]="org";

cremerie="mailto:"+e_tab[qui][0]+"@"+e_tab[qui][1]+"."+e_tab[qui][2];
document.location=cremerie;

}
/*****************************************************************************/
function LienPage(posit,page)
	  {
	   lien=page+"?option="+posit;
	   document.location.href = lien;
          }

/**************************************************************************

LIBRAIRIE DE FONCTIONS JAVASCRIPT POUR GENERATEUR DE MENU HORIZONTAL

Copyright (c) Jean-Marie Cordonnier 2005 V2.0



*****************************************************************************/

function Activer_Option(ident,choix,nbopt)

{


/*for (i=0;i<nbopt;i++)
{
 idopt="Opt-"+i;
 objet=document.getElementById(idopt);
 objet.filters.alpha.opacity=50;
}*/
 
 
 switch (choix) {
 
 case -1 :
 
 for (i=0;i<nbopt;i++)
  {
   s_ident="SousOpt-"+i;
   objet=document.getElementById(s_ident);
   objet.style.visibility="hidden";
  }
 
 break;

case 1 :
 //ident.filters.alpha.opacity=100;

 for (i=0;i<nbopt;i++)
  {
   s_ident="SousOpt-"+i;
   objet=document.getElementById(s_ident);
   objet.style.visibility="hidden";
  }
  s_ident="Sous"+ident.id;
  objet=document.getElementById(s_ident);
  //objet.zIndex="3";
  objet.style.visibility="visible";
  window.status=objet.zIndex;

break;

default :
break;

}

  for(i = 0; i < document.getElementsByTagName("div").length; i++)
      {
      objet=document.getElementsByTagName("div")[i];
      if (objet.id.substr(0,9)=="s_SousOpt") objet.style.visibility="hidden";
      }




}
/*****************************************************************************/

function Activer_Sous_Option(ident)

{
sm="SousMenu";


nbsm=document.getElementsByName(sm).length;
for (i=0;i<nbsm;i++){
objet=document.getElementsByName(sm)[i];
objet.style.visibility="hidden";
}	   		

objet=document.getElementById(ident);
objet.style.visibility="visible";


}

/******************************************************************************/

function boutons_defil(bt,q,nm,service,reg)
{

 switch (q) {
      case 1:
      bt.src="/Images/fga.gif";
      break;
      
      case 2:
      window.status="vers page :"+nm;
      bt.src="/Images/fgae.gif";
      break;
      
      case 3:
      lien="accueil.php?service="+service+"&ind1="+nm+"&ind2="+reg;
      document.location.href = lien;
      
      break;
      
      
      case 4:
      bt.src="/Images/dga.gif";
      break;

      case 5:
      window.status="vers page :"+nm;
      bt.src="/Images/dgae.gif";
      break;

      case 6:
      lien="accueil.php?service="+service+"&ind1="+nm+"&ind2="+reg;
      document.location.href = lien;
      break;

      case 7:
      bt.src="/Images/ddr.gif";
      break;

      case 8:
      window.status="vers page :"+nm;
      bt.src="/Images/ddre.gif";
      break;

      case 9:
      lien="accueil.php?service="+service+"&ind1="+nm+"&ind2="+reg;
      document.location.href = lien;
      break;
      
      case 10:
      bt.src="/Images/fdr.gif";
      break;

      case 11:
      window.status="vers page :"+nm;
      bt.src="/Images/fdre.gif";
      break;

      case 12:

      lien="accueil.php?service="+service+"&ind1="+nm+"&ind2="+reg;
      document.location.href = lien;
      break;
     
      case 13:
      if (nm>bt) nm=bt;
      if (nm<1) nm=1;

      lien="accueil.php?service="+service+"&ind1="+nm+"&ind2="+reg;
      document.location.href = lien;
      break;

	           }


}

/********************************************************************************

Fonction DimAffichage():
S'occupe de dimensionner l'afficage en fonction de la taille de l'écran
=toujours 800 pixels

*********************************************************************************/
function DimAffichage()
{
lg=screen.width;
mrg=lg-800;
document.getElementsByTagName("body")[0].style.marginRight=mrg;
}
