cisf : plugin « saisie facile » pour SPIP 3

Cette nouvelle version est compatible avec SPIP 3.0, SPIP 3.1 (tout en restant compatible avec SPIP 2.1). Ce plugin « saisie facile » permet de créer ou de modifier facilement un article directement depuis le site public.

Ce plugin :

-   Diminue le nombre de clics nécessaires pour créer un article simple ;
-   Evite certaines complexités de SPIP ( 2 pages pour créer un article, …) ;.
-   Simplifie l’insertion d’un document ou d’une image dans le texte de l’article ;
-   Elargit le champ de saisie du descriptif et du texte ;
-   Positionne automatiquement le curseur de la souris dans le champ « titre » ;
-   Permet de remplacer un document ou une image ;
-   Permet d’ajouter plusieurs documents simultanément (sans les mettre dans un fichier ZIP) ;
-   Facilite l’accessibilité ;
-   Diminue les temps de traitement (par rapport à l’espace privé de SPIP).

En termes d’ergonomie, saisir sur le site public constitue l’approche la plus simple. En effet, la navigation s’effectue uniquement sur le site public. Aussi, il y a un seul environnement à connaître pour le rédacteur (au lieu de deux).

La saisie de l’article s’effectue dans une page simple avec un ensemble de liens pour les « options avancées ». Cela offre une approche très simple pour celui qui n’a pas besoin des options avancées. Par ailleurs, en pratique, on utilise un faible nombre d’options avancées pour un seul et même article.

A noter que ce plugin constitue le portage sous SPIP 2.0 d’une fonctionnalité qui existe depuis plusieurs années dans Giseh. Elle avait fait l’objet d’une étude qui avait été portée à la connaissance de la communauté SPIP le 22/09/2008.

Compatibilité

Le plugin est compatible avec SPIP 2.1, SPIP 3.0 et SPIP 3.1.

Il est compatible avec PHP 5 (y compris PHP 5.4).

Il surcharge uniquement le formulaire des boutons d’administration sur le site public (administration.html).

Le plugin est compatible avec les versions 1.1 (ou supérieures) des plugins correspondants aux fonctions de base de GISEH. Si on utilise la version 1.0 de ces deux plugins, on ne disposera pas du sélecteur de forme et de raccourcis.

Le plugin est compatible avec le plugin "porte plume" et le plugin "Formulaire d’upload en html5".

Installation

Le plugin « saisie facile » s’installe comme tous les plugins, cf. http://www.spip.net/fr_article3396.html

Paramétrage

Le plugin ne nécessite pas de paramétrage.

Illustration

Une très courte vidéo (2 Mo)

Une copie d’écran sous SPIP 2.0.10 (cliquer sur l’image pour l’agrandir) :

Copie d’écran sous SPIP 2.0.10

Une copie d’écran sous SPIP 2.1.0 avec l’extension "Porte plume" (cliquer sur l’image pour l’agrandir) :

Copie d’écran sous SPIP 2.1.0 avec l’extension « Porte plume »

Versions successives du plugin CISF

-  La version 1.5 contourne le problème de redirection, qui apparaît sur les sites qui ont plusieurs adresses, avec la version 2.1.6 (et supérieure) de SPIP.
-  La version 1.51 apporte la compatibilité avec le plugin "Champs extras 2".
-  La version 1.52 apporte la compatibilité avec le plugin "Titre de logo".
-  La version du 03/10/2011 corrige plusieurs points.
-  La version du 07/01/2013 modifie la date d’un document lors du remplacement (alors que SPIP ne la modifie pas).
-  La version du 07/11/2014 apporte la compatibilité avec le plugin Eluminures.
-  La version du 10/06/2015 apporte la compatibilité avec SPIP 3.0 et SPIP 3.1 (tout en restant compatible avec SPIP 2.1).
-  La version du 22/10/2015 apporte de légères évolutions pour l’accessibilité.
-  La version du 05/10/2016 prend en compte une nouveauté, de la version 3.0.24 de SPIP, qui empêchait de téléverser un fichier ZIP dans CISF.
-  La version du 27/01/2017 corrige plusieurs points.
-  La version du 27/03/2018 apporte la compatibilité avec SPIP 3.2 et la compatibilité (sous SPIP 3.2) avec PHP 7.0 et 7.1.
-  La version 3.0.0 du 03/07/2018 apporte la compatibilité avec le plugin CIBLOC.

