LIM : alléger l’espace privé

Ce plugin permet de désactiver l’affichage de blocs ou de boutons, présents par défaut dans SPIP mais qui peuvent devenir inutiles dans le cadre de votre projet.

Il allège du coup l’interface d’édition et supprime d’éventuels risques de confusion dans l’ajout de contenu éditorial. [1]

Prérequis, installation et configuration

Prérequis

Votre serveur doit proposer une version de PHP supérieur ou égal à 5.5

Installation

Il s’installe comme tous les plugins.

Configuration

La configuration propose 4 grandes catégories

1 - Désactiver les blocs « Forums publics » et « Pétitions »

Vous pouvez désactiver l’affichage de ces blocs de vos pages articles.

Pour les forums

Si vous avez désactivé l’utilisation des forums publics, vous pourrez alors désactiver l’affichage du Bloc « Fonctionnement du forum » dans vos pages articles.
Avertissement : ne tient pas compte des options avancées. À utiliser donc si vous n’avez pas du tout besoin des forums publics.

Pour les pétitions

Désactiver l’affichage du bloc « Fonctionnement de la pétition » dans vos pages articles.

2 - Logos au cas par cas

Si vous avez activé les logos (dans Configuration -> Contenu du site), un formulaire de logo s’activera pour tous les objets éditoriaux.

Vous pouvez ici décider de ne pas afficher ce formulaire pour tel objet en particulier.

3 - Contenus par rubrique

Par défaut SPIP ajoute un bouton ’Écrire un nouvel article’, dans toutes les rubriques.
Il en est de même avec le bouton ’Référencer un nouveau site’ si vous activez l’option « Gérer un annuaire de sites Web ».

Plus largement, il est possible pour n’importe quel autre objet éditorial amené a être rangé dans une rubrique de choisir précisément les rubriques dans lesquelles créer ces objets.


Avant la restriction par rubrique
Ici je suis dans la rubrique « Actualités ». Je veux éviter que mes rédacteurs puissent créer des articles, des sites référencés ou des fiches livres
Je ne veux que des actus dans la rubrique Actualités, que des articles dans le Blog, etc.
et hop…

Interdire l’édition d’un objet éditorial dans une rubrique aura deux conséquences :

  1. supprimer le bouton ’Écrire un nouvel article/breve/site/etc.’ de cette rubrique,
  2. Interdire de créer un article/brève/site/etc. dans cette rubrique.

Bonus

Si vous décidez qu’un objet ne peut être rangé que dans une seule rubrique, alors le formulaire d’édition de cet objet n’affichera plus le sélecteur de rubrique.

Incompatibilité avec certains plugins

Cette dernière fonctionnalité, Contenus par rubrique, n’est pas compatible avec la restriction des articles par rubriques avec les plugins suivants :

Certains me rapportent qu’ils ne trouvent pas cela forcément très gênant.
Mais si c’est le cas, il vous est possible de shunter cette incompatibilité en rajoutant le code suivant dans votre fichier /config/mes_options.php :

if (!function_exists('autoriser_rubrique_creerrubriquedans')) {
function autoriser_rubrique_creerrubriquedans($faire, $type, $id, $qui, $opt) {
	$quelles_rubriques = lire_config('lim_rubriques/rubrique');
	is_null($quelles_rubriques) ? $lim_rub = true : $lim_rub = !in_array($id,$quelles_rubriques);
	return
		$lim_rub
		AND autoriser_rubrique_creerrubriquedans_dist($faire, $type, $id, $qui, $opt);
}
}

if (!function_exists('autoriser_rubrique_creerarticledans')) {
function autoriser_rubrique_creerarticledans($faire, $type, $id, $qui, $opt) {
	$quelles_rubriques = lire_config('lim_rubriques/article');
	is_null($quelles_rubriques) ? $lim_rub = true : $lim_rub = !in_array($id,$quelles_rubriques);
	
	return
		$lim_rub
		AND autoriser_rubrique_creerarticledans_dist($faire, $type, $id, $qui, $opt);
}
}

4 - Divers : portfolio et formulaire Auteurs

Depuis la version 1.4, vous pouvez aussi :

  • Alléger le formulaire Auteur en désactivant (ou non) les champs suivants :
    • Adresse email
    • Qui est l’auteur
    • Clé PGP
    • le fieldset Lien site

