Extensions

Paheko permet d'étendre ses fonctionnalités avec des extensions, qui recouvrent en réalité deux fonctionnements différents :

  • les modules (depuis la version 1.3) utilisent le langage Brindille, qui permettent d'ajouter facilement et rapidement des nouvelles pages à l'administration : formulaires, génération de PDF, gestion de données simples, etc.
  • les plugins qui utilisent le langage PHP.

Dans l'administration de Paheko, ces deux méthodes sont toutes deux appelés Extension pour simplifier l'interface pour les non-développeurs. Mais derrière, en pratique les différences sont grandes.

Différences entre modules et plugins

Les modules :

  • sont écrites avec Brindille, du HTML, CSS et Javascript ;
  • sont faciles et rapides à écrire ;
  • ne peuvent pas modifier la base de données, ni toucher au système de fichier ;
  • ne peuvent accéder qu'à une partie limitée de l'API interne de Paheko, via les fonctions et sections de Brindille ;
  • peuvent lire toutes les informations de la base de données, sauf les mots de passe et tables internes ;
  • ne peuvent enregistrer que des données au format JSON dans la base de données, dans la table spécifique au module ;
  • sont limités à l'envoi d'un seul e-mail par page à une adresse qui n'est pas dans les membres ;
  • ne peuvent pas télécharger ni envoyer de donnée à des services externes ;
  • peuvent être modifiés par l'administrateur de l'association ;
  • ne présentent pas de risque de sécurité (car pas de code PHP exécuté) ;
  • peuvent tous être partagés, exécutés, modifiés et installés sur toutes les installations, et Paheko.cloud.

Les plugins :

  • sont écrits en PHP, Smarty, HTML, CSS et Javascript ;
  • demandent plus de code et de compétences ;
  • peuvent créer des tables, modifier la base de données ;
  • peuvent accéder à toute l'API interne de Paheko ;
  • peuvent présenter un risque de sécurité ;
  • seules les plugins officiels peuvent être installés sur Paheko.cloud.

Exemples :

  • Caisse est un plugin car nécessite de nombreuses tables SQL et gestions logiques ;
  • Reçus fiscaux est un module car le stockage est relativement simple et sa modification par les associations peut se révéler utile ;
  • DomPDF nécessite de télécharger et exécuter du code PHP et est donc un plugin.

Il est donc important de cibler le besoin

Installer un plugin

Il suffit de placer le fichier du plugin (qui se termine par .tar.gz) dans le répertoire data/plugins. Ensuite dans la page Configuration -> Extensions il sera possible de l'activer (onglet Extensions inactives).

Si après installation accéder aux plugins donne une erreur 404 "page non trouvée" c'est que votre configuration de Paheko n'est pas correcte, généralement car vous avez utilisé une installation sans sous-domaine dédié, ou que vous n'utilisez pas Apache comme serveur web. Corrigez votre configuration pour que la ré-écriture d'URL soit fonctionnelle, voir la page installation sans vhost pour plus d'infos.

Plugins disponibles

Plugins officiels

Ces plugins sont utilisés et maintenus par les développeur-se-s de Paheko.

Ils peuvent être trouvées sur ce site : https://fossil.kd2.org/paheko-plugins/

Plugins communautaires

Ces plugins sont développés par des utilisateur-trice-s de Paheko.

  • Facturation permet de créer des factures et de créer des PDF

Plugins obsolètes

Ces plugins ne sont plus mis à jour et ne fonctionnent plus avec les dernières versions de Paheko :

  • Matériels permet de gérer une liste de matériels ainsi que de suivre les prêts de matériel.
  • Récurrence permet de créer des écritures récurrentes (sous forme de liste d'écritures favorites)
  • Vues analytiques rajoute une vue synthétiques des projets, des recherches par mois, et diagrammes de Sankey
  • Extensions de Nicolas Fréry : valorisation du bénévolat, reçu de don, liste MailChimp, etc.
  • Journal des actions utilisateur : enregistrement et visualisation des actions entreprises par les utilisateurs (modification de membre, etc.)
  • Comptages : compter le nombre de participants à une manifestation, de véhicules passant dans une rue, etc.
  • Reçus fiscaux : permet de générer des reçus fiscaux (format PDF) pour les dons des membres ; différents critères de sélections des dons (tous les dons de tous les membres, certains dons de certains membres pour certaines activités, certains comptes, ...) ; configuration (objet de l'asso, articles du CGI, taux de réduction, signature, impression adresse courriel,paramétrage numéro reçu, ...)

Développer un plugin

Voir la documentation développeur.

Activation et utilisation des plugins intégrés