source: spip-zone/_plugins_/cvt-upload/trunk/formulaires/inc-cvtupload-fichier_fonctions.php @ 111800

Last change on this file since 111800 was 111800, checked in by maieul@…, 2 years ago

spurious spaces

File size: 1.6 KB
Line 
1<?php
2
3include_spip('inc/filtres_images_mini');
4include_spip('inc/filtres');
5include_spip('inc/flock');
6if (!function_exists('supprimer_timestamp')) { // compat 3.0
7        function supprimer_timestamp($url) {
8                if (strpos($url, '?') === false) {
9                        return $url;
10                }
11                return preg_replace(",\?[[:digit:]]+$,", '', $url);
12        }
13}
14
15/**
16 * Réduit une image, puis encode en base64, puis supprime la vignette qui a été créée.
17 * Ceci permet que la vignette ne soit pas conservée dans local/ et donc évite que la vignette d'une image potentiellement confidentielle soit visible.
18 * Note: le filtre ne commence pas par image, car SPIP applique automatiquement un image_graver dans ce cas -> ca plante
19 * @param string $img
20 *     la balise img
21 * @param int $taille
22 *     la nouvelle taille
23 *
24 * @return string
25 *     la balise img
26 */
27
28function _image_reduire_base64($img, $taille) {
29        $image_reduite = image_reduire($img, $taille);
30        $fichier_reduit = supprimer_timestamp(extraire_attribut($image_reduite, 'src'));
31        $finfo = finfo_open(FILEINFO_MIME_TYPE);
32        $mime = finfo_file($finfo, $fichier_reduit);
33        $base64_reduit = "data:$mime;base64,".base64_encode(file_get_contents($fichier_reduit));
34        supprimer_fichier($fichier_reduit);
35        $image_reduite = inserer_attribut($image_reduite, 'src', $base64_reduit);
36        return $image_reduite;
37}
38
39
40/**
41 * Passer un nom en une valeur compatible avec une classe css
42 *
43 * - toto => toto,
44 * - toto/truc => toto_truc,
45 * - toto[truc] => toto_truc
46 *
47 * @param string $nom
48 * @return string
49**/
50function cvtupload_nom2classe($nom) {
51        return str_replace(array('/', '[', ']', '&#91;', '&#93;'), array('_', '_', '', '_', ''), $nom);
52}
Note: See TracBrowser for help on using the repository browser.