Discussion

32 discussions

  • 4

    Bonjour
    Merci pour ce super plugin, très bien documenté.
    C’est la fin de l’interface privée souvent décourageante pour les débutants.
    Je désire néamoins le modifier pour supprimer la colonne de droite et augmenter la colonne d’édition (en fait à la même taille qu’une fois lisible en partie publique)
    Pouvez-vous m’indiquer les fichiers à modifier ?

    • Equipement

      Bonjour,
      Le fichier à modifier est : cisf/_css/cisf_style.css . Les styles à modifier sont #milieu (mettre padding : 0 0 0 180px ;) et #droite (mettre display : none ;).

    • Merci, vraiment parfait.

    • Comment on fait pour surcharger cisf_style.css et spip_admin_perso.css
      J’ai essayé dans squelettes/css et dans squelettes/_css sans succès
      Merci

    • Sous SPIP 3, c’est le fichier cisf_style_3.css qui est utilisé (et pas le fichier cisf_style.css).

    Répondre à ce message

  • 2

    Sous SPIP 3.0, si on apporte des modifications au texte de l’article, puis qu’on clique sur le lien « supprimer » d’un document de l’article, alors les modifications apportées au texte de l’article sont perdues.

    Répondre à ce message

  • 1

    Sous SPIP 3.0, la prévisualisation d’un article en cours de rédaction n’est possible que par les auteurs de l’article.
    Dans le back-office de SPIP 3.0 : le bouton « prévisualiser » n’est pas proposé si on n’est pas auteur de l’article (même pour un administrateur).
    Dans CISF, le bouton « prévisualiser » est présent, mais il aboutit à une page « Erreur 404 ».

    Serait-il possible de pas proposer le bouton « prévisualiser », dans CISF, si l’auteur n’est pas autorisé à le faire ?

    • Une autre approche consiste à surcharger la fonction autoriser_previsualiser_dist de SPIP 3.0 pour rétablir les règles de fonctionnement de SPIP 2.1 sur ce sujet.

    Répondre à ce message

  • 2

    Bonjour,

    Je souhaiterais récupérer par défaut le nom sans extension du fichier comme nom de document.
    Cela fonctionne avec le plugin cisquel mais avec les autres squelettes, le nom de document reste à blanc.
    Cette fonctionnalité est elle complexe à mettre en œuvre ?

    Merci

    • Bonjour,
      Sous SPIP 3.0 c’est très simple. La solution est décrite à l’adresse suivante : http://www.spip.net/fr_article5674.html.

      Sous SPIP 2.1 c’est nettement moins simple. Il convient de s’inspirer du contenu d’un fichier du plugin CIPARAM (ciparam/inc/ciparam_inc_document.php) et d’utiliser le pipeline post_edition.

    • Merci pour réponse rapide.
      Cela fonctionne parfaitement sous Spip 3.

    Répondre à ce message

  • 4
    obiwanriko

    Bonjour

    Super plugin et en test je n’ai que des retours positifs mais ...

    ... j’ai un soucis sur les champs d’articles créés avec le plugin Champs Extras.
    Ceux-ci s’affichent et sont accessibles mais une fois le formulaire validé les modifications ne sont pas répercutés...
    Donc dasn mon cas obligé de le désactiver... Temporairement j’espère.
    Une solution ? Problème connu ?
    Merci d’avance

    • Bonjour,
      Je viens de déposer, dans la présente page, la version du 20/07/2015 de CISF, qui est compatible avec le plugin Champs Extras sous SPIP 3.0.

    • obiwanriko

      Merci cela fonctionne !!! Super !
      Par contre la barre de saisie (gras, italique, lien, etc...) de SPIP a disparu ???

    • La barre de saisie (gras, italique, lien, etc...) de SPIP est indépendante de CISF.

      Si elle ne s’affiche pas, une piste consiste à :
      a) S’assurer que « Charger les scripts de barre d’outils sur l’espace public » est coché dans la configuration avancée de SPIP.
      b) Vider le cache (surtout /local/cache-js/)
      c) Faire un CTRL + F5 dans le navigateur.

    • obiwanriko

      Merci problème résolu grâce à ses précieux conseils !

    Répondre à ce message

  • 16
    Laiglon

    Merci pour ce superbe plugin.
    Comment peut on restreindre ce plugin au statut 6forum visiteur uniquement ?
    Ne permettre que le mode en attente de publication et pas la publication directe
    Et mettre des droits sur les articles pour que les auteurs visiteurs de chaque articles puissent, par la suite, une fois leur article publier que modifier leur propres articles.
    On peut couper ce plugin avec des sessions et des authorisation, ainsi qu’avec des champs extra 2
    Bravo et encore merci pour ce plugin qui simplifie grandement la publication.

    • Laiglon

      Dans votre pdf vous parlez du plugin cisquel pour interfacer avec de l’agenda.
      Où peut on le trouver ?
      Merci

    • equipement

      Ce plugin applique exactement les mêmes droits que ceux de l’espace privé pour la création et modification d’article.

      Son objectif n’est pas d’offrir un formulaire de saisie au statut « 6forum » visiteur.

      Les plugins cisquel et ciparam se trouvent à l’adresse suivante.

    • Laiglon

      Merci beaucoup pour votre réponse.
      Comment faire pour lui faire prendre en compte des champs extras sur des articles ?
      Faut rajouter les temps de le formulaire cisf_aritcle ?

    • equipement

      Dans formulaires/cisf_article.html, il faut ajouter à l’endroit souhaité :

      <!--extra-->

      Je l’ajouterai dans la prochaine version du plugin.

    • bonjour

      question inverse : je souhaiterai que les champs extra n’apparaissent pas.
      dans cisf_article pas de soucis j’ai enlevé

      mais pour les page mot_clé calendrier... ... je n’arrive pas trouvé.

      pouvez vous m’aider ?

      merci d’avance

    • Equipement

      Bonjour,

      La liste des options avancées est modifiable via le pipeline « cisf_article_options ».
      On peut modifier des items, supprimer des items, etc.

      Dans l’exemple ci-dessous, le plugin cisquel modifie le titre d’un item :

      function cisquel_cisf_article_options($param){
       
      	// Modification dans le menus des options avancees
      	if ($param['args']['type']=='options_avancees') {	
      		if (isset($param['data']['bt_calendrier']))
      			$param['data']['bt_calendrier']='cisf:eq_menu_calendrier';
      	}
      	return $param;
      }
    • Bonjour,
      je souhaiterais afficher certains des boutons avancés sous conditions.
      Par exemple afficher « auteurs » et « rubriques » que si l’utilisateur logué est 0minirezo.

      Je n’ose même pas présenter de code, je ne sais pas du tout comment marchent les pipelines et comment sont gérées indépendemment chaque option de « options avancées » dans cisf.

      Avez-vous une idée du code nécessaire pour arriver à mes fins ?

      Merci pour l’aide ;)

    • Equipement

      Bonjour,

      La liste des options avancées est modifiable via le pipeline « cisf_article_options ».
      On peut modifier des items, supprimer des items, etc.

      Dans l’exemple ci-dessous, le plugin supprime les items « auteurs » et « rubriques » si une condition (à compléter) n’est pas satisfaite :

      // Utilisation du pipeline
      function monplugin_cisf_article_options($param){
       
      	// menu des options avancees
      	if ($param['args']['type']=='options_avancees') {	
      		$tableau = $param['data'];
      		$tableau_return = array();
       
      		if (isset($tableau)) {
      			if (is_array($tableau)){
      				foreach($tableau as $nom=>$libelle){
      					if ($nom=='bt_rubart' OR $nom=='bt_auteur') {
      						// si authentifie
      						if ( ... ma condition ...)
      							$tableau_return[$nom]=$libelle;
      						// sinon ne rien faire
      					} else {
      						$tableau_return[$nom]=$libelle;
      					}
       
      				}
      			}	
      		}
       
      		if (!$tableau_return)
      			$tableau_return = $tableau_ciparam;
       
      		$param['data'] = $tableau_return;
      	}
       
      	return $param;
      }
    • Wow c’est parfait merci beaucoup !

      Est-il possible d’avoir la liste complète des items gérés par la pipeline ?

      En voici déjà 3 :
      -  bt_calendrier ( le bouton calendrier )
      -  bt_rubart ( le bouton rubriques )
      -  bt_auteur ( le bouton auteurs )

    • Equipement

      La liste figure dans le fichier cisf/cisf_article_fonctions.php :
      -  « bt_motcle »
      -  « bt_logo »
      -  « bt_multipj »
      -  « bt_rubart »
      -  « bt_redirection »
      -  « bt_auteur »
      -  « bt_forum »
      -  « bt_petition »
      -  « bt_datepublication »
      -  « bt_calendrier »

    • Exactement ce que je cherchais, merci beaucoup !

    • Bonjour, quelques news au sujet des boutons des options avancées :

      J’ai mis le code suivant dans cisf_options.php mais il ne marche pas :

      // Utilisation du pipeline pour modifier l'affichage des options si admin
      function monplugin_cisf_article_options($param){
      		   $statut = $GLOBALS['auteur_session']['statut'];  
              // menu des options avancees
              if ($param['args']['type']=='options_avancees') {      
                      $tableau = $param['data'];
                      $tableau_return = array();
       
                      if (isset($tableau)) {
                              if (is_array($tableau)){
                                      foreach($tableau as $nom=>$libelle){
      				// les boutons "rubrique article", "auteur" "petition" "date publication" "calendrier" s'affichent seulement si l'utilisateur est admin
                                              if ($nom=='bt_rubart' OR $nom=='bt_auteur' OR $nom=='bt_forum' OR $nom=='bt_petition' OR $nom=='bt_datepublication' OR $nom=='bt_calendrier') {
                                                      // si authentifie comme admin
                                                      if ($statut == "0minirezo")
                                                              $tableau_return[$nom]=$libelle;
                                                      // sinon ne rien faire
                                              } else {
      					// toujours cacher les boutons logo et mot cle
      						if ($nom=='bt_logo' OR $nom=='bt_motcle'){
      						} else {
      						$tableau_return[$nom]=$libelle;
      						}
                                              }
       
                                      }
                              }      
                      }
       
                      if (!$tableau_return)
                              $tableau_return = $tableau_ciparam;
       
                      $param['data'] = $tableau_return;
              }
       
              return $param;
      }

      Cisf_options est-il le bon endroit où je dois mettre ce code ?

    • Equipement

      Bonjour,
      Comme je l’ai indiqué, la liste des options avancées est modifiable via le pipeline « cisf_article_options ». Il faut donc déclarer l’utilisation du pipeline.

    • Bonjour, encore merci pour votre réponse rapide !

      Je débute sur spip, est-il possiblede m’indique comment déclarer le pipeline avant ce code ?
      J’ai trouvé ceci sur le web mais je ne sais pas comment l’adapter au pipeline cisf_article_options :

      $GLOBALS['spip_pipeline']['affiche_milieu'] .= "|nombre_caracteres_article";
    • Bonjour, je ne suis toujours pas arrivé à mes fins.
      Comment déclarer correctement le pipeline cisf_article_options ?

      Merci beaucoup pour l’aide

    • Bonjour,
      Le plugin CISQUEL téléchargeable sur cette page contient un exemple d’utilisation du pipeline cisf_article_options dans les fichiers suivants :
      -  cisquel/plugin.xml
      -  cisquel/cisquel_pipelines.php (function cisquel_cisf_article_options)

    Répondre à ce message

  • 1

    Résumé du mail du 11/03/2013 à 17h33 :
    Lorsque m’on utilise le plugin CISF conjointement avec le plugin CIPARAM : si on vide le cache de SPIP, les liens « Forme » et « Raccourcis (accueil ...) » sont absents dans la colonne de gauche de la saisie facile.

    Répondre à ce message

  • 1

    Mail du 04/01/2013 15h59 :
    Demande de modification de la date d’un document lors de son remplacement.

    • Mail du 07/01/2013 à 10h22 :
      La fonction de remplacement de document (du plugin saisie facile) utilise les fonctions de SPIP. Or SPIP considère que lors d’un remplacement de document, la date du document ne doit pas être modifiée. Ce n’est pas un bug de SPIP, mais un choix volontaire des concepteurs de SPIP.

      Vu que certains squelettes font apparaître sur le site public la date de chaque document, ce choix de SPIP s’avère peu adapté. Aussi, suite à plusieurs demandes, une évolution fonctionnelle a été apportée au plugin de saisie facile, afin de contourner ce choix de SPIP. Ainsi, dans la version de CISF du 07/01/2013, la date du document sera automatiquement modifiée lors du remplacement du document.

      Rappel sur une possibilité qui existait déjà :

      Si l’on veut pouvoir modifier la date d’un document, il convient de configurer SPIP de la manière suivante :
      -  Se connecter avec un compte administrateur
      -  Dans l’espace privé, cliquer sur le menu [Configuration]
      -  Dans le bloc « Documents joints », cocher « Permettre de modifier la date de chaque document » et cliquer sur le bouton [Valider].

      Une fois cette configuration effectuée, dans la saisie facile :
      -  Lors du remplacement d’un document, la date de mise en ligne s’affiche et peut être modifiée.
      -  Lors de la modification d’un document, la date de mise en ligne s’affiche et peut être modifiée.

      Une fois cette configuration effectuée, dans l’espace privé :
      -  Lorsqu’on déplie le bloc d’un document, la date de mise en ligne s’affiche et peut être modifiée.

    Répondre à ce message

  • 1

    Bonjour,
    Lorsque l’on clique sur le bouton, qui permet d’insérer un tableau, plusieurs boîtes de dialogue se succèdent pour demander le nombre de lignes, le nombre de colonnes, etc.
    Depuis peu, une case à cocher apparaît « Empêcher cette page d’ouvrir des dialogues supplémentaires ». Toutefois si on coche cette case dans la seconde boîte de dialogue, les boîtes de dialogue suivantes ne s’affichent pas et on n’a pas le tableau.

    Répondre à ce message

  • 2

    Bonjour

    merci pour ce plugin
    un petit soucis ; après être connecté un moment je n’ai plus accès a la modifications d’un article et mon statut semble changer automatiquement d’administrateur a rédacteur ?...

    Quelqu’un a t il eu ce genre d’expérience ?

    Merci

    • Donc le problème persiste et je ne trouve pas de solution :
      Il semble que cela vienne du cache du navigateur ; lorsque je vide le cache et me reconnecte, j’arrive à créer 2 a 3 articles en les publiant puis mon statut change et je n’ai plus l’option de publier ; juste celle de proposer à l’évaluation.
      Après avoir fait un test de ce genre :

      #EVAL{$GLOBALS['auteur_session']['id_auteur']}}>
      [(#STATUT|==0minirezo| ?’ ’,’’)
      test
      ]

      J’ai bien le statut 0minirezo qui semble n’être plus attribuer car le message n’apparait plus...

      J’ai tenté sur différentes versions de spip spip 2.1 et spip 2.1.17
      différents navigateurs en local comme en ligne....
      j’ai du louper quelque chose semble t il...

      merci de bien vouloir m’éclairer..

    • en fait j’avais pour afficher le nom de l’utilisateur :

      #SESSION_SETstatut,1comite

      [(#NOM|sinonnom)]
      #PRENOM
      #EMAIL

      du coup a chaque passage de la page le statut changé....

      Pour au cas ou il y est une tête en l’air comme moi....

    Répondre à ce message

Ajouter un commentaire

modération a priori

Attention, votre message n’apparaîtra qu’après avoir été relu et approuvé.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom

Dernière modification de cette page le 14 juillet 2018