c'est a ca que sert la variable $portfolio
function vignette_automatique($img, $doc, $lien, $x = 0, $y = 0, $align = '', $class = null, $connect = null) {
include_spip('inc/distant');
include_spip('inc/texte');
include_spip('inc/filtres_images_mini');
if (is_null($class)) {
$class = 'spip_logo spip_logos';
}
$e = $doc['extension'];
if (!$img) {
if ($img = image_du_document($doc, $connect)) {
if (!$x and !$y) {
// eviter une double reduction
$img = image_reduire($img);
}
} else {
$f = charger_fonction('vignette', 'inc');
$img = $f($e, false);
$size = @getimagesize($img);
$img = "';
}
} else {
$size = @getimagesize($img);
$img = "';
}
// on appelle image_reduire independamment de la presence ou non
// des librairies graphiques
// la fonction sait se debrouiller et faire de son mieux dans tous les cas
if ($x or $y) {
$img = image_reduire($img, $x, $y);
}
$img = inserer_attribut($img, 'alt', '');
$img = inserer_attribut($img, 'class', $class);
if ($align) {
$img = inserer_attribut($img, 'align', $align);
}
if (!$lien) {
return $img;
}
$titre = supprimer_tags(typo($doc['titre']));
$titre = ' - ' . taille_en_octets($doc['taille'])
. ($titre ? " - $titre" : '');
$type = sql_fetsel('titre, mime_type', 'spip_types_documents', 'extension = ' . sql_quote($e));
$mime = $type['mime_type'];
$titre = attribut_html(couper($type['titre'] . $titre, 80));
return "$img";
}
/**
* Trouve une image caractéristique d'un document.
*
* Si celui-ci est une image et que les outils graphiques sont dispos,
* retourner le document (en exploitant sa copie locale s'il est distant).
*
* Si on a un connecteur externe, on utilise l’URL externe.
*
* Autrement retourner la vignette fournie par SPIP pour ce type MIME
*
* @param array $document
* @param null|string $connect
* @return string Chemin de l’image
*/
function image_du_document($document, $connect = null) {
if ($e = $document['extension']
and isset($GLOBALS['meta']['formats_graphiques'])
and (strpos($GLOBALS['meta']['formats_graphiques'], $e) !== false)
and (!test_espace_prive() or $GLOBALS['meta']['creer_preview'] == 'oui')
and $document['fichier']
) {
include_spip('inc/quete');
if ($document['distant'] == 'oui') {
$image = _DIR_RACINE . copie_locale($document['fichier']);
} elseif ($image = document_spip_externe($document['fichier'], $connect)) {
return $image;
} else {
$image = get_spip_doc($document['fichier']);
}
if (@file_exists($image)) {
return $image;
}
}
return '';
}
/**
* Afficher un document dans la colonne de gauche
*
* @deprecated
* Utiliser l'inclusion prévue ou une véritable
* déclaration d'objet éditorial (la colonne document
* est alors affichée automatiquement sur la page d'édition de l'objet)
*
* @param int $id
* Identifiant de l'objet, ou id_auteur négatif pour un nouvel objet
* @param string $type
* Type d'objet
* @param null $script
* ??
* @return string
* Code HTML permettant de gérer des documents
*/
function afficher_documents_colonne($id, $type = 'article', $script = null) {
return recuperer_fond('prive/objets/editer/colonne_document', array('objet' => $type, 'id_objet' => $id));
}
/**
* Affiche le code d'un raccourcis de document, tel que
*
* Affiche un code de raccourcis de document, et l'insère
* dans le textarea principal de l'objet (champ 'texte') sur un double-clic
*
* @param string $doc
* Type de raccourcis : doc,img,emb...
* @param int $id
* Identifiant du document
* @param string $align
* Alignement du document : left,center,right
*
* @return string
* Texte du raccourcis
**/
function affiche_raccourci_doc($doc, $id, $align) {
static $num = 0;
$pipe = $onclick = '';
if ($align) {
$pipe = "|$align";
$onclick = "\nondblclick=\"barre_inserer('\\x3C$doc$id$pipe>', $('textarea[name=texte]')[0]);\"\ntitle=\"" .
str_replace(
'&',
'&',
entites_html(_T('medias:double_clic_inserer_doc'))
) . '"';
} else {
$align = 'center';
}
return "\n<$doc$id$pipe>
\n";
}