Configuration avancée

Sommaire

Sécurisation des répertoires

Le logiciel installe automatiquement plusieurs fichiers .htaccess permettant de contrôler l'accès aux fichers et répertoires :

Le plus souvent, il convient de ne pas modifier ces fichiers ni les renommer (le nom commençant par un point est non seulement normal mais obligatoire !). En cas de nécessité, consulter la documentation Apache avant de les modifier.

Fichiers d'informations

Plusieurs (petits) fichiers permettent de personnaliser votre site en donnant des informtions spécifiques aux visiteurs. Tous ces fichiers sont rangés dans le répertoire "_config".

Le premier fichier qui peut être configuré est le fichier commentaire.htm. Celui-ci contient un (petit) texte qui doit être rédigé en respectant la syntaxe HTML et qui sera affiché sous la liste des communes dans la page d'accueil du module ExpoActes.  C'est le lieu privilégié pour indiquer les crédits aux personnes qui ont dépouillé les actes présentés ainsi que l'adresse mail où les codes d'accès doivent être demandés lorsque l'accès aux détails des actes n'est pas public.

Le second fichier qui peut être configuré est le fichier acces.htm. Celui-ci contient un (petit) texte qui doit être rédigé en respectant la syntaxe HTML et qui présentera le détail des conditions pour avoir accès aux détails des actes (s'ils sont masqués) et/ou pour rejoindre le groupe des déposants.  Si ce fichier n'est pas présent (situation par défaut), le contenu du fichier commentaire.htm est utilisé à sa place.

Le fichier bandeau.htm peut également être modifié pour intégrer, en tête de chaque page, un bandeau qui soit spécifique à votre site. Vous pouvez alors modifier le code original :

<div class="bandeau">
<strong><a href="<?php echo SITE_URL ?>"><?php echo SITENAME ?></a> || </strong>
Dépouillement de tables et actes d'état-civil ou de registres paroissiaux
</div>

en remplaçant  ce qui se situe entre <div class="bandeau"> et </div> par une image ou un texte qui vous soit spécifique. Attention toutefois à bien respecter la syntaxe  HTML.

Style des pages

La feuille de style actes.css (dans le répertoire _config) peut être totalement modifiée afin de changer assez considérablement les couleurs et la présentation des pages. Comme les programmes font systématiquement référence à la feuille de style pour la mise en page, les mises-à-jour adopteront automatiquement le "look" que vous aurez défini.  

Si vous souhaitez modifier le style de certaines pages en particuliers (par exemple mettre une image de fond sous les actes), il est possible de définir des styles particuliers pour les pages en prenant comme nom celui du programme (juste avant le ".php" et en le faisant précéder de "#".  En effet, le tag <body> de chaque page est affecté de l'identifiant du nom de cette page.

Exemple de style à ajouter dans actes.css pour intégrer un fond de page dans les actes.
#acte_naiss, #acte_mari, #acte_bans, #acte_deces
    {
    background : url(../img/fond_act.jpg) repeat;
    }

Modifier le comportement du programme avec des paramètres facultatifs

Une série de paramètres facultatifs peuvent être ajoutés ou modifier dans le fichier "connect.inc.php" (dans le répertoire "_config"). Il modifieront le comportement du programme.

Pour modifier le fichier connect.inc.php, ouvrez-le avec un éditeur de texte tel que le programme "Notepad" de Windows. 

La pluspart des paramètres doivent toujours être placés dans une instruction define à placer AVANT le code "?>" final :

define ("NOM_DU_PARAMETRE", Valeur_du_paramètre);


Le nom du paramètre doit être entre quillements et en MAJUSCULES.
La valeur est soit un nombre, soit une chaine de caractères et est alors aussi placée entre guillemets (") ou entre apostrophes (') . L'instruction doit être terminée par un point-virgule (;).

Le fichier connect.inc.php a été créé automatiquement lors de l'installation et il contient déjà plusieurs paramètres qu'il ne faut modifier qu'avec précaution.

Il s'agit entre autre des codes d'accès à la base MySQL. Exemple :

$dbaddr="base.hebergeur.com";           // Nom du serveur MySQL
$dbuser="nom_utilisateur";              // Nom d'utilisateur MySQL
$dbpass="mot_de_passe";                 // Mot de passe MySQL
$dbname="nom_de_la_base";               // Nom de la base de données MySQL

Ainsi que des coordonnées du site web principal. Exemple :

define ("SITENAME","Votre nom de site");  // Nom du site principal
define ("SITE_URL","../index.htm");       // URL du site principal

 

Niveau d'accès public aux données des actes

Le paramètres PUBLIC_LEVEL détermine le niveau d'accès qui est autorisé en mode "public" c'est-à-dire sans devoir fournir un login et un mot de passe.

Les valeurs admises sont :

 

Quantité d'information affichée par page

Les paramètres MAX_PAGE et MAX_PATR définissent le nombre d'éléments que vous autorisez par page :

define ("MAX_PAGE",50);        // Nombre références par pages dans les recherches
define ("MAX_PATR",50);        // Nombre de patronymes à partir duquel on passe en mode ABC..Z
define ("MAX_PAGE_ADM",200);   // Idem MAX_PAGE en mode DEPOSANT
define ("MAX_PATR_ADM",200);   // Idem MAX_PATR en mode DEPOSANT


Les paramètres MAX_PAGE_ADM et MAX_PATR_ADM ont une fonction identique mais concernent les écrans d'administration pour les déposants. Lorsque la commune n'est pas trop populeuse, il est en effet pratique de voir tous les patronymes en un seul écran.

Gestion des URL du logiciel lui-même

Le paramètre FULL_URL permet - lorsque la configuration du serveur web l'autorise - à utiliser une notation des URL qui ne comporte pas de paramètres. Montrons cela par un exemple :

Certains moteurs de recherche n'indexent pas bien les URL qui comportent des arguments. Il faut donc préférer le mode FULL_URL = 1 mais malheureusement cette possibilité dépend de la configuration du serveur web de l'hébergeur.  Si elle ne fonctionne pas, il faut utiliser la valeur 0.

Gestion d'URL vers des pages externes

Deux facilités introduites à partir de la version 1.10 de ExpoActes permettent de renvoyer le visiteur visualisant les détails d'un acte vers une ou plusieurs autres pages web en rapport avec cet acte.

Lien vers un site dans les commentaires

La première possibilité consiste à ajouter, dans la zone des commentaires généraux (intitulée "Autres informations"), une adresse URL complète (c'est-à-dire commençant par "http://") pointant vers la page souhaitée. Dans ce cas, cette adresse est automatiquement détectée et est transformée en un lien actif qui pourra donc être simplement cliqué par le visiteur. Il n'y a pas de configuration particulière pour cette facilité.

Liens vers des images d'actes

La seconde possibilité consiste à ajouter dans la zone "LIBRE" le nom d'une image avec extension .JPG (par exemple "image0234.jpg") et à placer cette image dans le répertoire "/img_act/" à la racine de votre site web (donc "à côté" du répertoire "actes").
Le logiciel génèrera ainsi un lien actif qui permettra de visualiser directement cette image.
Le cas échéant, plusieurs images peuvent être citées, il suffit de séparer les noms par des espaces ou des virgules (garder à l'esprit que la zone "LIBRE" ne compte que 30 caractères).
De plus, le nom de l'image JPG peut être précédé du nom d'un répertoire de façon à regrouper ensemble par exemple les actes d'une même commune (exemple : c02/img234.jpg, c03/img566.jpg).

Si les photos des actes ne sont pas stockées sur votre site, il est possible de remplacer l'URL par défaut "/img_act/" par une URL complète à l'aide du paramètre URL_JPG :

Exemple : define ("URL_JPG","http://www.lesite.fr/images/EtatCivil/");

Méthode de lecture des codes d'accès

Selon la configuartion du serveur Web de l'hébergeur, il est possible que celui-ci n'accepte pas certaines méthodes d'authentification des visiteurs et des déposants.  Pour faire face à ce problème ExpoActes propose deux méthodes différentes  qui sont sélectionnées avec le paramètre LOGINTYPE :



Eléments affichés dans la page d'accueil

La page d'accueil telle qu'elle est conçue dans la version par défaut apporte beaucoup d'informations sur les actes qui sont présents dans la base d données. Toutefois, lorsque cette base de données est volumineuse (à partir de 50.000 ou 100.000 actes) le recalcul de toutes ces statistiques à chaque retour sur la page d'accueil représente une charge importante pour le serveur qui a pour effet de le ralentir, parfois de manière importante. Il convient donc, dans ce cas, d'alléger cette tâche en utilisant un ou plusieurs des paramètres suivants :
SHOW_DATES
Détermine si les dates minimales et maximales des actes d'une commune sont affichés dans la page d'accueil d'expoactes. Par défaut, SHOW_DATES vaut 1.
Le calcul de ces dates nécessite des ressources importantes sur le serveur. Aussi, si la base est importante (par exemple plus de 50.000 actes), il est conseillé de mettre ce paramètre à zéro pour alléger le travail du moteur MySQL. 
Exemple :  define ("SHOW_DATES",0);   
SHOW_ALLTYPES
Détermine si la page d'accueil affiche le tableau résumé des quatre types d'actes (par défaut) ou d'un seul. Par défaut, SHOW_ALLTYPES vaut 1.
Désactiver l'affichage de tous les types permet de réduire sensiblement la charge du serveur.  Cette option est donc conseillée pour les bases importantes.
Lorsque la page d'accueil n'affiche qu'un type à la fois, le passage d'un type à l'autre s'effectue en sélectionnant le type dans le résumé statistique qui comporte alosr les liens ad hoc. 
Exemple :  define ("SHOW_ALLTYPES",0);
CHERCH_TS_TYP
Cette option provoque l'affichage d'une liste de sélection du type des actes dans la boîte de recherche de la page d'accueil. Cette liste a pour effet de forcer la recherche sur un seul type d'acte à la fois et donc d'alléger le travail du moteur de recherche.
Par défaut, CHERCH_TS_TYP vaut 1.
Il faut noter que la recherche avancée permet de rechercher sur tous les types à la fois. 
Exemple :  define ("CHERCH_TS_TYP",5);
SHOW_RSS
Détermine si le lien avec icône du flux RSS est affiché dans le cadre des statistiques.
Par défaut, SHOW_RSS vaut 1( = affiche le lien).
Exemple :  define ("SHOW_RSS",0);   
 

Eléments affichés dans les fiches et listes d'actes

Quelques paramètres permettent aussi de contrôler l'affichage des listes d'actes et des fiches détaillées.

ANNEE_TABLE
L'affichage des tables d'actes présente en principe la date complète des actes. Si vous souhaitez limiter cet affichage à l'année seulement, il suffit de donner la valeur 1 au paramètre ANNEE_TABLE.
Par défaut, ANNEE_TABLE vaut 0 ( = affiche les dates complètes).
Exemple :  define ("ANNEE_TABLE",1);   
SHOW_NULL
Détermine si les zones vides sont affichées ou non dans les fiches détaillées des actes.
Par défaut, SHOW_NULL vaut 0 ( = n'affiche pas les zones qui ne contiennent pas d'information).
Exemple :  define ("SHOW_NULL",1);   
SHOW_DEPOSANT
Détermine si le nom de la personne ayant chargé les actes dans la base est affiché au bas du détail des actes.
Par défaut, SHOW_DEPOSANT vaut 0 ( = n'affiche pas les déposants).
Exemple : define ("SHOW_DEPOSANT",1);

 

Droits donnés aux utilisateurs

RECH_MIN
Détermine le nombre minimum de caractères sur lesquels doit porter une recherche.
Par défaut, RECH_MIN vaut 3.  Notez que l'administrateur principal n'est pas soumis à cette restriction.
Exemple :  define ("RECH_MIN",2);
CHANGE_PW
Détermine le niveau d'accès à partir duquel un utilisateur enregistré a le droit de modifier lui-même son mot de passe. Par défaut, CHANGE_PW vaut 1.
Si plusieurs utilistateurs doivent partager le même code d'accès et le même mot de passe (par exemple au niveau 4), il est prudent d'en interdire la modification. 
Exemple :  define ("CHANGE_PW",5);
SHOW_ACCES
Détermine l'item "Conditions d'accès" apparaît dans le menu public. Par défaut, SHOW_ACCES vaut 1.
Si le niveau d'accès public (PUBLIC_LEVEL) est à 4, alors il n'est pas nécessaire de présenter ces conditions d'accès. 
Exemple :  define ("SHOW_ACCES",0);


Gestion de points pour limiter le nombre d'actes pouvant être affichés par utilisateur

Certains utilisateurs du logiciel ont souhaité que soit inclus un moyen de limiter le nombre de consultation d'actes détaillés.
Cette gestion est tout à fait facultative et n'est pas mise en oeuvre par défaut.
Pour l'activer il faut ajouter les trois paramètres ci-dessous qui détermineront les modes d'attribution des "points" aux utilisateurs enregistrés.

Le système fonctionne sur base d'un capital de "points" qui sont affectés aux utilisateurs  disposant d'un code de login.  Ces points peuvent être attribués manuellement par l'administrateur ou automatiquement par le programme.  Dans ce dernier cas, les paramètres permettent de fixer le nombre de points qui sont automatiquement attribués à chaque utilisateur ainsi que la périodicité avec laquelle cette "recharge" a lieu.  Le système est extrêmement souple car il permet aussi bien de prévoir que l'on peut "voir" maximum 10 actes par jour (recharger 10 points tous les 1 jours) jusqu'à 1000 actes sur un an (recharger 1000 points tous les 365 jours).  

La recharge n'est pas cumulative: ainsi si la recharge est fixée par exemple à 30 points tous les 7 jours, un visiteur qui ne vient sur le site qu'une fois tous les trois mois dispose de 30 points qui lui sont affecté le jour où il revient sur le site (et non 480 points qui se seraient accumulés).  C'est en effet, au moment du login que le système recharge le compte lorsque les conditions sont remplies.

Le système permet toutefois à l'administrateur de donner à qui il veut des points supplémentaires ou de faire une recharge intermédiaire.  Enfin,  l'administrateur peut donner à chaque membre le "régime" qui lui convient : soit la recharge automatique, soit la recharge manuelle soit encore le libre accès.  Les membres avec les statuts 8 et 9 (administrateurs) disposent d'ailleurs automatiquement d'un libre accès.

Notons encore que le système ne décompte pas de point à un déposant  pour voir les actes qu'il a déposé. Par contre, il n'a pas été prévu d'ajouter des points aux déposants car il aurait été trop facile de déposer 1000 actes puis de les supprimer pour "recharger" son compte sans difficulté.  A charge pour l'administrateur de gérer ces situations à sa discrétion.

Les paramètres à définir sont les suivants :
GEST_POINTS
Détermine le régime de gestion des points par défaut:
Exemple :  define ("GEST_POINTS",2);
PTS_PAR_PER
Détermine le nombre de points qui sont attribués aux membres à chaque recharge automatique.
Exemple :  define ("PTS_PAR_PER",30);
DUREE_PER_P
Détermine le nombre de jours qui séparent deux recharges automatiques. 
Exemple :  define ("DUREE_PER_P",7);

 

Recherche par la méthode Levenshtein

La méthode de recherche avancée "sonore" ne permet pas toujours de trouver ceertains actes comportant des erreurs d'encodage et ce particulièrement si le lettre initiale est incorrecte. Pour résoudre ce problème Jean-Louis Cazor a eu l'idée d'implémenter un autre algorithme se basant sur la méthode Levenshtein. Cet algorithme est très puissant mais malheureusement très gourmand en ressouces machine. Il crée en effet des tables de données intermédiaires et effectue de nombreux calculs sur les informations prélectionnées. Il convient dès lors de le reserver aux utilisateurs avertis et de suivre les conseils d'utilisation précisés par jean-Louis.

Par défaut cet algorithme est activé mais seulement accessible aux administrateurs. La mise à disposition de cet algorithme est contrôlée par trois paramètres facultatifs :

RECH_LEVENSHTEIN
Ce paramètre indique si l'algorithme est actif et si c'est le cas, où doit apparaître le lien vers la page de recherche spécifique. Les valeurs possibles sont :
Valeur par défaut : 1
Exemple :  define ("RECH_LEVENSHTEIN",2);
LEVEL_LEVENSHTEIN
Ce paramètre détermine le niveau d'accès nécessaires aux utilisateurs pour pouvoir utiliser la recherche levenshtein. Par défaut, ce niveau est 8 afin de réserver l'usage aux administrateurs seulement. Ce niveau ne peut pas être inférieur au niveau PUBLIC_LEVEL.
Exemple :  define ("LEVEL_LEVENSHTEIN",5);
SECURITE_TIME_OUT_PHP
La recherche levenshtein peut nécessiter plusieurs dizaines de seconde de calcul lorsque la requête est trop vague. Or la plupart des serveurs limitent le temps de calcul (souvent à 30 sec) puis abandonnent la tâche. Pour éviter cela, le paramètre SECURITE_TIME_OUT_PHP spécifie le nombre de seconde de sécurité que le système se réserve afin de stopper proporemnt la recherche et de signaler à l'utilisateur que sa recherche est trop complexe.
Par défaut, SECURITE_TIME_OUT_PHP vaut 5.
Exemple : define ("SECURITE_TIME_OUT_PHP",10);
CRIT_RECH_COUPLES
Ce paramètre permet d'étendre ou de restreindre les possibilités de recherches sur les couples. Les valeurs peuvent aller de 2 à 4 :
Valeur par défaut : 2
Exemple :  define ("CRIT_RECH_COUPLES",3);

 

Configurations particulières

Certains hébergements imposent des contraintes qui nécessitent des configuarations particulières.

Envoi de courriers électroniques

Le logiciel peut envoyer des email lors de la création des comptes d'utilisateur pour avertir ceux-ci du code de login et du mot de passe qui leur a été attribué.  

Toutefois, cette fonctionnalité dépend de façon crucialle de la possibilité de se connecter à un serveur SMTP qui jouera le rôle de relais pour l'envoi effectif des emails (comme la boîte au lettres de la poste dans le courrier traditionnel).  

La plupart des hébergements fournissent cette possibilité en standard dans la configuration PHP (fonction mail()). Il n'y a donc pas de configuration spécifique à réaliser.

Toutefois, si le serveur PHP n'offre pas la fonction mail, il est souvent possible d'utiliser un compte mail externe. Les paramètres à ajouter doivent être placés dans le fichier  "connect.inc.php" dans le répertoire "_config" .

La première chose à spécifier est donc le nom DNS de ce serveur SMTP ($smtp_host) ainsi que votre propre adresse mail ($loc_mail) qui servira comme adresse d'expéditeur.   Vous devez aussi donner le nom DNS de la machine de départ du mail ($loc_host). Enfin, certains serveur SMTP réclament un login ($smtp_acc) et un mot de passe ($smtp_pass) pour vous identifier.  Si ce n'est pas nécessaire, il faut laisser ces derniers paramètres à la valeur vide ("").

Exemple de paramètres pour le mail :
    // Paramètre serveur mail SMTP
    define ("EXTERN_MAIL",1);        
    $smtp_host = "smtp.hebergement.net";           // server SMTP
    $loc_host  = "votresite.hebergeur.net";        // nom.du.serveur
    $loc_mail  = "votre.mail@hebergeur.net";       // email expéditeur
    $smtp_acc  = "login_mail";                     // login mail chez l'hébergeur
    $smtp_pass = "mot de passe";                   // password

Pour vérifier que le système peut envoyer des emails sans problème, il suffit de tester le renvoi des mots de passe oubliés (via l'écran de connexion) ou d'utiliser la procédure "admin/test_mail.php".

Chargement des fichiers CSV

Les fichiers CSV téléchargés pour l'ajout d'actes sont transférés tempoarairement dans le répertoire "_upload" situé lui-même dans le répertoire "admin". Si l'hébergement oblige à utiliser un autre répertoire pour les téléchargement, il faut alors spécifier le chemin d'accès de ce répertoire avec le paramètre UPLOAD_DIR .

Exemple :  define ("UPLOAD_DIR","/home/www/uploaddir");

 

-o-O-o-