3 class mw_sources_morceau extends mw_controller
5 var $content_sources_mod;
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;
15 return "impossible de valider le module";
21 if($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);
27 if(isset($_GET[$env->param("groupe")]) && $_GET[$env->param("groupe")])
28 { if(isset($groupes["list"][$_GET[$env->param("groupe")]]))
29 { $groupe = $groupes["list"][$_GET[$env->param("groupe")]];
30 $env->set_out("groupe", $groupe);
35 { if(isset($_GET[$env->param("album")]) && $_GET[$env->param("album")])
36 { if(($album = $data->source($_GET[$env->param("album")], true)) !== false)
37 { $env->set_out("album", $album);
39 { $groupe = $data->get_admin_groupe($album["groupes"]);
40 if(!$groupe) $groupe = false;
46 { $env->set_out("groupe", $groupe);
48 { $select = array("status" => $this->content_sources_mod->album_status_id);
49 if(isset($groupe)) $select["id_groupe"] = $groupe["id"];
50 if(($albums = $data->sources($select)) !== false)
51 { $env->set_out("albums", $albums);
53 $select["status"] = $this->content_sources_mod->morceau_status_id;
54 $select["order_by"] = "ordre";
55 if(isset($groupe)) $select["id_groupe"] = $groupe["id"];
56 if(isset($_GET[$env->param("album")])) $select["id_composition"] = $_GET[$env->param("album")];
57 $select["start"] = isset($_GET[$env->param("start")]) && $_GET[$env->param("start")] ? $_GET[$env->param("start")] : 0;
58 if(($morceaux = $data->sources($select, true)) !== false) $env->set_out("morceaux", $morceaux);
59 else $env->erreur("Impossible de lire la liste des morceaux");
61 else $env->erreur("impossible de lire la liste des albums");
63 else $env->erreur("Impossible de lire les informations de l'album");
65 else $env->erreur("Impossible de lire les informations du groupe");
67 else $env->erreur("Impossible de lire la liste des groupes");
69 else $env->erreur("Impossible de lire la liste des licences");
75 if($this->content_sources_mod->licences !== false)
76 { $env->set_out("licences", $this->content_sources_mod->licences);
77 if(isset($_GET[$env->param("morceau")]) && $_GET[$env->param("morceau")])
78 { if($morceau = $data->source($_GET[$env->param("morceau")], true))
79 { $env->set_out("morceau", $morceau);
80 if($groupe = $data->get_admin_groupe($morceau["groupes"]))
81 { $env->set_out("groupe", $groupe);
82 $select = array("status" => $this->content_sources_mod->album_status_id);
83 $select["id_groupe"] = $groupe["id"];
84 if(($albums = $data->sources($select)) !== false)
85 { $env->set_out("albums", $albums);
86 if(($ariane = $data->source_ariane($morceau["id"])) !== false)
87 { $ariane = array_reverse($ariane);
89 foreach($ariane as $id_ariane => $source_ariane)
90 { if(!isset($album)) $album = $source_ariane;
92 if($album) $env->set_out("album", $album);
94 else $env->erreur("Impossible de lire le fil d'ariane");
96 else $env->erreur("impossible de lire la liste des albums");
98 else $env->erreur("Impossible de lire les informations du groupe");
100 else $env->erreur("Impossible de lire les informations du morceau");
102 else $env->erreur("identifiant de morceau manquant");
104 else $env->erreur("Impossible de lire la liste des licences");