[SPIP] ~2.1.12 -->2.1.25
[velocampus/web/www.git] / www / ecrire / inc / documents.php
index daa3e2a..fa57330 100644 (file)
@@ -3,7 +3,7 @@
 /***************************************************************************\
  *  SPIP, Systeme de publication pour l'internet                           *
  *                                                                         *
- *  Copyright (c) 2001-2011                                                *
+ *  Copyright (c) 2001-2014                                                *
  *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
  *                                                                         *
  *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
@@ -101,15 +101,20 @@ function generer_url_document_dist($id_document, $args='', $ancre='') {
 
        if ($r AND $r !== 'htaccess') return get_spip_doc($f);
 
+       return generer_acceder_document($f, $id_document, $args, $ancre);
+}
+
+// cette action doit etre publique !
+function generer_acceder_document($file, $id_document, $args='', $ancre='')
+{
        include_spip('inc/securiser_action');
 
-       // cette action doit etre publique !
        return generer_url_action('acceder_document',
                $args . ($args ? "&" : '')
                        . 'arg='.$id_document
                        . ($ancre ? "&ancre=$ancre" : '')
-                       . '&cle=' . calculer_cle_action($id_document.','.$f)
-                       . '&file=' . rawurlencode($f)
+                       . '&cle=' . calculer_cle_action($id_document.','.$file)
+                       . '&file=' . rawurlencode($file)
                        ,false,true);
 }
 
@@ -442,7 +447,15 @@ function afficher_case_document($id_document, $id, $script, $type, $deplier=fals
                }
 
        }
-       $cadre = lignes_longues(typo($titre ? $titre : basename($fichier)), 20);
+       if ($titre)
+         $cadre = $titre;
+       elseif (!$distant)
+         $cadre = basename($fichier);
+       else {
+         preg_match('@^[^/]*/*([^/]*)@', $fichier, $cadre);
+         $cadre = $cadre[1];
+       }
+       $cadre = lignes_longues($cadre, 20);
        // encapsuler chaque document dans un container pour permettre son remplacement en ajax
        return  '<div>'
                . debut_cadre($style, $icone, '', $cadre, "document$id_document")
@@ -456,7 +469,7 @@ function afficher_case_document($id_document, $id, $script, $type, $deplier=fals
                       ( _T('info_document').' '.majuscules($extension)))
                    . "</div>"))
                . $apercu
-               . "\n<div style='padding:2px; ' class='arial1 spip_xx-small'>"
+               . "\n<div style='padding:2px;' class='arial1 spip_xx-small'>"
                . $raccourci
                . "</div>\n"
                . $legender($id_document, $document, $script, $type, $id, "document$id_document", $deplier)