Skip to main content Help Control Panel

YACS CMS : Open source !

Community «   Le forum «   Nouvelles fonctions «  

Nouveau module liste

Viale, Fabrice -- on Mar. 5 2006
Un visiteur
Une gestion de liste configurable
Bonjour,

Le point critique qui fait que je demeure encore (partiellement...) réfractaire à Yacs ou à d'autres CMS, c'est l'absence d'un module permettant de générer des catalogues avec des champs configurables par l'utilisateur. Par exemple des cases à cocher, menus, zone de texte... qui peuvent ensuite être affichés en colonne ou en fiche, et être triés - sélectionnés.

A ma connaissance, un des meilleurs modules de ce type est flexinode de Drupal. http://drupal.org/handbook/modules/flexinode

Après la lecture du dernier message sur le futur de Yacs, ce type de module intégré au coeur permettrait que la création de nouveaux modules soient limités à ceux amenant des actions particulières (workflow...). Cela éviterait de créer n modules qui se ressemblent pour gérer l'un des cd, l'autre des livres...

Salutations.
Bernard on Mar. 5 2006 edit · delete
Je suis bien d'accord. Le besoin d'une fonction simple pour créer des formulaires, et pour les adosser à une table dans la base de données, ou à une adresse e-mail, est de plus en plus important.

Si on s'en réfère à la règle numéro 1 de l'eXtreme Programming, commençons par définir le besoin essentiel à couvrir, et tâchons de définir une solution simple correspondante.

Pour moi, il y a plusieurs niveaux de besoin, présentés comme suit :

-  usage d'un overlay - il s'agit des cas où un script PHP existe pour la spécialisation des articles; leur utilisation requière simplement la configuration d'une ou plusieurs sections pour y faire appel - exemples : sondage, recette de cuisine

-  bac à fiche - ceci passe par la création de formulaires dédiés, créés facilement et sans connaissance de programmation - exemples : invitation à un anniversaire, inscription à un séminaire de formation, demande d'information à une entreprise

-  application - là, le PHP est obligatoire, et YACS peut accueillir un module supplémentaire en fournissant tout un tas de services (cache, template, sécurité, ...)

Donc, ce que nous cherchons aujourd'hui c'est une solution pour le besoin "bac à fiche". En aval (overlays) et en amont (module PHP indépendant), YACS semble à peu près équipé.

Description fonctionnelle du bac à fiche :

-  Les associés peuvent définir autant de formulaires que nécessaires. YACS maintient une liste de tous les formulaires disponibles, pour sélection par les surfeurs de la communauté.

-  La définition d'un formulaire s'appuie sur des codes particuliers (à définir, sur le modèle des codes existants), plutôt que sur une approche WYSIWIG. Ce choix peut être discuté, mais la possibilité d'insérer du texte libre et d'y placer des champs de formulaire offre une grande liberté de mise en page, tout en restant simple.

-  Chaque formulaire dispose de son espace de stockage particulier, à raison d'une table par formulaire. Ceci pour faciliter les requêtes effectuées ultérieurement dans la base de données, par exemple par le module tables, qui permet d'insérer dans un article une table construite dynamiquement par SELECT MySQL.

-  Un utilisateur peut sélectionner un formulaire, remplir les champs, et soumettre le tout au serveur pour enregistrement et traitement. Certains formulaires peuvent n'être affichés qu'aux membres ou aux associés.

-  Lors de l'envoi d'un formulaire un message électronique peut être adressé à une ou plusieurs boîtes aux lettres. Chaque formulaire dispose de ses adresses d'alerte particulières. Ceci est une option configurée lors de la création du formulaire.

-  YACS créée automatiquement un article, avec les données du formulaire en overlay. Ceci pour bénéficier de tout l'environnement existant : ajout d'images, commentaires, attachement de fichiers, catégorisation, déplacement dans l'arborescence des sections, etc.

-  YACS maintient pour chaque formulaire, à destination des associés, la liste des articles de saisie.

-  Les associés peuvent également créer des objets tables pour constituer des pages de reporting ad hoc.

Ai-je oublié quelque chose ?
FabriceV on Mar. 7 2006 edit · delete
Bonjour,

c'est à la limite de mon niveau de compréhension, mais je crois avoir compris.

1) Le mode non wysiwyg peut être problématique pour certains utilisateurs. Mais il est vrai, qu'a priori le nombre de formulaires à créer est limité par site. -> faire une section d'échange de code - formulaire sur le site de yacs

2) Je n'ai pas vu de référence à la possibilité de sélection parmi la table par l'utilisateur? Me semble important de pouvoir n'afficher qu'un type : par exemple dans une liste de journaux à accès gratuit, limité, payant... Sinon, par défaut, une possibilité de tri pour retrouver un classement selon un champ (idem accès gratuit...).

3) Content Construction Kit Un autre module de Drupal en cours d'élaboration avec la présentation du projet détaillé qui peut vous donner des idées. http://drupal.org/project/cck

