From 1d5ca432b3817e4a93cd53d12fe7ce311a149c57 Mon Sep 17 00:00:00 2001
From: "cedric@yterium.com" <>
Date: Mon, 30 Jan 2012 09:53:19 +0000
Subject: [PATCH] Ferme http://core.spip.org/issues/2500 Un #CACHE sur le
 modele case document perturbait les affichages au retour du changement de
 mode Au passage on normalise l'action changer_mode_document (autorisation et
 utilisation de document_modifier plutot que sql_updateq)

---
 action/changer_mode_document.php | 12 ++++++++----
 modeles/document_case.html       |  1 -
 paquet.xml                       |  2 +-
 3 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/action/changer_mode_document.php b/action/changer_mode_document.php
index 036b4755..545f70cc 100644
--- a/action/changer_mode_document.php
+++ b/action/changer_mode_document.php
@@ -18,6 +18,8 @@ if (!defined("_ECRIRE_INC_VERSION")) return;
  *
  * http://doc.spip.org/@action_changer_mode_document_dist
  *
+ * @param int $id_document
+ * @param string $mode
  * @return void
  */
 function action_changer_mode_document_dist($id_document=null, $mode=null){
@@ -33,18 +35,20 @@ function action_changer_mode_document_dist($id_document=null, $mode=null){
 		}
 	}
 
-	if ($id_document)
+	if ($id_document
+		AND include_spip('inc/autoriser')
+	  AND autoriser('modifier','document',$id_document))
 		action_changer_mode_document_post($id_document, $mode);
 }
 
 // http://doc.spip.org/@action_changer_mode_document_post
-function action_changer_mode_document_post($id_document, $mode)
-{
+function action_changer_mode_document_post($id_document, $mode){
 	// - id_document le doc a modifier
 	// - mode le mode a lui donner
 	if ($id_document = intval($id_document)
 	AND in_array($mode, array('vignette', 'image', 'document'))) {
-		sql_updateq('spip_documents', array('mode'=>$mode), 'id_document='.$id_document);
+		include_spip('action/editer_document');
+		document_modifier($id_document,array('mode'=>$mode));
 	}
 }
 ?>
diff --git a/modeles/document_case.html b/modeles/document_case.html
index 270dfd17..5340cc5a 100644
--- a/modeles/document_case.html
+++ b/modeles/document_case.html
@@ -5,7 +5,6 @@
   Distribue sous licence GPL
 
 ]
-#CACHE{3600*100}
 <BOUCLE_docslies(DOCUMENTS documents_liens types_documents){id_document}{id_objet}{objet}{statut?}>
 	<div class="item #MODE" id="doc#ID_DOCUMENT">
 		<h3 class="titrem">[<span class="fichier">(#FICHIER*|basename)</span>]
diff --git a/paquet.xml b/paquet.xml
index 617ee123..c91a856c 100644
--- a/paquet.xml
+++ b/paquet.xml
@@ -1,7 +1,7 @@
 <paquet
 	prefix="medias"
 	categorie="multimedia"
-	version="2.7.7"
+	version="2.7.8"
 	etat="test"
 	compatibilite="[3.0.0-alpha2;["
 	logo="prive/themes/spip/images/portfolio-32.png"
-- 
GitLab