Corbeille

Un plugin pour retrouver les éléments supprimés dans la corbeille.

A quoi ça sert

Ce plugin permet de déroger au comportement standard de SPIP qui efface automatiquement certains objets de la base de donnée (articles, breves... à la poubelle), avec un délai d’un jour ou deux.

Avec ce plugin, plus aucun objet n’est supprimé automatiquement. La poubelle garde tous les articles ou autres objets que vous y avez mis, et vous pouvez toujours revenir en arrière.

Pour télécharger et installer

Téléchargez l’archive à la fin de l’article, et installez la dans le dossier plugins/ de votre site SPIP, comme pour tous les autres plugins

Pour s’en servir

Un sous-menu « Corbeille » est ajouté dans le menu Configuration [1] de votre Site.

Il vous permet de voir le contenu de la corbeille, type par type, et de supprimer éventuellement les objets dont vous n’avez vraiment plus besoin.

Sur chaque élément à la corbeille, un lien « voir » vous permet d’aller éditer l’élément pour le ressortir éventuellement de la corbeille.

Vous pouvez aussi sélectionner les éléments à supprimer définitivement en cochant la case devant, et cliquer sur le bouton ’Effacer la selection’.

Vous pouvez également effacer tous les éléments d’un type dans la corbeille.

Dans les deux cas le plugin va forcer l’effaçage immédiat de ces objets SPIP de la base de donnée. Les relations entre les objets SPIP seront aussi effacés (tel que les associations auteurs-articles)

Contrairement aux versions antérieures de SPIP, aucune opération complémentaire manuelle n’est nécessaire.

Pour que la corbeille gére vos objets éditoriaux

Il fau bien sûr remplacer « patate » par le nom de votre objet, et « prefixe » par le préfixe de votre plugin dans le code qui suit.

1/ créer un squelette prive/listes/corbeille_patates.html

