source: trunk/web/app/mods/e_set_artiste_albums.php @ 10

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

mise a jour du trunk

File size: 8.1 KB
Line 
1<?php
2
3  function e_set_artiste_albums($env)
4  { $env->out["edit_ok"] = false;
5    if(($env->out["artiste"] = $env->data->artiste($_GET[$env->param("artiste")])) !== false)
6    { if
7      (    $env->pun_user["is_super_admin"]
8        || $env->pun_user["id"] === $env->out["artiste"]["pun_user"]
9        || $env->data->is_artiste_admin($_GET[$env->param("artiste")], $env->pun_user["id"])
10      )
11      { $env->out["edit_ok"] = true;
12        $env->a = $_GET[$env->param("action")] ? $_GET[$env->param("action")] : "albums";
13        $function = "a_".$env->a;
14        if(function_exists($function)) $function($env);
15      }
16      else $env->erreur = "Vous n'&ecirc;tes pas identifi&eacute; comme administrateur de cet artiste.";
17    }
18    else $env->erreur = "Impossible de lire les infos de l'artiste";
19  }
20
21  # ------------------------------------------------------------------------------
22  #                                                                        actions
23  #
24
25  function a_albums($env)
26  { if(($env->out["albums"] = $env->data->artiste_albums($_GET[$env->param("artiste")])) !== false)
27    {
28    }
29    else $env->erreur = "Impossible de lire les albums de l'artiste";
30  }
31
32  function a_set_albums($env)
33  { $ordre = array();
34    $actif = array();
35    foreach($_POST as $key => $value)
36    { if(strpos($key, "ordre_") === 0 && strlen($value) > 0)
37      { $ordre[substr($key, 6)] = $value;
38      }
39      if(strpos($key, "actif_") === 0 && strlen($value) > 0)
40      { $actif[substr($key, 6)] = $value;
41      }
42    }
43    if($env->data->set_artiste_albums($_GET[$env->param("artiste")], $ordre, $actif) !== false)
44    { _redirect
45      ( $env,
46        $env->url(array("e" => "set_artiste_albums", "artiste" => $_GET[$env->param("artiste")])),
47        "Les albums ont &eacute;t&eacute; mis &agrave; jour"
48      );
49    }
50    else $env->erreur = "Impossible de mettre &agrave; jour les albums";
51  }
52
53  function a_add_album($env)
54  { if($_POST)
55    { $image = false;
56      if($_FILES["image"] && $_FILES["image"]["error"] != UPLOAD_ERR_NO_FILE)
57      { switch($_FILES["image"]["error"])
58        { case UPLOAD_ERR_OK : break;
59          default : $env->erreur = "Impossible d'uploader l'image.";
60        }
61        if(!$env->erreur)
62        { $v_name = explode(".", $_FILES["image"]["name"]);
63          $ext = $v_name[count($v_name) - 1];
64          if
65          ( strcasecmp($ext, "png") == 0 ||
66            strcasecmp($ext, "gif") == 0 ||
67            strcasecmp($ext, "jpg") == 0 ||
68            strcasecmp($ext, "jpeg") == 0
69          )
70          { $dest = $env->path("uploads")."artistes/".$env->out["artiste"]["id"];
71            if(file_exists($dest))
72            { if(!is_dir($dest)) $env->erreur = "le dossier d'upload est un fichier. Impossible d'y uploader l'image";
73            }
74            else
75            { @mkdir($dest);
76              clearstatcache();
77              if(!file_exists($dest) && !is_dir($dest)) $env->erreur = "Impossible de creer le dossier d'upload";
78            }
79            if(!$env->erreur)
80            { if
81              ( @move_uploaded_file
82                ( $_FILES["image"]["tmp_name"],
83                  $dest."/".$_FILES["image"]["name"]
84                ) !== false
85              ) $image = $dest."/".$_FILES["image"]["name"];
86              else $env->erreur = "Impossible de copier l'image upload&eacute;e";
87            }
88          }
89          else $env->message = "Le fichier image doit &ecirc;tre au format png, gif ou jpg";
90        }
91      }
92      if(!$env->message && !$env->erreur)
93      { if
94        ( $env->data->add_artiste_album
95          ( $env->out["artiste"]["id"],
96            $_POST["titre"],
97            $image !== false ? $image : "",
98            $_POST["description"],
99            $_POST["url"],
100            $_POST["format"],
101            $_POST["taille"],
102            $_POST["annee_date_creation"]."-".$_POST["mois_date_creation"]."-".$_POST["jour_date_creation"]
103          )
104        )
105        { _redirect
106          ( $env,
107            $env->url(array("e" => "set_artiste_albums", "artiste" => $env->out["artiste"]["id"])),
108            "L'album a &eacute;t&eacute; ajout&eacute;"
109          );
110        }
111        else $env->erreur = "Impossible d'ajouter l'album";
112      }
113    }
114    else
115    { if(($env->out["formats"] = $env->data->formats()) !== false)
116      {
117      }
118      else $env->erreur = "Impossible de lire la liste des formats";
119    }
120  }
121
122  function a_set_album($env)
123  { if(($env->out["album"] = $env->data->artiste_album($_GET[$env->param("album")])) !== false)
124    { if($_POST)
125      { $image = false;
126        if($_POST["del_image"] && $env->out["album"]["image"] && !is_dir($env->out["album"]["image"]))
127        { @unlink($env->out["album"]["image"]);
128          clearstatcache();
129          if(file_exists($env->out["album"]["image"])) $env->erreur = "Impossible d'effacer l'image";
130          else $image = null;
131        }
132        if(!$env->erreur && $_FILES["image"] && $_FILES["image"]["error"] != UPLOAD_ERR_NO_FILE)
133        { switch($_FILES["image"]["error"])
134          { case UPLOAD_ERR_OK : break;
135            default : $env->erreur = "Impossible d'uploader l'image.";
136          }
137          if(!$env->erreur)
138          { $v_name = explode(".", $_FILES["image"]["name"]);
139            $ext = $v_name[count($v_name) - 1];
140            if
141            ( strcasecmp($ext, "png") == 0 ||
142              strcasecmp($ext, "gif") == 0 ||
143              strcasecmp($ext, "jpg") == 0 ||
144              strcasecmp($ext, "jpeg") == 0
145            )
146            { $dest = $env->path("uploads")."artistes/".$env->out["artiste"]["id"];
147              if(file_exists($dest))
148              { if(!is_dir($dest)) $env->erreur = "le dossier d'upload est un fichier. Impossible d'y uploader l'image";
149              }
150              else
151              { @mkdir($dest);
152                clearstatcache();
153                if(!file_exists($dest) && !is_dir($dest)) $env->erreur = "Impossible de creer le dossier d'upload";
154              }
155              if(!$env->erreur)
156              { if($env->out["album"]["image"] && file_exists($env->out["album"]["image"]))
157                { @unlink($env->out["album"]["image"]);
158                  clearstatcache();
159                  if(file_exists($env->out["artiste"]["image"])) $env->erreur = "Impossible d'effacer l'ancienne image";
160                }
161                if(!$env->erreur)
162                { if
163                  ( @move_uploaded_file
164                    ( $_FILES["image"]["tmp_name"],
165                      $dest."/".$_FILES["image"]["name"]
166                    ) !== false
167                  ) $image = $dest."/".$_FILES["image"]["name"];
168                  else $env->erreur = "Impossible de copier l'image uploadee";
169                }
170              }
171            }
172            else $env->message = "Le fichier image doit &ecirc;tre au format png, gif ou jpg";
173          }
174        }
175        if(!$env->message && !$env->erreur)
176        { if
177          ( $env->data->set_artiste_album
178            ( $_GET[$env->param("album")],
179              $_POST["titre"],
180              $image !== false ? $image : $env->out["album"]["image"],
181              $_POST["description"],
182              $_POST["url"],
183              $_POST["format"],
184              $_POST["taille"],
185              $_POST["annee_date_creation"]."-".$_POST["mois_date_creation"]."-".$_POST["jour_date_creation"]
186            )
187          )
188          { _redirect
189            ( $env,
190              $env->url(array("e" => "set_artiste_albums", "artiste" => $env->out["artiste"]["id"])),
191              "L'album a &eacute;t&eacute; modifi&eacute;"
192            );
193          }
194          else $env->erreur = "Impossible d'enregitrer les modifications";
195        }
196      }
197      else
198      { if(($env->out["formats"] = $env->data->formats()) !== false)
199        {
200        }
201        else $env->erreur = "Impossible de lire la liste des formats";
202      }
203    }
204  }
205
206  function a_del_album($env)
207  { if($env->data->del_artiste_album($_GET[$env->param("album")]))
208    { _redirect
209      ( $env,
210        $env->url(array("e" => "set_artiste_albums", "artiste" => $env->out["artiste"]["id"])),
211        "L'album a &eacute;t&eacute; supprim&eacute;"
212      );
213    }
214    else $env->erreur = "Impossible de supprimer l'album";
215  }
216
217?>
Note: See TracBrowser for help on using the repository browser.