template, titre des references et derivations
[mw_sourceml] / app / controllers / sources / album.php
1 <?php
2
3   class mw_sources_album extends mw_controller
4   {
5     var $content_sources_mod;
6
7     function validate(){
8       $env = $this->env();
9       if($this->content_sources_mod = $env->get_controller("content/sources"))
10       { $this->content_sources_mod->validation_result = true;
11         $this->content_sources_mod->validate_status($env);
12         $this->content_sources_mod->validate_licences($env);
13         return $this->content_sources_mod->validation_result;
14       }
15       return "impossible de valider le module";
16     }
17
18     function index(){
19       $env = $this->env();
20       $data = $env->data();
21       if(isset($this->content_sources_mod->licences) && $this->content_sources_mod->licences !== false)
22       { $env->set_out("licences", $this->content_sources_mod->licences);
23         if(($groupes = $data->groupes()) !== false)
24         { $env->set_out("groupes", $groupes);
25           $select = array();
26           $select["status"] = $this->content_sources_mod->album_status_id;
27           $select["order_by"] = "ordre";
28           if(isset($_GET[$env->param("groupe")]) && $_GET[$env->param("groupe")]) $select["id_groupe"] = $_GET[$env->param("groupe")];
29           $select["start"] = isset($_GET[$env->param("start")]) && $_GET[$env->param("start")] ? $_GET[$env->param("start")] : 0;
30           if(($albums = $data->sources($select)) !== false)
31           { $env->set_out("albums", $albums);
32             if(isset($_GET[$env->param("groupe")]) && $_GET[$env->param("groupe")])
33             { if(($groupe = $data->groupe($_GET[$env->param("groupe")])) !== false)
34               { $env->set_out("groupe", $groupe);
35               }
36               else $env->erreur("Impossible de lire les informations du groupe");
37             }
38           }
39           else $env->erreur("Impossible de lire la liste des albums");
40         }
41         else $env->erreur("Impossible de lire la liste des groupes");
42       }
43     }
44
45     function view(){
46       $env = $this->env();
47       $data = $env->data();
48       if(isset($this->content_sources_mod->licences) && $this->content_sources_mod->licences !== false)
49       { $env->set_out("licences", $this->content_sources_mod->licences);
50         if(isset($_GET[$env->param("album")]) && $_GET[$env->param("album")])
51         { if($album = $data->source($_GET[$env->param("album")], true))
52           { $env->set_out("album", $album);
53             if($groupe = $data->get_admin_groupe($album["groupes"])){
54 //              $env->set_out("groupe", $groupe);
55               $env->set_out("groupes", $album["groupes"]);
56               $select = array("status" => $this->content_sources_mod->album_status_id);
57               $select["id_groupe"] = $groupe["id"];
58               if(($albums = $data->sources($select)) !== false)
59               { $env->set_out("albums", $albums);
60                 $select = array("status" => $this->content_sources_mod->morceau_status_id);
61                 $select["id_composition"] = $album["id"];
62                 $select["start"] = isset($_GET[$env->param("start")]) && $_GET[$env->param("start")] ? $_GET[$env->param("start")] : 0;
63                 if(($morceaux = $data->sources($select)) !== false)
64                 { $env->set_out("morceaux", $morceaux);
65                 }
66                 else $env->erreur("impossible de lire la liste des morceaux");
67               }
68               else $env->erreur("impossible de lire la liste des albums");
69             }
70             else $env->erreur("Impossible de lire les informations du groupe");
71           }
72           else $env->erreur("Impossible de lire les informations de l'album");
73         }
74         else $env->erreur("parametre d'album manquant");
75       }
76     }
77
78   }
79
80 ?>