Utilisateurs expérimentés

Avertissement

N’utilisez les instructions suivantes que si vous savez ce que vous faites… « La direction décline toute responsabilité en cas de […] » :D

Adaptation à votre charte graphique

Si vous êtes à l’aise avec les styles CSS, vous pouvez adapter le CSS de Galette pour suivre votre charte graphique. Pour ce faire, il est fortement déconseillé de modifier les fichiers CSS de Galette, mais plutôt d’utiliser le mécanisme spécifique prévu pour cela; Créez un fichier galette_local.css dans votre dossier webroot/themes/default avec vos propres styles, il sera inclus automatiquement.

Essayer de faire aussi simple que possible. Par exemple, si vous souhaitez changer la couleur de fond du nom de l’association (affiché sous le titre des pages), vous trouverez dans Galette la règle #asso_name qui définit plusieurs paramètres y compris les couleurs. Donc, dans votre feuille de style, vous aurez juste besoin de :

#asso_name {
    color: red;
}

Ce sera suffisant pour afficher le nom de votre association en rouge. Notez que les CSS locales et les problèmes qu’elles pourraient causer ne seront pas prises en compte par l’équipe de Galette, aucun support ne sera fourni.

Vous pouvez également fournir une feuille de style pour l’impression, créez juste un fichier galette_local_print.css.

Ajouter et modifier des chaînes

Il est possible au besoin de personnaliser les chaînes traduites dans Galette - sans modifier les sources de Galette. Créez simplement un fichier galette_{mylang}_local_lang.php (où {mylang} doit être remplacé par la langue, comme fr_FR.utf8 ou en_US) dans le dossier lang. Ce fichier doit contenir un simple tableau PHP avec la chaîne originale (celle dans le code source de Galette) en index.

Par exemple, nous souhaiterions modifier la chaîne « Password » sur la page de connexion en fraçais, traduit par Mot de passe :. La chaîne originale est Password: (voir galette/templates/default/index.tpl), sa traduction française est Mot de passe : et nous voulons la remplacer par Secret : ; donc nous allons créer le fichier galette_fr_FR.utf8_local_lang.php avec le contenu suivant :

<?php
$lang['Password:'] = 'Secret&nbsp;:';
return $lang;

Puisque Galette utilise un système de cache pour les traduction, les modification peuvent ne pas être visible immédiatement ; vous pouvez avoir à redémarrer PHP (ou nettoyer le cache). Il est important de prendra la chaîne d’origine telle quelle, ponctuation incluse ; et de prendre garde d’échapper les guillemets simples (avec un anti-slash) dans toutes les chaînes.

Vous pouvez également surcharger les langues des plugins en utilisant la même méthode, placez juste le fichier dans le dossier lang et nommez le {plugin}_{mylang}_local_lang.php{plugin} est le nom du routage que vous trouverez dans le fichier _define.php.

Note

Cela ne fonctionnera que si vous utilisez les fonctionnalités de traduction de Galette, pas gettext natif.

Enregistrement des adresses IP derrière un proxy

Si votre instance de Galette se trouve derrière un proxy, les adresses IP enregistrées dans l’historique seront celle du proxy, pas celle de l’utilisateur :(

Pour corriger cela, créez un fichier config/behavior.inc.php avec le contenu suivant :

<?php
define('GALETTE_X_FORWARDED_FOR_INDEX', 1);

Chaque serveur proxy ajoutera sa propre adresse à la liste, l’exemple ci dessus ne fonctionnera que s’il n’y a qu’un seul serveur proxy.

Avertissement

Pour des raisons de sécurité, n’utilisez pas cela si votre instance n’est pas derrière un proxy !

Statistiques externes

Nouveau dans la version 0.9.

De nombreux systèmes de statistiques requièrent un bloc Javascript pour fonctionne. Vous pouvez créer un fichier tracking.js dans le dossier webroot/themes/default, il sera inclus automatiquement.

Avertissement

Galette utilise Javascript pour fonctionner. Si le code ajouté dans votre fichier tracking.js est incorrect, cela peut casser Galette !

Taille et nombre de cartes

Nouveau dans la version 0.9.

Les préférences de Galette permettent de spécifier l’espacement des cartes, mais pas le nombre de lignes ou de colonne. Vous pouvez changer cela en ajoutant quelques constantes :

Note

Modifier ces valeurs peut causer des incohérences ; modifiez les avec parcimonie, et n’oubliez pas de tester le résultat ;)

  • GALETTE_CARD_WIDTH détermine la largeur des cartes,
  • GALETTE_CARD_HEIGHT détermine la hauteur des cartes,
  • GALETTE_CARD_COLS détermine le nombre de colonnes,
  • GALETTE_CARD_ROWS détermine le nombre de lignes,

