From c2de857157d3ebe53e5cd8374ab452e2f258c3f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabrice=20PENHO=C3=8BT?= Date: Mon, 2 May 2022 11:01:54 +0200 Subject: [PATCH] =?UTF-8?q?Version=20temporaire=20script=20d'int=C3=A9grat?= =?UTF-8?q?ion=20pour=20la=20future=20version=20du=20site=20segal.bzh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- integrations/src/segal.ts | 48 +++++++++++++++++++++------------------ 1 file changed, 26 insertions(+), 22 deletions(-) diff --git a/integrations/src/segal.ts b/integrations/src/segal.ts index e06087c..50e473c 100644 --- a/integrations/src/segal.ts +++ b/integrations/src/segal.ts @@ -1,4 +1,4 @@ -import { FreeDatas2HTML, Pagination, Selector } from "../../src/FreeDatas2HTML"; +import { FreeDatas2HTML, Pagination, SearchEngine, Selector } from "../../src/FreeDatas2HTML"; import { MixedFieldsRender } from "../../src/extensions/MixedFieldsRender"; const initialise=async () => @@ -13,43 +13,43 @@ const initialise=async () => // Chaînes à utiliser par le moteur de rendu : const renderSettings= { - allBegining: "", - allEnding: "", - datasLinesDisplaying: `

##0##

##8##.
Lieux d'activité : ##7##.##10## ##11####4####12##

` + allBegining: "", + datasLinesDisplaying: `
  • ##0##

  • ` }; // Fonctions spécifiques pour créer les liens hypertextes : const rendName2HTML=(values: {[index: string]:string} ) : string => { if(values["Présentation"] !== undefined && values["Présentation"].trim() !== "") - return `${values["Nom commercial"].trim()}`; + return `${values["Nom commercial"].trim()}`; else return values["Nom commercial"].trim(); }; const rendSite2HTML=(values: {[index: string]:string} ) : string => { if(values["Site"].trim() !== "") - return `
    Page internet`; + return `
  • Page internet
  • `; else return ""; }; const rendEmail2HTML=(values: {[index: string]:string} ) : string => { if(values["E-mail"].trim() !== "") - return `
    E-Mail`; + return `
  • Courriel
  • `; else return ""; }; const rendTel2HTML=(values: {[index: string]:string} ) : string => { if(values["Fixe"].trim() !== "") - return `
    ${values['Fixe'].trim()}`; + return `
  • ${values['Fixe'].trim()}
  • `; else return ""; }; const rendMobile2HTML=(values: {[index: string]:string} ) : string => { if(values["Portable"].trim() !== "") - return `
    ${values['Portable'].trim()}`; + return `
  • ${values['Portable'].trim()}
  • `; else return ""; }; @@ -58,23 +58,27 @@ const initialise=async () => myRender.fieldRenders=[{ name:"Nom commercial", rend2HTML: rendName2HTML}, { name:"E-mail", rend2HTML: rendEmail2HTML}, { name:"Site", rend2HTML: rendSite2HTML}, { name:"Fixe", rend2HTML: rendTel2HTML}, { name:"Portable", rend2HTML: rendMobile2HTML}]; converter.datasRender=myRender; - // Création de filtres : + // Création des filtres : const filtre1=new Selector(converter, 8, { id:"filtreActivites"} ); - let filtre2=new Selector(converter, 7, { id:"filtreLieux"}, "," ); + //let filtre2=new Selector(converter, 7, { id:"filtreLieux"}, "," ); filtre1.filter2HTML("Domaine d'activité"); - filtre2.filter2HTML("Lieux"); - converter.datasFilters=[filtre1,filtre2]; + //filtre2.filter2HTML("Lieux"); - // Configuration de la pagination : - const pagination=new Pagination(converter, { id:"pages" }, "Page à afficher :"); - pagination.options={ displayElement: { id:"pagination" }, values: [10,20,50,100] , name: "Choix de pagination :" }; - pagination.selectedValue=10; - converter.pagination=pagination; - pagination.options2HTML(); + // Dont un moteur de recherche : + const mySearch=new SearchEngine(converter, { id:"search" }); + mySearch.label=""; + mySearch.btnTxt="Chercher"; + // La recherche se lance automatiquement, dès que 2 caractères sont saisis : + mySearch.automaticSearch=true; + mySearch.nbCharsForSearch=2; + mySearch.placeholder="Exemples de recherche : creperie port-louis, pain bio..."; + mySearch.filter2HTML(); - // Affichage initial avec l'id de l'élément HTML devant afficher le compteur : + converter.datasFilters=[filtre1,mySearch]; + + // Id de l'élément HTML devant afficher la liste de partenaires : converter.datasViewElt={ id:"partenaires" }; - converter.refreshView(); + // Pas d'affichage initial, car il est généré en PHP côté backend. } catch(e) { @@ -83,5 +87,5 @@ const initialise=async () => } } -console.log("Hello, ami développeur :-)\nLe code source TypeScript utilisé pour faire fonctionner cette page est lisible ici : :\nhttps://forge.chapril.org/Fab_Blab/freeDatas2HTML/src/branch/master/integrations/src/segal.ts\nUn bug ? Une suggestion ? => fabrice@le-fab-lab.com"); +console.log("**** Hello les devs :-)\nLe code source de ce script est libre et vous pouvez le trouver à cette adresse :\n https://forge.chapril.org/Fab_Blab/freeDatas2HTML/src/branch/master/integrations/src/segal.ts"); initialise(); \ No newline at end of file