Les bugs sont corrigés et publiés dans la version stable, les nouvelles fonctionnalités sont ajoutées dans la version de développement qui sera publiée quand les objectif de cette version seront atteints.

Version en cours de développement : 0.8.0

  • Version requise de PHP : 5.6 ou supérieur

Amélioration environnement de développement

  • Compatibilité PHP 7+
  • Utilisation de générateurs (yield) ✓
  • Tests unitaires couvrant les fonctions de base ✓
  • Tests automatisés par Travis-CI ✓
  • Retour des données de DB sous forme d'objets au lieu de tableaux ✓
  • Utilisation globale d'objets plutôt que de tableaux associatifs ✓
  • Miroir github automatique à partir du repository fossil

Bugs corrigés

  • Empêcher 1password de cliquer automatiquement sur les suggestions de mot de passe
  • Correction de bugs sur l'éditeur de squelette dans les navigateurs webkit
  • Correction du bug "Le montant ne peut être égal ou inférieur à zéro" lors du report à nouveau automatique [c20546bb903eea0bd54ee969aa76226217e394ac]
  • Conservation de l'ordre lors du changement de page dans la liste des membres ayant cotisé (signalé par @Guy)
  • Conservation de la catégorie lors du changement d'ordre dans la liste des membres

Technique

  • Utilisation de password_hash à la place de crypt() pour gérer les mots de passe ✓
  • Utilisation de KD2\ErrorManager comme gestionnaire de bug ✓
  • Utilisation de KD2\Smartyer comme moteur de templates ✓
  • Utilisation de KD2\Form
  • Support installation sans vhost pour Apache (expérimental) ✓
  • Ajout signaux pour plugins, voir [743d7e1483fc23c85bd66aa44bd5673479a88913]
  • Pour les fermes à Garradin il faudrait que les templates compilés soient partagés entre toutes les instances
  • Séparation classe Membres en "Membres" (gestion des membres) et "Session" (session courante du membre connecté) ✓
  • Utilisation facultative d'un serveur SMTP externe pour l'envoi de mails ✓

Squelettes

  • Ajout d'un filtre "date" pour les balises, qui permet de formatter une date en anglais (format strftime)
  • Les heures sont désormais facultatives pour le filtre "date_intelligente"
  • Possibilité pour les plugins de changer le code qui instancie l'objet utilisé pour une boucle, permettant simplement de ne pas utiliser la base de données pour itérer sur une boucle

Base de données

  • Ajout d'une signature aux exports de la base de données ✓
  • Vérification de la signature de la base de données à l'import : interdiction de l'import d'une base de données modifiée (facultatif) ✓
  • Ajout contraintes sur les champs contenant des dates pour essayer d'empêcher d'importer des dates invalides ✓
  • Transformation de toutes les catégories en catégorie administrateur si l'utilisateur qui importe la sauvegarde n'est pas admin dans cette sauvegarde. ✓

Membres

  • Support authentification à double facteur pour se connecter (via OTP) ✓
  • Support chiffrement PGP des mails sortants, par membre ✓
  • Ajout d'une case "rester connecté" à la connexion (avec un identifiant de session unique, qui est renouvelé à chaque fois qu'il est utilisé pour connecter l'utilisateur) ✓
  • Refonte de la procédure de récupération de mot de passe, simplifiée et ne requérant plus de garder l'onglet ouvert pour maintenir la session ✓
  • Possibilité d'avoir des champs de type fichier dans les fiches de membre, permettant de joindre un scan ou une photo (trombi) par exemple [c41169057a3f198871cc82677cd331ae201b778f]
  • Séparation du champ ID et du champ numéro de membre afin de permettre la modification plus simple du numéro de membre

Squelettes

  • Mise à jour des squelettes par défaut pour gérer les fichiers, images et documents
  • Mise à jour de la doc pour les boucles de documents
  • Possibilité d'enregistrer ses propres extensions Skriv dans squelettes/mes_filtres.php (cf. [1c44dd7d62] )

Compta

  • Possibilité de joindre des fichiers à une écriture comptable

Divers

  • Personnalisation des couleurs de l'interface admin ✓

Plugins

  • Les méthodes suivantes sont supprimées de la classe DB: simpleQuerySingle (remplacé par "first"), simpleStatement* (remplacé par query), queryFetch* (remplacé par "get"), escapeString (remplacé par "quote" et "escape"), simpleInsert (remplacé par "insert"), simpleUpdate (remplacé par "update").
  • Possibilité d'utiliser un plugin dans un sous-répertoire : plus besoin de packager dans un .tar.gz quand on fait le développement d'un plugin

Version suivante : 0.9.0

  • Tests unitaires plus avancés
  • Refonte envoi des mails (utilisation d'une queue d'envoi)
  • Utilisation de KD2\Mustachier pour les templates de mails de rappel
  • Refonte de l'envoi de mail collectif : l'envoi se fera après sélection de membres
  • Stockage des squelettes dans la base de données
  • Magasin de plugins dispo depuis la page extensions de la config (pas besoin de télécharger le plugin à la main et le recopier)

1.0

  • Version minimale de PHP : 7.0
  • Modernisation des objets pour profiter des nouveautés de PHP 7

Liste pêle-mêle des fonctionnalités prévues mais pas encore planifiées

Prioritaire

Documentation !

Securité :

  • OTP : Confirmer l'activation de 2FA en entrant un code OTP avant d'enregistrer secret_otp
  • OTP : Enregistrer des codes de secours à usage unique à utiliser en cas de perte du code secret qui génère des OTP

Comptabilité :

  • Balance initiale (à nouveaux) assistée après une installation vierge
  • Saisie simplifiée de créance, frais des bénévoles, etc.
  • Manipulation en masse d'opérations : changement de catégorie/compte, suppression, etc.
  • Archivage des données de l'exercice lors de la clôture
  • Suivre les instructions du ministère des finances concernant l'archivage des données comptable, cf. http://www11.minefi.gouv.fr/boi/boi2006/13rcpub/textes/13l106/13l106.pdf

Adhérents :

  • Inscription autonome en ligne
  • Possibilité de définir une page wiki utilisée comme "conditions d'inscription" à accepter

Divers

  • Possibilité de gérer les adhérents, la compta, le wiki etc. via la ligne de commande
  • Recherche de fichier

Moins prioritaire

Divers :

  • Possibilité de changer le design / logo de l'interface d'admin (CSS personnalisée)

Comptabilité :

  • Rapprochement automatisé/assisté
  • Lettrage
  • Import de fichiers QIF pour un compte bancaire (avec gestion des doublons etc.)
  • Budget prévisionnel
  • lier plusieurs cotisations à une écriture
  • supprimer une écriture comptable à la suppression d'une cotisation
  • supprimer une cotisation à la suppression d'une écriture comptable
  • lier plusieurs écritures à une cotisation

Articles/Wiki :

  • Suivi des contributions d'un membre (modifications de pages)
  • Possibilité de s'abonner et suivre les modifications d'une page (à la wikipedia)
  • Utilisation de l'algo delta de Fossil pour stocker des deltas pour les différences entre les révisions de page du wiki plutôt que stocker tout le texte

Adhérents :

  • Refonte de l'envoi de mail collectif avec sélection fine des adhérents à cibler
  • Envoi de mail par queue d'envoi et cron pour améliorer l'envoi à un nombre important de membres

Plugins :

  • Agenda collectif
  • Intégration de WebODF pour éditer/visualiser les documents Libre Office en ligne