Exports CSV

Galette fournit un système d’exports CSV paramétrés. Un seul export paramétré est fourni, mais vous pouvez ajouter les vôtres dans le fichier config/exports.xml. La configuration se fait en plusieurs parties :

  • la requête SQL à utiliser,
  • les colonnes à exporter,
  • le séparateur CSV,
  • le caractère de séparation des chaînes.

Avertissement

La configuration des exports CSV est faite dans un fichier XML quoi doit être valide !

Si ce n’est pas le cas, aucun export ne sera proposé dans l’interface utilisateur. Sous linux, vous pouvez utilisez des outils comme xmlwf ou xmllint pour vous assurer de la validité du fichier.

Examinons l’export paramétré ces contributions :

<export id="cotisations" name="Cotisations" description="Export de l'état des cotisations pour l'ensemble des adhérents" filename="galette_cotisations.csv">
    <!-- The Query to execute - mandatory -->
    <query>SELECT nom_adh, prenom_adh, ville_adh, montant_cotis, date_debut_cotis, date_fin_cotis FROM galette_cotisations INNER JOIN galette_adherents ON (galette_cotisations.id_adh=galette_adherents.id_adh)</query>
    <!-- CSV Headers - optionnal.
         If not set, fields name will be exported.
         If set to none (eg. <headers><none/></headers>, no headers will be outpoutted.
         You can alternatively use named columns in you query instead of header tags.
            -->
    <headers>
        <!--<none/>-->
        <header>Name</header>
        <header>Surname</header>
        <header>Town</header>
        <header>Amount</header>
        <header>Begin date</header>
        <header>End date</header>
    </headers>
    <!-- CSV separator to use - optionnal.
         If this tag is not present, it will defaults to ',' (see Csv::DEFAULT_SEPARATOR from classes/csv.class.php)
         Accepted values are also defined in Csv class.
    -->
    <separator>;</separator>
    <!-- How to quote values - optionnal.
         If this tag is not present, it will defaults to '"' (see Csv::DEFAULT_QUOTE from classes/csv.class.php)
         Accepted values are also defined in Csv class.
    -->
    <quote><![CDATA["]]></quote>
</export>

Chaque export paramétré est défini dans une balise export qui contient un identifiant unique (id), une description affichée dans l’interface utilisateur (name) et un nom de fichier de sortie (filename). La balise query contient la requête SQL à utiliser, il n’y a pas d’autres limitations que celles du moteur SQL.

La prtie headers définit les colonnes qui seront exportées, la balise separator le séparateur CSV et la balise quote le séparateur de chaînes.

Outils administrateur

Avertissement

Toutes les opérations administrateurs sont destructives, utilisez les avec parcimonie et assurez-vous de faire une sauvegarde de votre base de données auparavant !

Quelques outils d’administration sont fournis par galette, qui permettent de :

  • réinitialiser les contenus des courriels réinitialisera tous les contenus des courriels administratifs à leurs valeurs par défaut,
  • réinitialiser la configuration des champs va remette à zéro les champs du cœur à leurs valeurs par défaut; Cela n’implique pas les champs dynamiques,
  • réinitialiser les modèles PDF réinitialisera les modèles PDF à leurs valeurs par défaut,
  • générer des login et mot de passe vides ces informations sont requises pour améliorer la sécurité, mais elles sont parfois manquantes (si vous importez un CSV par exemple).