Salut,
je propose quelques modifications pour le fichier
ecrire/inc/drapeau_edition.php, je sais pas si qqn peut me donner son avis:
* la doc est un peu desactualisée
* quelques fonctions fonctionnent seulement avec les articles, alors qu'il est
possible qu'elles fonctionnent pour tous les objets editoriaux.
Pour la fonction liste_drapeau_edition, je pense qu'elle est trop spécifique aux
articles, alors je l'ai laissée telle quelle...
************* update_drapeau_edition.patch *************
--- ecrire/inc/drapeau_edition.php 2011-02-17 10:31:42.000000000 -0400
+++ ecrire/inc/drapeau_edition.php.new 2011-02-17 10:46:10.000000000 -0400
@@ -12,18 +12,19 @@
if (!defined('_ECRIRE_INC_VERSION')) return;
-// Drapeau d'edition : on regarde qui a ouvert quel article en edition,
-// et on le signale aux autres redacteurs pour eviter de se marcher sur
-// les pieds
+// Drapeau d'edition : on regarde qui a ouvert quel objet editorial en
+// edition, et on le signale aux autres redacteurs pour eviter de se marcher
+// sur les pieds
// Le format est une meta drapeau_edition qui contient un tableau
-// serialise id_article => (id_auteur_modif, date_modif)
+// serialise
+// type_objet => (id_objet => (id_auteur => (nom_auteur => (date_modif))))
// a chaque mise a jour de ce tableau on oublie les enregistrements datant
// de plus d'une heure
// Attention ce n'est pas un verrou "bloquant", juste un drapeau qui signale
-// que l'on bosse sur un article ; les autres peuvent passer outre
+// que l'on bosse sur cet objet editorial ; les autres peuvent passer outre
// (en cas de communication orale c'est plus pratique)
@@ -130,12 +131,12 @@
return $articles_ouverts;
}
-// Quand l'auteur veut liberer tous ses articles
+// Quand l'auteur veut liberer tous ses objets d'un type donné
// http://doc.spip.org/@debloquer_tous
-function debloquer_tous($id_auteur) {
+function debloquer_tous($id_auteur, $type='article') {
$edition = lire_tableau_edition();
foreach ($edition as $objet => $data)
- if ($objet == 'article')
+ if ($objet == $type)
foreach ($data as $id => $auteurs)
{
if (isset($auteurs[$id_auteur])) {
@@ -145,16 +146,16 @@
}
}
-// quand l'auteur libere un article precis
+// quand l'auteur libere un objet precis
// http://doc.spip.org/@debloquer_edition
-function debloquer_edition($id_auteur, $debloquer_article, $type='article') {
+function debloquer_edition($id_auteur, $id_objet, $type='article') {
$edition = lire_tableau_edition();
foreach ($edition as $objet => $data)
if ($objet == $type)
foreach ($data as $id => $auteurs)
{
- if ($id == $debloquer_article
+ if ($id == $id_objet
AND isset($auteurs[$id_auteur])) {
unset ($edition[$objet][$id][$id_auteur]);
ecrire_tableau_edition($edition);
************* update_drapeau_edition.patch *************
Severo