source: trunk/spip/2.1/extensions/magusine-portage2.1/formulaires/upload_bandeau.php @ 756

Last change on this file since 756 was 756, checked in by guillermoacedo@…, 14 years ago

se agrego la correccion de magusine para 2.1 basica

File size: 3.1 KB
Line 
1<?php
2/***************************************************************************\
3 Plugin   : magusine
4 Licence  : GPL
5 Auteurs  : Stéphane Noël, Philippe Vanderlinden
6 Infos    : http://www.spip-contrib.net/Le-plugin-Magusine
7            http://www.magunews.net/spip.php?rubrique645
8
9 $LastChangedRevision: 12345 $
10 $LastChangedBy: bubu $
11 $LastChangedDate: 2008-03-21 15:50:47 +0100 (ven, 21 mar 2008) $
12 \***************************************************************************/
13
14if (!defined("_ECRIRE_INC_VERSION")) return;
15
16// importe la fonction creer_repertoire_documents, qui retourne le chemin vers un dossier donné dans le répertoire img, et le crée si nécessaire
17include_spip('inc/getdocument');
18include_spip('inc/filtres_images_mini');
19
20function formulaires_upload_bandeau_charger_dist($id_rubrique,$largeurMax,$hauteurMax)
21{ 
22    $valeurs = array(
23        "id_rubrique" =>$id_rubrique,
24        "id_check"    =>$_SESSION["id_check"],
25        "largeurMax"  =>$largeurMax,
26        "hauteurMax"  =>$hauteurMax
27    );
28
29    return $valeurs;
30}
31
32// gestion de l'upload d'un bandeau
33// les bandeaux sont sauvés sous la forme bandeau.ext, et bandeau-id_rubrique.ext pour les bandeaux associés à une rubrique particuliÚre
34function formulaires_upload_bandeau_traiter_dist($id_rubrique,$largeurMax,$hauteurMax)
35{       
36        if (isset($_FILES["bandeau"])) {
37                if ($_FILES["bandeau"]["error"] == 0) {
38                        $ext = strtolower(end(explode(".", $_FILES["bandeau"]["name"])));
39                        $ext_ok = Array("jpg", "gif", "png");
40                        if (!in_array($ext, $ext_ok)) {
41                                return array('message_erreur'=>_T("arty:erreur_extension") );
42                        }
43
44                        $chem        = creer_repertoire_documents("bandeau");
45                        $chem        = _DIR_IMG."bandeau/";
46                        $nom_bandeau = "bandeau".((is_numeric($id_rubrique))?"-".$id_rubrique:"");
47                        $dest        = $chem.$nom_bandeau.".".$ext;
48
49                        $ok = false;
50                        if ($chem) {
51                                $ok = @move_uploaded_file($_FILES['bandeau']['tmp_name'], $dest);
52                        }
53
54                        if ($ok){
55                                //nettoyage du dossier bandeau (les bandeaux portant le même nom mais une extension différente du bandeau uploadé sont supprimés)
56                                $handle = @opendir($chem);
57                                while($fichier = @readdir($handle)) {
58                                        if (ereg("^$nom_bandeau\.(jpg|png|gif)$", $fichier) && $fichier != $nom_bandeau.".".$ext){
59                                                @unlink($chem.$fichier);
60                                        }
61                                }
62                               
63                                $fichier_upload = $chem.$nom_bandeau.".".$ext;
64                               
65                                # calculer la nouvelle taille du bandeau
66                                list($rWidth, $rHeight, $rType, $rAttr) = getimagesize($fichier_upload);
67                                $ratioImg = image_ratio($rWidth,$rHeight,$largeurMax,$hauteurMax);
68                               
69                       
70                                $valeurs["message_ok"]["message"] = "";
71                                $valeurs["message_ok"]["hauteur"] = $ratioImg[1];
72                                $valeurs["message_ok"]["largeur"] = $ratioImg[0];
73                                $valeurs["message_ok"]["fichier_upload"] = $fichier_upload;
74                               
75                                return $valeurs;
76                               
77                        } else {
78                                return array('message_erreur'=>_T("arty:upload_rate") );
79                        }
80                } else if ($_FILES["bandeau"]["error"] == 1 || $_FILES["bandeau"]["error"] == 2) {
81                        return array('message_erreur'=>_T("arty:erreur_trop_gros") );
82                } else if ($_FILES["bandeau"]["error"] == 3) {
83                        return array('message_erreur'=>_T("arty:erreur_transmission") );
84                }
85        }
86}
87
88?>
Note: See TracBrowser for help on using the repository browser.