Overview

Artifact ID: 7f81a8f2fe17fbdc2353b19eb719996b41b9c224
Page Name:Roadmap
Date: 2017-05-11 06:13:40
Original User: bohwaz
Parent: cf39ae03b5b2c9e75087151fc2551f837278be06 (diff)
Next 004cdf709e3f8d1bb29e2846c777391a2552df81
Content

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
  • Tri sur ID membre ne fonctionne pas (liste des membres)
  • Correction de bugs sur l'éditeur de squelette dans les navigateurs webkit

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 ✓
  • 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 ✓

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) ✓
  • 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]

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

Plugins

  • Les méthodes suivantes sont dépréciées dans la classe DB et seront supprimées dans Garradin 0.9.0 : 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").

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