source: trunk/spip/esqueleto-redcta/plugins/magusine/inc/upload_logo.php @ 80

Last change on this file since 80 was 80, checked in by guille, 15 years ago

el plugin completo

  • Property svn:executable set to *
File size: 2.3 KB
Line 
1<?php
2//gestion de l'upload d'un logo pour les groupes de mot
3// les logos sont sauvés sous la forme bandeau.ext, et bandeau-id_rubrique.ext pour les bandeaux associés à une rubrique particuliÚre
4function traiter_upload_logo($id_groupe=0){
5  if (isset($_FILES["logo"])) {
6    if ($_FILES["logo"]["error"] == 0) {
7      $ext = strtolower(end(explode(".", $_FILES["logo"]["name"])));
8      $ext_ok = Array("jpg", "gif", "png");
9      if (!in_array($ext, $ext_ok)) {
10        return "logo:erreur_extension";
11      }
12
13      $chem = creer_repertoire_documents("logo-groupe");
14      $chem = _DIR_DOC."logo-groupe/";
15     
16      if (!$id_groupe) {
17        $nom_logo = "logo";
18      } else {
19        $nom_logo = "logo-$id_groupe";
20      }
21     
22      $dest = $chem.$nom_logo.".".$ext;
23     
24      $ok = false;
25      if ($chem) {
26        $ok = @move_uploaded_file($_FILES['logo']['tmp_name'], $dest);
27      }
28     
29      if ($ok){
30        //nettoyage du dossier logo (les logo portant le même nom mais une extension différente du bandeau uploadé sont supprimés)
31        $handle = @opendir($chem); 
32        while($fichier = @readdir($handle)) {
33          if (ereg("^$nom_logo\.(jpg|png|gif)$", $fichier) && $fichier != $nom_logo.".".$ext){
34            @unlink($chem.$fichier);
35          }
36        }
37        return "arty:upload_reussi";
38      } else {
39        return "arty:upload_rate";
40      }
41    } else if ($_FILES["logo"]["error"] == 1 || $_FILES["logo"]["error"] == 2) {
42      return "arty:erreur_trop_gros";
43    } else if ($_FILES["logo"]["error"] == 3) {
44      return "arty:erreur_transmission";
45    }
46  }
47}
48
49// supprime le bandeau d'une rubrique donnée
50function traiter_suppression_logo($id_groupe=0){
51  if (isset($_GET['action']) && isset($_GET['id_check'])){
52    if ($_GET['action'] == "supprimer_logo" && $_GET['id_check'] == $_SESSION["id_check"]) {
53      //$chem = creer_repertoire_documents("logo-groupe");
54      $chem = _DIR_DOC."logo-groupe/";
55      $handle = @opendir($chem);       
56      while($fichier = @readdir($handle)) {
57        if (!$id_groupe) {
58          if (ereg("^logo\.(jpg|png|gif)$", $fichier)){
59            @unlink($chem.$fichier);
60          }
61        } else {
62          if (ereg("^logo-$id_groupe\.(jpg|png|gif)$", $fichier)){
63            @unlink($chem.$fichier);
64          }
65        }
66      }
67    }
68  }
69}
70
71?>
Note: See TracBrowser for help on using the repository browser.