<B_corbeille>
<div class="liste">
	[<h3 class="titrem">(#GRAND_TOTAL|singulier_ou_pluriel{patate:corbeille_patates_un,patate:corbeille_patates_tous})</h3>]
	[<nav class='pagination'>(#PAGINATION)</nav>]
	<ul class='liste-items checkables'>
	<BOUCLE_corbeille(PATATES){statut='poubelle'}{pagination 5}{!par date}{recherche ?}>
		<li class='item'>
			<label for='patate-#ID_PATATE'><:corbeille:selectionner:></label>
			<input type='checkbox' name='elements[]' id="patate-#ID_PATATE" value='#ID_PATATE'[ (#ID_PATATE|in_any{#ENV{elements}}|oui)checked='checked']/>
			<h4>[##ID_PATATE - (#TITRE|sinon{<:info_sans_titre:>})]</h4>
			<small>[(#DATE|affdate)][ (#DATE|heures)]:[(#DATE|minutes)]</small>
			<p class='actions'><a href='#URL_ECRIRE{patate,id_patate=#ID_PATATE}'><:corbeille:voir_detail:></a></p>
		</li>
	</BOUCLE_corbeille>
	</ul>
	[<nav class='pagination'>(#PAGINATION{prive})</nav>]
</div>
</B_corbeille>

2/ déclarer le pipeline dans paquet.xml

<pipeline nom="corbeille_table_infos" inclure="prefixe_pipelines.php" />

3/ définir l’objet à supprimer dans le pipeline

    /**
     * Pipeline de la corbeille, permet de définir les objets à supprimer
     * 
     * @param array $param Tableau d'objets
     *
     * @return array Tableau d'objets complété
     */
    function prefixe_corbeille_table_infos($param){
        $param['patates'] = array(
            'statut' => 'poubelle',
            'table'=> 'spip_patates',
            'tableliee'=> array('spip_patates_liens', '...'),
        );
        return $param;
    }

NB : définir dans ’tableliee’ les éventuelles tables qui contiennent des liens avec l’objet (spip_auteurs_liens, ...)

4/ définir les chaines de langue

Dans lang/patate_fr.php :

    'corbeille_patates_un' => 'Une patate dans la corbeille',
    'corbeille_patates_tous' => '@nb@ patates dans la corbeille',

Notes

[1Dans le menu Maintenance en SPIP 3.

Discussion

26 discussions

  • 1
    Jean POULIQUEN

    Spip version 1.2.8 plugin corbeille vers 0.7 ou 0.71
    Si on supprime des articles du forum il n’apparaissent plus sous l’article ce qui est normal.
    Pourquoi certains apparaissent dans le plugin corbeille et peuvent être supprimés de la BDD et d’autres n’apparaissent pas et ne peuvent donc pas être supprimé de la BDD ?

    Merci de vos explications

    • Hello,

      Je déterre un peu le thread mais c’est pas grave. ca peut servir a d’autres. J’ai le même problème que toi la plupart de mes messages de forums (du spam a 100%) n’apparaissent pas dans la corbeille.

      La raison est simple (plus que la cause en tout cas). la requête générée ne prend que les messages dont « id_parent = 0 ». Or dans mon cas (et dans le tien aussi j’imagine), mes spams ont un id_parent > 0

      Donc, j’ai modifié le fichier prive/listes/corbeille_forums_publics.html comme suit, ligne 5 :

      <BOUCLE_forums(FORUMS){statut}{pagination 5}{!par date}{recherche ?}>

      devient

      <BOUCLE_forums(FORUMS){statut}{plat}{pagination 5}{!par date}{recherche ?}>

      Perso, j’ai aussi changé la pagination parce que 5, c’est trop peu. Je ne sais pas si il faut faire comme ca mais au moins, maintenant, j’ai tout mes messages qui s’affichent. Le seul problème que je vois est qu’on peut supprimer un message qui avait un enfant. Donc, si on supprime le parant, on ne verra plus jamais les descendants (un truc comme ca quoi.)

    Répondre à ce message

  • Bonjour,

    Une petite question. Est ce que lorsqu’on efface un auteur de la BDD avec ce plugin, cela efface également les articles, messages... qui lui sont associés ?

    Si oui, j’ai trouvé mon bonheur !!!

    Si non, je retourne pleurer dans mon coin...

    Bonne journée !

    Répondre à ce message

  • Aubepine

    Bonjour
    En voulant installer le plugin sous spip 2.0.9, j’ai le message d’erreur :
    Impossible d’activer le plugin corbeille_2
    Nécessite SPIP en version [2.0.0 ;2.3.0-dev) minimum.
    Que faire ?

    A cause du plugin beespip, je ne peux pas passer en en version 2.1.0 ou supérieur

    Cordialement

    Répondre à ce message

  • 3

    Bonsoir,
    Idem pour moi :

    [13-May-2011 22:41:31] PHP Fatal error : Call to undefined function optimiser_base_une_table() in /home/xxxxxxxxx/public_html/plugins/auto/corbeille_2_0/corbeille_options.php on line 18

    Spip 2.1.10 Corbeille 0.71 [42679]

    Merci pour une piste.

    • Il faut peut-être mettre :

      include_spip('genie/optimiser');

      à la place de :

      include_spip('optimiser','genie');

      car j’ai trouvé dans « utils.php » :

      function include_spip($f, $include = true)
    • Dans « corbeille_options.php » bien sur, envoi trop rapide

    • Merci Eric,
      J’ai fait la modif et je vais tester.
      Cordialement, Michel

    Répondre à ce message

  • 5

    Bonjour,
    Actuellement le lien Télécharger ;
    http://files.spip.org/spip-zone/corbeille_2_0.zip
    présent dans cet article donne :
    « The requested URL /spip-zone/corbeille_2_0.zip was not found on this server. »

    Répondre à ce message

  • Sylvain

    Hello,

    J’ai un message d’erreur dans les logs php :
    PHP Fatal error : Call to undefined function optimiser_base_une_table() in /plugins/corbeille_2_0/corbeille_options.php on line 18

    Corbeille 0.71 [42679]
    Spip 2.1.8

    Une idée ?

    Répondre à ce message

  • Bonsoir
    installé sur SPIP 2.1.2 [16017] (sur ovh), sur la page du plugin, rien n’apparaît sauf l’avertissement. Actuellement j’ai 2 messages forums supprimés, je ne peux donc pas vider.
    Auparavant, j’ai eu 3 ou 4 messages supprimés, une seule ligne à sélectionner était proposée (je ne me souviens plus de l’intitulé exact, genre 1 message je crois), sans précision du contenu, j’ai coché, et tous les messages supprimés ont été vidé.
    bizarre..

    Répondre à ce message

  • Bonjour,

    J’ai exactement le même problème que sholby.
    Ce problème persiste après avoir vidé le cache, depuis le site, mais aussi en vidant le fichier tmp en ftp (sauf un fichier .ok, ne sachant pas s’il est utile ou non). J’ai bien la version 0.71 et Spip 2.1.6.
    Sur la page Corbeille, à l’exception du nom du plugin, rien ne s’affiche, alors que plusieurs commentaires ont été supprimés de l’espace public.
    C’est dommage, car tout fonctionnait bien jusqu’au passage à Spip 2.1.
    J’ai aussi essayé de supprimer le plugin en ftp et de le réinstaller à nouveau : pas mieux...
    Les autres plugins sur le site : Sedna (dernière version) et Data table (dernière version, pas de base supplémentaire).

    Si quelqu’un a une idée...

    Merci

    Répondre à ce message

  • Tropicaloo

    Bonjour Cédric,
    Attention, l’URI de documentation dans le fichier plugin.xml n’est plus à jour et renvoie vers l’ancienne page et non pas celle-ci.
    Cdlt

    Répondre à ce message

  • débutant

    bonjour, j’ai installé et activé ce plugin, lorsque je clic sur l’icone de la poubelle je ne trouve pas tous les commentaires d’articles effacés, pourtant lorsque je clic sur « suivre et gerer les forums » d’autres commentaires effacés apparaissent bien en encadré pointillé.

    ma question est, pourquoi seuls quelques commentaires effacés apparaissent via le plugin poubelle et pas les autres ?

    autre question, sur la escription du plugin on voit écrit
    « Sur chaque élément à la corbeille, un lien « voir » vous permet d’aller éditer l’élément pour le ressortir éventuellement de la corbeille. »

    lorsque je clic sur « voir » cela m’emmenne sur la meme page que le lien « suivre et gerer les forums » mais je ne vois pas comment éditer les éléments...

    quelqu’un saurait m’éclairer svp ?

    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