[spip-dev] Lister les pages de configuration

Hello,

toujours sur le thème Configuration.
Un service rendu par CFG est de permettre de lister les pages de configurations pour les présenter dans une interface.

Il me semble qu'on pourrait rendre le même service sur la base du duo #FORMULAIRE_CONFIGURER_xx et exec=configurer_xx,
et un exec generique "configurer" auquel passer le nom du formulaire à utiliser.

Une fonction lister_configurations() se chargerait de
- recencer tous les formulaires/configurer.*[.]html en leur associant par defaut l'url de l'exec generique.
- recencer les pages de configuration existantes exec/configurer.*[.]html, de les lire pour voir quels formulaires elles contiennent, et d'enlever les-dits formulaire de la premiere liste

La fonction pourrait ainsi lister un ensemble de pages de configurations composites (contenant plusieurs formulaires) au automatiques (générées à partir d'un formulaire), avec leurs urls. Il suffirait de definir une convention de nommage des libelles sous la forme configurer:titre_configurer_xxx pour avoir un libelle associé à chaque page/url [*]

Du coup la fonction pourrait peupler automatiquement le menu configuration de l'espace privé (en excluant les pages explicitement affectées à une autre entrée). On retrouverait ainsi
- la facilité d'avoir une page de configuration disponible dans l'espace privé en écrivant simplement un formulaire et rien d'autre.
- la possibilité de lister les pages de config disponibles pour construire une interface alternative

Cédric

[*] : en branche dev, une fonctionnalité de surcharge des langues permet à plusieurs plugins de fournir un même module configurer_fr.php en y définissant chacun ses entrées, le module complet étant reconstruit par superposition de tous les modules.

Hello,

toujours sur le thème Configuration.
Un service rendu par CFG est de permettre de lister les pages de configurations pour les présenter dans une interface.

Il me semble qu'on pourrait rendre le même service sur la base du duo #FORMULAIRE_CONFIGURER_xx et exec=configurer_xx,
et un exec generique "configurer" auquel passer le nom du formulaire à utiliser.

Une fonction lister_configurations() se chargerait de
- recencer tous les formulaires/configurer.*[.]html en leur associant par defaut l'url de l'exec generique.
- recencer les pages de configuration existantes exec/configurer.*[.]html, de les lire pour voir quels formulaires elles contiennent, et d'enlever les-dits formulaire de la premiere liste

La fonction pourrait ainsi lister un ensemble de pages de configurations composites (contenant plusieurs formulaires) au automatiques (générées à partir d'un formulaire), avec leurs urls. Il suffirait de definir une convention de nommage des libelles sous la forme configurer:titre_configurer_xxx pour avoir un libelle associé à chaque page/url [*]

On peut complèter la spec avec
- la convention de nommage pour un logo : images/configurer-xxx-16.png et variantes en 24px si besoin
- la convention d'appel à autoriser('configurer','xxx') pour chaque page, qui par defaut sont donc reserves aux admins, avec possibilité de modifier ces droits par la definition de la fonction configurer_xxx

Hello,

toujours sur le thème Configuration.
Un service rendu par CFG est de permettre de lister les pages de configurations pour les présenter dans une interface.

Il me semble qu’on pourrait rendre le même service sur la base du duo #FORMULAIRE_CONFIGURER_xx et exec=configurer_xx,
et un exec generique « configurer » auquel passer le nom du formulaire à utiliser.

Une fonction lister_configurations() se chargerait de

  • recencer tous les formulaires/configurer.*[.]html en leur associant par defaut l’url de l’exec generique.
  • recencer les pages de configuration existantes exec/configurer.*[.]html, de les lire pour voir quels formulaires elles contiennent, et d’enlever les-dits formulaire de la premiere liste

La fonction pourrait ainsi lister un ensemble de pages de configurations composites (contenant plusieurs formulaires) au automatiques (générées à partir d’un formulaire), avec leurs urls. Il suffirait de definir une convention de nommage des libelles sous la forme configurer:titre_configurer_xxx pour avoir un libelle associé à chaque page/url [*]

On peut complèter la spec avec

  • la convention de nommage pour un logo : images/configurer-xxx-16.png et variantes en 24px si besoin

Et pourquoi pas une seule en 128 si possible? que l’on transforme avec les fonctions que l’on a à notre dispo et le cache qui va bien? ça permettrait de faire des choses un peu classe peut être non?

  • la convention d’appel à autoriser(‹ configurer ›,‹ xxx ›) pour chaque page, qui par defaut sont donc reserves aux admins, avec possibilité de modifier ces droits par la definition de la fonction configurer_xxx

Super

kent1