
function F_afficherChamp(p_idEnsemble, p_idFamille, p_indexCritere){
this.masquerTout();
lib.setDisplayBlock( lib.getById(p_idEnsemble) );
this.setChampsActifs(p_idEnsemble);
try {
for(var i = 0; i < this.listeChampsActifs.length; i++) {
var idElement = this.listeChampsActifs[i];
var typeElement = lib.getById(idElement).nodeName;
if (typeElement == "SELECT") {
var selection = new Selection(idElement);
if (selection.estVide()) {
selection.autocharger();
} else {      
selection.recharger();
this.trierSelection(idElement);
this.supprimerOptionsSuperflues(idElement);
}
} else if (typeElement == "INPUT") {
this.effacerContenuSaisie(idElement);
}
}
this.trierSelection("listeCriteresSelectionnes");
} catch(e)  {
e = new ExceptionAEF('W0001');    	
e.afficher();
}
this.masquerSousOnglets(p_idFamille);
this.afficherSousOnglet(p_idFamille, p_indexCritere);
}
function F_reinitialiserSaisies(p_idEnsemble) {
var listeSaisies = lib.getById(p_idEnsemble).getElementsByTagName("INPUT");
for (var i = 0; i < listeSaisies.length; i++) {
if (listeSaisies[i].getAttribute("type") == "text") {
listeSaisies[i].value = "";
}
}
}
function F_supprimerOptionsSuperflues(p_idSelection) {
var idSelectionCriteres = "listeCriteresSelectionnes";
var listeCriteres =
lib.getById(idSelectionCriteres).getElementsByTagName("OPTION");
var listeOptions = lib.getById(p_idSelection).options;
var trouve = 0;
for(var i = 0; i < listeCriteres.length; i++) {
trouve = 0;
for(var j = 0; j < listeOptions.length && trouve == 0; j++) {
if (listeCriteres[i].value == listeOptions[j].value) {
lib.getById(p_idSelection).options[j] = null;
trouve = 1;
}
}
}
}
function F_afficherEnsembleChamps(p_idFamille){
var idEnsemble = "";
listeEnsembles = this.saisie.getElementsByTagName('fieldset');
for(var i = 0 ; i< listeEnsembles.length ; i++){
id = listeEnsembles[i].id.substring(0, p_idFamille.length);
if(id == p_idFamille) {
idEnsemble = listeEnsembles[i].id;
break;
}
}
this.afficherChamp(idEnsemble, p_idFamille, 0);
}
function F_masquerSousOnglets(p_idOnglet){
idBarre  = "barre" + p_idOnglet.charAt(0).toUpperCase();
idBarre += p_idOnglet.substring(1, p_idOnglet.length);
barre = lib.getById(id);
listeSousOnglets = barre.getElementsByTagName('li');
for(var i=0 ; i<listeSousOnglets.length ; i++){
listeSousOnglets[i].className = "";
}
}
function F_afficherSousOnglet(p_identifiant, p_index){
idBarre  = "barre" + p_identifiant.charAt(0).toUpperCase();
idBarre += p_identifiant.substring(1, p_identifiant.length);
barre = lib.getById(idBarre);
listeSousOnglets = lib.getListByTag(barre,'li');
for( var i = 0; i < listeSousOnglets.length; i++ ) {
if( p_index == i)
classe = "sousOngletSelectionne";
else
classe = "none";
lib.setClass(listeSousOnglets[i], classe);
}
}
function F_lireFiltre(p_idSousOnglet){
identifiant = p_idSousOnglet.charAt(0).toUpperCase() +
p_idSousOnglet.substring(1, p_idSousOnglet.length);
return document.getElementById("filtre" + identifiant).value;
}
function F_lireFiltreExclusion(p_idSousOnglet){
identifiant = p_idSousOnglet.charAt(0).toUpperCase() +
p_idSousOnglet.substring(1, p_idSousOnglet.length);
objet = document.getElementById("filtreExclusion" + identifiant);
if (objet) {
return objet.value;
}
else {
return '';
}
}
function F_getDestination(p_valeurElement) {
var idSelection = p_valeurElement.split("_")[0];
var destination = lib.getById(idSelection);
if (destination && destination.nodeName == "SELECT")
return destination;
else
return;
}
function F_ajouterGroupeOptions(p_famille, p_idBase, p_destination) {
idGroupe = "groupeOptions_" + p_idBase;
groupe = lib.getById(idGroupe);
if( !groupe ) {
groupe = document.createElement("optgroup");
groupe.setAttribute("label", p_famille);
groupe.setAttribute("id", idGroupe);
lib.appendChild(p_destination.id, groupe);
}
return groupe;
}
function F_deplacerOptionsSelectionnees(p_origine, p_destination) {
if (p_destination) {
var listeOptions = p_destination.options;
}
var destination = null;
for (var i=0; i<p_origine.options.length; i++) {
var optionCourante = p_origine.options[i];
valeur = optionCourante.value;
affichage = optionCourante.text;
if (optionCourante.selected) {
if (!listeOptions
|| listeOptions[valeur] == null
|| listeOptions[valeur] == "undefined"
) {
if (!p_destination) {
destination = this.getDestination(valeur);
} else {
destination = p_destination;
etiquette = this.getEtiquette(optionCourante);
idBase = optionCourante.parentNode.id;
this.ajouterGroupeOptions(etiquette, idBase, destination);
}
nouvelleOption = document.createElement("option");
nouvelleOption.text = affichage;
nouvelleOption.setAttribute("value", valeur);
nouvelleOption.setAttribute("title", affichage);
if (destination)
lib.appendChild(destination.id, nouvelleOption);
} else {
message  = "Critère '" + optionCourante.text;
message += "' déjà sélectionné !";
alert(message);
}
}
}
for (var i=(p_origine.options.length-1); i>=0; i--) {
if (p_origine.options[i].selected) {
if (navigateur.moteur == "MSIE" && navigateur.version >= 9){
p_origine.options[i].parentElement.removeChild(p_origine.options[i]);
}else{
p_origine.remove(i);
}
}
}
if (destination) {
this.setSelectionMelangee(destination.id);
this.trierSelection(destination.id);
}
this.setSelectionMelangee(p_origine.id);
this.trierSelection(p_origine.id);
if (destination) {
destination.selectedIndex = -1;
}
p_origine.selectedIndex = -1;
}
function F_trierSelection(p_idSelection) {
if( this.estSelectionTriee(p_idSelection) == 0) {
getSelectionById(p_idSelection).trier();
}
this.setSelectionTriee(p_idSelection);
}
function F_afficherGroupesOptions() {
var selection = document.getElementById('listeCriteresSelectionnes');
if (selection.childNodes.length > selection.options.length) {
var listeOptions = new Array();
for(var i=0; i<selection.childNodes.length; i++) {
if (selection.childNodes[i].nodeName == 'OPTGROUP') {
listeOptions[i] = new Option(
selection.childNodes[i].getAttribute('label'), 
selection.childNodes[i].getAttribute('label')
);
listeOptions[i].className = "optgroup";
} else {
listeOptions[i] = new Option(
selection.childNodes[i].text, 
selection.childNodes[i].value
);
}
}
for (var i=(selection.options.length-1); i>=0; i--) {
selection.options[i] = null;
}
selection.selectedIndex = -1;
for(var i=0; i<listeOptions.length; i++) {
if(listeOptions[i].text.length > 0) {
var n = selection.options.length;
selection.options[n] = new Option(
listeOptions[i].text, 
listeOptions[i].value
);
selection.options[n-1].className = listeOptions[i].className;
}
}
}
}
function F_initialiserSelectionTriee(p_idSelection) {
var taille = this.listeSelectionsTriees.length;
this.listeSelectionsTriees[taille] = new Array();
this.listeSelectionsTriees[taille][0] = p_idSelection;
this.listeSelectionsTriees[taille][1] = 1;
}
function F_setSelectionOrdonnee(p_idSelection, p_etat) {
var trouvee = 0;
var taille = this.listeSelectionsTriees.length;
for(var i=0; (i < taille) && (trouvee == 0); i++) {
if (this.listeSelectionsTriees[i][0] == p_idSelection) {
this.listeSelectionsTriees[i][1] = p_etat;
trouvee = 1;
}
}
if (trouvee == 0) {
this.initialiserSelectionTriee(p_idSelection);
}
}
function F_setSelectionTriee(p_idSelection) {
this.setSelectionOrdonnee(p_idSelection, 1);
}
function F_setSelectionMelangee(p_idSelection) {
this.setSelectionOrdonnee(p_idSelection, 0);
}
function F_estSelectionTriee(p_idSelection) {
var taille = this.listeSelectionsTriees.length;
for(var i=0; i < taille; i++) {
if (this.listeSelectionsTriees[i][0] == p_idSelection) {
return this.listeSelectionsTriees[i][1];
}
}
return 0;
}
function F_trierListeElements(p_element1,p_element2) {
return ( lib.getValueToCompare(p_element1) <
lib.getValueToCompare(p_element2) ) ? -1 : 1;
}
function F_getEtiquette(p_champ) {
try {
chaine= lib.getById(this.listeChampsActifs[0]).getAttribute('title');
return chaine;
} catch(e1) {
try {
return this.listeChampsActifs[0]
} catch(e2) {
return "..."
}
}
}
function F_copierSaisie(p_champ, p_liste) {
var valeurDate = "";
var valeur = "";
var symbole = "";
if (p_champ.id == 'donneesChiffreesCapitalSocial1' ) {
affichage = "A partir de " + p_champ.value + "K€";
symbole = "-";
}
if (p_champ.id == 'donneesChiffreesCapitalSocial2') {
affichage = "Jusqu'à " + p_champ.value + "K€";
symbole = "+";
}
else if(p_champ.id == 'infoDateCreation1') {
var date = lib.chaineEnDate(p_champ.value);
valeurDate = lib.dateEnChaine(date);
affichage = "A partir du " + valeurDate;
symbole = "-";
}
else if(p_champ.id == 'infoDateCreation2') {
var date = lib.chaineEnDate(p_champ.value);
valeurDate = lib.dateEnChaine(date);
affichage = "Jusqu'au " + valeurDate;
symbole = "+";
}
var idBase = p_champ.id.substring(0, p_champ.id.length - 1);
var nePasTransferer = 0;
if(valeurDate.length > 0) {
valeur = 'infoDateCreation' + symbole;
if ( this.incrementDate < 2) {
valeur = valeur + this.incrementDate++;
valeur = valeur + '_' + valeurDate;
} else {
this.incrementDate++;
nePasTransferer = 1;
if ((this.incrementDate > 1) && (this.incrementDate % 2 == 0 )) {
new ExceptionAEF('E0006').afficher();
}
}
} else  {
valeur = 'donneesChiffreesCapitalSocial' + symbole;
if ( this.incrementCapitalSocial < 2) {
valeur = valeur + this.incrementCapitalSocial++;
valeur = valeur + '_' + p_champ.value;
} else {
this.incrementCapitalSocial++;
nePasTransferer = 1;
if ((this.incrementCapitalSocial > 1) &&
(this.incrementCapitalSocial % 2 == 0 ))  {
new ExceptionAEF('E0006').afficher();
}
}
}
if (!nePasTransferer) {
etiquette = this.getEtiquette(p_champ);
this.ajouterGroupeOptions(etiquette, idBase, p_liste);
nouvelleOption = new Option( affichage, valeur, false, false);
nouvelleOption.setAttribute('title', affichage);
p_liste.options[p_liste.options.length] = nouvelleOption;
this.trierSelection(p_liste.id);
}
}
function F_selectionnerChampsTransferes(p_tout) {
for(var i=0; i < this.listeChampsActifs.length; i++) {
var idChamp = this.listeChampsActifs[i];
if (p_tout == 1 ) {
var champ = document.getElementById(idChamp);
if(champ.nodeName == "SELECT") {
selectAllOptions(champ);
}
}
this.transfererChamp(idChamp);
}
if(this.messageErreur.length > 0) {
alert(this.messageErreur);
this.messageErreur = "";
}
}
function F_transferer() {
this.selectionnerChampsTransferes(0);
}
function F_toutTransferer() {
this.selectionnerChampsTransferes(1);
}
function F_transfererChamp(p_identifiantChamp){
var codeErreur = "";
var champ = document.getElementById(p_identifiantChamp);
var liste = document.getElementById('listeCriteresSelectionnes');
if(champ.nodeName == 'SELECT') {
this.deplacerOptionsSelectionnees(champ, liste);
}
else if(champ.nodeName == 'INPUT') {
if ( this.validerFormat(champ) ) {
if ( this.validerBornes(champ.id) ) {
this.copierSaisie(champ, liste);
}
} else {
this.messageErreur =
"Veuillez saisir uniquement des caractères numériques";
}
}
}
function F_effacerTouteSelection() {
this.selectionnerTout();
this.supprimer();
}
function F_supprimer() {
liste = document.getElementById('listeCriteresSelectionnes');
if (this.incrementDate != 0) {
this.incrementDate = 0;
}
if (this.incrementCapitalSocial != 0) {
this.incrementCapitalSocial = 0;
}
this.deplacerOptionsSelectionnees(liste);
}
function F_validerFormat(p_champ) {
if ((p_champ.id == 'donneesChiffreesCapitalSocial1')
|| (p_champ.id == 'donneesChiffreesCapitalSocial2')) {
for (i=0; i < p_champ.value.length; ++i)
if (p_champ.value.charAt(i) < "0" ||
p_champ.value.charAt(i) > "9")
return 0;
}
return 1;
}
function F_validerBornes(p_nomChamp) {
champs = this.listeChampsActifs;
sValChamp = document.getElementById(champs[0]).value;
sValChamp1 = document.getElementById(champs[1]).value;
this.messageErreur = "";
if ((p_nomChamp == 'donneesChiffreesCapitalSocial1')
|| (p_nomChamp == 'donneesChiffreesCapitalSocial2')) {
valChamp = parseInt(sValChamp);
valChamp1 = parseInt(sValChamp1);
if ((sValChamp.length > 0) && (sValChamp1.length > 0)) {
if (valChamp > valChamp1) {
var message = "Veuillez saisir un nombre minimum inférieur";
message += " au nombre maximum";
this.messageErreur = message;
return 0;
} else if (valChamp == valChamp1) {
var message = "Veuillez saisir un nombre minimum différent";
message += " du nombre maximum";
this.messageErreur = message;
return 0;
} else {
return 1;
}
} else if (sValChamp.length == 0) {
this.messageErreur = "Veuillez saisir un minimum";
return 0;
} else if (sValChamp1.length == 0) {
this.messageErreur = "Veuillez saisir un maximum";
return 0;
}
} else if (
(p_nomChamp == 'infoDateCreation1') ||(p_nomChamp =='infoDateCreation2')
) {
this.messageErreur = lib.formatDateIncorrect(sValChamp);
if (this.messageErreur.length > 0) {
return 0;
}
this.messageErreur = lib.formatDateIncorrect(sValChamp1);
if (this.messageErreur.length > 0) {
return 0;
}
test_date = lib.comparerDates(
lib.chaineEnDate(sValChamp), lib.chaineEnDate(sValChamp1)
);
if ((sValChamp.length > 0) && (sValChamp1.length > 0)) {
if (test_date == 0) {
var message = "Veuillez saisir une date de début différente";
message += " de la date de fin";
this.messageErreur = message;
} else if (test_date == 1) {
var message = "Veuillez saisir une date de début antérieure";
message += " à la date de fin";
this.messageErreur = message;
} else if (test_date == 3) {
this.messageErreur =
"Veuillez saisir les dates au format JJ/MM/AAAA";
} else { 
return 1; 
}
} else {
return 1;
}
}
}
function F_annulerToutesSelections() {
listeSelections = this.saisie.getElementsByTagName('select');
for(var i=0 ; i < listeSelections.length ; i++){
listeSelections[i].selectedIndex = -1;
}
}
function F_effacerContenuSaisie(p_idSaisie) {
document.getElementById(p_idSaisie).value = "";
}
function F_masquerTout(){
listeEnsembles = this.saisie.getElementsByTagName('fieldset');
for(var i=0 ; i < listeEnsembles.length ; i++){
ensembleChamps = listeEnsembles[i];
lib.setDisplayNone(ensembleChamps);
}
this.annulerToutesSelections();
}
function F_selectionnerTout() {
liste = document.getElementById('listeCriteresSelectionnes');
for (var i=0; i<liste.options.length; i++) {
liste.options[i].selected = true;
}
}
function F_setChampsActifs(p_idEnsemble) {
ensemble = lib.getById(p_idEnsemble);
this.listeChampsActifs = new Array();
for(var i=0; i<ensemble.childNodes.length; i++) {
this.ajouterChampsActifs(ensemble, i);
if(typeChamp == "P" || typeChamp == "DIV") {
conteneur = ensemble.childNodes[i];
for(var j=0; j<conteneur.childNodes.length; j++) {
this.ajouterChampsActifs(conteneur, j);
}
}
}
}
function F_ajouterChampsActifs(p_conteneur, p_increment) {
typeChamp = p_conteneur.childNodes[p_increment].nodeName;
idChamp = p_conteneur.childNodes[p_increment].id;
if( ( typeChamp == "SELECT" || typeChamp == "INPUT" )
&& idChamp.substring(0, 6) != 'filtre' && idChamp.length > 0 ) {
this.listeChampsActifs[this.listeChampsActifs.length] = idChamp;
}
}
function Formulaire_initialiserSelections() {
listeSelections = document.getElementsByTagName("SELECT");
for( var i=0; i<listeSelections.length; i++) {	
this.initialiserSelectionTriee(listeSelections[i].id);
}
this.setSelectionMelangee('listeCriteresSelectionnes');
}
function Formulaire_getFiltresTypeListe() {
var listeFiltresTypeListe = new Array();
var listeSELECT = document.getElementsByTagName('SELECT');
for(var i=0; i<listeSELECT.length; i++) {	
if (listeSELECT[i].className != 'filtreTypeListe') {
listeFiltresTypeListe.append(new Selection(listeSELECT[i].id));
}
}
return listeFiltresTypeListe;
}
function Formulaire(){
this.saisie = document.getElementById('saisie');
this.optionTransfer = null;
this.listeChampsActifs = null;
this.listeSelectionsTriees = new Array();
this.messageErreur = "";
this.incrementDate = 0;
this.incrementCapitalSocial = 0;
this.afficherEnsembleChamps = F_afficherEnsembleChamps;
this.afficherChamp = F_afficherChamp;
this.masquerTout = F_masquerTout;
this.lireFiltre = F_lireFiltre;
this.lireFiltreExclusion = F_lireFiltreExclusion;
this.masquerSousOnglets = F_masquerSousOnglets;
this.afficherSousOnglet = F_afficherSousOnglet;
this.transferer = F_transferer;
this.deplacerOptionsSelectionnees = F_deplacerOptionsSelectionnees;
this.annulerToutesSelections = F_annulerToutesSelections;
this.transfererChamp = F_transfererChamp;
this.selectionnerChampsTransferes = F_selectionnerChampsTransferes;
this.selectionnerTout = F_selectionnerTout;
this.setChampsActifs = F_setChampsActifs;
this.ajouterChampsActifs =F_ajouterChampsActifs;
this.copierSaisie = F_copierSaisie;
this.toutTransferer = F_toutTransferer;
this.getEtiquette = F_getEtiquette;
this.getDestination = F_getDestination;
this.ajouterGroupeOptions = F_ajouterGroupeOptions;
this.trierSelection = F_trierSelection;
this.supprimerOptionsSuperflues = F_supprimerOptionsSuperflues;
this.effacerTouteSelection = F_effacerTouteSelection;
this.validerFormat = F_validerFormat;
this.validerBornes = F_validerBornes;
this.setSelectionOrdonnee = F_setSelectionOrdonnee;
this.setSelectionTriee = F_setSelectionTriee;
this.setSelectionMelangee = F_setSelectionMelangee;
this.estSelectionTriee = F_estSelectionTriee;
this.initialiserSelections = Formulaire_initialiserSelections;
this.initialiserSelectionTriee = F_initialiserSelectionTriee;
this.reinitialiserSaisies = F_reinitialiserSaisies;
this.supprimer = F_supprimer;
this.effacerContenuSaisie = F_effacerContenuSaisie;
this._getFiltresTypeListe = Formulaire_getFiltresTypeListe;
this.afficherGroupesOptions = F_afficherGroupesOptions;
var selection = getSelectionById('listeCriteresSelectionnes');
if (selection.contientCapitalSocial() == 1) {
this.incrementCapitalSocial = 2;
}
if (selection.contientDateCreation() == 1 ) {
this.incrementDate = 2;
}
this.initialiserSelections();
}

