source: trunk/web/app/mods/e_set_news_categories.php @ 6

Last change on this file since 6 was 6, checked in by dj3c1t, 12 years ago

mise a jour du trunk

File size: 4.0 KB
Line 
1<?php
2
3  function e_set_news_categories($env)
4  { if($env->data->is_admin($env->pun_user["id"]))
5    { if(($env->out["news_root_categorie"] = $env->data->id_categorie(array("root", "news"))) !== false)
6      { $env->a = $_GET[$env->param("action")] ? $_GET[$env->param("action")] : "news_categories";
7        $function = "a_".$env->a;
8        if(function_exists($function)) $function($env);
9      }
10      else $env->erreur = "Impossible de trouver la categorie racine des news.";
11    }
12    else $env->erreur = "Vous devez &ecirc;tre administrateur pour acc&eacute;der &agrave; cette page.";
13  }
14
15  # ------------------------------------------------------------------------------
16  #                                                                        actions
17  #
18
19  function a_news_categories($env)
20  { if(($env->out["news_categories"] = $env->data->news_categories($env->start)) !== false)
21    {
22    }
23    else $env->erreur = "Impossible de lire les cat&eacute;gories";
24  }
25
26  function a_add_news_categorie($env)
27  { if($_POST)
28    { $icone = null;
29      if($_FILES["icone"])
30      { switch($_FILES["icone"]["error"])
31        { case UPLOAD_ERR_NO_FILE : break;
32          case UPLOAD_ERR_OK :
33            $icone = $env->path("uploads")."categories/".$_FILES["icone"]["name"];
34            if
35            ( @move_uploaded_file
36              ( $_FILES["icone"]["tmp_name"],
37                $icone                 
38              ) !== false
39            ) break;
40          default : $env->erreur = "Impossible d'uploader l'icone.";
41        }
42      }
43      if(!$env->erreur)
44      { if
45        ( $env->data->add_news_categorie
46          ( $_POST["titre"],
47            $icone,
48            $_POST["description"]
49          )
50        )
51        { _redirect
52          ( $env,
53            $env->url(array("e" => "set_news_categories")),
54            "La cat&eacute;gorie a &eacute;t&eacute; ajout&eacute;e"
55          );
56        }
57        else $env->erreur = "Impossible d'ajouter la cat&eacute;gorie.";
58      }
59    }
60  }
61
62  function a_set_news_categorie($env)
63  { if(($env->out["news_categorie"] = $env->data->news_categorie($_GET[$env->param("categorie")])) !== false)
64    { if($_POST)
65      { $icone = null;
66        if(!$_POST["del_icone"] && $_FILES["icone"])
67        { switch($_FILES["icone"]["error"])
68          { case UPLOAD_ERR_NO_FILE : break;
69            case UPLOAD_ERR_OK :
70              $icone = $env->path("uploads")."categories/".$_FILES["icone"]["name"];
71              if
72              ( move_uploaded_file
73                ( $_FILES["icone"]["tmp_name"],
74                  $icone                 
75                ) !== false
76                &&
77                $env->data->del_news_categorie_icone($env->out["news_categorie"]["icone"])
78              ) break;
79            default : $env->erreur = "Impossible d'uploader l'icone.";
80          }
81        }
82        if(!$env->erreur)
83        { if($_POST["del_icone"] && !$env->data->del_news_categorie_icone($env->out["news_categorie"]["icone"])) return false;
84          if
85          ( $env->data->set_news_categorie
86            ( $_GET[$env->param("categorie")],
87              $_POST["titre"],
88              $_POST["del_icone"] ? null : (isset($icone) ? $icone : $env->out["news_categorie"]["icone"]),
89              $_POST["description"]
90            )
91          )
92          { _redirect
93            ( $env,
94              $env->url(array("e" => "set_news_categories")),
95              "La cat&eacute;gorie a &eacute;t&eacute; modifi&eacute;e"
96            );
97          }
98          else $env->erreur = "Impossible de modifier la cat&eacute;gorie.";
99        }
100      }
101    }
102    else $env->erreur = "Impossible de lire la cat&eacute;gorie.";
103  }
104
105  function a_del_news_categorie($env)
106  { if($env->data->del_news_categorie($_GET[$env->param("categorie")], $env->out["news_root_categorie"]) !== false)
107    { _redirect
108      ( $env,
109        $env->url(array("e" => "set_news_categories")),
110        "La cat&eacute;gorie a &eacute;t&eacute; supprim&eacute;e"
111      );
112    }
113    else $env->erreur = "Impossible de supprimer la cat&eacute;gorie.";
114  }
115
116?>
Note: See TracBrowser for help on using the repository browser.