Difference between revisions of "templates/fr"

From GeneWeb
Jump to: navigation, search
(Modules de personnalisation)
(Perso.txt)
Line 57: Line 57:
 
==Perso.txt==
 
==Perso.txt==
  
Le fichier perso.txt offre un moyen de personnalisation supplémentaire. Le code ci-dessous est auto-explicatif.
+
Le fichier perso.txt offre deux moyens de personnalisations supplémentaires. Le code ci-dessous est auto-explicatif.
(On notera l'évolution du nommage des fichiers vers anglais. La liste des fichiers est consultable dans le dossier {{c|gw/etc/perso_modules}}).
+
(La liste des fichiers est consultable dans le dossier {{c|gw/etc/perso_modules}}).
  
 
<pre>
 
<pre>
  
 
%import;perso_utils
 
%import;perso_utils
 
 
%include.perso_header;
 
%include.perso_header;
  
 
%if;(bvar.perso_module_tplnb="" or bvar.perso_module_tplnb=0)
 
%if;(bvar.perso_module_tplnb="" or bvar.perso_module_tplnb=0)
   %apply;show_templ("perso_module/personnal_data")
+
  %let;op_m;1%in;
 +
   %apply;show_templ("perso_module/individu")
 +
  %let;op_m;1%in;
 +
  %apply;show_templ("perso_module/gr_parents")
 +
  %let;op_m;1%in;
 
   %apply;show_templ("perso_module/parents")
 
   %apply;show_templ("perso_module/parents")
 +
  %let;op_m;1%in;
 
   %apply;show_templ("perso_module/unions")
 
   %apply;show_templ("perso_module/unions")
   %apply;show_templ("perso_module/siblings")
+
  %let;op_m;1%in;
 +
   %apply;show_templ("perso_module/fratrie")
 +
  %let;op_m;1%in;
 
   %apply;show_templ("perso_module/relations")
 
   %apply;show_templ("perso_module/relations")
   %apply;show_templ("perso_module/timeline")
+
  %let;op_m;1%in;
 +
   %apply;show_templ("perso_module/chronologie")
 +
  %let;op_m;1%in;
 
   %apply;show_templ("perso_module/notes")
 
   %apply;show_templ("perso_module/notes")
 +
  %let;op_m;1%in;
 
   %apply;show_templ("perso_module/sources")
 
   %apply;show_templ("perso_module/sources")
   %apply;show_templ("perso_module/trees")
+
  %let;op_m;1%in;
 +
   %apply;show_templ("perso_module/arbres")
 
%else;
 
%else;
 
   %for;i;0;bvar.perso_module_tplnb;
 
   %for;i;0;bvar.perso_module_tplnb;
Line 83: Line 93:
 
</pre>
 
</pre>
  
Pour la plupart des sous modules, plusieurs alternatives sont disponibles, et vous pouvez éditer perso.txt selon votre convenance.
+
Dans l'hypothèse où la variable {{c|perso_module_tplnb}} est absente ou nulle, on affichera les modules spécifiés, avec l'option choisie.
 +
Dans le cas contraire, on affichera les modules selon l'association précisée dans le fichier {{c|base.gwf}} :
  
 
<pre>
 
<pre>
drwxr-xr-x  23 Henri  staff    782  1 oct 22:26 .
+
perso_module_0=individu
drwxr-xr-x  64 Henri  staff  2176 15 oct 23:56 ..
+
-rw-r--r--  1 Henri  staff  3979  1 oct 22:26 tree_3gen_v.txt
+
-rw-r--r--  1 Henri  staff  12691  1 oct 22:26 tree_3gen_v_photo.txt
+
-rw-r--r--  1 Henri  staff  10477  1 oct 22:26 tree_4gen_v.txt
+
-rw-r--r--  1 Henri  staff  19592  1 oct 22:26 tree_5gen_h.txt
+
-rw-r--r--  1 Henri  staff  2303  1 oct 22:26 personnal_data.txt
+
-rw-r--r--  1 Henri  staff  7283  1 oct 22:26 family.txt
+
-rw-r--r--  1 Henri  staff  2964  1 oct 22:26 siblings.txt
+
-rw-r--r--  1 Henri  staff  1636  1 oct 22:26 notes.txt
+
-rw-r--r--  1 Henri  staff    785  1 oct 22:26 parents.txt
+
-rw-r--r--  1 Henri  staff  1877  1 oct 22:26 relations.txt
+
-rw-r--r--  1 Henri  staff    360  1 oct 22:26 sources.txt
+
-rw-r--r--  1 Henri  staff  1099  1 oct 22:26 timeline.txt
+
-rw-r--r--  1 Henri  staff  7374  1 oct 22:26 unions.txt
+
</pre>
+
 
+
Ceci peut aussi être fait avec un ensemble de paramètres dans le fichier {{c|base.gwf}}.
+
 
+
<pre>
+
perso_module_0=personnal_data
+
 
perso_module_1=parents
 
perso_module_1=parents
 
perso_module_2=unions
 
perso_module_2=unions
perso_module_3=siblings
+
perso_module_3=fratrie
 
perso_module_4=relations
 
perso_module_4=relations
 
perso_module_5=notes
 
perso_module_5=notes
 
perso_module_6=sources
 
perso_module_6=sources
perso_module_7=trees
+
perso_module_7=arbres
</pre>
+
  
Avec un dernier paramètre précisant le nombre total de sous-modules :
 
<pre>
 
 
perso_module_tplnb=8
 
perso_module_tplnb=8
 
</pre>
 
</pre>
 
 
=== Module et options d'affichage (Version 7) ===
 
=== Module et options d'affichage (Version 7) ===
  
Line 129: Line 116:
  
 
<pre>
 
<pre>
perso_module_0=personnal_data
+
perso_module_0=individu
 
perso_module_1=parents
 
perso_module_1=parents
 
perso_module_2=unions
 
perso_module_2=unions
perso_module_3=sinlings
+
perso_module_3=fratrie
 
perso_module_4=relations
 
perso_module_4=relations
 
perso_module_5=notes
 
perso_module_5=notes
 
perso_module_6=sources
 
perso_module_6=sources
perso_module_7=trees
+
perso_module_7=arbres
 
perso_module_8=timeline
 
perso_module_8=timeline
 
perso_module_9=gr_parents
 
perso_module_9=gr_parents
perso_module-10=divider
+
perso_module-10=ligne
 
</pre>
 
</pre>
  
Line 145: Line 132:
  
 
<pre>
 
<pre>
perso_module_a=personnal_data
+
perso_module_i=individu
perso_module_b=parents
+
perso_module_p=parents
options_parents=5
+
perso_module_u=unions
perso_module_c=unions
+
perso_module_f=fratrie
options_unions=5
+
perso_module_r=relations
perso_module_d=siblings
+
perso_module_c=chronologie
options_siblings=3
+
perso_module_n=notes
perso_module_e=relations
+
perso_module_s=sources
options_relations=2
+
perso_module_a=arbres
perso_module_f=timeline
+
perso_module_g=gr_parents
options_timeline=2
+
perso_module_l=ligne
perso_module_g=notes
+
options_notes=2
+
perso_module_h=sources
+
options_sources=2
+
perso_module_i=trees
+
options_trees=8
+
perso_module_j=gr_parents
+
options_gr_parents=3
+
perso_module_z=divider
+
 
</pre>
 
</pre>
  
Chaque module peut être affiché selon le choix d'une option dont la valeur varie de 1 au chiffre précisé dans la variable {{c|options_module}} associés (la valeur par défaut est {{c|1}}).
 
  
 
L'affichage des modules est gouverné par la valeur de la [[macros/fr#Variables_contextuelles|variable contextuelle]] {{c|p_mod}} qui définit le choix des modules, l'ordre d'affichage et l'option choisie.
 
L'affichage des modules est gouverné par la valeur de la [[macros/fr#Variables_contextuelles|variable contextuelle]] {{c|p_mod}} qui définit le choix des modules, l'ordre d'affichage et l'option choisie.
Ce paramètre est constitué par une succession de paires "lettre, chiffre", la lettre précisant le module et le chiffre l'option d'affichage. Ces paires apparaissent dans l'ordre d'affichage souhaité comme dans l'exemple ci-dessous : "gd_parents", "personnal_data", parents", "unions", ...
+
Ce paramètre est constitué par une succession de paires "lettre, chiffre", la lettre précisant le module et le chiffre l'option d'affichage. Ces paires apparaissent dans l'ordre d'affichage souhaité comme dans l'exemple ci-dessous : "gd_parents", "individu", parents", "unions", ...
 
+
p_mod=j1a1b1c1d1e1f1g1h1i3
+
  
 +
p_mod=g1i1p1u1f1r1c1n1s1a3
  
Le choix de {{c|1=p_mod=b1b2b3b4b5}} affichera les cinq options du module [[c|parents}}.
+
Le choix de {{c|1=p_mod=p1p2p3p4p5}} affichera les cinq options du module [[c|parents}}.
  
La barre de menu de la page {{c|perso.txt}} (deuxième onglet en aprtant de la gauche comme le montre l'image ci-dessous) fournit une interface pour changer la valeur du paramètre {{c|p_mod}}. Définir {{c|1=p_mod=zz}} à pour effet d'annuler l'utilisation de ce paramètre et de revenir à la page de présentation standard.
+
La barre de menu de la page {{c|perso.txt}} (deuxième onglet en partant de la gauche comme le montre l'image ci-dessous) fournit une interface pour changer la valeur du paramètre {{c|p_mod}}. Définir {{c|1=p_mod=zz}} à pour effet d'annuler l'utilisation de ce paramètre et de revenir à la page de présentation standard.
  
 
Il est possible d'associer aux modules n'importe quelle lettre unique entre "a" et "z".
 
Il est possible d'associer aux modules n'importe quelle lettre unique entre "a" et "z".

Revision as of 19:15, 10 October 2017

150px-Geographylogo svg.png Language: English • français

Le serveur gwd produit le code HTML affiché par votre navigateur à partir d'instructions conservées dans un fichier texte. Des exemples de tels fichiers sont :

  • welcome.txt la page d'accueil de votre base lorsque vous vous connectez à localhost:2317/basename
  • perso.txt la page qui affiche les données spécifiques d'un individu
  • updfam.txt la page contenant le formulaire de saisie des éléments d'une famille

Un ensemble de fichiers constituant une interface utilisateur cohérente s'appelle un "template".

Les templates sont invoqués en ajoutant (avec un bouton cliquable si disponible, ou manuellement si non) le texte templ=templ_name; dans l'URL qui apparait et haut de votre navigateur. GeneWeb se "souviendra" de cette demande de template et insèrera le code correspondant dans toutes les URL à suivre (la variable templ fait partie des variables contextuelles de gwd).

Les fichiers d'un template sont stockés dans un dossier de la distribution appelé geneweb/gw/etc/template_name.

Quand gwd a besoin d'un fichier, il le recherche successivement et dans cet ordre dans les endroits suivants :

bdir/etc/base/
gw/etc/template_name/
gw/etc/

-bdir est la valeur du paramètre -bd de gwd, et gw est le dossier dans lequel réside gwd.

Si aucun fichier n'est trouvé, on parcours successivement les templates définis par la variable template du fichier de configuration .gwf.

Vous pouvez par conséquent vous limiter à l'édition d'un seul fichier, les autres seront trouvés dans les dossiers par défaut.

Modules de personnalisation

La version 7 de GeneWeb offre nouvelle manière pour personnaliser l'aspect de la page personnelle. Cette solution repose sur l'existence d'une liste de modules définis dans le fichier de configuration base.gwf en associant chaque module à une lettre entre a et z (attention à ne pas mettre de texte supplémentaire après le nom de l'option - ni espaces, ni commentaires!).

  perso_module_i=individu
  perso_module_p=parents
  perso_module_f=fratrie
  ...

Associée à ces modules, la variable p_mod= définira l'ordre dans lequel ces modules seront affichés, et pour chacun d'eux une valeur d'option comprise entre 0 et 9, et qui pourra modifier le comportement du module. Par exemple le vecteur

p_mod=i1p2f3

affichera d'abord le module individu avec l'option 1, puis le module parents avec l'option 2 et enfin le module fratrie avec l'option 3.

Dans cet autre exemple

P_mod=i1l1i2l1i3l1i4

on affichera les quatre variantes du module individu séparées par une ligne horizontale.

Le fichier de configuration par défaut a.gwf donne la liste des modules actuellement disponibles, sachant qu'il est toujours possible pour un utilisateur de rajouter ses propres modules qu'il conservera dans le dossier

bases/etc/perso_modules/nouveau_module.txt

La variable p_mod= ci-dessus est transférée dans l'URL (au même titre que la variable templ=) et une interface graphique permet la sélection et le choix des options. L'affichage de vignettes permet de se rendre compte de l'aspect global de chaque option et de la page résultant de leur assemblage. Les modules personnels ajoutés par l’utilisateur n'apparaissent pas dans l'interface graphique mais restent accessibles en éditant manuellement le vecteur p_mod=. Pour les faire apparaître dans l’interface graphique, il faut éditer le fichier gw/etc/p_mod.js en s'inspirant des modules existants.

Sur cette interface, le bouton le plus à droite propose une option globale p_mod=zz qui organise un ensemble de données sur deux colonnes.

Perso.txt

Le fichier perso.txt offre deux moyens de personnalisations supplémentaires. Le code ci-dessous est auto-explicatif. (La liste des fichiers est consultable dans le dossier gw/etc/perso_modules).


%import;perso_utils
%include.perso_header;

%if;(bvar.perso_module_tplnb="" or bvar.perso_module_tplnb=0)
  %let;op_m;1%in;
  %apply;show_templ("perso_module/individu")
  %let;op_m;1%in;
  %apply;show_templ("perso_module/gr_parents")
  %let;op_m;1%in;
  %apply;show_templ("perso_module/parents")
  %let;op_m;1%in;
  %apply;show_templ("perso_module/unions")
  %let;op_m;1%in;
  %apply;show_templ("perso_module/fratrie")
  %let;op_m;1%in;
  %apply;show_templ("perso_module/relations")
  %let;op_m;1%in;
  %apply;show_templ("perso_module/chronologie")
  %let;op_m;1%in;
  %apply;show_templ("perso_module/notes")
  %let;op_m;1%in;
  %apply;show_templ("perso_module/sources")
  %let;op_m;1%in;
  %apply;show_templ("perso_module/arbres")
%else;
  %for;i;0;bvar.perso_module_tplnb;
    %apply;get_templ(i)
  %end;
%end;

Dans l'hypothèse où la variable perso_module_tplnb est absente ou nulle, on affichera les modules spécifiés, avec l'option choisie. Dans le cas contraire, on affichera les modules selon l'association précisée dans le fichier base.gwf :

perso_module_0=individu
perso_module_1=parents
perso_module_2=unions
perso_module_3=fratrie
perso_module_4=relations
perso_module_5=notes
perso_module_6=sources
perso_module_7=arbres

perso_module_tplnb=8

Module et options d'affichage (Version 7)

La version 7 de GeneWeb propose une solution alternative à la sélection des modules et y rajoute la possibilité d'un choix d'options d’affichage.

Notez tout d’abord que le nom des modules a été remanié :

perso_module_0=individu
perso_module_1=parents
perso_module_2=unions
perso_module_3=fratrie
perso_module_4=relations
perso_module_5=notes
perso_module_6=sources
perso_module_7=arbres
perso_module_8=timeline
perso_module_9=gr_parents
perso_module-10=ligne

Le fichier .gwf définit un nouvel ensemble de variables utilisant des lettres plutôt que des chiffres :

perso_module_i=individu
perso_module_p=parents
perso_module_u=unions
perso_module_f=fratrie
perso_module_r=relations
perso_module_c=chronologie
perso_module_n=notes
perso_module_s=sources
perso_module_a=arbres
perso_module_g=gr_parents
perso_module_l=ligne


L'affichage des modules est gouverné par la valeur de la variable contextuelle p_mod qui définit le choix des modules, l'ordre d'affichage et l'option choisie. Ce paramètre est constitué par une succession de paires "lettre, chiffre", la lettre précisant le module et le chiffre l'option d'affichage. Ces paires apparaissent dans l'ordre d'affichage souhaité comme dans l'exemple ci-dessous : "gd_parents", "individu", parents", "unions", ...

p_mod=g1i1p1u1f1r1c1n1s1a3

Le choix de p_mod=p1p2p3p4p5 affichera les cinq options du module [[c|parents}}.

La barre de menu de la page perso.txt (deuxième onglet en partant de la gauche comme le montre l'image ci-dessous) fournit une interface pour changer la valeur du paramètre p_mod. Définir p_mod=zz à pour effet d'annuler l'utilisation de ce paramètre et de revenir à la page de présentation standard.

Il est possible d'associer aux modules n'importe quelle lettre unique entre "a" et "z".

Starting page for GeneWeb.

On notera enfin que la valeur du paramètre p_mod peut être conservée dans le fichier params.gwf, mais elle peut aussi être mémorisée dans l'URL d'un raccourci conservé dans votre navigateur. Cette dernière approche sera particulièrement utile pour les utilisateurs d'un service tel que la base Roglo. En effet, GeneWeb ne sait pas conserver un profil spécifique à chaque visiteur.

Exemples

Chaque sous-module produit les résultats ci-dessous :

(les exemples ci dessous sont extraits d'une version 6, et peuvent être différents avec la version 7)

Fichier Exemple
personnal_data
Personal data.
parents, option=1
Parents (simple).
parents, option 2
Parents (more complex).
parents, option 3
Parents (full).
parent, option 4
Parents (with photo).
unions, option 1
Union (simple).
unions, option 2
Union (more complex).
unions, option 3
Union (full).
unions, option 4
Union (with photo).
siblings, option 1
Brothers and sisters (simple).
siblings, option 2
Brothers and sisters (full).
family
Family.
relations
Relations.
notes
Notes.
sources
Sources.
timeline
trees, option 3
Tree, vertical, 3 generations.
trees, option 1
Tree, vertical, 3 generations with photos.
trees, option 4
Tree, vertical, 4 generations.
trees, option 5
Tree, horizontal, 5 generations.

Manuel GeneWeb

Rembrandt Old Man Reading a Book.jpg

Utiliser et gérer une base généalogique

Annexe technique