Salutations
Bernard on Mar. 7 2006 edit · delete
" 2) Je n'ai pas vu de référence à la possibilité de sélection parmi la table par l'utilisateur? Me semble important de pouvoir n'afficher qu'un type : par exemple dans une liste de journaux à accès gratuit, limité, payant... Sinon, par défaut, une possibilité de tri pour retrouver un classement selon un champ (idem accès gratuit...). "


C'est ce que j'appelais pompeusement plus haut le reporting. Puisque YACS permet de créer autant de requêtes que nécessaires, pourquoi se géner ? Vous pouvez créer une page pour le gratuit, une autre page pour le limité, etc. Ou alors, combinez les tables sur la même page si vous le souhaitez.

Il faut aussi préciser que les tables dynamiques construites YACS ont des en-têtes cliquables pour le tri par colonne. C'est en série, et pour le même prix.

Voir un exemple à [article=864]
Elrik on Mar. 10 2006 edit · delete
"

1) Le mode non wysiwyg peut être problématique pour certains utilisateurs. Mais il est vrai, qu'a priori le nombre de formulaires à créer est limité par site. "


En fait, cela dépend un peu ; en amont, à la création du formulaire, cela me semble moins ennuyeux : le besoin, s'il est réel, transcende la difficulté, bien souvent (on observe ce phénomène en FLE, avec les besoins réels de communication). C'est donc, je pense, à la sortie que l'ergonomie doit être d'abord maximale. Cela dit, l'un n'empêche pas l'autre, Bernard !

Pour Bernard :

" Ai-je oublié quelque chose ? "


En ce qui me concerne, non, j'attends avec impatience le "bac à fiches", car c'est un peu ce qui me manquait comme outil pour continuer à basculer mon site ! Juste un détail : dois-je considérer qu'on pourra créer les formulaires dans une section/sous-section particulière, ce qui permettra de leur affecter une CSS particulière d'un clic ?

Cordialement.
Bernard on Mar. 10 2006 edit · delete
Elrik: Pour la création des formulaires, je pensais à une centralisation de tous les formulaires du site, pour faciliter le choix.

Ceci n'empêche pas de styler chaque formulaire indépendamment à travers les CSS, si besoin.

Mais bon, ceci convient à condition qu'il y ait moins d'une vingtaine de formulaires. A discuter donc.
FabriceV on Mar. 19 2006 edit · delete
Bonjour

Je donne un exemple de résultat. La liste a plusieurs champs dont 2 sont déclarés en filtre. tableau flexinode

Salutations.
Fernand on Mar. 21 2006 edit · delete
FabriceV : Oui, c'est impressionnant.
Ce qui m'intéresse, c'est de savoir si vous restez:
" (partiellement) réfractaire à YACS "
...compte tenu des propositions formulées ci-dessus par Bernard, de bac à fiche, et adoubées par Elrik - car elles correspondent à ses besoins concrets ?

Concernant le Wysywig, je ne suis pas systématiquement pour sa mise en place car il me paraît appartenir à une philosophie de logiciels propriétaires, en apparence prometteuse, mais dépouillant en réalité l'utilisateur de la logique du système...
Notez cependant qu'il s'agit d'une position qui n'engage que moi, histoire de situer cet important sujet du traitement des formulaires dans son vaste contexte.
... Ceci, malgré le respect que j'ai pour Drupal.

A mon avis, YACS peut être limpide à utiliser à la fois pour des professionnels et pour des débutants, à travers les propositions ci-dessus.
FabriceV on Mar. 21 2006 edit · delete
Fernand : Bonjour,

En fait Yacs m'interresse car je suis loin de trouver que Drupal soit un excellent CMS. Pour résumer, l'intégration des modules est théorique, puisque beaucoup sont incompatibles entre eux ou générent des bugs. Par contre certains de ses modules ou éléments d'interface pourraient servir de modèle à beaucoup de CMS dont Yacs.

Le wysiwyg est un avantage, mais il n'est pas indispensable: ce n'est pas le seul moyen ou critère pour évaluer la convivialité ou l'ergonomie.

A titre personnel, la gestion de liste comme implémenté dans l'exemple m'est indispensable. Je souhaite mettre à disposition d'une communauté étudiante une liste de périodiques scientifiques et de vulgarisation. Il est nécessaire de doublonner les services des éditeurs car ceux-ci ont la très facheuse et intéressée habitude d'oublier les revues des autres et pire encore semblent boycotter celles en accès libre.

Je dois passer cette après-midi de liberté à essayer Yacs en local. Pour l'instant, j'ai uniquement testé Yacs par la démo. J'ai l'habitude de remplir des feuilles de notes pendant mes tests. J'ai déjà repéré des fautes d'ortographe, des petits problèmes d'interface....Je posterais le tout sur le forum après mes tests.

Salutations.
Fernand on Mar. 21 2006 edit · delete
FabriceV :
" A titre personnel, la gestion de liste comme implémenté dans l'exemple m'est indispensable. Je souhaite mettre à disposition d'une communauté étudiante une liste de périodiques scientifiques et de vulgarisation. Il est nécessaire de doublonner les services des éditeurs car ceux-ci ont la très facheuse et intéressée habitude d'oublier les revues des autres et pire encore semblent boycotter celles en accès libre. "


