if(isset($_GET[$env->param("album")]) && $_GET[$env->param("album")])
{ if($album = $data->source($_GET[$env->param("album")], true))
{ $env->set_out("album", $album);
- if($groupe = $data->get_admin_groupe($album["groupes"]))
- { $env->set_out("groupe", $groupe);
+ if($groupe = $data->get_admin_groupe($album["groupes"])){
+// $env->set_out("groupe", $groupe);
+ $env->set_out("groupes", $album["groupes"]);
$select = array("status" => $this->content_sources_mod->album_status_id);
$select["id_groupe"] = $groupe["id"];
if(($albums = $data->sources($select)) !== false)
{ if(isset($_GET[$env->param("album")]) && $_GET[$env->param("album")])
{ if(($album = $data->source($_GET[$env->param("album")], true)) !== false)
{ $env->set_out("album", $album);
- if(!isset($groupe))
- { $groupe = $data->get_admin_groupe($album["groupes"]);
+/*
+ if(!isset($groupe)){
+ $groupe = $data->get_admin_groupe($album["groupes"]);
if(!$groupe) $groupe = false;
}
+*/
}
}
}
if(isset($_GET[$env->param("morceau")]) && $_GET[$env->param("morceau")])
{ if($morceau = $data->source($_GET[$env->param("morceau")], true))
{ $env->set_out("morceau", $morceau);
- if($groupe = $data->get_admin_groupe($morceau["groupes"]))
- { $env->set_out("groupe", $groupe);
+ if($groupe = $data->get_admin_groupe($morceau["groupes"])){
+// $env->set_out("groupe", $groupe);
+ $env->set_out("groupes", $morceau["groupes"]);
$select = array("status" => $this->content_sources_mod->album_status_id);
$select["id_groupe"] = $groupe["id"];
if(($albums = $data->sources($select)) !== false)
{ if(isset($_GET[$env->param("morceau")]) && $_GET[$env->param("morceau")])
{ if(($morceau = $data->source($_GET[$env->param("morceau")], true)) !== false)
{ $env->set_out("morceau", $morceau);
+/*
if(!isset($groupe))
{ $groupe = $data->get_admin_groupe($morceau["groupes"]);
if(!$groupe) $groupe = false;
}
+*/
}
}
}
if(isset($_GET[$env->param("piste")]) && $_GET[$env->param("piste")])
{ if($piste = $data->source($_GET[$env->param("piste")], true))
{ $env->set_out("piste", $piste);
- if($groupe = $data->get_admin_groupe($piste["groupes"]))
- { $env->set_out("groupe", $groupe);
+ if($groupe = $data->get_admin_groupe($piste["groupes"])){
+// $env->set_out("groupe", $groupe);
+ $env->set_out("groupes", $piste["groupes"]);
$select = array("status" => $this->content_sources_mod->album_status_id);
$select["id_groupe"] = $groupe["id"];
if(($albums = $data->sources($select)) !== false)
$select["order_by"] = "ordre";
$select["start"] = isset($_GET[$env->param("start")]) && $_GET[$env->param("start")] ? $_GET[$env->param("start")] : 0;
if(isset($_GET[$env->param("groupe")]) && $_GET[$env->param("groupe")]) $select["id_groupe"] = $_GET[$env->param("groupe")];
- if(($albums = $data->sources($select)) !== false)
- { foreach($albums["list"] as $id_album => $album)
+ if(($albums = $data->sources($select)) !== false){
+ foreach($albums["list"] as $id_album => $album)
{ $albums["list"][$id_album]["permissions"] = $data->source_permissions($albums["list"][$id_album], $this->user["id"]);
}
if($_POST)
function edit(){
$env = $this->env();
$data = $env->data();
- $this->album["premissions"] = $data->source_permissions($this->album, $this->user["id"]);
- if($this->album["premissions"]["editeur"])
+ $this->album["permissions"] = $data->source_permissions($this->album, $this->user["id"]);
+ if($this->album["permissions"]["editeur"])
{ if($data->check_user_uploads_dir())
{ $web_path = $env->path("web");
$upload_dir = $env->path("content")."uploads/".$this->user["id"];
"ordre" => $this->album["ordre"],
"date_creation" => $this->album["date_creation"],
"description" => $this->album["description"],
- "image" => $this->album["image"]
+ "image" => isset($this->album["image"]) ? $this->album["image"] : null
);
$env->set_out("groupe", $data->get_admin_groupe($this->album["groupes"]));
+
if($_POST)
{ if(($groupe = $data->groupe($_POST["id_groupe"])) !== false)
{ $env->set_out("groupe", $groupe);
);
$source_infos["date_creation"] = $_POST["annee_date_creation"]."-".$_POST["mois_date_creation"]."-".$_POST["jour_date_creation"];
$source_infos["description"] = $_POST["description"];
+ $this->album["documents"] = array();
foreach($_POST as $post_key => $post_value)
{ if(substr($post_key, 0, 13) == "document_nom_")
{ if($id_document = substr($post_key, 13))
function del(){
$env = $this->env();
$data = $env->data();
- $this->album["premissions"] = $data->source_permissions($this->album, $this->user["id"]);
- if($this->album["premissions"]["admin"])
+ $this->album["permissions"] = $data->source_permissions($this->album, $this->user["id"]);
+ if($this->album["permissions"]["admin"])
{ if($data->del_source($this->album["id"]))
{ $env->redirect
( $env->url("users/albums"),
<?php
- class mw_users_morceaux extends mw_controller
- {
- var $groupes;
- var $albums;
- var $morceau;
+ class mw_users_morceaux extends mw_controller{
+
var $user;
var $status;
function validate(){
$env = $this->env();
$data = $env->data();
- if(($this->status = $data->source_status()) !== false)
- { foreach($this->status as $id_source_status => $source_status)
- { if($source_status["nom"] == "album") $this->album_status_id = $id_source_status;
- if($source_status["nom"] == "morceau") $this->morceau_status_id = $id_source_status;
- if(isset($this->album_status_id) && isset($this->morceau_status_id)) break;
- }
- if(isset($this->album_status_id) && isset($this->morceau_status_id))
- { if($this->user = $env->user())
- { if(($this->groupes = $data->groupes($this->user["id"])) !== false){
- $env->set_out("groupes", $this->groupes);
- $this->albums = array();
- if($this->groupes["total"] > 0)
- { $select = array();
- $select["status"] = $this->album_status_id;
- $select["id_user"] = $this->user["id"];
- foreach($this->groupes["list"] as $id_groupe => $groupe)
- { $select["id_groupe"] = $id_groupe;
- if(($albums = $data->sources($select)) !== false)
- { $this->albums[$id_groupe] = $albums["list"];
- }
- else $this->albums = false;
- }
- }
- if($this->albums !== false)
- { $env->set_out("albums", $this->albums);
- if($env->etat("action") == "edit" || $env->etat("action") == "del" || $env->etat("action") == "maj_xml")
- { if($this->morceau = $data->source($_GET[$env->param("id")], true))
- {
- }
- else return "Impossible de lire les informations du morceau";
- }
- if($env->etat("action") == "add" || $env->etat("action") == "edit")
- { if(($this->licences = $data->licences()) !== false)
- { $env->set_out("licences", $this->licences);
- }
- else return "Impossible de lire la liste des licences";
- }
- }
- else return "Impossible de lire la liste des albums";
- }
- else return "Impossible de lire la liste des groupes";
- }
- else return "Vous devez être identifier pour accéder à cette page";
- }
- else
- { if(!isset($this->album_status_id)) return "Type de source inconnu: album";
- return "Type de source inconnu: morceau";
- }
+ if(($this->status = $data->source_status()) === false){
+ return "Impossible de lire la liste des status de source";
+ }
+ foreach($this->status as $id_source_status => $source_status){
+ if($source_status["nom"] == "album") $this->album_status_id = $id_source_status;
+ if($source_status["nom"] == "morceau") $this->morceau_status_id = $id_source_status;
+ if(isset($this->album_status_id) && isset($this->morceau_status_id)) break;
+ }
+ if(!isset($this->album_status_id) || !isset($this->morceau_status_id)){
+ if(!isset($this->album_status_id)) return "Type de source inconnu: album";
+ return "Type de source inconnu: morceau";
+ }
+ if(!($this->user = $env->user())){
+ return "Vous devez être identifié pour accéder à cette page";
}
- else return "Impossible de lire la liste des status de source";
return true;
}
function index(){
$env = $this->env();
$data = $env->data();
- $select = array();
- $select["status"] = $this->morceau_status_id;
- $select["id_user"] = $this->user["id"];
- $select["order_by"] = "ordre";
- $select["start"] = isset($_GET[$env->param("start")]) && $_GET[$env->param("start")] ? $_GET[$env->param("start")] : 0;
- if(isset($_GET[$env->param("groupe")]) && $_GET[$env->param("groupe")]) $select["id_groupe"] = $_GET[$env->param("groupe")];
- if(isset($_GET[$env->param("album")])) $select["id_composition"] = $_GET[$env->param("album")];
- if(($morceaux = $data->sources($select)) !== false)
- { foreach($morceaux["list"] as $id_morceau => $morceau)
- { $morceaux["list"][$id_morceau]["permissions"] = $data->source_permissions($morceau, $this->user["id"]);
+ if(($groupes = $data->groupes($this->user["id"])) === false){
+ $env->erreur("Impossible de lire la liste des groupes");
+ return;
+ }
+ $albums_groupes = $groupes["list"];
+ $id_groupe = false;
+ if(isset($_GET[$env->param("groupe")])){
+ $id_groupe = $_GET[$env->param("groupe")];
+ if(!isset($groupes["list"][$id_groupe])){
+ $env->erreur("Impossible de lire les informations du groupe");
+ return;
}
- if($_POST)
- { $OK = true;
- foreach($morceaux["list"] as $id_morceau => $morceau)
- { if(isset($_POST["ordre_".$id_morceau]))
- { if($data->set_source_info($morceau["id"], "ordre", $_POST["ordre_".$id_morceau]) === false)
- { $OK = false;
- break;
- }
+ }
+ if($id_groupe){
+ $albums_groupes = array($id_groupe => $groupes["list"][$id_groupe]);
+ }
+ if(
+ (
+ $albums = $data->groupes_sources(
+ array(
+ "groupes" => $albums_groupes,
+ "id_class" => $this->album_status_id,
+ // on veut les albums pour lesquels au moins un groupe (et pas tous) ...
+ "satisfy_all_groupes_access" => false,
+ // ... a le droit de contribution
+ "id_source_access" => $data->id_groupe_status_contributeur()
+ )
+ )
+ ) === false
+ ) return "impossible de lire la liste des albums";
+ if($id_album = isset($_GET[$env->param("album")]) ? $_GET[$env->param("album")] : false){
+ if(!($album = $data->source($id_album, true))){
+ $env->erreur("Impossible de lire les informations de l'album");
+ return;
+ }
+ }
+ $select = array(
+ "status" => $this->morceau_status_id,
+ "id_user" => $this->user["id"],
+ "order_by" => "ordre",
+ "start" => isset($_GET[$env->param("start")]) && $_GET[$env->param("start")] ? $_GET[$env->param("start")] : 0
+ );
+ if($id_groupe) $select["id_groupe"] = $id_groupe;
+ if($id_album !== false) $select["id_composition"] = $id_album;
+ if(($morceaux = $data->sources($select)) === false){
+ $env->erreur("impossible de lire la liste des morceaux");
+ return;
+ }
+ foreach($morceaux["list"] as $id_morceau => $morceau){
+ $morceaux["list"][$id_morceau]["permissions"] = $data->source_permissions($morceau, $this->user["id"]);
+ }
+ if($_POST){
+ foreach($morceaux["list"] as $id_morceau => $morceau){
+ if(isset($_POST["ordre_".$id_morceau])){
+ if($data->set_source_info($morceau["id"], "ordre", $_POST["ordre_".$id_morceau]) === false){
+ $env->erreur("Impossible d'enregistrer l'ordre des morceaux");
+ return;
}
}
- if($OK)
- { $get_params = array();
- if(isset($_GET[$env->param("groupe")]) && $_GET[$env->param("groupe")]) $get_params["groupe"] = $_GET[$env->param("groupe")];
- if(isset($_GET[$env->param("album")]) && $_GET[$env->param("album")]) $get_params["album"] = $_GET[$env->param("album")];
- $env->redirect
- ( $env->url("users/morceaux", $get_params),
- "l'ordre des morceaux a été enregistré"
- );
- }
- else $env->erreur("Impossible d'enregistrer l'ordre des morceaux");
}
- $env->set_out("groupes", $this->groupes);
- $env->set_out("albums", $this->albums);
- $env->set_out("morceaux", $morceaux);
+ $get_params = array();
+ if($id_groupe) $get_params["groupe"] = $id_groupe;
+ if($id_album) $get_params["album"] = $id_album;
+ $env->redirect(
+ $env->url("users/morceaux", $get_params),
+ "l'ordre des morceaux a été enregistré"
+ );
}
- else $env->erreur("Impossible de lire la liste des morceaux");
+ $env->set_out("groupes", $groupes);
+ $env->set_out("albums", $albums);
+ $env->set_out("morceaux", $morceaux);
}
function add(){
$env = $this->env();
$data = $env->data();
- if($data->check_user_uploads_dir())
- { $web_path = $env->path("web");
- $_SESSION["upload_dir"] = $web_path.($web_path ? "" : "/").$env->path("content")."uploads/".$this->user["id"];
- $this->morceau = $data->empty_source();
- $users_sources_mod = $env->get_controller("users/sources");
- $source_infos = array
- ( "date_inscription" => date("Y")."-".date("m")."-".date("d"),
- "ordre" => 0
+ $morceau = $data->empty_source();
+ $source_infos = array(
+ "date_inscription" => date("Y-m-d"),
+ "ordre" => 0
+ );
+ $groupe = false;
+ $album = false;
+ if(($groupes = $data->groupes($this->user["id"])) === false){
+ $env->erreur("Impossible de lire la liste des groupes");
+ return;
+ }
+ $albums = array();
+ if($groupes["total"] > 0){
+ $select = array(
+ "status" => $this->album_status_id,
+ "id_user" => $this->user["id"]
);
- if($_POST)
- { if(($groupe = $data->groupe($_POST["id_groupe"])) !== false)
- { $groupe["id_groupe_status"] = $data->id_groupe_status_admin();
- $this->morceau["groupes"] = array($groupe["id"] => $groupe);
- if($_POST["album"])
- { if($album = $data->source($_POST["album"], true))
- { $album["permissions"] = $data->source_permissions($album, $this->user["id"]);
- if(!$album["permissions"]["contributeur"])
- { $env->erreur("vous n'avez pas la permission d'ajouter un morceau dans cet album");
- return;
- }
- }
- else
- { $env->erreur("impossible de lire les informations de l'album");
- return;
- }
- $this->morceau["album"] = $_POST["album"];
- }
- if($_POST["is_derivation"])
- { foreach($_POST as $key => $value)
- { if(substr($key, 0, 14) == "derivation_id_")
- { $id_source_derivation = substr($key, 14);
- $xml_url = trim($_POST["derivation_".$id_source_derivation]);
- $this->morceau["derivations"][$id_source_derivation] = $users_sources_mod->get_source_from_xml
- ( $env,
- $xml_url,
- ( $_POST["use_edit_derivation_content_".$id_source_derivation] ?
- $_POST["edit_derivation_content_".$id_source_derivation]
- : ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
- ),
- $_POST["use_edit_derivation_content_".$id_source_derivation] ? true : false
- );
- }
- }
- }
- if($_POST["is_reference"])
- { $xml_url = trim($_POST["reference"]);
- $this->morceau["reference"] = $users_sources_mod->get_source_from_xml
- ( $env,
+ foreach($groupes["list"] as $id_groupe => $groupe){
+ $select["id_groupe"] = $id_groupe;
+ if(($groupes_albums = $data->sources($select)) === false){
+ $env->erreur("impossible de lire la liste des albums");
+ return;
+ }
+ $albums[$id_groupe] = $groupes_albums["list"];
+ }
+ }
+ if(($licences = $data->licences()) === false){
+ return "Impossible de lire la liste des licences";
+ }
+ if(!$data->check_user_uploads_dir()){
+ $env->erreur("Impossible de creer le repertoire utilisateur");
+ return;
+ }
+ $web_path = $env->path("web");
+ $_SESSION["upload_dir"] = $web_path.($web_path ? "" : "/").$env->path("content")."uploads/".$this->user["id"];
+ $users_sources_mod = $env->get_controller("users/sources");
+ if($_POST){
+ if(!($groupe = $data->groupe($_POST["id_groupe"]))){
+ $env->erreur("Impossible de lire les informations du groupe");
+ return;
+ }
+ $groupe["id_groupe_status"] = $data->id_groupe_status_admin();
+ $morceau["groupes"] = array($groupe["id"] => $groupe);
+ if($_POST["album"]){
+ if(!($album = $data->source($_POST["album"], true))){
+ $env->erreur("Impossible de lire les informations de l'album");
+ return;
+ }
+ $album["permissions"] = $data->source_permissions($album, $this->user["id"]);
+ if(!$album["permissions"]["contributeur"]){
+ $env->erreur("vous n'avez pas la permission d'ajouter un morceau dans cet album");
+ return;
+ }
+ $morceau["album"] = $album["id"];
+ }
+ if(isset($_POST["is_derivation"])){
+ foreach($_POST as $key => $value){
+ if(substr($key, 0, 14) == "derivation_id_"){
+ $id_source_derivation = substr($key, 14);
+ $xml_url = trim($_POST["derivation_".$id_source_derivation]);
+ $morceau["derivations"][$id_source_derivation] = $users_sources_mod->get_source_from_xml(
+ $env,
$xml_url,
- ( $_POST["use_edit_reference_content"] ?
- $_POST["edit_reference_content"]
+ (
+ $_POST["use_edit_derivation_content_".$id_source_derivation] ?
+ $_POST["edit_derivation_content_".$id_source_derivation]
: ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
),
- $_POST["use_edit_reference_content"] ? true : false
+ $_POST["use_edit_derivation_content_".$id_source_derivation] ? true : false
);
}
- else
- { if($this->morceau["titre"] = trim($_POST["titre"]))
- { $this->morceau["licence"] = array
- ( "id" => $_POST["licence"]
+ }
+ }
+ if(isset($_POST["is_reference"])){
+ $xml_url = trim($_POST["reference"]);
+ $morceau["reference"] = $users_sources_mod->get_source_from_xml(
+ $env,
+ $xml_url,
+ (
+ $_POST["use_edit_reference_content"] ?
+ $_POST["edit_reference_content"]
+ : ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
+ ),
+ $_POST["use_edit_reference_content"] ? true : false
+ );
+ }
+ else{
+ if(!($morceau["titre"] = trim($_POST["titre"]))){
+ $env->message("merci de préciser un titre pour le morceau");
+ }
+ $morceau["licence"] = array(
+ "id" => $_POST["licence"]
+ );
+ $source_infos["date_creation"] = $_POST["annee_date_creation"]."-".$_POST["mois_date_creation"]."-".$_POST["jour_date_creation"];
+ $source_infos["description"] = $_POST["description"];
+ foreach($_POST as $post_key => $post_value){
+ if(substr($post_key, 0, 13) == "document_nom_"){
+ if($id_document = substr($post_key, 13)){
+ $morceau["documents"][$id_document] = array(
+ "nom" => $_POST["document_nom_".$id_document],
+ "url" => $_POST["document_url_".$id_document]
);
- $source_infos["date_creation"] = $_POST["annee_date_creation"]."-".$_POST["mois_date_creation"]."-".$_POST["jour_date_creation"];
- $source_infos["description"] = $_POST["description"];
- foreach($_POST as $post_key => $post_value)
- { if(substr($post_key, 0, 13) == "document_nom_")
- { if($id_document = substr($post_key, 13))
- { $this->morceau["documents"][$id_document] = array
- ( "nom" => $_POST["document_nom_".$id_document],
- "url" => $_POST["document_url_".$id_document]
- );
- }
- }
- }
}
- else $env->message("merci de préciser un titre pour le morceau");
}
- if(!$env->out("messages") && !$env->out("erreur"))
- { if
- ( ( $id_source = $data->add_source
- ( $this->morceau["groupes"],
- $this->morceau["titre"],
- $this->morceau_status_id,
- $this->morceau["licence"]["id"],
- $this->morceau["documents"],
- $this->morceau["reference"],
- $this->morceau["derivations"],
- $source_infos
- )
- ) !== false
+ }
+ }
+ if(!$env->messages()){
+ if(
+ (
+ $id_source = $data->add_source(
+ $morceau["groupes"],
+ $morceau["titre"],
+ $this->morceau_status_id,
+ $morceau["licence"]["id"],
+ $morceau["documents"],
+ $morceau["reference"],
+ $morceau["derivations"],
+ $source_infos
)
- { if($_POST["album"])
- { if($data->set_source_composition($id_source, $_POST["album"]))
- { $env->redirect
- ( $env->url("users/morceaux"),
- "le morceau a été ajouté"
- );
- }
- else $env->erreur("Le morceau a été ajouté mais impossible de l'associer à cet album");
- }
- else $env->redirect
- ( $env->url("users/morceaux"),
- "le morceau a été ajouté"
- );
- }
- else $env->erreur("Impossible d'ajouter le morceau");
+ ) === false
+ ){
+ $env->erreur("Impossible d'ajouter le morceau");
+ return;
+ }
+ if($album){
+ if(!$data->set_source_composition($id_source, $album["id"])){
+ $env->erreur("Le morceau a été ajouté mais impossible de l'associer à l'album");
+ return;
}
}
- else $env->erreur("Impossible de lire les informations du groupe");
+ $env->redirect(
+ $env->url("users/morceaux"),
+ "le morceau a été ajouté"
+ );
}
- $env->set_out("morceau", $this->morceau);
}
- else $env->erreur("Impossible de creer le repertoire utilisateur");
+ $env->set_out("groupes", $groupes);
+ $env->set_out("albums", $albums);
+ $env->set_out("licences", $licences);
+ $env->set_out("morceau", $morceau);
+ $env->set_out("source_infos", $source_infos);
+ $env->set_out("groupe", $groupe);
+ $env->set_out("album", $album);
}
function edit(){
$env = $this->env();
$data = $env->data();
- $this->morceau["premissions"] = $data->source_permissions($this->morceau, $this->user["id"]);
- if(!$this->morceau["premissions"]["editeur"])
- { $env->erreur("vous n'avez la permission d'editer ce morceau");
+ if(($groupes = $data->groupes($this->user["id"])) === false){
+ $env->erreur("Impossible de lire la liste des groupes");
return;
}
- if($data->check_user_uploads_dir())
- { $web_path = $env->path("web");
- $_SESSION["upload_dir"] = $web_path.($web_path ? "" : "/").$env->path("content")."uploads/".$this->user["id"];
- if(($compositions = $data->source_compositions(array("id_source" => $this->morceau["id"]))) !== false)
- { if($compositions) foreach($compositions[$this->morceau["id"]] as $id_album) { $this->morceau["album"] = $id_album; break; }
- $env->set_out("groupe", $data->get_admin_groupe($this->morceau["groupes"]));
- if($_POST)
- { $source_infos = array
- ( "date_inscription" => $_POST["date_inscription"],
- "ordre" => isset($this->morceau["ordre"]) ? $this->morceau["ordre"] : 0
- );
- $this->morceau = $data->empty_source(array("id" => $this->morceau["id"]));
- $users_sources_mod = $env->get_controller("users/sources");
- if(!($groupe = $data->groupe($_POST["id_groupe"])))
- { $env->erreur("Impossible de lire les informations du groupe");
+ if(($licences = $data->licences()) === false){
+ $env->erreur("Impossible de lire la liste des licences");
+ return;
+ }
+ if(($sources_access = $data->sources_access()) === false){
+ $env->erreur("Impossible de lire les types d'access");
+ return;
+ }
+ if(!($morceau = $data->source($_GET[$env->param("id")], true))){
+ $env->erreur("Impossible de lire les informations du morceau");
+ return;
+ }
+ $morceau["permissions"] = $data->source_permissions($morceau, $this->user["id"]);
+ if(!$morceau["permissions"]["editeur"]){
+ $env->erreur("vous n'avez pas la permission d'editer ce morceau");
+ return;
+ }
+ if(
+ (
+ $albums = $data->groupes_sources(
+ array(
+ "groupes" => $morceau["groupes"],
+ "id_class" => $this->album_status_id,
+ // on veut les albums pour lesquels chaque groupe du morceau ...
+ "satisfy_all_groupes_access" => true,
+ // ... a le droit de contribution
+ "id_source_access" => $data->id_groupe_status_contributeur()
+ )
+ )
+ ) === false
+ ) return "impossible de lire la liste des albums";
+ if(!$data->check_user_uploads_dir()){
+ $env->erreur("Impossible de creer le repertoire utilisateur");
+ return;
+ }
+ $web_path = $env->path("web");
+ $_SESSION["upload_dir"] = $web_path.($web_path ? "" : "/").$env->path("content")."uploads/".$this->user["id"];
+ if(($compositions = $data->source_compositions(array("id_source" => $morceau["id"]))) === false){
+ $env->erreur("Impossible de lire la liste des compositions");
+ return;
+ }
+ if($compositions) foreach($compositions[$morceau["id"]] as $id_album) { $morceau["album"] = $id_album; break; }
+ if($_POST){
+ $source_infos = array(
+ "date_inscription" => $_POST["date_inscription"],
+ "ordre" => isset($morceau["ordre"]) ? $morceau["ordre"] : 0
+ );
+ $morceau = $data->empty_source(
+ array(
+ "id" => $morceau["id"],
+ "groupes" => $morceau["groupes"]
+ )
+ );
+ $users_sources_mod = $env->get_controller("users/sources");
+ if($_POST["album"]){
+ if($album = $data->source($_POST["album"], true)){
+ $album["permissions"] = $data->source_permissions($album, $this->user["id"]);
+ if(!$album["permissions"]["contributeur"]){
+ $env->erreur("vous n'avez pas la permission d'ajouter un morceau dans cet album");
return;
}
- $env->set_out("groupe", $groupe);
- $groupe["id_groupe_status"] = $data->id_groupe_status_admin();
- $this->morceau["groupes"] = array($groupe["id"] => $groupe);
- $this->morceau["derivations"] = array();
- if($_POST["album"])
- { if($album = $data->source($_POST["album"], true))
- { $album["permissions"] = $data->source_permissions($album, $this->user["id"]);
- if(!$album["permissions"]["contributeur"])
- { $env->erreur("vous n'avez pas la permission d'ajouter un morceau dans cet album");
- return;
- }
- }
- else
- { $env->erreur("Impossible de lire les informations de l'album");
- return;
- }
- $this->morceau["album"] = $_POST["album"];
- }
- if($_POST["is_derivation"])
- { foreach($_POST as $key => $value)
- { if(substr($key, 0, 14) == "derivation_id_")
- { $id_source_derivation = substr($key, 14);
- $xml_url = trim($_POST["derivation_".$id_source_derivation]);
- $this->morceau["derivations"][$id_source_derivation] = $users_sources_mod->get_source_from_xml
- ( $env,
- $xml_url,
- ( $_POST["use_edit_derivation_content_".$id_source_derivation] ?
- $_POST["edit_derivation_content_".$id_source_derivation]
- : ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
- ),
- $_POST["use_edit_derivation_content_".$id_source_derivation] ? true : false
- );
- }
- }
- }
- if($_POST["is_reference"])
- { $xml_url = trim($_POST["reference"]);
- $this->morceau["reference"] = $users_sources_mod->get_source_from_xml
- ( $env,
+ }
+ else{
+ $env->erreur("Impossible de lire les informations de l'album");
+ return;
+ }
+ $morceau["album"] = $album["id"];
+ }
+ if(isset($_POST["is_derivation"])){
+ foreach($_POST as $key => $value){
+ if(substr($key, 0, 14) == "derivation_id_"){
+ $id_source_derivation = substr($key, 14);
+ $xml_url = trim($_POST["derivation_".$id_source_derivation]);
+ $morceau["derivations"][$id_source_derivation] = $users_sources_mod->get_source_from_xml(
+ $env,
$xml_url,
- ( $_POST["use_edit_reference_content"] ?
- $_POST["edit_reference_content"]
+ (
+ $_POST["use_edit_derivation_content_".$id_source_derivation] ?
+ $_POST["edit_derivation_content_".$id_source_derivation]
: ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
),
- $_POST["use_edit_reference_content"] ? true : false
+ $_POST["use_edit_derivation_content_".$id_source_derivation] ? true : false
);
}
- else
- { if($this->morceau["titre"] = trim($_POST["titre"]))
- { $this->morceau["licence"] = array
- ( "id" => $_POST["licence"]
+ }
+ }
+ if(isset($_POST["is_reference"])){
+ $xml_url = trim($_POST["reference"]);
+ $morceau["reference"] = $users_sources_mod->get_source_from_xml(
+ $env,
+ $xml_url,
+ (
+ $_POST["use_edit_reference_content"] ?
+ $_POST["edit_reference_content"]
+ : ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
+ ),
+ $_POST["use_edit_reference_content"] ? true : false
+ );
+ }
+ else{
+ if(!($morceau["titre"] = trim($_POST["titre"]))){
+ $env->message("merci de préciser un titre pour le morceau");
+ }
+ $morceau["licence"] = array(
+ "id" => $_POST["licence"]
+ );
+ $source_infos["date_creation"] = $_POST["annee_date_creation"]."-".$_POST["mois_date_creation"]."-".$_POST["jour_date_creation"];
+ $source_infos["description"] = $_POST["description"];
+ foreach($_POST as $post_key => $post_value){
+ if(substr($post_key, 0, 13) == "document_nom_"){
+ if($id_document = substr($post_key, 13)){
+ $morceau["documents"][$id_document] = array(
+ "nom" => $_POST["document_nom_".$id_document],
+ "url" => $_POST["document_url_".$id_document]
);
- $source_infos["date_creation"] = $_POST["annee_date_creation"]."-".$_POST["mois_date_creation"]."-".$_POST["jour_date_creation"];
- $source_infos["description"] = $_POST["description"];
- foreach($_POST as $post_key => $post_value)
- { if(substr($post_key, 0, 13) == "document_nom_")
- { if($id_document = substr($post_key, 13))
- { $this->morceau["documents"][$id_document] = array
- ( "nom" => $_POST["document_nom_".$id_document],
- "url" => $_POST["document_url_".$id_document]
- );
- }
- }
- }
}
- else $env->message("merci de préciser un titre pour le morceau");
}
- if(!$env->out("messages") && !$env->out("erreur"))
- { if
- ( ( $data->set_source
- ( $this->morceau["id"],
- $this->morceau["groupes"],
- $this->morceau["titre"],
- $this->morceau_status_id,
- $this->morceau["licence"]["id"],
- $this->morceau["documents"],
- $this->morceau["reference"],
- $this->morceau["derivations"],
- $source_infos
- )
- ) !== false
+ }
+ }
+ if(!$env->messages()){
+ if(
+ (
+ $data->set_source(
+ $morceau["id"],
+ $morceau["groupes"],
+ $morceau["titre"],
+ $this->morceau_status_id,
+ $morceau["licence"]["id"],
+ $morceau["documents"],
+ $morceau["reference"],
+ $morceau["derivations"],
+ $source_infos
)
- { if($data->del_source_compositions(array("id_source" => $this->morceau["id"])))
- { if($_POST["album"])
- { if($data->set_source_composition($this->morceau["id"], $_POST["album"]))
- { $env->redirect
- ( $env->url("users/morceaux/edit", array("id" => $this->morceau["id"])),
- "le morceau a été modifié"
- );
- }
- else $env->erreur("Le morceau a été modifié mais impossible de l'associer à cet album");
- }
- else $env->redirect
- ( $env->url("users/morceaux/edit", array("id" => $this->morceau["id"])),
- "le morceau a été modifié"
- );
- }
- else $env->erreur("Le morceau a été modifié mais impossible de l'associer à cet album");
- }
- else $env->erreur("Impossible de modifier le morceau");
+ ) === false
+ ){
+ $env->erreur("Impossible de modifier le morceau");
+ return;
+ }
+ if(!$data->del_source_compositions(array("id_source" => $morceau["id"]))){
+ $env->erreur("Le morceau a été modifié mais impossible de l'associer à cet album");
+ return;
+ }
+ if($_POST["album"]){
+ if(!$data->set_source_composition($morceau["id"], $_POST["album"])){
+ $env->erreur("Le morceau a été modifié mais impossible de l'associer à cet album");
+ return;
}
}
+ $env->redirect(
+ $env->url("users/morceaux/edit", array("id" => $morceau["id"])),
+ "le morceau a été modifié"
+ );
}
- else $env->erreur("Impossible de lire la liste des compositions");
- $env->set_out("morceau", $this->morceau);
}
- else $env->erreur("Impossible de creer le repertoire utilisateur");
+ $env->set_out("groupes", $groupes);
+ $env->set_out("sources_access", $sources_access);
+ $env->set_out("licences", $licences);
+ $env->set_out("albums", $albums);
+ $env->set_out("morceau", $morceau);
}
function maj_xml(){
$data = $env->data();
- $this->morceau["premissions"] = $data->source_permissions($this->morceau, $this->user["id"]);
- if(!$this->morceau["premissions"]["editeur"])
- { $env->erreur("vous n'avez la permission d'editer ce morceau");
+ if(!($morceau = $data->source($_GET[$env->param("id")], true))){
+ $env->erreur("Impossible de lire les informations du morceau");
+ return;
+ }
+ $morceau["permissions"] = $data->source_permissions($morceau, $this->user["id"]);
+ if(!$morceau["permissions"]["editeur"]){
+ $env->erreur("vous n'avez pas la permission d'editer ce morceau");
return;
}
if
( isset($_GET[$env->param("id")])
&& isset($_GET[$env->param("xml")])
&& ($_GET[$env->param("xml")] == "derviation" ? isset($_GET[$env->param("derivation")]) : true)
- )
- { $xml_url = "";
- if($_GET[$env->param("xml")] == "derivation")
- { if(isset($this->morceau["derivations"][$_GET[$env->param("derivation")]]["xml"]["url"]))
- $xml_url = $this->morceau["derivations"][$_GET[$env->param("derivation")]]["xml"]["url"];
- }
- elseif($_GET[$env->param("xml")] == "reference")
- { if(isset($this->morceau["reference"]["xml"]["url"]))
- $xml_url = $this->morceau["reference"]["xml"]["url"];
+ ){
+ $env->erreur("parametre de fichier xml manquant");
+ return;
+ }
+ $xml_url = "";
+ if($_GET[$env->param("xml")] == "derivation"){
+ if(isset($morceau["derivations"][$_GET[$env->param("derivation")]]["xml"]["url"]))
+ $xml_url = $morceau["derivations"][$_GET[$env->param("derivation")]]["xml"]["url"];
+ }
+ elseif($_GET[$env->param("xml")] == "reference"){
+ if(isset($morceau["reference"]["xml"]["url"]))
+ $xml_url = $morceau["reference"]["xml"]["url"];
+ }
+ if(!$xml_url){
+ $env->message("Pas d'URL pour ce fichier XML. Impossible de recharger les informations");
+ return;
+ }
+ if(!$env->messages()){
+ if(($res = $data->maj_source_cache($xml_url)) === false){
+ $env->erreur("Impossible de mettre à jour le contenu du fichier XML dans le cache");
+ return;
}
- $erreur = "";
- if($xml_url)
- { if(($res = $data->maj_source_cache($xml_url)) !== false)
- { if($res === true)
- { if($this->morceau = $data->source($this->morceau["id"]))
- { $env->redirect
- ( $env->url("users/morceaux/edit", array("id" => $this->morceau["id"])),
- "Les informations du fichier XML ont été mises à jour",
- 2
- );
- return;
- }
- else $erreur =
- "le contenu du fichier XML a été mis à jour"
- .", mais impossible de lire les informations du morceau";
- }
- else
- { switch($res)
- { case -1: $env->message("Impossible de lire le contenu du fichier XML"); break;
- case -2: $env->message("Le fichier XML indiqué ne contient pas un fichier de source valide"); break;
- default: $erreur = "Erreur inconnue (?)"; break;
- }
- }
+ if($res === true){
+ if($morceau = $data->source($morceau["id"])){
+ $env->redirect(
+ $env->url("users/morceaux/edit", array("id" => $morceau["id"])),
+ "Les informations du fichier XML ont été mises à jour",
+ 2
+ );
}
- else $erreur = "Impossible de mettre à jour le contenu du fichier XML dans le cache";
+ else{
+ $env->erreur(
+ "le contenu du fichier XML a été mis à jour"
+ .", mais impossible de lire les informations du morceau"
+ );
+ }
+ return;
+ }
+ switch($res){
+ case -1: $env->message("Impossible de lire le contenu du fichier XML"); break;
+ case -2: $env->message("Le fichier XML indiqué ne contient pas un fichier de source valide"); break;
+ default: $env->erreur("Erreur inconnue (?)"); return;
}
- else $env->message("Pas d'URL pour ce fichier XML. Impossible de recharger les informations");
- if($erreur) $env->erreur($erreur);
- else $env->run("users/morceaux/edit", array("id" => $this->morceau["id"]));
}
- else $env->erreur("parametre de fichier xml manquant");
+ $env->run("users/morceaux/edit", array("get" => array("id" => $morceau["id"])));
}
function del(){
$env = $this->env();
$data = $env->data();
- $this->morceau["premissions"] = $data->source_permissions($this->morceau, $this->user["id"]);
- if($this->morceau["premissions"]["admin"])
- { if($data->del_source($this->morceau["id"]))
- { $env->redirect
- ( $env->url("users/morceaux"),
- "le morceau a été supprimé"
- );
- }
- else $env->erreur("Impossible de supprimer le morceau");
+ if(!($morceau = $data->source($_GET[$env->param("id")], true))){
+ $env->erreur("Impossible de lire les informations du morceau");
+ return;
+ }
+ $morceau["permissions"] = $data->source_permissions($morceau, $this->user["id"]);
+ if(!$morceau["permissions"]["admin"]){
+ $env->erreur("vous n'avez pas la permission d'effacer ce morceau");
+ return;
+ }
+ if(!$data->del_source($morceau["id"])){
+ $env->erreur("Impossible de supprimer le morceau");
+ return;
}
- else $env->erreur("vous n'avez la permission d'effacer ce morceau");
+ $env->redirect(
+ $env->url("users/morceaux"),
+ "le morceau a été supprimé"
+ );
}
}
<?php
- class mw_users_pistes extends mw_controller
- {
- var $groupes;
- var $albums;
- var $morceaux;
- var $piste;
+ class mw_users_pistes extends mw_controller{
+
var $user;
var $status;
function validate(){
$env = $this->env();
$data = $env->data();
- if(($this->status = $data->source_status()) !== false)
- { foreach($this->status as $id_source_status => $source_status)
- { if($source_status["nom"] == "album") $this->album_status_id = $id_source_status;
- if($source_status["nom"] == "morceau") $this->morceau_status_id = $id_source_status;
- if($source_status["nom"] == "piste") $this->piste_status_id = $id_source_status;
- if(isset($this->album_status_id) && isset($this->morceau_status_id) && isset($this->piste_status_id)) break;
- }
- if(isset($this->album_status_id) && isset($this->morceau_status_id) && isset($this->piste_status_id))
- { if($this->user = $env->user())
- { if(($this->groupes = $data->groupes($this->user["id"])) !== false)
- { $env->set_out("groupes", $this->groupes);
- $this->albums = array();
- $this->morceaux = array();
- if($this->groupes["total"] > 0)
- { foreach($this->groupes["list"] as $id_groupe => $groupe)
- { $this->albums[$id_groupe] = array();
- $select = array
- ( "status" => $this->album_status_id,
- "id_user" => $this->user["id"],
- "id_groupe" => $id_groupe
- );
- if(($albums = $data->sources($select)) !== false)
- { $this->albums[$id_groupe] = $albums["list"];
- }
- else
- { $this->albums = false;
- break;
- }
-
- $this->morceaux[$id_groupe] = array();
- $select = array
- ( "status" => $this->morceau_status_id,
- "id_user" => $this->user["id"],
- "id_groupe" => $id_groupe
- );
- if(($morceaux = $data->sources($select)) !== false)
- { foreach($morceaux["list"] as $id_morceau => $morceau)
- { if(($compositions = $data->source_compositions(array("id_source" => $id_morceau))) !== false)
- { if($compositions) foreach($compositions[$id_morceau] as $_id_album) { $morceaux["list"][$id_morceau]["album"] = $_id_album; break; }
- if(!isset($morceaux["list"][$id_morceau]["album"])) $morceaux["list"][$id_morceau]["album"] = 0;
- }
- else
- { $this->morceaux = false;
- break;
- }
- }
- if($this->morceaux !== false)
- { foreach($morceaux["list"] as $id_morceau => $morceau)
- { if(!isset($this->morceaux[$id_groupe][$morceau["album"]])) $this->morceaux[$id_groupe][$morceau["album"]] = array();
- $this->morceaux[$id_groupe][$morceau["album"]][$id_morceau] = $morceau;
- }
- }
- }
- else
- { $this->morceaux = false;
- break;
- }
- if($this->morceaux === false) break;
- }
- }
- if($this->albums !== false && $this->morceaux !== false)
- { $env->set_out("albums", $this->albums);
- $env->set_out("morceaux", $this->morceaux);
- if($env->etat("action") == "edit" || $env->etat("action") == "del" || $env->etat("action") == "maj_xml")
- { if(($this->piste = $data->source($_GET[$env->param("id")], true)) !== false && $this->piste)
- {
- }
- else return "Impossible de lire les informations de la source";
- }
- if($env->etat("action") == "add" || $env->etat("action") == "edit")
- { if(($this->licences = $data->licences()) !== false)
- { $env->set_out("licences", $this->licences);
- }
- else return "Impossible de lire la liste des licences";
- }
- }
- else return "Impossible de lire la liste des albums";
- }
- else return "Impossible de lire la liste des groupes";
- }
- else return "Vous devez être identifier pour accéder à cette page";
- }
- else
- { if(!isset($this->album_status_id)) return "Type de source inconnu: album";
- return "Type de source inconnu: morceau";
- }
+ if(($this->status = $data->source_status()) === false){
+ return "Impossible de lire la liste des status de source";
+ }
+ foreach($this->status as $id_source_status => $source_status){
+ if($source_status["nom"] == "album") $this->album_status_id = $id_source_status;
+ if($source_status["nom"] == "morceau") $this->morceau_status_id = $id_source_status;
+ if($source_status["nom"] == "piste") $this->piste_status_id = $id_source_status;
+ if(isset($this->album_status_id) && isset($this->morceau_status_id) && isset($this->piste_status_id)) break;
+ }
+ if(
+ !isset($this->album_status_id)
+ || !isset($this->morceau_status_id)
+ || !isset($this->piste_status_id)
+ ){
+ return "liste des status de source incomplète";
+ }
+ if(!($this->user = $env->user())){
+ return "Vous devez être identifié pour accéder à cette page";
}
- else return "Impossible de lire la liste des status de source";
return true;
}
function index(){
$env = $this->env();
$data = $env->data();
- $select = array();
- $select["status"] = $this->piste_status_id;
- $select["id_user"] = $this->user["id"];
- $select["order_by"] = "ordre";
- if(isset($_GET[$env->param("groupe")]) && $_GET[$env->param("groupe")]) $select["id_groupe"] = $_GET[$env->param("groupe")];
- if(isset($_GET[$env->param("morceau")]) && $_GET[$env->param("morceau")]) $select["id_composition"] = $_GET[$env->param("morceau")];
- $select["start"] = isset($_GET[$env->param("start")]) && $_GET[$env->param("start")] ? $_GET[$env->param("start")] : 0;
- if(($pistes = $data->sources($select)) !== false)
- { foreach($pistes["list"] as $id_piste => $piste)
- { $pistes["list"][$id_piste]["permissions"] = $data->source_permissions($piste, $this->user["id"]);
+ if(($groupes = $data->groupes($this->user["id"])) === false){
+ $env->erreur("Impossible de lire la liste des groupes");
+ return;
+ }
+ $morceaux_groupes = $groupes["list"];
+ $id_groupe = false;
+ if(isset($_GET[$env->param("groupe")])){
+ $id_groupe = $_GET[$env->param("groupe")];
+ if(!isset($groupes["list"][$id_groupe])){
+ $env->erreur("Impossible de lire les informations du groupe");
+ return;
}
- if($_POST)
- { $OK = true;
- foreach($pistes["list"] as $id_piste => $piste)
- { if(isset($_POST["ordre_".$id_piste]))
- { if($data->set_source_info($piste["id"], "ordre", $_POST["ordre_".$id_piste]) === false)
- { $OK = false;
- break;
- }
+ }
+ if($id_groupe){
+ $morceaux_groupes = array($id_groupe => $groupes["list"][$id_groupe]);
+ }
+ if(
+ (
+ $morceaux = $data->groupes_sources(
+ array(
+ "groupes" => $morceaux_groupes,
+ "id_class" => $this->morceau_status_id,
+ // on veut les morceaux pour lesquels au moins un groupe (et pas tous) ...
+ "satisfy_all_groupes_access" => false,
+ // ... a le droit de contribution
+ "id_source_access" => $data->id_groupe_status_contributeur()
+ )
+ )
+ ) === false
+ ) return "impossible de lire la liste des morceaux";
+ if($id_morceau = isset($_GET[$env->param("morceau")]) ? $_GET[$env->param("morceau")] : false){
+ if(!($morceau = $data->source($id_morceau, true))){
+ $env->erreur("Impossible de lire les informations du morceau");
+ return;
+ }
+ }
+ $select = array(
+ "status" => $this->piste_status_id,
+ "id_user" => $this->user["id"],
+ "order_by" => "ordre",
+ "start" => isset($_GET[$env->param("start")]) && $_GET[$env->param("start")] ? $_GET[$env->param("start")] : 0
+ );
+ if($id_groupe) $select["id_groupe"] = $id_groupe;
+ if($id_morceau !== false) $select["id_composition"] = $id_morceau;
+ if(($pistes = $data->sources($select)) === false){
+ $env->erreur("impossible de lire la liste des pistes");
+ return;
+ }
+ foreach($pistes["list"] as $id_piste => $piste){
+ $pistes["list"][$id_piste]["permissions"] = $data->source_permissions($piste, $this->user["id"]);
+ }
+ if($_POST){
+ foreach($pistes["list"] as $id_piste => $piste){
+ if(isset($_POST["ordre_".$id_piste])){
+ if($data->set_source_info($piste["id"], "ordre", $_POST["ordre_".$id_piste]) === false){
+ $env->erreur("Impossible d'enregistrer l'ordre des pistes");
+ return;
}
}
- if($OK)
- { $get_params = array();
- if(isset($_GET[$env->param("groupe")]) && $_GET[$env->param("groupe")]) $get_params["groupe"] = $_GET[$env->param("groupe")];
- if(isset($_GET[$env->param("morceau")]) && $_GET[$env->param("morceau")]) $get_params["morceau"] = $_GET[$env->param("morceau")];
- $env->redirect
- ( $env->url("users/pistes", $get_params),
- "l'ordre des sources a été enregistré"
- );
- }
- else $env->erreur("Impossible d'enregistrer l'ordre des sources");
}
- $env->set_out("pistes", $pistes);
+ $get_params = array();
+ if($id_groupe) $get_params["groupe"] = $id_groupe;
+ if($id_morceau) $get_params["morceau"] = $id_morceau;
+ $env->redirect(
+ $env->url("users/pistes", $get_params),
+ "l'ordre des pistes a été enregistré"
+ );
}
- else $env->erreur("Impossible de lire la liste des sources");
+ $env->set_out("groupes", $groupes);
+ $env->set_out("morceaux", $morceaux);
+ $env->set_out("pistes", $pistes);
}
function add(){
$env = $this->env();
$data = $env->data();
- if($data->check_user_uploads_dir())
- { $web_path = $env->path("web");
- $_SESSION["upload_dir"] = $web_path.($web_path ? "" : "/").$env->path("content")."uploads/".$this->user["id"];
- $this->piste = $data->empty_source();
- $users_sources_mod = $env->get_controller("users/sources");
- $source_infos = array
- ( "date_inscription" => date("Y")."-".date("m")."-".date("d"),
- "ordre" => 0
+ $piste = $data->empty_source();
+ $source_infos = array(
+ "date_inscription" => date("Y-m-d"),
+ "ordre" => 0
+ );
+ $groupe = false;
+ $morceau = false;
+ if(($groupes = $data->groupes($this->user["id"])) === false){
+ $env->erreur("Impossible de lire la liste des groupes");
+ return;
+ }
+ $morceaux = array();
+ if($groupes["total"] > 0){
+ $select = array(
+ "status" => $this->morceau_status_id,
+ "id_user" => $this->user["id"]
);
- if($_POST)
- { if(($groupe = $data->groupe($_POST["id_groupe"])) !== false)
- { $groupe["id_groupe_status"] = $data->id_groupe_status_admin();
- $this->piste["groupes"] = array($groupe["id"] => $groupe);
- $env->set_out("groupe", $groupe);
+ foreach($groupes["list"] as $id_groupe => $groupe){
+ $select["id_groupe"] = $id_groupe;
+ if(($groupes_morceaux = $data->sources($select)) === false){
+ $env->erreur("impossible de lire la liste des morceaux");
+ return;
+ }
+ $morceaux[$id_groupe] = $groupes_morceaux["list"];
+ }
+ }
+ if(($licences = $data->licences()) === false){
+ return "Impossible de lire la liste des licences";
+ }
+ if(!$data->check_user_uploads_dir()){
+ $env->erreur("Impossible de creer le repertoire utilisateur");
+ return;
+ }
+ $web_path = $env->path("web");
+ $_SESSION["upload_dir"] = $web_path.($web_path ? "" : "/").$env->path("content")."uploads/".$this->user["id"];
+ $users_sources_mod = $env->get_controller("users/sources");
+ if($_POST){
+ if(!($groupe = $data->groupe($_POST["id_groupe"]))){
+ $env->erreur("Impossible de lire les informations du groupe");
+ return;
+ }
+ $groupe["id_groupe_status"] = $data->id_groupe_status_admin();
+ $piste["groupes"] = array($groupe["id"] => $groupe);
+ if($_POST["morceau"]){
+ if(!($morceau = $data->source($_POST["morceau"], true))){
+ $env->erreur("Impossible de lire les informations du morceau");
+ return;
}
- else
- { $env->erreur("Impossible de lire les informations du groupe");
+ $morceau["permissions"] = $data->source_permissions($morceau, $this->user["id"]);
+ if(!$morceau["permissions"]["contributeur"]){
+ $env->erreur("vous n'avez pas la permission d'ajouter une piste dans ce morceau");
return;
}
- if($_POST["morceau"])
- { if($morceau = $data->source($_POST["morceau"], true))
- { $morceau["permissions"] = $data->source_permissions($morceau, $this->user["id"]);
- if(!$morceau["permissions"]["contributeur"])
- { $env->erreur("vous n'avez pas la permission d'ajouter une source dans ce morceau");
- return;
- }
- }
- else
- { $env->erreur("impossible de lire les informations du morceau");
- return;
+ $piste["morceau"] = $morceau["id"];
+ }
+ if(isset($_POST["is_derivation"])){
+ foreach($_POST as $key => $value){
+ if(substr($key, 0, 14) == "derivation_id_"){
+ $id_source_derivation = substr($key, 14);
+ $xml_url = trim($_POST["derivation_".$id_source_derivation]);
+ $piste["derivations"][$id_source_derivation] = $users_sources_mod->get_source_from_xml(
+ $env,
+ $xml_url,
+ (
+ $_POST["use_edit_derivation_content_".$id_source_derivation] ?
+ $_POST["edit_derivation_content_".$id_source_derivation]
+ : ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
+ ),
+ $_POST["use_edit_derivation_content_".$id_source_derivation] ? true : false
+ );
}
- $this->piste["morceau"] = $_POST["morceau"];
}
- if(isset($_POST["is_derivation"]))
- { foreach($_POST as $key => $value)
- { if(substr($key, 0, 14) == "derivation_id_")
- { $id_source_derivation = substr($key, 14);
- $xml_url = trim($_POST["derivation_".$id_source_derivation]);
- $this->piste["derivations"][$id_source_derivation] = $users_sources_mod->get_source_from_xml
- ( $env,
- $xml_url,
- ( $_POST["use_edit_derivation_content_".$id_source_derivation] ?
- $_POST["edit_derivation_content_".$id_source_derivation]
- : ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
- ),
- $_POST["use_edit_derivation_content_".$id_source_derivation] ? true : false
+ }
+ if(isset($_POST["is_reference"])){
+ $xml_url = trim($_POST["reference"]);
+ $piste["reference"] = $users_sources_mod->get_source_from_xml(
+ $env,
+ $xml_url,
+ (
+ $_POST["use_edit_reference_content"] ?
+ $_POST["edit_reference_content"]
+ : ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
+ ),
+ $_POST["use_edit_reference_content"] ? true : false
+ );
+ }
+ else{
+ if(!($piste["titre"] = trim($_POST["titre"]))){
+ $env->message("merci de préciser un titre pour la piste");
+ }
+ $piste["licence"] = array(
+ "id" => $_POST["licence"]
+ );
+ $source_infos["date_creation"] = $_POST["annee_date_creation"]."-".$_POST["mois_date_creation"]."-".$_POST["jour_date_creation"];
+ $source_infos["description"] = $_POST["description"];
+ foreach($_POST as $post_key => $post_value){
+ if(substr($post_key, 0, 13) == "document_nom_"){
+ if($id_document = substr($post_key, 13)){
+ $piste["documents"][$id_document] = array(
+ "nom" => $_POST["document_nom_".$id_document],
+ "url" => $_POST["document_url_".$id_document]
);
}
}
}
- if(isset($_POST["is_reference"]))
- { $xml_url = trim($_POST["reference"]);
- $this->piste["reference"] = $users_sources_mod->get_source_from_xml
- ( $env,
- $xml_url,
- ( $_POST["use_edit_reference_content"] ?
- $_POST["edit_reference_content"]
- : ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
- ),
- $_POST["use_edit_reference_content"] ? true : false
- );
- }
- else
- { if($this->piste["titre"] = trim($_POST["titre"]))
- { $this->piste["licence"] = array
- ( "id" => $_POST["licence"]
- );
- $source_infos["date_creation"] = $_POST["annee_date_creation"]."-".$_POST["mois_date_creation"]."-".$_POST["jour_date_creation"];
- $source_infos["description"] = $_POST["description"];
- foreach($_POST as $post_key => $post_value)
- { if(substr($post_key, 0, 13) == "document_nom_")
- { if($id_document = substr($post_key, 13))
- { $this->piste["documents"][$id_document] = array
- ( "nom" => $_POST["document_nom_".$id_document],
- "url" => $_POST["document_url_".$id_document]
- );
- }
- }
- }
- }
- else $env->message("merci de préciser un titre pour la source");
+ }
+ if(!$env->messages()){
+ if(
+ (
+ $id_source = $data->add_source(
+ $piste["groupes"],
+ $piste["titre"],
+ $this->piste_status_id,
+ $piste["licence"]["id"],
+ $piste["documents"],
+ $piste["reference"],
+ $piste["derivations"],
+ $source_infos
+ )
+ ) === false
+ ){
+ $env->erreur("Impossible d'ajouter la piste");
+ return;
}
- if(!$env->out("messages") && !$env->out("erreur"))
- { if
- ( ( $id_source = $data->add_source
- ( $this->piste["groupes"],
- $this->piste["titre"],
- $this->piste_status_id,
- $this->piste["licence"]["id"],
- $this->piste["documents"],
- $this->piste["reference"],
- $this->piste["derivations"],
- $source_infos
- )
- ) !== false
- )
- { if($_POST["morceau"])
- { if($data->set_source_composition($id_source, $_POST["morceau"]))
- { $env->redirect
- ( $env->url("users/pistes"),
- "la source a été ajoutée"
- );
- }
- else $env->erreur("La source a été ajoutée mais impossible de l'associer à ce morceau");
- }
- else $env->redirect
- ( $env->url("users/pistes"),
- "la source a été ajoutée"
- );
+ if($morceau){
+ if(!$data->set_source_composition($id_source, $morceau["id"])){
+ $env->erreur("La piste a été ajoutée mais impossible de l'associer au morceau");
+ return;
}
- else $env->erreur("Impossible d'ajouter la source");
}
+ $env->redirect(
+ $env->url("users/pistes"),
+ "la piste a été ajoutée"
+ );
}
- $env->set_out("piste", $this->piste);
}
- else $env->erreur("Impossible de creer le repertoire utilisateur");
+ $env->set_out("groupes", $groupes);
+ $env->set_out("morceaux", $morceaux);
+ $env->set_out("licences", $licences);
+ $env->set_out("piste", $piste);
+ $env->set_out("source_infos", $source_infos);
+ $env->set_out("groupe", $groupe);
+ $env->set_out("morceau", $morceau);
}
function edit(){
$env = $this->env();
$data = $env->data();
- $this->piste["premissions"] = $data->source_permissions($this->piste, $this->user["id"]);
- if(!$this->piste["premissions"]["editeur"])
- { $env->erreur("vous n'avez la permission d'editer cette source");
+ if(($groupes = $data->groupes($this->user["id"])) === false){
+ $env->erreur("Impossible de lire la liste des groupes");
return;
}
- if($data->check_user_uploads_dir())
- { $web_path = $env->path("web");
- $_SESSION["upload_dir"] = $web_path.($web_path ? "" : "/").$env->path("content")."uploads/".$this->user["id"];
- if(($compositions = $data->source_compositions(array("id_source" => $this->piste["id"]))) !== false)
- { if($compositions) foreach($compositions[$this->piste["id"]] as $id_morceau) { $this->piste["morceau"] = $id_morceau; break; }
- $env->set_out("groupe", $data->get_admin_groupe($this->piste["groupes"]));
- if($_POST)
- { $source_infos = array
- ( "date_inscription" => $_POST["date_inscription"],
- "ordre" => isset($this->piste["ordre"]) ? $this->piste["ordre"] : 0
- );
- $this->piste = $data->empty_source(array("id" => $this->piste["id"]));
- $users_sources_mod = $env->get_controller("users/sources");
- if(!($groupe = $data->groupe($_POST["id_groupe"])))
- { $env->erreur("Impossible de lire les informations du groupe");
+ if(($licences = $data->licences()) === false){
+ $env->erreur("Impossible de lire la liste des licences");
+ return;
+ }
+ if(($sources_access = $data->sources_access()) === false){
+ $env->erreur("Impossible de lire les types d'access");
+ return;
+ }
+ if(!($piste = $data->source($_GET[$env->param("id")], true))){
+ $env->erreur("Impossible de lire les informations de la piste");
+ return;
+ }
+ $piste["permissions"] = $data->source_permissions($piste, $this->user["id"]);
+ if(!$piste["permissions"]["editeur"]){
+ $env->erreur("vous n'avez pas la permission d'editer cette piste");
+ return;
+ }
+ if(
+ (
+ $morceaux = $data->groupes_sources(
+ array(
+ "groupes" => $piste["groupes"],
+ "id_class" => $this->morceau_status_id,
+ // on veut les morceaux pour lesquels chaque groupe du morceau ...
+ "satisfy_all_groupes_access" => true,
+ // ... a le droit de contribution
+ "id_source_access" => $data->id_groupe_status_contributeur()
+ )
+ )
+ ) === false
+ ) return "impossible de lire la liste des morceaux";
+ if(!$data->check_user_uploads_dir()){
+ $env->erreur("Impossible de creer le repertoire utilisateur");
+ return;
+ }
+ $web_path = $env->path("web");
+ $_SESSION["upload_dir"] = $web_path.($web_path ? "" : "/").$env->path("content")."uploads/".$this->user["id"];
+ if(($compositions = $data->source_compositions(array("id_source" => $piste["id"]))) === false){
+ $env->erreur("Impossible de lire la liste des compositions");
+ return;
+ }
+ if($compositions) foreach($compositions[$piste["id"]] as $id_morceau) { $piste["morceau"] = $id_morceau; break; }
+ if($_POST){
+ $source_infos = array(
+ "date_inscription" => $_POST["date_inscription"],
+ "ordre" => isset($piste["ordre"]) ? $piste["ordre"] : 0
+ );
+ $piste = $data->empty_source(
+ array(
+ "id" => $piste["id"],
+ "groupes" => $piste["groupes"]
+ )
+ );
+ $users_sources_mod = $env->get_controller("users/sources");
+ if($_POST["morceau"]){
+ if($morceau = $data->source($_POST["morceau"], true)){
+ $morceau["permissions"] = $data->source_permissions($morceau, $this->user["id"]);
+ if(!$morceau["permissions"]["contributeur"]){
+ $env->erreur("vous n'avez pas la permission d'ajouter une piste dans ce morceau");
return;
}
- $env->set_out("groupe", $groupe);
- $groupe["id_groupe_status"] = $data->id_groupe_status_admin();
- $this->piste["groupes"] = array($groupe["id"] => $groupe);
- $this->piste["derivations"] = array();
- if($_POST["morceau"])
- { if($morceau = $data->source($_POST["morceau"], true))
- { $morceau["permissions"] = $data->source_permissions($morceau, $this->user["id"]);
- if(!$morceau["permissions"]["contributeur"])
- { $env->erreur("vous n'avez pas la permission d'ajouter une source dans ce morceau");
- return;
- }
- }
- else
- { $env->erreur("impossible de lire les informations du morceau");
- return;
- }
- $this->piste["morceau"] = $_POST["morceau"];
- }
- if(isset($_POST["is_derivation"]))
- { foreach($_POST as $key => $value)
- { if(substr($key, 0, 14) == "derivation_id_")
- { $id_source_derivation = substr($key, 14);
- $xml_url = trim($_POST["derivation_".$id_source_derivation]);
- $this->piste["derivations"][$id_source_derivation] = $users_sources_mod->get_source_from_xml
- ( $env,
- $xml_url,
- ( $_POST["use_edit_derivation_content_".$id_source_derivation] ?
- $_POST["edit_derivation_content_".$id_source_derivation]
- : ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
- ),
- $_POST["use_edit_derivation_content_".$id_source_derivation] ? true : false
- );
- }
- }
- }
- if(isset($_POST["is_reference"]))
- { $xml_url = trim($_POST["reference"]);
- $this->piste["reference"] = $users_sources_mod->get_source_from_xml
- ( $env,
+ }
+ else{
+ $env->erreur("Impossible de lire les informations du morceau");
+ return;
+ }
+ $piste["morceau"] = $morceau["id"];
+ }
+ if(isset($_POST["is_derivation"])){
+ foreach($_POST as $key => $value){
+ if(substr($key, 0, 14) == "derivation_id_"){
+ $id_source_derivation = substr($key, 14);
+ $xml_url = trim($_POST["derivation_".$id_source_derivation]);
+ $piste["derivations"][$id_source_derivation] = $users_sources_mod->get_source_from_xml(
+ $env,
$xml_url,
- ( $_POST["use_edit_reference_content"] ?
- $_POST["edit_reference_content"]
+ (
+ $_POST["use_edit_derivation_content_".$id_source_derivation] ?
+ $_POST["edit_derivation_content_".$id_source_derivation]
: ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
),
- $_POST["use_edit_reference_content"] ? true : false
+ $_POST["use_edit_derivation_content_".$id_source_derivation] ? true : false
);
}
- else
- { if($this->piste["titre"] = trim($_POST["titre"]))
- { $this->piste["licence"] = array
- ( "id" => $_POST["licence"]
+ }
+ }
+ if(isset($_POST["is_reference"])){
+ $xml_url = trim($_POST["reference"]);
+ $piste["reference"] = $users_sources_mod->get_source_from_xml(
+ $env,
+ $xml_url,
+ (
+ $_POST["use_edit_reference_content"] ?
+ $_POST["edit_reference_content"]
+ : ($xml_url ? $data->get_source_xml_from_url($xml_url) : "")
+ ),
+ $_POST["use_edit_reference_content"] ? true : false
+ );
+ }
+ else{
+ if(!($piste["titre"] = trim($_POST["titre"]))){
+ $env->message("merci de préciser un titre pour la piste");
+ }
+ $piste["licence"] = array(
+ "id" => $_POST["licence"]
+ );
+ $source_infos["date_creation"] = $_POST["annee_date_creation"]."-".$_POST["mois_date_creation"]."-".$_POST["jour_date_creation"];
+ $source_infos["description"] = $_POST["description"];
+ foreach($_POST as $post_key => $post_value){
+ if(substr($post_key, 0, 13) == "document_nom_"){
+ if($id_document = substr($post_key, 13)){
+ $piste["documents"][$id_document] = array(
+ "nom" => $_POST["document_nom_".$id_document],
+ "url" => $_POST["document_url_".$id_document]
);
- $source_infos["date_creation"] = $_POST["annee_date_creation"]."-".$_POST["mois_date_creation"]."-".$_POST["jour_date_creation"];
- $source_infos["description"] = $_POST["description"];
- foreach($_POST as $post_key => $post_value)
- { if(substr($post_key, 0, 13) == "document_nom_")
- { if($id_document = substr($post_key, 13))
- { $this->piste["documents"][$id_document] = array
- ( "nom" => $_POST["document_nom_".$id_document],
- "url" => $_POST["document_url_".$id_document]
- );
- }
- }
- }
}
- else $env->message("merci de préciser un titre pour la source");
}
- if(!$env->out("messages") && !$env->out("erreur"))
- { if
- ( ( $data->set_source
- ( $this->piste["id"],
- $this->piste["groupes"],
- $this->piste["titre"],
- $this->piste_status_id,
- $this->piste["licence"]["id"],
- $this->piste["documents"],
- $this->piste["reference"],
- $this->piste["derivations"],
- $source_infos
- )
- ) !== false
+ }
+ }
+ if(!$env->messages()){
+ if(
+ (
+ $data->set_source(
+ $piste["id"],
+ $piste["groupes"],
+ $piste["titre"],
+ $this->piste_status_id,
+ $piste["licence"]["id"],
+ $piste["documents"],
+ $piste["reference"],
+ $piste["derivations"],
+ $source_infos
)
- { if($data->del_source_compositions(array("id_source" => $this->piste["id"])))
- { if($_POST["morceau"])
- { if($data->set_source_composition($this->piste["id"], $_POST["morceau"]))
- { $env->redirect
- ( $env->url("users/pistes/edit", array("id" => $this->piste["id"])),
- "la source a été modifiée"
- );
- }
- else $env->erreur("La source a été modifiée mais impossible de l'associer à ce morceau");
- }
- else $env->redirect
- ( $env->url("users/pistes/edit", array("id" => $this->piste["id"])),
- "la source a été modifiée"
- );
- }
- else $env->erreur("La source a été modifiée mais impossible de l'associer à ce morceau");
- }
- else $env->erreur("Impossible de modifier la source");
+ ) === false
+ ){
+ $env->erreur("Impossible de modifier la piste");
+ return;
+ }
+ if(!$data->del_source_compositions(array("id_source" => $piste["id"]))){
+ $env->erreur("La piste a été modifiée mais impossible de l'associer à ce morceau");
+ return;
+ }
+ if($_POST["morceau"]){
+ if(!$data->set_source_composition($piste["id"], $_POST["morceau"])){
+ $env->erreur("La piste a été modifiée mais impossible de l'associer à ce morceau");
+ return;
}
}
+ $env->redirect(
+ $env->url("users/pistes/edit", array("id" => $piste["id"])),
+ "la piste a été modifiée"
+ );
}
- else $env->erreur("Impossible de lire la liste des compositions");
- $env->set_out("piste", $this->piste);
}
- else $env->erreur("Impossible de creer le repertoire utilisateur");
+ $env->set_out("groupes", $groupes);
+ $env->set_out("sources_access", $sources_access);
+ $env->set_out("licences", $licences);
+ $env->set_out("morceaux", $morceaux);
+ $env->set_out("piste", $piste);
}
function maj_xml(){
- $env = $this->env();
$data = $env->data();
- $this->piste["premissions"] = $data->source_permissions($this->piste, $this->user["id"]);
- if(!$this->piste["premissions"]["editeur"])
- { $env->erreur("vous n'avez la permission d'editer cette source");
+ if(!($piste = $data->source($_GET[$env->param("id")], true))){
+ $env->erreur("Impossible de lire les informations de la piste");
+ return;
+ }
+ $piste["permissions"] = $data->source_permissions($piste, $this->user["id"]);
+ if(!$piste["permissions"]["editeur"]){
+ $env->erreur("vous n'avez pas la permission d'editer cette piste");
return;
}
if
( isset($_GET[$env->param("id")])
&& isset($_GET[$env->param("xml")])
&& ($_GET[$env->param("xml")] == "derviation" ? isset($_GET[$env->param("derivation")]) : true)
- )
- { $xml_url = "";
- if($_GET[$env->param("xml")] == "derivation")
- { if(isset($this->piste["derivations"][$_GET[$env->param("derivation")]]["xml"]["url"]))
- $xml_url = $this->piste["derivations"][$_GET[$env->param("derivation")]]["xml"]["url"];
- }
- elseif($_GET[$env->param("xml")] == "reference")
- { if(isset($this->piste["reference"]["xml"]["url"]))
- $xml_url = $this->piste["reference"]["xml"]["url"];
+ ){
+ $env->erreur("parametre de fichier xml manquant");
+ return;
+ }
+ $xml_url = "";
+ if($_GET[$env->param("xml")] == "derivation"){
+ if(isset($piste["derivations"][$_GET[$env->param("derivation")]]["xml"]["url"]))
+ $xml_url = $piste["derivations"][$_GET[$env->param("derivation")]]["xml"]["url"];
+ }
+ elseif($_GET[$env->param("xml")] == "reference"){
+ if(isset($piste["reference"]["xml"]["url"]))
+ $xml_url = $piste["reference"]["xml"]["url"];
+ }
+ if(!$xml_url){
+ $env->message("Pas d'URL pour ce fichier XML. Impossible de recharger les informations");
+ return;
+ }
+ if(!$env->messages()){
+ if(($res = $data->maj_source_cache($xml_url)) === false){
+ $env->erreur("Impossible de mettre à jour le contenu du fichier XML dans le cache");
+ return;
}
- $erreur = "";
- if($xml_url)
- { if(($res = $data->maj_source_cache($xml_url)) !== false)
- { if($res === true)
- { if($this->piste = $data->source($this->piste["id"]))
- { $env->redirect
- ( $env->url("users/pistes/edit", array("id" => $this->piste["id"])),
- "Les informations du fichier XML ont été mises à jour",
- 2
- );
- return;
- }
- else $erreur =
- "le contenu du fichier XML a été mis à jour"
- .", mais impossible de lire les informations de la source";
- }
- else
- { switch($res)
- { case -1: $env->message("Impossible de lire le contenu du fichier XML"); break;
- case -2: $env->message("Le fichier XML indiqué ne contient pas un fichier de source valide"); break;
- default: $erreur = "Erreur inconnue (?)"; break;
- }
- }
+ if($res === true){
+ if($piste = $data->source($piste["id"])){
+ $env->redirect(
+ $env->url("users/pistes/edit", array("id" => $piste["id"])),
+ "Les informations du fichier XML ont été mises à jour",
+ 2
+ );
+ }
+ else{
+ $env->erreur(
+ "le contenu du fichier XML a été mis à jour"
+ .", mais impossible de lire les informations de la piste"
+ );
}
- else $erreur = "Impossible de mettre à jour le contenu du fichier XML dans le cache";
+ return;
+ }
+ switch($res){
+ case -1: $env->message("Impossible de lire le contenu du fichier XML"); break;
+ case -2: $env->message("Le fichier XML indiqué ne contient pas un fichier de source valide"); break;
+ default: $env->erreur("Erreur inconnue (?)"); return;
}
- else $env->message("Pas d'URL pour ce fichier XML. Impossible de recharger les informations");
- if($erreur) $env->erreur($erreur);
- else $env->run("users/pistes/edit", array("id" => $this->piste["id"]));
}
- else $env->erreur("parametre de fichier xml manquant");
+ $env->run("users/pistes/edit", array("get" => array("id" => $piste["id"])));
}
function del(){
$env = $this->env();
$data = $env->data();
- $this->piste["premissions"] = $data->source_permissions($this->piste, $this->user["id"]);
- if($this->piste["premissions"]["admin"])
- { if($data->del_source($this->piste["id"]))
- { $env->redirect
- ( $env->url("users/pistes"),
- "la source a été supprimée"
- );
- }
- else $env->erreur("Impossible de supprimer la source");
+ if(!($piste = $data->source($_GET[$env->param("id")], true))){
+ $env->erreur("Impossible de lire les informations de la piste");
+ return;
+ }
+ $piste["permissions"] = $data->source_permissions($piste, $this->user["id"]);
+ if(!$piste["permissions"]["admin"]){
+ $env->erreur("vous n'avez pas la permission d'effacer cette piste");
+ return;
+ }
+ if(!$data->del_source($piste["id"])){
+ $env->erreur("Impossible de supprimer la piste");
+ return;
}
- else $env->erreur("vous n'avez la permission d'effacer cette source");
+ $env->redirect(
+ $env->url("users/pistes"),
+ "la piste a été supprimée"
+ );
}
}
class sml_data_sources_xml_format extends mw_data
{
- var $status;
+ var $status; // classes de sources - table sml_classes
var $source;
var $groupes;
var $licence;
function empty_source($params = array())
{ $source = array
- ( "auteurs" => array(),
+ ( "groupes" => array(),
"titre" => "",
"from" => "",
"licence" => array
{ $this->buffer = $this->sxml->data["source"][0];
foreach($this->buffer["subs"] as $key => $value)
{ if($key == "auteur")
- { $source["auteurs"][] = array
+ { $source["groupes"][] = array
( "nom" => $value[0]["data"]
);
}
}
}
$source["auteur"] = "";
- foreach($source["auteurs"] as $auteur) $source["auteur"] .= ($source["auteur"] ? ", " : "").$auteur["nom"];
+ foreach($source["groupes"] as $auteur) $source["auteur"] .= ($source["auteur"] ? ", " : "").$auteur["nom"];
}
else return false;
}
.", #--sml_sources_authors.id_sources_access as id_groupe_status"
." FROM #--sml_authors, #--sml_sources_authors"
." WHERE #--sml_sources_authors.id_author=#--sml_authors.id"
- ." AND #--sml_sources_authors.id_source=".$this->eq($id_source);
+ ." AND #--sml_sources_authors.id_source=".$this->eq($id_source)
+ ." ORDER BY nom";
$rst = $sgbd->query($sql);
$groupes = array();
while($v_rst = $sgbd->fetch_assoc($rst))
return $groupes;
}
+ function groupes_sources($params){
+ if(!isset($params["groupes"])) return false;
+ if(!isset($params["id_source_access"])) return false;
+ $satisfy_all_groupes_access = true;
+ if(isset($params["satisfy_all_groupes_access"])){
+ $satisfy_all_groupes_access = $params["satisfy_all_groupes_access"] ? true : false;
+ }
+ $source_access_ids = "";
+ if($params["id_source_access"] == $this->id_groupe_status_contributeur()){
+ $source_access_ids =
+ $this->id_groupe_status_contributeur()
+ .", ".$this->id_groupe_status_editeur()
+ .", ".$this->id_groupe_status_admin();
+ }
+ elseif($params["id_source_access"] == $this->id_groupe_status_editeur()){
+ $source_access_ids =
+ $this->id_groupe_status_editeur()
+ .", ".$this->id_groupe_status_admin();
+ }
+ elseif($params["id_source_access"] == $this->id_groupe_status_admin()){
+ $source_access_ids =
+ $this->id_groupe_status_admin();
+ }
+ if(!$source_access_ids) return false;
+ $sources = array();
+ if(!($groupes = $params["groupes"])) return $sources;
+ $author_ids = "";
+ foreach($groupes as $i => $groupe) $author_ids .= ($author_ids ? ", " : "").$groupe["id"];
+ $sgbd = $this->sgbd();
+ try{
+ $sql =
+ "SELECT #--sml_sources.*, #--sml_sources_authors.id_author"
+ ." FROM #--sml_sources, #--sml_sources_authors"
+ ." WHERE #--sml_sources.id=#--sml_sources_authors.id_source"
+ ." AND #--sml_sources_authors.id_sources_access IN(".$source_access_ids.")"
+ ." AND #--sml_sources_authors.id_author IN(".$author_ids.")";
+ if(isset($params["id_class"])){
+ $sql .= " AND #--sml_sources.id_class=".$this->eq($params["id_class"]);
+ }
+ $rst = $sgbd->query($sql);
+ while($v_rst = $sgbd->fetch_assoc($rst)){
+ if(!isset($sources[$v_rst["id"]])){
+ $sources[$v_rst["id"]] = $v_rst;
+ $sources[$v_rst["id"]]["authors"] = array();
+ }
+ $sources[$v_rst["id"]]["authors"][] = $v_rst["id_author"];
+ }
+ $sgbd->free_result($rst);
+ foreach($sources as $id_source => $source){
+ if($satisfy_all_groupes_access){
+ if(count($source["authors"]) < count($groupes)){
+ unset($sources[$id_source]);
+ continue;
+ }
+ }
+ if(!($sources[$id_source] = $this->load_source($source))) return false;
+ }
+ }
+ catch(Exception $e) { $sources = false; }
+ return $sources;
+ }
+
function add_source_groupe($id_source, $id_groupe, $id_groupe_status)
{ $sgbd = $this->sgbd();
try{
// --------------------------------------------------------------------
+ function sources_access(){
+ $sgbd = $this->sgbd();
+ $sources_access = array();
+ try{
+ $sql = "SELECT * FROM #--sml_sources_access";
+ $rst = $sgbd->query($sql);
+ while($v_rst = $sgbd->fetch_assoc($rst)) $sources_access[$v_rst["id"]] = $v_rst;
+ $sgbd->free_result($rst);
+ }
+ catch(Exception $e) { $sources_access = false; }
+ return $sources_access;
+ }
+
function id_groupe_status_admin() { return 1; }
function id_groupe_status_editeur() { return 2; }
function id_groupe_status_contributeur() { return 3; }
return $groupe;
}
+ function get_editor_groupes($groupes){
+ $editor_groupes = array();
+ if(is_array($groupes)) foreach($groupes as $source_groupe)
+ { if(
+ $source_groupe["id_groupe_status"] == $this->id_groupe_status_admin()
+ || $source_groupe["id_groupe_status"] == $this->id_groupe_status_editeur()
+ ){
+ $editor_groupes[] = $source_groupe;
+ }
+ }
+ return $editor_groupes;
+ }
+
function source_permissions($source, $id_user)
{ $permissions = array
( "admin" => false,
var $status;
# ----------------------------------------------------------------------------------------
- # status de source
+ # classes de source
#
function source_status(){
$ORDER_FROM_SOURCES_INFOS = !$ORDER_FIELD_EXISTS;
$sources = array("list" => array(), "total" => 0);
$COUNT_SELECT = "SELECT count(*) as n";
- $SELECT = "SELECT #--sml_sources.*, #--sml_sources.id_class as status";
+ $SELECT = "SELECT #--sml_sources.*, #--sml_sources.id_class as `status`";
if($ORDER_FROM_SOURCES_INFOS){
if($order_by == "ordre"){
$SELECT .= ", (0 + #--sml_sources_infos.`value`) as ordre";
($WHERE ? " AND " : " WHERE ")
." #--sml_sources.id=#--sml_sources_authors.id_source"
." AND #--sml_sources_authors.id_author=#--sml_authors.id"
- ." AND #--sml_authors.id_user=".$this->eq($id_user)
- ." AND #--sml_sources_authors.id_sources_access=".$this->id_groupe_status_admin();
+ ." AND #--sml_authors.id_user=".$this->eq($id_user)/*
+ ." AND #--sml_sources_authors.id_sources_access=".$this->id_groupe_status_admin()*/;
if(isset($id_groupe)) $WHERE .=
($WHERE ? " AND " : " WHERE ")
." #--sml_sources.id=#--sml_sources_authors.id_source"
- ." AND #--sml_sources_authors.id_author=".$this->eq($id_groupe)
- ." AND #--sml_sources_authors.id_sources_access=".$this->id_groupe_status_admin();
+ ." AND #--sml_sources_authors.id_author=".$this->eq($id_groupe)/*
+ ." AND #--sml_sources_authors.id_sources_access=".$this->id_groupe_status_admin()*/;
if(isset($status)) $WHERE .=
($WHERE ? " AND " : " WHERE ")
." #--sml_sources.id_class=".$this->eq($status);
/* ------------------------------- liste groupes ----------- */
-ul.groupes
-{ list-style-type: none;
+ul.groupes{
+ list-style-type: none;
}
-ul.groupes li
-{ margin: 10px 10px 10px 100px;
+ul.groupes li{
padding: 0px;
-/* float: left;*/
- width: 370px;
+ float: left;
+ width: 33%;
}
-ul.groupes li h4
-{ font-size: 16px;
+ul.groupes li h4{
+ font-size: 1.2em;
+ font-weight: bold;
margin: 0px;
padding: 0px;
+ margin: 10px;
}
-ul.groupes li h4 a
-{ display: block;
+ul.groupes li h4 a{
+ display: block;
padding: 5px;
- width: 370px;
height: 100px;
+ border: solid 1px #d9d9d9;
+ border-radius: 3px 3px 3px 3px;
+ -moz-border-radius: 3px 3px 3px 3px;
+}
+ul.groupes li h4 a:hover{
+ color: #000066;
+ background-color: #f1f1f1;
}
-ul.groupes li h4 a img
-{ display: block;
+ul.groupes li h4 a img{
+ display: block;
float: left;
}
-ul.groupes li h4 a span
-{ float: right;
+ul.groupes li h4 a span{
display: block;
+ margin-left: 150px;
padding: 3px;
text-align: right;
- width: 238px;
}
ul.groupes li .infos li
/* ------------------------------- page album ----------- */
+.logo_album{
+ text-align: center;
+}
+
p#play_all
{
}
float: right;
padding: 10px 5px 0px 5px;
}
-
+/*
ul#lien_contact
{ margin: 20px 18px 0px 0px;
padding: 0px;
text-align: right;
padding: 5px 5px 0px 5px;
}
-
+*/
/* ------------------------------- albums (page groupe) --- */
#center ul.menu_albums
padding: 0px;
}
-/* ------------------------------- liste groupes ----------- */
-
-ul.groupes li h4 a
-{ border: solid 1px #d9d9d9;
- border-radius: 3px 3px 3px 3px;
- -moz-border-radius: 3px 3px 3px 3px;
-}
-
/* ------------------------------- page album ----------- */
p#play_all a
{ border: solid 1px #c0c0c0;
border-radius: 3px 3px 3px 3px;
-moz-border-radius: 3px 3px 3px 3px;
- background-image: url("../icons/ecouter.png");
+ background-image: url("../../icons/ecouter.png");
background-repeat: no-repeat;
background-position: 6px 6px;
background-color: #ffffff;
}
.loading
-{ background-image: url("../icons/ajax-loader.gif");
+{ background-image: url("../../icons/ajax-loader.gif");
background-repeat: no-repeat;
background-position: 5px 5px;
}
\ No newline at end of file
{ border: solid 1px #c0c0c0;
}
-
+.source_groupes .access{
+ color: #c0c0c0;
+ padding-left: 20px;
+}
\ No newline at end of file
+ "<p>"
+ "<select name=\"morceau\" id=\"morceau\">"
+ "<option value=\"0\" selected=\"selected\">hors morceau</option>";
- for(var id_album in morceaux["" + id_groupe])
- { for(var id_morceau in morceaux["" + id_groupe]["" + id_album])
- { content +=
- "<option value=\"" + id_morceau + "\">" + morceaux["" + id_groupe]["" + id_album]["" + id_morceau] + "</option>";
- }
+ for(var id_morceau in morceaux["" + id_groupe])
+ { content +=
+ "<option value=\"" + id_morceau + "\">" + morceaux["" + id_groupe]["" + id_morceau] + "</option>";
}
content +=
"</select>"
<layout>
<sources page="sources.php">
- <groupe content="views/sources/groupe/list.php">
+ <groupe>
+ <index page="simple.php" content="views/sources/groupe/list.php" />
<view content="views/sources/groupe/view.php" />
</groupe>
<album content="views/sources/album/list.php">
<div id="contact">
- <h2><a href="#" onclick="return false;">Envoyer un message à <?php echo $this->out["groupe"]["nom"] ?></a></h2>
+ <h2>Envoyer un message à <?php echo $this->out["groupe"]["nom"] ?></h2>
<form action="<?php echo $this->url("forms/sourceml/contact_author", array("id" => $this->out["groupe"]["id"])) ?>" method="post">
</fieldset>
<?php $ariane_params = array(); ?>
<?php $FIRST = true; ?>
<h2>
-<?php if(isset($this->out["groupe"]) && $this->out["groupe"]) : $ariane_params["groupe"] = $this->out["groupe"]["id"]; ?>
- <?php if($FIRST) : $FIRST = false; else : ?>»<?php endif; ?>
- <a href="<?php echo $this->url("sources/groupe/view", array("id" => $this->out["groupe"]["id"])) ?>"><?php echo $this->out["groupe"]["nom"] ?></a>
-<?php endif; ?>
<?php if(isset($this->out["album"]) && $this->out["album"]) : ?>
<?php if($FIRST) : $FIRST = false; else : ?>»<?php endif; ?>
<a href="<?php echo $this->url("sources/album/view", array("album" => $this->out["album"]["id"])) ?>"><?php echo $this->out["album"]["titre"] ?></a>
-<?php require $this->out_file("views/sources/album/ariane.php"); ?>
+<h2>Albums</h2>
<?php if($this->out["groupes"]["total"] > 1) : ?>
<h2>
- <a href="<?php echo $this->url("sources/album/view", array("album" => $this->out["album"]["id"])) ?>">
- <?php echo $this->out["album"]["reference"] ? $this->out["album"]["reference"]["titre"] : $this->out["album"]["titre"] ?>
- </a>
-
+ <?php echo $this->out["album"]["reference"] ? $this->out["album"]["reference"]["titre"] : $this->out["album"]["titre"] ?>
</h2>
<?php
if
( $this->out["album"]["image_uri"]
&& file_exists($this->out["album"]["image_uri"])
- && ($img_size = $data->img_size($this->out["album"]["image_uri"], 150, 150)) !== false
+ && ($img_size = $data->img_size($this->out["album"]["image_uri"], 450, 450)) !== false
) :
- $margin_top = floor((150 - $img_size["height"]) / 2);
+// $margin_top = floor((450 - $img_size["height"]) / 2);
+ $margin_top = 10;
$album_image_uri = $this->path("web").$this->out["album"]["image_uri"];
?>
-<p>
+<p class="logo_album">
<img src="<?php echo $album_image_uri ?>"
width="<?php echo $img_size["width"] ?>"
height="<?php echo $img_size["height"] ?>"
+++ /dev/null
-<?php if(isset($this->out["album"]) && $this->out["album"]) : $album = $this->out["album"]; ?>
-
-<ul id="album_links">
- <li><a href="<?php echo $this->url("sources/album/view", array("album" => $album["id"])) ?>">album</a></li>
-</ul>
-
-<ul class="menu_albums">
- <li><a href="<?php echo $this->url("sources/album/view", array("album" => $album["id"])) ?>" title="<?php echo str_replace("\"", """, $album["titre"]) ?>">
-
- <?php
-
- if
- ( $album["image_uri"]
- && file_exists($album["image_uri"])
- && ($img_size = $data->img_size($album["image_uri"], 90, 90)) !== false
- ) :
- $margin_top = floor((90 - $img_size["height"]) / 2);
-
- ?>
- <img src="<?php echo $this->path("web").$album["image_uri"]; ?>"
- width="<?php echo $img_size["width"] ?>"
- height="<?php echo $img_size["height"] ?>"
- style="margin-top:<?php echo $margin_top ?>px" />
- <?php endif; ?>
- <span><?php echo $album["titre"] ?></span>
- </a></li>
-</ul>
-
-<div class="clear"><!-- --></div>
-
-<?php endif; ?>
+++ /dev/null
-<?php if($this->etat("mod") == "sources" && $this->etat("controller") == "groupe" && $this->etat("action") == "view") : ?>
-
-<?php if($this->out_config("nom_groupe")) require $this->out_file("views/sources/nom_groupe.php"); ?>
-
-<?php if($this->out_config("colonne_logo_groupe")) require $this->out_file("views/sources/logo_groupe.php"); ?>
-
-<?php endif; ?>
-
-<?php if($this->out_config("albums_menu")) require $this->out_file("views/sources/current_album.php"); ?>
-
-<?php require $this->out_file("views/sources/lien_contact.php"); ?>
+<h2><?php echo $this->out["groupe"]["nom"]; ?></h2>
<div class="description">
<?php echo $this->out["groupe"]["description"] ?>
</div>
</ul>
<div class="clear"><!-- --></div>
<?php endif; ?>
+
+<?php if($this->out["groupe"]["contact_form"]) : ?>
+<h3>Contact</h3>
+<p>
+ <a href="<?php echo $this->url("forms/sourceml/contact_author", array("id" => $this->out["groupe"]["id"])) ?>">Envoyer un message à <?php echo $this->out["groupe"]["nom"]; ?></a>.
+</p>
+<?php endif; ?>
if($this->out_config("colonne_logo_groupe")) require $this->out_file("views/sources/logo_groupe.php");
if(($this->etat("controller") == "groupe") && $this->out_config("groupe_view_albums")) $this->set_config(array("out_albums_menu" => ""));
if($this->out_config("albums_menu")) require $this->out_file("views/sources/menu_albums.php");
- require $this->out_file("views/sources/lien_contact.php");
?>
\ No newline at end of file
+++ /dev/null
-<?php if(isset($this->out["groupe"]) && $this->out["groupe"] && $this->out["groupe"]["contact_form"]) : ?>
-<ul id="lien_contact">
- <li><a href="<?php echo $this->url("forms/sourceml/contact_author", array("id" => $this->out["groupe"]["id"])) ?>">
- contact
- </a></li>
-</ul>
-<div class="clear"><!-- --></div>
-<?php endif; ?>
<?php
+ $groupes = array();
+ $data = $this->data();
+
+ if(
+ $this->is_running("sources/album/view")
+ || $this->is_running("sources/morceau/view")
+ || $this->is_running("sources/piste/view")
+ ){
+ if($this->is_running("sources/album/view")) $groupes = $this->out["album"]["groupes"];
+ if($this->is_running("sources/morceau/view")) $groupes = $this->out["morceau"]["groupes"];
+ if($this->is_running("sources/piste/view")) $groupes = $this->out["piste"]["groupes"];
+ foreach($groupes as $id_groupe => $groupe){
+ if(
+ ($groupe["id_groupe_status"] != $data->id_groupe_status_admin())
+ && ($groupe["id_groupe_status"] != $data->id_groupe_status_editeur())
+ ) unset($groupes[$id_groupe]);
+ }
+ }
+ elseif($this->is_running("sources")){
+ if(isset($this->out["groupe"])) $groupes = array($this->out["groupe"]["id"] => $this->out["groupe"]);
+ }
+ foreach($groupes as $groupe) :
if(
- isset($this->out["groupe"])
- && $this->out["groupe"]
- && $this->out["groupe"]["image_uri"]
- && file_exists($this->out["groupe"]["image_uri"])
- && ($img_size = $data->img_size($this->out["groupe"]["image_uri"], 200, 130)) !== false
+ isset($groupe["image_uri"])
+ && $groupe["image_uri"]
+ && file_exists($groupe["image_uri"])
+ && ($img_size = $data->img_size($groupe["image_uri"], 200, 130)) !== false
) :
$margin_top = floor((150 - $img_size["height"]) / 2);
?>
<div class="logo_groupe">
- <a href="<?php echo $this->url("sources/groupe/view", array("id" => $this->out["groupe"]["id"])) ?>">
- <img src="<?php echo $this->path("web").$this->out["groupe"]["image_uri"]; ?>"
+ <a href="<?php echo $this->url("sources/groupe/view", array("id" => $groupe["id"])) ?>">
+ <img src="<?php echo $this->path("web").$groupe["image_uri"]; ?>"
width="<?php echo $img_size["width"] ?>"
height="<?php echo $img_size["height"] ?>"
style="margin-top:<?php echo $margin_top ?>px"
</a>
</div>
<?php endif; ?>
+<?php endforeach; ?>
<?php $ariane_params = array(); ?>
<?php $FIRST = true; ?>
<h2>
-<?php if(isset($this->out["groupe"]) && $this->out["groupe"]) : $ariane_params["groupe"] = $this->out["groupe"]["id"]; ?>
- <?php if($FIRST) : $FIRST = false; else : ?>»<?php endif; ?>
- <a href="<?php echo $this->url("sources/groupe/view", array("id" => $this->out["groupe"]["id"])) ?>"><?php echo $this->out["groupe"]["nom"] ?></a>
-<?php endif; ?>
<?php if(isset($this->out["album"]) && $this->out["album"]) : $ariane_params["album"] = $this->out["album"]["id"]; ?>
<?php $ariane_params["album"] = $this->out["album"]["id"]; ?>
<?php if($FIRST) : $FIRST = false; else : ?>»<?php endif; ?>
-<?php require $this->out_file("views/sources/morceau/ariane.php"); ?>
+<h2>Morceaux</h2>
<?php
<h2>
<?php $ariane_params = array("morceau" => $this->out["morceau"]["id"]); ?>
-<?php if($this->out["album"]) : $ariane_params["album"] = $this->out["album"]["id"]; ?>
+<?php if(isset($this->out["album"]) && $this->out["album"]) : $ariane_params["album"] = $this->out["album"]["id"]; ?>
<a href="<?php echo $this->url("sources/album/view", $ariane_params) ?>">
<?php echo $this->out["album"]["titre"] ?>
</a>
-<?php require $this->out_file("views/sources/piste/ariane.php"); ?>
+<h2>Sources</h2>
<?php
<h2>
<?php $ariane_params = array("piste" => $this->out["piste"]["id"]); ?>
-<?php if($this->out["album"]) : $ariane_params["album"] = $this->out["album"]["id"]; ?>
+<?php if(isset($this->out["album"]) && $this->out["album"]) : $ariane_params["album"] = $this->out["album"]["id"]; ?>
<a href="<?php echo $this->url("sources/album/view", $ariane_params) ?>">
<?php echo $this->out["album"]["titre"] ?>
</a>
»
<?php endif; ?>
-<?php if($this->out["morceau"]) : $ariane_params["morceau"] = $this->out["morceau"]["id"]; ?>
+<?php if(isset($this->out["morceau"]) && $this->out["morceau"]) : $ariane_params["morceau"] = $this->out["morceau"]["id"]; ?>
<a href="<?php echo $this->url("sources/morceau/view", $ariane_params) ?>">
<?php echo $this->out["morceau"]["reference"] ? $this->out["morceau"]["reference"]["titre"] : $this->out["morceau"]["titre"] ?>
</a>
<?php
- if($source["reference"])
- { $groupe = array
- ( "nom" => $source["reference"]["auteur"],
- "url" => $source["reference"]["from"]
- );
- }
- else
- { $groupe = $data->get_admin_groupe($source["groupes"]);
- if($groupe) $groupe["url"] = $this->url("sources/groupe/view", array("id" => $groupe["id"]));
- }
+ $groupes = $data->get_editor_groupes($source["reference"] ? $source["reference"]["groupes"] : $source["groupes"]);
+ foreach($groupes as $k => $groupe) $groupes[$k]["url"] = $this->url("sources/groupe/view", array("id" => $groupe["id"]));
?>
<h5>
-<?php if($groupe) : ?><a class="auteur" href="<?php echo $groupe["url"] ?>"><?php echo $groupe["nom"] ?></a><?php endif; ?>
+<?php if($groupes) : $k = 0; foreach($groupes as $groupe) : $k++; ?>
+ <a class="auteur" href="<?php echo $groupe["url"] ?>"><?php echo $groupe["nom"] ?></a><?php if($k < count($groupes)) : ?><br /><?php endif; ?>
+<?php endforeach; endif; ?>
<?php if(!isset($display_name) || $display_name) : ?>
<?php if($source["reference"]) : ?>
- <span>référence » <a href="<?php echo $source["reference"]["from"] ?>"><strong><?php echo $source["reference"]["titre"] ?> (<?php echo $groupe["nom"] ?>)</strong></a></span>
+ <span>référence » <a href="<?php echo $source["reference"]["from"] ?>"><strong><?php echo $source["reference"]["titre"] ?></strong></a></span>
<?php else : ?>
<a href="<?php echo $source["url"] ?>"><?php echo $source["titre"] ?></a>
<?php endif; ?>
<li>
<label for="image">icone</label>
<div class="form_input">
- <?php if($this->out["album"]["image"]) : ?>
+ <?php if(isset($this->out["album"]["image"])) : ?>
<img class="logo" src="<?php echo $this->out["album"]["image_uri"] ?>" /><br /><br />
<input type="checkbox" name="del_image" /> effacer l'icone<br /><br />
<?php endif; ?>
-<?php require $this->out_file("views/tinymce.init.js.php"); ?>
+<?php require $this->out_file("views/tinymce.init.js.php"); $data = $this->data(); ?>
<h2>Modifier un morceau</h2>
<script type="text/javascript">
-var albums = {};
-<?php foreach($this->out["albums"] as $id_groupe => $albums) : ?>
-albums["<?php echo $id_groupe ?>"] = {};
-<?php foreach($albums as $id_album => $album) : ?>
-albums["<?php echo $id_groupe ?>"]["<?php echo $id_album ?>"] = "<?php echo $album["titre"] ?>";
-<?php endforeach; ?>
-<?php endforeach; ?>
var derivations = {};
<?php
<ul class="form">
<li>
- <label for="id_groupe">groupe</label>
+ <label for="id_groupe"> </label>
<div class="form_input">
- <select name="id_groupe" id="id_groupe" onchange="select_groupe(this.options[this.selectedIndex].value)">
- <?php
-
- $current_groupe = null;
- $first_groupe = null;
- foreach($this->out["groupes"]["list"] as $id_groupe => $groupe) :
- $selected = false;
- if(!isset($first_groupe)) $first_groupe = $id_groupe;
- if($this->out["groupe"]["id"] == $id_groupe)
- { $current_groupe = $id_groupe;
- $selected = true;
- }
-
- ?>
- <option value="<?php echo $id_groupe ?>"<?php echo $selected ? "selected=\"selected\"" : "" ?>><?php echo $groupe["nom"] ?></option>
- <?php
-
- endforeach;
- if(!isset($current_groupe)) $current_groupe = $first_groupe;
-
- ?>
- </select>
+ <ul class="source_groupes">
+ <?php foreach($this->out["morceau"]["groupes"] as $id_groupe => $groupe) : ?>
+ <li class="source_groupe" id="source_groupe_<?php echo $id_groupe; ?>">
+ <span class="author"><?php echo $groupe["nom"]; ?></span>
+ <span class="access"><?php echo $this->out["sources_access"][$groupe["id_groupe_status"]]["intitule"]; ?></span>
+ </li>
+ <?php endforeach; ?>
+ </ul>
</div>
</li>
-
+
+ </ul>
+
+<!-- ul class="buttons">
+ <li><a href="<?php echo $this->url("users/morceaux/groupes") ?>">Editer les groupes du morceau</a></li>
+</ul -->
+
+ <ul>
+
<li>
<div id="album_select">
<label for="album">album</label>
<div class="form_input">
<select name="album" id="album">
- <option value="0"<?php echo $_GET[$this->param("album")] == "0" ? " selected=\"selected\"" : "" ?>>hors album</option>
- <?php if($this->out["albums"][$current_groupe]) : ?>
- <?php foreach($this->out["albums"][$current_groupe] as $id_album => $album) : ?>
+ <option value="0"<?php echo $this->out["morceau"]["album"] == "0" ? " selected=\"selected\"" : "" ?>>hors album</option>
+ <?php foreach($this->out["albums"] as $id_album => $album) : ?>
<option value="<?php echo $id_album ?>"<?php echo $this->out["morceau"]["album"] == $id_album ? " selected=\"selected\"" : "" ?>><?php echo $album["titre"] ?></option>
<?php endforeach; ?>
- <?php endif; ?>
</select>
</div>
</div>
</select>
</div>
</li>
-
+
<li>
<label for="date_creation">date de création</label>
<div class="form_input">
--- /dev/null
+<?php require $this->out_file("views/tinymce.init.js.php"); $data = $this->data(); ?>
+
+<h2>Modifier les groupes d'un morceau</h2>
+
+<script type="text/javascript">
+
+<ul class="buttons">
+ <li><a href="<?php echo $this->url("users/morceaux/edit", array("id" => $this->out["morceau"]["id"])) ?>">Retour au morceau</a></li>
+ <li><a href="<?php echo $this->url("users/morceaux") ?>">Retour à la liste des morceaux</a></li>
+</ul>
+
+<form action="<?php echo $this->url("users/morceaux/groupes", array("id" => $this->out["morceau"]["id"])) ?>" method="post">
+ <fieldset>
+ <table class="admin">
+ <tr>
+ <th>groupe</th>
+ <th>accès</th>
+ <th align="center">enlever</th>
+ </tr>
+ <?php foreach($this->out["morceaux"]["groupes"] as $id_groupe => $groupe) : ?>
+ <tr class="hl">
+ <td>
+ <?php echo $groupe["nom"]; ?>
+ </td>
+ <td>
+ <select name="source_access_<?php echo $id_groupe; ?>" id="source_access_<?php echo $id_groupe; ?>">
+ <?php foreach($this->out["sources_access"]["list"] as $id_source_access => $source_access) : ?>
+ <option value="<?php echo $id_source_access ?>"<?php echo $groupe["id_groupe_status"] == $id_source_access ? " selected" : ""><?php echo $source_access["intitule"] ?></option>
+ <?php endforeach; ?>
+ </select>
+ </td>
+ <td class="action">
+ <a href="<?php echo $this->url("users/morceaux/del_groupe", array("morceau" => $id_morceau, "groupe" => $id_groupe)) ?>"
+ class="admin_link"
+ title="enlever ce groupe"><img src="<?php echo $this->out_url("icons/del.gif") ?>"
+ onclick="return confirm('enlever ce groupe ?')"/></a>
+ </td>
+ </tr>
+ <?php endforeach; ?>
+ </table>
+ <ul class="form">
+ <li class="buttons">
+ <div class="form_buttons">
+ <input type="submit" value="Enregistrer les accès" />
+ </div>
+ </li>
+ </ul>
+ </fieldset>
+</form>
+
+<?php if($this->out["groupes"]["total"] > 0) : ?>
+
+<h3>Ajouter un groupe</h3>
+
+<form name="morceau_form" action="<?php echo $this->url("users/morceaux/add_groupe", array("morceau" => $id_morceau, "groupe" => $id_groupe)) ?>" method="post">
+ <fieldset>
+ <ul class="form">
+ <li>
+ <label for="id_groupe">groupe</label>
+ <div class="form_input">
+ <select name="id_groupe" id="id_groupe">
+ <?php foreach($this->out["groupes"]["list"] as $id_groupe => $groupe) : ?>
+ <option value="<?php echo $id_groupe ?>"><?php echo $groupe["nom"] ?></option>
+ <?php endforeach; ?>
+ </select>
+ </div>
+ </li>
+ <li>
+ <label for="source_access_<?php echo $id_groupe; ?>">Accès</label>
+ <div class="form_input">
+ <select name="source_access_<?php echo $id_groupe; ?>" id="source_access_<?php echo $id_groupe; ?>">
+ <?php foreach($this->out["sources_access"]["list"] as $id_source_access => $source_access) : ?>
+ <option value="<?php echo $id_source_access ?>"><?php echo $source_access["intitule"] ?></option>
+ <?php endforeach; ?>
+ </select>
+ </div>
+ </li>
+ <li class="buttons">
+ <div class="form_buttons">
+ <input type="submit" value="Ajouter" />
+ </div>
+ </li>
+ </ul>
+ </fieldset>
+</form>
+
+<?php endif; ?>
-<?php
-
- $albums = array();
- if(isset($_GET[$this->param("groupe")]) && $_GET[$this->param("groupe")] && is_array($this->out["albums"][$_GET[$this->param("groupe")]]))
- { foreach($this->out["albums"][$_GET[$this->param("groupe")]] as $id_album => $album)
- { $albums[$id_album] = $album;
- }
- }
- else
- { foreach($this->out["albums"] as $id_groupe => $_albums)
- { foreach($this->out["albums"][$id_groupe] as $id_album => $album)
- { $albums[$id_album] = $album;
- }
- }
- }
-
-?>
-
<h2>Morceaux</h2>
<ul class="buttons">
</select>
</li>
<?php endif; ?>
-<?php if($albums) : ?>
+<?php if($this->out["albums"]) : ?>
<li>
<span id="album_select">
<?php
<option value="<?php echo $this->url("users/morceaux", $url_params) ?>"<?php echo !isset($_GET[$this->param("album")]) ? " selected=\"selected\"" : "" ?>>Tous les morceaux</option>
<?php $url_params["album"] = ""; ?>
<option value="<?php echo $this->url("users/morceaux", $url_params) ?>"<?php echo isset($_GET[$this->param("album")]) && !$_GET[$this->param("album")] ? " selected=\"selected\"" : "" ?>>Hors album</option>
- <?php foreach($albums as $id_album => $album) : $url_params["album"] = $id_album; ?>
+ <?php foreach($this->out["albums"] as $id_album => $album) : $url_params["album"] = $id_album; ?>
<option value="<?php echo $this->url("users/morceaux", $url_params) ?>"<?php echo $_GET[$this->param("album")] == $id_album ? " selected=\"selected\"" : "" ?>>Album: <?php echo $album["reference"] ? $album["reference"]["titre"] : $album["titre"] ?></option>
<?php endforeach; ?>
</select>
<?php require $this->out_file("views/tinymce.init.js.php"); ?>
-<h2>Nouvelle source</h2>
+<h2>Nouvelle piste</h2>
<script type="text/javascript">
var morceaux = {};
-<?php foreach($this->out["morceaux"] as $id_groupe => $albums) : ?>
+<?php foreach($this->out["morceaux"] as $id_groupe => $morceaux) : ?>
morceaux["<?php echo $id_groupe ?>"] = {};
-<?php foreach($albums as $id_album => $_morceaux) : ?>
-morceaux["<?php echo $id_groupe ?>"]["<?php echo $id_album ?>"] = {};
-<?php foreach($_morceaux as $id_morceau => $_morceau) : ?>
-morceaux["<?php echo $id_groupe ?>"]["<?php echo $id_album ?>"]["<?php echo $id_morceau ?>"] = "<?php echo $_morceau["reference"] ? $_morceau["reference"]["titre"] : $_morceau["titre"] ?>";
-<?php endforeach; ?>
+<?php foreach($morceaux as $id_morceau => $morceau) : ?>
+morceaux["<?php echo $id_groupe ?>"]["<?php echo $id_morceau ?>"] = "<?php echo $morceau["titre"] ?>";
<?php endforeach; ?>
<?php endforeach; ?>
var derivations = {};
</script>
<ul class="buttons">
- <li><a href="<?php echo $this->url("users/pistes") ?>">Retour à la liste des sources</a></li>
+ <li><a href="<?php echo $this->url("users/pistes") ?>">Retour à la liste des pistes</a></li>
</ul>
<?php if($this->out["groupes"]["total"] > 0) : ?>
<select name="morceau" id="morceau">
<option value="0"<?php echo $_GET[$this->param("morceau")] == "0" ? " selected=\"selected\"" : "" ?>>hors morceau</option>
<?php if($this->out["morceaux"][$current_groupe]) : ?>
- <?php foreach($this->out["morceaux"][$current_groupe] as $id_album => $album) : ?>
- <?php foreach($this->out["morceaux"][$current_groupe][$id_album] as $id_morceau => $morceau) : ?>
- <option value="<?php echo $id_morceau ?>"<?php echo $this->out["piste"]["morceau"] == $id_morceau ? " selected=\"selected\"" : "" ?>><?php echo $morceau["reference"] ? $morceau["reference"]["titre"] : $morceau["titre"] ?></option>
- <?php endforeach; ?>
+ <?php foreach($this->out["morceaux"][$current_groupe] as $id_morceau => $morceau) : ?>
+ <option value="<?php echo $id_morceau ?>"<?php echo $this->out["piste"]["morceau"] == $id_morceau ? " selected=\"selected\"" : "" ?>><?php echo $morceau["titre"] ?></option>
<?php endforeach; ?>
<?php endif; ?>
</select>
<ul class="admin_form_head">
<li>
- <label for="is_derivation">cette source est une dérivation</label>
+ <label for="is_derivation">cette piste est une dérivation</label>
<div class="form_input">
<input type="checkbox" id="is_derivation" name="is_derivation"<?php echo $this->out["piste"]["derivations"] ? " checked=\"checked\"" : "" ?> />
</div>
<ul class="admin_form_head">
<li>
- <label for="is_reference">cette source est une référence</label>
+ <label for="is_reference">cette piste est une référence</label>
<div class="form_input">
<input type="checkbox" id="is_reference" name="is_reference"<?php echo $this->out["piste"]["reference"] ? " checked=\"checked\"" : "" ?> />
</div>
<input type="text" class="long_text" name="document_nom_<?php echo $id_document ?>" id="document_nom_<?php echo $id_document ?>" value="<?php echo $document["nom"] ?>" />
<div class="clear"><!-- --></div>
<label for="document_url_<?php echo $id_document ?>">url</label>
- <input type="text" size="48" name="document_url_<?php echo $id_document ?>" id="document_url_<?php echo $id_document ?>" value="<?php echo $document["url"] ?>" />
+ <input type="text" size="40" name="document_url_<?php echo $id_document ?>" id="document_url_<?php echo $id_document ?>" value="<?php echo $document["url"] ?>" />
</div>
<script type="text/javascript">if(last_document_id <= <?php echo $id_document ?>) last_document_id = <?php echo $id_document ?> + 1; </script>
</ul>
<ul class="form">
- <li class="buttons">
+ <li>
<div class="form_buttons">
<input type="submit" value="Ajouter" />
</div>
-<?php require $this->out_file("views/tinymce.init.js.php"); ?>
+<?php require $this->out_file("views/tinymce.init.js.php"); $data = $this->data(); ?>
-<h2>Modifier une source</h2>
+<h2>Modifier une piste</h2>
<script type="text/javascript">
-var morceaux = {};
-<?php foreach($this->out["morceaux"] as $id_groupe => $albums) : ?>
-morceaux["<?php echo $id_groupe ?>"] = {};
-<?php foreach($albums as $id_album => $_morceaux) : ?>
-morceaux["<?php echo $id_groupe ?>"]["<?php echo $id_album ?>"] = {};
-<?php foreach($_morceaux as $id_morceau => $_morceau) : ?>
-morceaux["<?php echo $id_groupe ?>"]["<?php echo $id_album ?>"]["<?php echo $id_morceau ?>"] = "<?php echo $_morceau["titre"] ?>";
-<?php endforeach; ?>
-<?php endforeach; ?>
-<?php endforeach; ?>
var derivations = {};
<?php
</script>
<ul class="buttons">
- <li><a href="<?php echo $this->url("users/pistes") ?>">Retour à la liste des sources</a></li>
+ <li><a href="<?php echo $this->url("users/pistes") ?>">Retour à la liste des pistes</a></li>
</ul>
<?php if($this->out["groupes"]["total"] > 0) : ?>
<form name="piste_form" action="<?php echo $this->url("users/pistes/edit", array("id" => $_GET[$this->param("id")])) ?>" method="post">
<fieldset>
-
<input type="hidden" name="date_inscription" value="<?php echo $this->out["piste"]["date_inscription"] ?>" />
-
+
<ul class="form">
<li>
- <label for="id_groupe">groupe</label>
+ <label for="id_groupe"> </label>
<div class="form_input">
- <select name="id_groupe" id="id_groupe" onchange="select_morceaux_groupe(this.options[this.selectedIndex].value)">
- <?php
-
- $current_groupe = null;
- $first_groupe = null;
- foreach($this->out["groupes"]["list"] as $id_groupe => $groupe) :
- $selected = false;
- if(!isset($first_groupe)) $first_groupe = $id_groupe;
- if($this->out["groupe"]["id"] == $id_groupe)
- { $current_groupe = $id_groupe;
- $selected = true;
- }
-
- ?>
- <option value="<?php echo $id_groupe ?>"<?php echo $selected ? "selected=\"selected\"" : "" ?>><?php echo $groupe["nom"] ?></option>
- <?php
-
- endforeach;
- if(!isset($current_groupe)) $current_groupe = $first_groupe;
-
- ?>
- </select>
+ <ul class="source_groupes">
+ <?php foreach($this->out["piste"]["groupes"] as $id_groupe => $groupe) : ?>
+ <li class="source_groupe" id="source_groupe_<?php echo $id_groupe; ?>">
+ <span class="author"><?php echo $groupe["nom"]; ?></span>
+ <span class="access"><?php echo $this->out["sources_access"][$groupe["id_groupe_status"]]["intitule"]; ?></span>
+ </li>
+ <?php endforeach; ?>
+ </ul>
</div>
</li>
-
+
+ </ul>
+
+<!-- ul class="buttons">
+ <li><a href="<?php echo $this->url("users/pistes/groupes") ?>">Editer les groupes de la piste</a></li>
+</ul -->
+
+ <ul>
+
<li>
<div id="morceau_select">
<label for="morceau">morceau</label>
<div class="form_input">
<select name="morceau" id="morceau">
- <option value="0"<?php echo $_GET[$this->param("morceau")] == "0" ? " selected=\"selected\"" : "" ?>>hors morceau</option>
- <?php if($this->out["morceaux"][$current_groupe]) : ?>
- <?php foreach($this->out["morceaux"][$current_groupe] as $id_album => $album) : ?>
- <?php foreach($this->out["morceaux"][$current_groupe][$id_album] as $id_morceau => $morceau) : ?>
- <option value="<?php echo $id_morceau ?>"<?php echo $this->out["piste"]["morceau"] == $id_morceau ? " selected=\"selected\"" : "" ?>><?php echo $morceau["reference"] ? $morceau["reference"]["titre"] : $morceau["titre"] ?></option>
+ <option value="0"<?php echo $this->out["piste"]["morceau"] == "0" ? " selected=\"selected\"" : "" ?>>hors morceau</option>
+ <?php foreach($this->out["morceaux"] as $id_morceau => $morceau) : ?>
+ <option value="<?php echo $id_morceau ?>"<?php echo $this->out["piste"]["morceau"] == $id_morceau ? " selected=\"selected\"" : "" ?>><?php echo $morceau["titre"] ?></option>
<?php endforeach; ?>
- <?php endforeach; ?>
- <?php endif; ?>
</select>
</div>
</div>
<ul class="admin_form_head">
<li>
- <label for="is_derivation">cette source est une dérivation</label>
+ <label for="is_derivation">cette piste est une dérivation</label>
<div class="form_input">
<input type="checkbox" id="is_derivation" name="is_derivation"<?php echo $this->out["piste"]["derivations"] ? " checked=\"checked\"" : "" ?> />
</div>
<ul class="admin_form_head">
<li>
- <label for="is_reference">cette source est une référence</label>
+ <label for="is_reference">cette piste est une référence</label>
<div class="form_input">
<input type="checkbox" id="is_reference" name="is_reference"<?php echo $this->out["piste"]["reference"] ? " checked=\"checked\"" : "" ?> />
</div>
require $this->out_file("views/content/sources/xml_form.php");
?>
-
+
</li>
</ul>
<li>
<label for="titre">titre</label>
<div class="form_input">
- <input type="text" class="long_text" name="titre" id="titre" value="<?php echo $this->out["piste"]["titre"] ?>" /></p>
+ <input type="text" class="long_text" name="titre" id="titre" value="<?php echo $this->out["piste"]["titre"] ?>" />
</div>
</li>
</select>
</div>
</li>
-
+
<li>
<label for="date_creation">date de création</label>
<div class="form_input">
-<?php
-
- $albums = array();
- if(isset($_GET[$this->param("groupe")]) && $_GET[$this->param("groupe")] && is_array($this->out["albums"][$_GET[$this->param("groupe")]]))
- { foreach($this->out["albums"][$_GET[$this->param("groupe")]] as $id_album => $album)
- { $albums[$id_album] = $album;
- }
- }
- else
- { foreach($this->out["albums"] as $id_groupe => $_albums)
- { foreach($this->out["albums"][$id_groupe] as $id_album => $album)
- { $albums[$id_album] = $album;
- }
- }
- }
-
- $morceaux = array();
- if(isset($_GET[$this->param("groupe")]) && $_GET[$this->param("groupe")])
- { $id_groupe = $_GET[$this->param("groupe")];
- if(is_array($this->out["morceaux"][$id_groupe]))
- { foreach($this->out["morceaux"][$id_groupe] as $id_album => $_morceaux)
- { if(isset($_GET[$this->param("album")]) && $_GET[$this->param("album")])
- { if($id_album == $_GET[$this->param("album")])
- { foreach($this->out["morceaux"][$id_groupe][$id_album] as $id_morceau => $morceau)
- { $morceaux[$id_morceau] = $morceau;
- }
- }
- }
- else
- { foreach($this->out["morceaux"][$id_groupe] as $id_album => $_morceaux)
- { foreach($this->out["morceaux"][$id_groupe][$id_album] as $id_morceau => $morceau)
- { $morceaux[$id_morceau] = $morceau;
- }
- }
- }
- }
- }
- }
- else
- { foreach($this->out["morceaux"] as $id_groupe => $_albums)
- { foreach($this->out["morceaux"][$id_groupe] as $id_album => $_morceaux)
- { foreach($this->out["morceaux"][$id_groupe][$id_album] as $id_morceau => $morceau)
- { $morceaux[$id_morceau] = $morceau;
- }
- }
- }
- }
-
-?>
-
-<h2>Sources</h2>
+<h2>Pistes</h2>
<ul class="buttons">
- <li><a class="add" href="<?php echo $this->url("users/pistes/add") ?>">Nouvelle source</a></li>
+ <li><a class="add" href="<?php echo $this->url("users/pistes/add") ?>">Nouvelle piste</a></li>
</ul>
-<?php if($this->out["groupes"]["total"] > 0) : ?>
+<?php if($this->out["groupes"]["total"] > 0 || (isset($this->out["morceaux"]["total"]) && $this->out["morceaux"]["total"] > 0)) : ?>
<ul class="filters">
<?php if($this->out["groupes"]["total"] > 0) : ?>
<li>
+<?php
+
+ $url_params = array();
+ if(isset($_GET[$this->param("morceau")]) && !$_GET[$this->param("morceau")]) $url_params["morceau"] = "";
+
+?>
<select onchange="document.location=this.options[this.selectedIndex].value;">
- <option value="<?php echo $this->url("users/pistes") ?>"<?php echo $_GET[$this->param("groupe")] == "0" ? " selected=\"selected\"" : "" ?>>Tous les groupes</option>
- <?php foreach($this->out["groupes"]["list"] as $id_groupe => $groupe) : ?>
- <option value="<?php echo $this->url("users/pistes", array("groupe" => $id_groupe)) ?>"<?php echo $_GET[$this->param("groupe")] == $id_groupe ? " selected=\"selected\"" : "" ?>><?php echo $groupe["nom"] ?></option>
- <?php endforeach; ?>
- </select>
- </li>
-<?php endif; ?>
-<?php if(false && $albums) : ?>
- <li>
- <span id="album_select">
- <select onchange="document.location=this.options[this.selectedIndex].value;">
- <option value="<?php echo $this->url("users/pistes") ?>"<?php echo $_GET[$this->param("album")] == "0" ? " selected=\"selected\"" : "" ?>>Tous les albums</option>
- <?php foreach($albums as $id_album => $album) : ?>
- <option value="<?php echo $this->url("users/pistes", array("album" => $id_album)) ?>"<?php echo $_GET[$this->param("album")] == $id_album ? " selected=\"selected\"" : "" ?>><?php echo $album["reference"] ? $album["reference"]["titre"] : $album["titre"] ?></option>
+ <option value="<?php echo $this->url("users/pistes", $url_params) ?>"<?php echo isset($_GET[$this->param("groupe")]) && ($_GET[$this->param("groupe")] == "0") ? " selected=\"selected\"" : "" ?>>Tous les groupes</option>
+ <?php foreach($this->out["groupes"]["list"] as $id_groupe => $groupe) : $url_params["groupe"] = $id_groupe; ?>
+ <option value="<?php echo $this->url("users/pistes", $url_params) ?>"<?php echo isset($_GET[$this->param("groupe")]) && ($_GET[$this->param("groupe")] == $id_groupe) ? " selected=\"selected\"" : "" ?>><?php echo $groupe["nom"] ?></option>
<?php endforeach; ?>
</select>
- </span>
</li>
<?php endif; ?>
-
-<?php if($morceaux) : ?>
+<?php if($this->out["morceaux"]) : ?>
<li>
<span id="morceau_select">
+<?php
+
+ $url_params = array();
+ if(isset($_GET[$this->param("groupe")])) $url_params["groupe"] = $_GET[$this->param("groupe")];
+
+?>
<select onchange="document.location=this.options[this.selectedIndex].value;">
- <option value="<?php echo $this->url("users/pistes") ?>"<?php echo $_GET[$this->param("morceau")] == "0" ? " selected=\"selected\"" : "" ?>>Tous les morceaux</option>
- <?php foreach($morceaux as $id_morceau => $morceau) : ?>
- <option value="<?php echo $this->url("users/pistes", array("morceau" => $id_morceau)) ?>"<?php echo $_GET[$this->param("morceau")] == $id_morceau ? " selected=\"selected\"" : "" ?>><?php echo $morceau["reference"] ? $morceau["reference"]["titre"] : $morceau["titre"] ?></option>
+ <option value="<?php echo $this->url("users/pistes", $url_params) ?>"<?php echo !isset($_GET[$this->param("morceau")]) ? " selected=\"selected\"" : "" ?>>Tous les morceaux</option>
+<?php $url_params["morceau"] = ""; ?>
+ <option value="<?php echo $this->url("users/pistes", $url_params) ?>"<?php echo isset($_GET[$this->param("morceau")]) && !$_GET[$this->param("morceau")] ? " selected=\"selected\"" : "" ?>>Hors album</option>
+ <?php foreach($this->out["morceaux"] as $id_morceau => $morceau) : $url_params["morceau"] = $id_morceau; ?>
+ <option value="<?php echo $this->url("users/pistes", $url_params) ?>"<?php echo isset($_GET[$this->param("morceau")]) && ($_GET[$this->param("morceau")] == $id_morceau) ? " selected=\"selected\"" : "" ?>>Morceau: <?php echo $morceau["reference"] ? $morceau["reference"]["titre"] : $morceau["titre"] ?></option>
<?php endforeach; ?>
</select>
</span>
</li>
<?php endif; ?>
-
</ul>
<?php endif; ?>
<?php if($this->out["pistes"]["list"]) : ?>
-<?php $items = "pistes"; $legend = "sources"; require $this->out_file("views/navig.php"); ?>
+<?php $items = "pistes"; $legend = "pistes"; require $this->out_file("views/navig.php"); ?>
<?php
<?php if($piste["reference"]) : ?>
référence » <a href="<?php echo $piste["reference"]["from"] ?>"><?php echo $piste["reference"]["titre"] ?> (<?php echo $piste["reference"]["auteur"] ?>)</a>
<?php else : ?>
- <a href="<?php echo $this->url("users/pistes/edit", array("id" => $id_piste)) ?>"><?php echo $piste["titre"] ?></a>
+ <a href="<?php echo $this->url("users/pistes/edit", array("id" => $id_morceau)) ?>"><?php echo $piste["titre"] ?></a>
<?php endif; ?>
<?php if($piste["derivations"]) : ?>
<br />
<?php if($piste["permissions"]["editeur"]) : ?>
<a href="<?php echo $this->url("users/pistes/edit", array("id" => $id_piste)) ?>"
class="admin_link"
- title="modifier cette source"><img src="<?php echo $this->out_url("icons/edit.gif") ?>" /></a>
+ title="modifier cette piste"><img src="<?php echo $this->out_url("icons/edit.gif") ?>" /></a>
<?php else : ?>
<?php endif; ?>
<?php if($piste["permissions"]["admin"]) : ?>
<a href="<?php echo $this->url("users/pistes/del", array("id" => $id_piste)) ?>"
class="admin_link"
- title="supprimer cette source"
- onclick="return confirm('Supprimer cette source ?')"><img src="<?php echo $this->out_url("icons/del.gif") ?>" /></a>
+ title="supprimer cette piste"><img src="<?php echo $this->out_url("icons/del.gif") ?>"
+ onclick="return confirm('Supprimer cette piste ?')"/></a>
<?php else : ?>
<?php endif; ?>
</fieldset>
</form>
-<?php $items = "pistes"; $legend = "sources"; require $this->out_file("views/navig.php"); ?>
+<?php $items = "pistes"; $legend = "pistes"; require $this->out_file("views/navig.php"); ?>
<?php else : ?>
-<p>Aucune source pour le moment</p>
+<p>Aucune piste pour le moment</p>
<?php endif; ?>
$env->set_link("admin/sourceml/cache", $env->url("admin/cache"), "Cache", 20);
$env->set_link("admin/sourceml/maintenance", $env->url("admin/maintenance"), "Maintenance", 30);
- $env->set_link("users/authors", $env->url("users/groupes"), "Auteurs", 30);
+ $env->set_link("users/authors", $env->url("users/groupes"), "Groupes", 30);
$env->set_link("users/albums", $env->url("users/albums"), "Albums", 31);
$env->set_link("users/morceaux", $env->url("users/morceaux"), "Morceaux", 32);
$env->set_link("users/pistes", $env->url("users/pistes"), "Sources", 33);
- $env->set_link("menu_top/groupes", $env->url("sources/groupe"), "Auteurs", 10);
+ $env->set_link("menu_top/groupes", $env->url("sources/groupe"), "Groupes", 10);
$env->set_link("menu_top/albums", $env->url("sources/album"), "Albums", 11);
$env->set_link("menu_top/morceaux", $env->url("sources/morceau"), "Morceaux", 12);
$env->set_link("menu_top/pistes", $env->url("sources/piste"), "Sources", 13);