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 | |
---|
14 | if (!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 |
---|
17 | include_spip('inc/getdocument'); |
---|
18 | include_spip('inc/filtres_images_mini'); |
---|
19 | |
---|
20 | function 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 |
---|
34 | function 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 | ?> |
---|