Depuis la version 2.0 (uniquement SPIP >= 3.2), vous pouvez aussi :

  • Alléger l’affichage des documents en désactivant la notion de portfolio

Pour le développement de plugins

La fonction Contenus par rubrique prend en compte les nouveaux objets éditoriaux (et donc plus seulement les articles, sites référencés et brèves).
Ceci à conditions de mettre (un peu) le nez dans le code.

Explications

Vous devez déclarer les autorisations ad-hoc pour ces objets dans un fichier d’autorisation :
-  dans le fichier squelettes/mes_autorisations.php (à créer si besoin) ;
-  dans le fichier /monplugin/prefixe_autorisations.php.

La déclaration se fait comme suit

if (!function_exists('autoriser_rubrique_creertype_objetdans') AND test_plugin_actif('lim')) {
	function autoriser_rubrique_creertype_objetdans($faire, $type, $id, $qui, $opt) {
		$quelles_rubriques = lire_config('lim_rubriques/type_objet');
		is_null($quelles_rubriques) ? $lim_rub = true : $lim_rub = !in_array($id,$quelles_rubriques);
		
		return
			$lim_rub
			AND autoriser_rubrique_creertype_objetdans_dist($faire, $type, $id, $qui, $opt);
	}
}

Il vous faudra remplacer dans ce code le mot ’type_objet’ par…le type de l’objet.

Note : le type est différent du préfixe.
Pour un objet ’Patates’ :

  • préfixe = ’patates’
  • type = ’patate’

Notes

