Valider 13c293fa rédigé par cerdic's avatar cerdic
Parcourir les fichiers

Quand on ajoute un document distant ne pas perdre la trace de la copie_locale...

Quand on ajoute un document distant ne pas perdre la trace de la copie_locale eventuellement faite au passage, l'utiliser pour avoir les infos du document (plus rapide) et la sanitizer si besoin
parent 77d5d793
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+12 −2
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -127,9 +127,19 @@ function action_ajouter_un_document_dist($id_document, $file, $objet, $id_objet,
		if (is_array($a = renseigner_source_distante($source))) {
			$champs = $a;
			# NB: dans les bonnes conditions (fichier autorise et pas trop gros)
			# $a['fichier'] est une copie locale du fichier
			# $a['copie_locale'] est une copie locale du fichier

			spip_ray("Retour renseigner_source_distante : ",$champs);
			// voir si le document a besoin d'un nettoyage et le cas echeant relire ses infos apres
			if (!empty($champs['copie_locale']) and file_exists($champs['copie_locale'])) {
				$res_sanitize = sanitizer_document($champs['copie_locale'], $champs['extension']);
				spip_ray("Retour sanitize : ",$res_sanitize);
				$infos = renseigner_taille_dimension_image($champs['copie_locale'], $champs['extension']);
			}
			else {
				$infos = renseigner_taille_dimension_image($champs['fichier'], $champs['extension'], true);
			}

			// on ignore erreur eventuelle sur $infos car on est distant, ca ne marche pas forcement
			if (is_array($infos)) {
				foreach ($infos as $k => $v) {
+3 −0
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -68,6 +68,9 @@ function renseigner_source_distante($source) {
		unset($a['body']);
		$a['distant'] = 'oui';
		$a['mode'] = 'document';
		if (!empty($a['fichier'])) {
			$a['copie_locale'] = $a['fichier'];
		}
		$a['fichier'] = set_spip_doc($source);
	}