1 | <?php |
---|
2 | |
---|
3 | function e_set_news($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"; |
---|
7 | $function = "a_".$env->a; |
---|
8 | if(function_exists($function)) |
---|
9 | { $catgories_function = "all_news_categories"; |
---|
10 | if($env->a === "del_news") $catgories_function = "news_categories"; |
---|
11 | $r = false; |
---|
12 | eval("\$r = \$env->data->".$catgories_function."();"); |
---|
13 | if(($env->out["categories"] = $r) !== false) |
---|
14 | { $function($env); |
---|
15 | } |
---|
16 | else $env->erreur = "Impossible de lire la liste des categories de news"; |
---|
17 | } |
---|
18 | } |
---|
19 | else $env->erreur = "Impossible de trouver la categorie racine des news."; |
---|
20 | } |
---|
21 | else $env->erreur = "Vous devez être administrateur pour accéder à cette page."; |
---|
22 | } |
---|
23 | |
---|
24 | # ------------------------------------------------------------------------------ |
---|
25 | # actions |
---|
26 | # |
---|
27 | |
---|
28 | function a_news($env) |
---|
29 | { $path = array("root", "news"); |
---|
30 | $depth = 1; |
---|
31 | if(isset($_GET[$env->param("categorie")])) |
---|
32 | { if(strlen($_GET[$env->param("categorie")]) > 0) $path[] = (int)$_GET[$env->param("categorie")]; |
---|
33 | $depth = 0; |
---|
34 | } |
---|
35 | if(($env->out["news"] = $env->data->news($path, $env->start, $depth)) !== false) |
---|
36 | { |
---|
37 | } |
---|
38 | else $env->erreur = "Impossible de lire les news"; |
---|
39 | } |
---|
40 | |
---|
41 | function a_add_news($env) |
---|
42 | { if($_POST) |
---|
43 | { if($_POST["preview"]) |
---|
44 | { $env->out["preview"] = array |
---|
45 | ( "categorie" => $_POST["categorie"], |
---|
46 | "categorie_titre" => $env->out["categories"]["list"][$_POST["categorie"]]["titre"], |
---|
47 | "categorie_icone" => $env->out["categories"]["list"][$_POST["categorie"]]["icone"], |
---|
48 | "titre" => $_POST["titre"], |
---|
49 | "auteur" => $env->pun_user["username"], |
---|
50 | "date_publication" => $_POST["date_publication"], |
---|
51 | "contenu" => $_POST["news"], |
---|
52 | "public" => $_POST["public"] ? 1 : 0 |
---|
53 | ); |
---|
54 | } |
---|
55 | else |
---|
56 | { if |
---|
57 | ( $env->data->add_news |
---|
58 | ( $_POST["categorie"], |
---|
59 | $_POST["titre"], |
---|
60 | $_POST["news"], |
---|
61 | $env->pun_user["id"], |
---|
62 | $_POST["date_publication"], |
---|
63 | $_POST["public"] ? 1 : 0 |
---|
64 | ) |
---|
65 | ) |
---|
66 | { _redirect |
---|
67 | ( $env, |
---|
68 | $env->url(array("e" => "set_news")), |
---|
69 | "La news a été ajoutée" |
---|
70 | ); |
---|
71 | } |
---|
72 | else $env->erreur = "Impossible d'ajouter la news."; |
---|
73 | } |
---|
74 | } |
---|
75 | } |
---|
76 | |
---|
77 | function a_set_one_news($env) |
---|
78 | { if(($env->out["news"] = $env->data->contenu($_GET[$env->param("news")])) !== false) |
---|
79 | { if($_POST) |
---|
80 | { if($_POST["preview"]) |
---|
81 | { $env->out["preview"] = array |
---|
82 | ( "categorie" => $_POST["categorie"], |
---|
83 | "categorie_titre" => $env->out["categories"]["list"][$_POST["categorie"]]["titre"], |
---|
84 | "categorie_icone" => $env->out["categories"]["list"][$_POST["categorie"]]["icone"], |
---|
85 | "titre" => $_POST["titre"], |
---|
86 | "auteur" => $env->out["news"]["auteur"], |
---|
87 | "date_publication" => $_POST["date_publication"], |
---|
88 | "contenu" => $_POST["news"], |
---|
89 | "public" => $_POST["public"] ? 1 : 0 |
---|
90 | ); |
---|
91 | } |
---|
92 | else |
---|
93 | { if |
---|
94 | ( $env->data->set_news |
---|
95 | ( $_GET[$env->param("news")], |
---|
96 | $_POST["categorie"], |
---|
97 | $_POST["titre"], |
---|
98 | $_POST["news"], |
---|
99 | $env->pun_user["id"], |
---|
100 | $_POST["date_publication"], |
---|
101 | $_POST["public"] ? 1 : 0 |
---|
102 | ) |
---|
103 | ) |
---|
104 | { _redirect |
---|
105 | ( $env, |
---|
106 | $env->url(array("e" => "set_news")), |
---|
107 | "La news a été modifiée" |
---|
108 | ); |
---|
109 | } |
---|
110 | else $env->erreur = "Impossible de modifier la news."; |
---|
111 | } |
---|
112 | } |
---|
113 | } |
---|
114 | else $env->erreur = "Impossible de lire la news."; |
---|
115 | } |
---|
116 | |
---|
117 | function a_del_news($env) |
---|
118 | { if($env->data->del_news($_GET[$env->param("news")]) !== false) |
---|
119 | { _redirect |
---|
120 | ( $env, |
---|
121 | $env->url(array("e" => "set_news")), |
---|
122 | "La news a été supprimée" |
---|
123 | ); |
---|
124 | } |
---|
125 | else $env->erreur = "Impossible de supprimer la news."; |
---|
126 | } |
---|
127 | |
---|
128 | ?> |
---|