[1voir également sur le même sujet le plugin Motus : mots-clés utiles que sur certaines rubriques

Note à propos de la version 1.1
Cette version prend en compte la gestion de tous les objets éditoriaux pour la fonction de restriction des contenus par rubriques

Note à propos de la version 1.3
Si vous avez activé le téléversement des documents pour les rubriques (voir Configuration -> Contenu du site -> Documents joints) la restriction par rubrique fonctionne aussi pour cet objet.

Note à propos de la version 1.4
Nouvelles possibilités d’alléger l’espace privé. Voir le paragraphe« Divers »

Note à propos de la version 2
Cette version de LIM, (uniquement pour SPIP >= 3.2) permet de supprimer la notion de Portfolio dans la gestion de vos documents. Voir le paragraphe « Divers »

Discussion

13 discussions

  • 8

    Salut,

    est-ce qu’il est envisagé de rajouter le bloc « En cours de rédaction » dans les options désactivables ?

    jean marie

    Répondre à ce message

  • 2

    Bonjour et merci pour ce plugin !

    Un message d’erreur apparaît lors de la modification d’un document en médiathèque, si le document n’est pas rattaché à un objet, donc à une rubrique.

    Il concerne la ligne 121 du fichier lim_pipelines.php

    Version 2.0.0 sur SPIP 3.2.1

    Répondre à ce message

  • Super plugin ! merci

    Répondre à ce message

  • 8

    Bonjour,

    J’utilisais ton pluging sur plusieurs sites, mais là ça fait deux fois qu’il devient impossible de modifier/créer un article.

    J’ai un message Fatal Error (voir image), qui disparait quand je le désactive, je ne sais pas d’où cela vient, simplement il s’agit de deux sites bilingues.

    Plugings installé :

    Ancres douces
    Langue préférée
    Lecouteausuisse
    Saisie pour formulaire
    Site multilingue facile
    traduction autrement
    traduction entre rubrique
    Traductions de rubriques autrement

    Répondre à ce message

  • 3

    Bonjour Peetdu,
    Lim utilises le pipeline afficher_config_objet pour supprimer les blocs petitions et forums d’un article en fonction du paramétrage souhaité.
    J’ai voulu de mon côté obtenir le même résultat mais sans passer par un plugin, donc en utilisant mes_options, or dans ce cas le passage par le pipeline est inopérant ($flux[’data’] est toujours vide et je ne peux donc le modifier). J’imagine que c’est un souci d’échafaudage, dont je n’ai pas encore saisi tout le principe, mais je constate ces différences de comportement entre plugin et mes_options. Donc j’ai cherché un autre moyen et je m’aperçois qu’en fait les deux fonctions d’autorisations suivantes semblent elles aussi donner parfaitement le résultat escompté :

    -  autoriser_modererpetition($faire, $type, $id, $qui, $opt)
    -  autoriser_modererforum($faire, $type, $id, $qui, $opt)

    Si je leur retourne false, plus de blocs.

    Je ne sais pas si de ton côté pour lim tu as exploré cette piste plutôt que le pipeline, ça me semble plus simple que de la manipulation de string comme actuellement ? Je te pose la question car il y a peut-être des contre indications qui m’échappent et qui me ferait renoncer de mon côté à plutôt utiliser cette méthode.

    • Hello 6ril,

      aucune contre-indication dans la méthode que tu as trouvé. j’étais passé à côté et c’est effectivement beaucoup plus simple. Donc merci pour l’info :)

      Pour le plugin LIM, je vais quand même laisser en l’état. Car les autorisations dans SPIP ne sont surchargeables qu’une et une seule fois. Et donc cela pourrait générer des effets de bord indésirables chez certains utilisateurs actuels du plugin. Même si c’est (très ?) peu probable…

    • OK, merci pour ta réponse.
      Oui, ce qui est marrant c’est que le code même du plugin forum donne cette approche avec

       if (autoriser('modererforum', $type, $id)) {

      , visible dans l’exemple de la page de doc du pipeline afficher_config_objet.

      function forum_afficher_config_objet($flux){
          if (($type = $flux['args']['type']) == 'article'){
              $id = $flux['args']['id'];
              if (autoriser('modererforum', $type, $id)) {
                  $table = table_objet($type);
                  $id_table_objet = id_table_objet($type);        
                  $flux['data'] .= recuperer_fond( "prive/configurer/moderation", array($id_table_objet => $id));
              }
          }
          return $flux;
      }
    • J’oubliais, merci beaucoup pour ton plugin que j’utilisais depuis le début. Grâce à l’étude de son code et aux recherches que cela m’a amené à faire ensuite, j’ai pu développer ma propre solution hors plugin, collant à mes besoins très particuliers et résorbant l’ensemble des contraintes que je devais régler. Il ne me manquait que cette histoire de bloc forum et pétition, qui m’obligeait à passer par plugin pour les raisons que j’expliquais (pipeline inutilisable hors plugin)), mais à présent que j’ai vu ces autorisations, je peux ne plus passer par d’autres dépendances que mes_options, ce qui m’arrange considérablement. donc MERCI.

    Répondre à ce message

  • 2

    Bonjour,

    Merci pour ce plugin. Les adaptations de l’espace privée pour alléger l’interface sont toujours très utiles pour rassurer les hésitants et être cohérents avec la ligne éditoriale des rubriques.

    Question : est-ce que LIM pourrait pousser jusqu’à faire disparaître le bouton de téléversement d’un document lorsqu’on active cette possibilité dans une rubrique ? J’ai une rubrique où on ne fait que téléverser des documents et dans toutes les autres rubriques, c’est pas souhaitable.

    Cordialement

    • Bonjour Stanislas,

      désolé, j’avais compléter raté ton post.

      Question : est-ce que LIM pourrait pousser jusqu’à faire disparaître le bouton de téléversement d’un document lorsqu’on active cette possibilité dans une rubrique ? J’ai une rubrique où on ne fait que téléverser des documents et dans toutes les autres rubriques, c’est pas souhaitable.

      Cela doit être possible. En fait cela fait partie de mes TODOs

      je me note cela pour courant juin (un peu débordé en ce moment :)

    • Question : est-ce que LIM pourrait pousser jusqu’à faire disparaître le bouton de téléversement d’un document lorsqu’on active cette possibilité dans une rubrique ?

      C’est fait avec la version 1.3.

      Dans l’onglet « Contenus par rubrique », cliquer sur « Sélectionner les objets » et tu verras la case à cocher « Documents ».

    Répondre à ce message

  • 2

    Bonsoir

    J’utilise votre plugin sur un site et en cochant logos —> sites référencés cela me désactive les boutons supprimer/télécharger le logo du site, est-ce normal ?

    Merci

    Répondre à ce message

  • 4

    Bonjour,

    Petit bug au niveau de l’affichage des images dans le formulaire « Restreindre les contenus par rubrique ».
    Les images de dossier ne sont pas visibles sur un serveur linux.

    Le pb ets au niveau de /inc-choisir-rubriques.html.
    #VALEUR dans la première boucle data retourne un nom, « articles » ou « rubriques », commençant par une majuscule, contrairement aux vrais noms des images..
    Windows se fiche de la casse (wamp server par exemple) et un fichier articles+16 png = Articles-16png, donc ça ne se voit pas sur cette OS., contrairement à Linux.
    Il faut donc se conformer au nom de l’image, et tout mettre en minuscule avec |strtolower.
    Remplacer dans lim/formulaires/inc-choisir-rubriques.html

    <BOUCLE_entete(DATA){source tableau,#GET{traductions}}{par cle}>
    	<div class="check entete center">
    <img src='[(#CHEMIN_IMAGE{[(#VALEUR|strtolower)]-16.png})]'>
    <br>#VALEUR
    </div>
    </BOUCLE_entete>

    par

    <BOUCLE_entete(DATA){source tableau,#GET{traductions}}{par cle}>
    	<div class="check entete center">
    <img src='[(#CHEMIN_IMAGE{[(#VALEUR|strtolower)]-16.png})]'>
    <br/>#VALEUR
    </div>
    </BOUCLE_entete>

    ou en encore

    <BOUCLE_entete(DATA){source tableau,#GET{traductions}}{par cle}>
    	<div class="check entete center">
    [(#CHEMIN_IMAGE{[(#VALEUR|strtolower)]-16.png}|balise_img{'texte Alt', class_css})]<br/>#VALEUR
    <br/>
    #VALEUR
    </div>
    </BOUCLE_entete>

    Sur un autre sujet je n’arrive pas à empêcher (bloquer) la création de sous-rubrique dans une rubrique indiquée pourtant comme devant être restreinte pour les rubriques dans LIM, je ne sais pas si c’est normal ?
    Pourrait-on aussi avoir la 1.1.11 dispo en téléchargement en zip dans cette page aussi SVP (c’est encore la 1.1.10 qui y figure, et j’ai mergé à la mano la 1.1.11 avec l’adresse de la révision) ?

    • Les mauvais copier coller ont eu raison de mon message initial, la boucle à remplacer est :

      <div class="tab rubrique"></div>
      <BOUCLE_entete(DATA){source tableau,#GET{traductions}}{par cle}>
      <div class="check entete center"><img src='#CHEMIN_IMAGE{#VALEUR-16.png}'>
      <br>#VALEUR
      </div>
      </BOUCLE_entete>
    • Bonjour @peetdu

      A toute fin utile je signale que le bug (mineur certes) que je signalais plus haut à propos d’images invisibles dans l’interface d’administration du plugin, bug présent sur la 1.1, est toujours présent en 1.1.14.
      Voir copie écran :
      http://hpics.li/3e1421a

      La cause est identique, c’est à dire la casse du nom d’image qui ne correspond pas celle du nom obtenu dans la boucle data dans /formulaires/ inc-choisir-rubriques.html (ligne38).
      Le nom obtenu dans la boucle data est « Rubriques » ou « Articles » mais les images se nomment « rubriques-16.png » et « articles-16.png ». Pour faire correspondre les noms, j’ai pour ma part utilisé la fonction php strlower, comme expliqué plus haut.

      Le bug n’est pas visible sur des systèmes windows (wamp server par exemple), car ce dernier ne s’occupe pas de la casse pour les nom de fichiers (il ne peut contenir dans le même dossier deux fichiers identiques avec une casse différente), contrairement à linux pour qui des fichiers aux noms identiques avec une casse différente peuvent cohabiter dans un même dossier.

    • Hello 6ril,

      bug d’affichage corrigé avec 1.1.15.
      Merci pour le signalement.

    • Salut @peetdu,
      Parfait, merci, c’est ok ;-)

    Répondre à ce message

  • 1

    Bonjour,

    Je pense avoir trouvé un bug entre LIM et les sites web référencés de SPIP.

    En cas de modification d’un site référencé, j’ai cette erreur SQL :

    Erreur SQL 1054
    Unknown column 'id_site' in 'where clause' 
    SELECT id_rubrique FROM spip_syndic WHERE id_site=0

    boucle : lim_formulaire_verifier() sql_getfetsel() ;
    fichier : lim_pipelines.php
    ligne : 117

    ce qui empêché l’enregistrement des informations.

    Testé avec spip 3.1.1 et LIM 1.1.0

    Répondre à ce message

  • 6

    Bonjour,
    Merci pour ce plugin. Je fais un petit retour.
    Version 1.1.9 installé sur un spip 3.1 tout neuf, sans autre plugin.
    J’ai été étonné de voir que l’installation d’un autre plugin « SAISIE » était requise pour son bon fonctionnement, car je n’avais pas vu cette mention dans la doc. J’ai donc installé aussi SAISIE 2.5.27.
    Malgré cette installation minimaliste, et avec le plugin configuré pour masquer les cartouches forum et pétitions lors d’édition d’article, il m’est impossible de valider la saisie d’un article, j’obtiens un message désagréable :
    Il y a 1 erreur dans votre saisie, veuillez vérifier les informations.
    Dès que je désactive LIM ce bug disparait.

    Il y a 1 erreur dans votre saisie, veuillez vérifier les informations.

    • C’est étrange, je l’utilise sur plusieurs spip 3.1 et je n’ai plus ce problème. (voir la conversation ci-dessous)
      Le pluging tourne bien avec « saisie pour formulaire » 2.5.27 .

      J’ai toutes les créations de rubriques désactivées, les logos, les forum et pétitions, et certain création d’articles supprimés.

    • Corrigé par 1.1.10.

      J’ai été étonné de voir que l’installation d’un autre plugin « SAISIE » était requise pour son bon fonctionnement, car je n’avais pas vu cette mention dans la doc. J’ai donc installé aussi SAISIE 2.5.27.

      Pour le plugin Saisie, c’est effectivement un pré-requis et ce n’est pas annoncé dans la doc.
      À l’installation de LIM, la présence de Saisie est testée, si il n’est pas présent, l’ajout se fait automatiquement.

      Pourquoi penses-tu qu’il soit nécessaire de l’annoncer ? Je suis preneur de toute remarque…

    • @peetdu : l’ajout automatique ne se fait que si tu installe automatiquemt les plugins, ce qui n’est pas toujours le cas, pour diverses raisons.

    • Corrigé par 1.1.10.

      Ça semble OK, merci pour ta réactivité !
      Attention, sur cette page, dans la cartouche téléchargement, il est toujours marqué en 1.1.9, même si c’est le 1.1.10 qui se télécharge.

      Pour le plugin Saisie, c’est effectivement un pré-requis et ce n’est pas annoncé dans la doc.
      À l’installation de LIM, la présence de Saisie est testée, si il n’est pas présent, l’ajout se fait automatiquement.

      Pourquoi penses-tu qu’il soit nécessaire de l’annoncer ? Je suis preneur de toute remarque…

      Pas d’ajout automatique pour moi, car installation manuelle. Oui ça me semblerait une bonne chose de signaler dans la doc la dépendance.

      Merci encore ;-)

      A tout hasard, je souhaiterais ajouter l’accès aux admins restreints au formulaire de vidage de cache.
      J’ai regardé du côté du plugin autorité, mais il ne permet pas cela. J’y ai posé la question mais pas de réponse. Si quelqu’un a une suggestion, je serai très intéressé. Je ne sais pas trop où aborder ce sujet, et je le pose ici, car peut-être pourrait-il être intégré dans le plugin LIM ? Désolé si cela constitue un HS, me le dire, pas de souci.

    • @Maïeul : merci pour cette info.
      @6ril : 2 choses
      1- je vais dans une version prochaine supprimer la dépendance à Saisie.
      2- sur l’accès au vidage de cache pour tes admins restreints, le mieux est peut être de poser ta question sur la liste User.

    • @peetdu
      Merci pour ta réponse, j’ai (enfin ! ) trouvé une soluce pour ce que je voulais faire et je clôture ce HS en donnant le lien vers le post où je partage la solution :
      http://contrib.spip.net/Le-plugin-Autorite?debut_comments-list=-1#forum486349
      Bonne continuation et merci encore

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

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