[spip-dev] Suppression des documents inutilisés

Salut,

Je viens de corriger un bug souvent mentionné ici : quand un article,
une rubrique ou une brève est supprimée, les documents attachés sont
aussi effacés (du répertoire IMG, et de la base de données).

Note : l'effacement a lieu à intervalles réguliers, il n'est pas
immédiat.

Amicalement

Antoine.

Hello,

Je viens de corriger un bug souvent mentionné ici : quand un
article, une rubrique ou une brève est supprimée, les documents
attachés sont aussi effacés (du répertoire IMG, et de la base de
données).

Si j'ai bien lu le code que tu as commité, tu ne tiens pas compte de
l'usage éventuel du document en question dans un autre élément que
celui auquel il a été rattaché, ce qui peut être dangereux à mon avis.

Les auteurs peuvent reprendre dans leurs articles des illustrations ou
documents qui ont été uploadés par un autre auteur dans son propre
article, et là si ce dernier vire le document, les autres ne sont pas
informés que leur article n'est plus bon ...

J'avais proposé une évolution permettant de savoir quels sont les
éléments référencés dans d'autres (docs, articles, rubriques, breves,
etc.), je la tiens toujours à disposition.

-Nicolas

Voilà une information interessante....
J'utilise de temps en temps les mêmes documents en recopiant juste le liens [img02]
pour la rubrique (seule façon d'avoir une image dans le texte de celle-ci) ou bien dans d'autres articles.

Je pense que cette vérification serait une bonne chose.
Cela consite en quoi? une nouvelle table dans la base, ou une recherche dans les tables?

Amicalement.
Grégoire

A partir de maintenant, plutôt que de supprimer un article, je le mettrais "en cours de rédaction" par un autre rédacteur....

Nicolas Hoizey wrote:

Je pense que cette vérification serait une bonne chose. Cela consite
en quoi? une nouvelle table dans la base, ou une recherche dans les
tables?

Une table qui contient tous les liens internes obtenus par références
dans le texte des rubriques, articles, breves...

-Nicolas

Salut,

Hello,
Si j'ai bien lu le code que tu as commité, tu ne tiens pas compte de
l'usage éventuel du document en question dans un autre élément que
celui auquel il a été rattaché, ce qui peut être dangereux à mon avis.

En effet mais :

Les auteurs peuvent reprendre dans leurs articles des illustrations ou
documents qui ont été uploadés par un autre auteur dans son propre
article, et là si ce dernier vire le document, les autres ne sont pas
informés que leur article n'est plus bon ...

C'était déjà comme ça. La seule chose qui a changé, c'est que les
documents qui ne sont plus liés à aucun article ou rubrique ou brève
sont aussi supprimés. C'est le comportement attendu : si tu supprimes un
article, les fichiers attachés disparaissent aussi (comme pour un mail).
Sinon les méga-octets s'entassent, et bonjour le boulot pour faire le
ménage en FTP...

En tout état de cause, réutiliser un document nécessite quand même de
connaître le code à insérer, et donc le numéro du document. Il faut donc
avoir le droit de modifier l'article (sinon tu ne connais pas le numéro
du document...). Cela limite cette possibilité aux admins, ou aux
auteurs qui voudraient réutiliser plusieurs fois un même document dans
leurs articles. C'est une utilisation détournée. Et l'existence d'objets
et de fichiers "fantômes" (accessibles nulle part dans l'espace privé)
ne doit pas être très pratique à gérer...

Amicalement

Antoine.

Les auteurs peuvent reprendre dans leurs articles des illustrations
ou documents qui ont été uploadés par un autre auteur [...]

C'était déjà comme ça.

En effet.

La seule chose qui a changé, c'est que les documents qui ne sont
plus liés à aucun article ou rubrique ou brève sont aussi supprimés.

Sauf que la définition de "lié" n'est pas forcément adéquate dans le
cas que je décris ... :wink:

C'est le comportement attendu : si tu supprimes un article, les
fichiers attachés disparaissent aussi (comme pour un mail).

C'est en effet ce qui semble le plus cohérent, c'est pourquoi je
proposais ma contribution qui permettait d'alerter avant toute
suppression d'un article (voir empêcher) que lui-même ou des documents
qui y sont liés sont "utilisés" dans d'autres éléments ...

En tout état de cause, réutiliser un document nécessite quand même
de connaître le code à insérer, et donc le numéro du document.

Certes.

C'est une utilisation détournée.

Qui a été favorisée par l'apparition des id de documents uniques alors
qu'auparavant un doc avait un id composé de l'id de l'article auquel
il était rattaché et d'un compteur de docs attachés à ce même article.

Ca ne permettait pas d'utiliser les docs dans d'autres articles, mais
c'était à la fois plus simple d'usage (pas besoin de se soucier de
l'id, si je n'ai qu'un doc dans mon article c'est forcément "doc1") et
plus sécurisé pour le sujet dont on parle ...

l'existence d'objets et de fichiers "fantômes" (accessibles nulle
part dans l'espace privé) ne doit pas être très pratique à gérer...

Impossible, c'est clair.

-Nicolas