Voilà qui est fort intéressant.
La communauté enseignante de YACS est désormais relativement importante et nous sommes particulièrement à l'écoute de besoins justifiés tels que les vôtres.
Avec de tels éléments, nul doute que Bernard saura vous répondre concernant la possibilité ou pas de satisfaire ce besoin précis par rapport à son programme de développement à court terme
... Mais je ne suis pas vraiment inquiet à ce sujet car il y a des fonctionnalités de YACS qui permettent peut-être de répondre déjà très convenablement à un tel besoin (je pense, pour ma part, aux collections qui permettent de "loger" des séries de fichiers ou de répertoires... Panneau de contrôle/ Panneau de configuration/paramètre des collections...)

YACS peut se manipuler dans tous les sens... C'est d'ailleurs assez décoiffant... Et votre essai en local vous confirmera sans doute que contrairement à d'autres CMS qui offrent "des possibilités infinies d'avancement" en faisant du sur place tel un hamster dans sa roue, vous pouvez au contraire déployer votre propre ingéniosité avec ce système, en l'état, pour atteindre véritablement nombre de vos objectifs.

N'hésitez pas à poster concernant les coquilles, voire les bogues que vous repérez dans [section=bogues_tests].

Cordiales salutations
ThierryP on Apr. 12 2006 edit · delete
L'intêret d'avoir la possibilité de créer et d'éditer des formulaires types et enorme.

Les possibilités d'usages sont si nombreuses qu'il serait difficile de les lister toutes.

D'un point de vue relationnel, (relation client ou relation communautaire) cela permet de collecter des informations de manière claire et préçise sur les utilisateurs. L'avantage d'avoir toujours le même format de réponse est non négligable pour le traitement des données.

Personnelement je bloque encore sur le query.php

Je pourrais, assez facilement je pense intégrer un formulaire tiers (html simpe) sur yacs, mais la configuration actuelle du query.php (création d'une page de requête, envoie de couriel, système d'aide accollé..) est parfait pour l'usage que je souhaite en faire.

Il serait formidable de pouvoir, via le panneaux de contrôle par exemple, éditer ce formulaire pour lui ajouter un nombre x de champs, de bouton et d'options du type bandeau déroulant.

Une question en passant, puis-je ajouter un deuxième query.php en le renommant sans pour autant perturber le fonctionnement du premier ? Cela me permettrais de faire quelques tests.
Bernard on Apr. 13 2006 edit · delete
ThierryP: si query ne convient pas à certains usages, il est tout à fait possible de s'en inspirer librement, pour créer query_2.php, query_fomulaire1.php, ou que sais-je encore...

Ensuite, lier ce formulaire à partir de certaines pages, ou du template, pour que les internautes puissent y accéder.
ThierryP on Apr. 15 2006 edit · delete
Bernard :

Merci, je vais donc faire quelques essais et vous tiendrez au courant.

En attendant,voici une remarque que l'on m'a fait à plusieurs reprise à propos du formulaire :

Le nom par défaut est l'adresse IP de l'utilisateur (anonyme). Quelques personnes m'ont fait remarquer qu'elles n'appreciaient pas que l'on scan ainsi leur adresse IP. Peut être faudrait-il changer cette requête par une simple phrase du genre :"Utilisateur" ou "Indiquez votre nom" etc...

Ce n'est qu'un avis après plusieurs retour de la même remarque.
Bernard on Apr. 15 2006 edit · delete
ThierryP: enregistrer l'adresse réseau peut être perçu comme intrusif, mais il suffit de taper son nom à la place, non ?
ThierryP on Apr. 15 2006 edit · delete
Bernard :

Oui, je n'ai jamais dit le contraire Je vous fait juste part des remarques que l'ont m'a fait.

Pour en revenir au query.php, j'ai commencé à le modifier :

Effectivement, en créer un second (copie) ne pose aucun problème, tout fonctionne correctement. J'ai bien réussi à créer un nouveau champs, mais celui ci ne semble pas fonctionner. Le contenu de ce champs n'apparait n'y dans la requete en ligne, ni dans l'email...

// show available poster info $local['label_en'] = 'Sent by'; $local['label_fr'] = 'Envoyé par'; $_REQUEST['description'] = '

'.get_preferred('label').' '.$_REQUEST['user_name'].' '.$_REQUEST['user_address']."

\n" .$_REQUEST['description']; }


Peut être ajouter une requete de ce coté là ?

Pour info j'ai ajouté ceci :

// the date number information if(!isset($item['date'])) $item['date'] = ''; $local['label_en'] = 'Votre date de naissance'; $local['label_fr'] = 'Votre date de naissance'; $label = get_local('label'); $input = ''; $local['hint_en'] = 'DD/MM/YYYY'; $local['hint_fr'] = 'Au format JJ/MM/AAAA'; $hint = get_local('hint'); $fields[] = array($label, $input, $hint);

Enfin, c'est passionant tout cela

 
Share
Information channels
Recent files