/***************************************************************************\\r
* SPIP, Systeme de publication pour l'internet *\r
* *\r
- * Copyright (c) 2001-2014 *\r
+ * Copyright (c) 2001-2016 *\r
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *\r
* *\r
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *\r
return $files;\r
}\r
}\r
- elseif (_request('joindre_zip') AND $path = _request('chemin_zip')){\r
+ elseif (_request('joindre_zip') and $token_zip = _request('chemin_zip')) {\r
+\r
+ $zip_to_clean = (isset($GLOBALS['visiteur_session']['zip_to_clean']) ? unserialize($GLOBALS['visiteur_session']['zip_to_clean']) : array());\r
+ if (!$zip_to_clean or !isset($zip_to_clean[$token_zip]) or !$path = $zip_to_clean[$token_zip]){\r
+ return _T('avis_operation_impossible');\r
+ }\r
+\r
include_spip('inc/documents'); //pour creer_repertoire_documents\r
define('_tmp_zip', $path);\r
define('_tmp_dir', creer_repertoire_documents(md5($path.$GLOBALS['visiteur_session']['id_auteur'])));\r
// Est-ce qu'on sait le lire ?\r
include_spip('inc/pclzip');\r
if ($zip\r
- AND $archive = new PclZip($zip)\r
- AND $contenu = joindre_decrire_contenu_zip($archive)\r
- AND rename($zip, $tmp = _DIR_TMP.basename($zip))\r
- ){\r
+ AND $archive = new PclZip($zip)\r
+ AND $contenu = joindre_decrire_contenu_zip($archive)\r
+ AND $tmp = sous_repertoire(_DIR_TMP,"zip")\r
+ AND rename($zip, $tmp = $tmp.basename($zip))\r
+ ){\r
+ $zip_to_clean = (isset($GLOBALS['visiteur_session']['zip_to_clean'])?unserialize($GLOBALS['visiteur_session']['zip_to_clean']):array());\r
+ $zip_to_clean[md5($tmp)] = $tmp;\r
+ session_set('zip_to_clean',serialize($zip_to_clean));\r
$contenu[] = $tmp;\r
return $contenu;\r
}\r