<?php
require "control_auth";
/* 		Nom du programme : admin_compositeur.php
		Description : Permet d'administrer la table des compositeurs des Cd :
			- Créer de nouveaux compositeurs par l'intermédiaire d'un
			formulaire.
			- Supprimer des compositeurs : Afficher la liste des compositeurs
			et supprimer le compositeur sélectionné.
			 - Modifier un compositeur : Afficher la liste des compositeurs,
			 puis afficher les infos du compositeur sélectionné
			 dans un formulaire pour pouvoir les modifier et les
			 enregistrer dans la table.
*/
?>
<html>
<head>
<title>Administration des compositeurs</title>
</head>
<body>
<h1 align="center">Administration des compositeurs</h1><hr>

<?php
/* 		On fait le test pour savoir l'action choisie :
		- créer (new)
			* form : affiche le formulaire
			* sql : enregistre les données
		- supprimer (del)
			* form : Afiche une liste déroulante des compositeurs
			* sql : supprime le compositeur
		- modifier (edit)
			* list : Affiche une liste déroulante des compositeurs pour choisir celui à modifier
			* form : Affiche le formulaire pour modifier les données
			* sql : Enregistre les modifications
*/

require ("fonctions");

$action=$_GET['action'];

Switch ($action)
{
	case ("new_form"):    // On veut créer une nouveau compositeur
	{	echo "<div align='center'>Vous pouvez saisir les informations du compositeur
		dans le formulaire ci-dessous et les sauvegarder en cliquant
		sur le bouton \"Enregistrer\".</div><p>";
		// On affiche le formulaire dans un tableau

		$cible_action="new_sql";   // pour indiquer l'action du formulaire
		require "admin_compositeur.form";

		exit();
	}
	case ("new_sql"):	// On enregistre les données dans la table compositeur
	{	$nom_compositeur=$_POST['nom_compositeur'];
		$prenom_compositeur=$_POST['prenom_compositeur'];
		$photo_compositeur=$_POST['photo_compositeur'];
		$nationalite_compositeur=$_POST['nationalite_compositeur'];
		$commentaire_compositeur=$_POST['commentaire_compositeur'];
		$date_naissance_compositeur=$_POST['date_naissance_compositeur'];
		$date_mort_compositeur=$_POST['date_mort_compositeur'];

		// Requête pour ajouter le compositeur dans la table compositeur
		$sql="insert into compositeur (nom_compositeur, prenom_compositeur, photo_compositeur, commentaire_compositeur, nationalite_compositeur, date_naissance_compositeur, date_mort_compositeur)
				values (\"$nom_compositeur\", \"$prenom_compositeur\", '$photo_compositeur', \"$commentaire_compositeur\", \"$nationalite_compositeur\", '$date_naissance_compositeur', '$date_mort_compositeur')";


		// On se connecte à la base pour exécuter la requête

		require "codbfile";

		// On exécute la requête pour mettre à jour la table compositeur

		$result = mysql_query($sql)
					or die ("Impossible d'exécuter le requête");


		// Redirection vers index_admin.php
	        redirection("index_admin.php");

		exit ();
	}
	case ("del_form"): // On crée une liste déroulante des compositeurs pour
	{					// pouvoir supprimer le compositeur sélectionné.

		echo "<div align='center'>Choisissez dans la liste le compositeur que vous souhaitez <b><font color='#FB0B03'>supprimer</font></b></div><p><p></p></p>\n";
		// On se connecte à la base pour exécuter la requête

		require "codbfile";

		// On exécute la requête

		$sql="select  id_compositeur, nom_compositeur, prenom_compositeur from compositeur order by nom_compositeur";
		$result=mysql_query($sql)
				or die ("Impossible d'exécuter la requête");

		// on crée un tableau pour le formulaire
		echo "<table align='center'><form action='admin_compositeur.php?action=del_sql' method='post'>\n
				<tr><td>Compositeur : </td>\n
					<td><select name='id_compositeur'>\n";
							while ($ligne = mysql_fetch_array($result))
							{	extract($ligne);
								echo "<option value='$id_compositeur'>$nom_compositeur, $prenom_compositeur</option>\n";
							}
					echo "</select></td>\n

				</tr>\n
				<tr><td colspan='2' align='right'><input type='submit' value='Supprimer'></td></tr>

		</form></table>\n";
		exit();
	}
	case ("del_sql"):  // On supprime les données de la table compositeur
	{	$id_compositeur=$_POST['id_compositeur'];
		$sql="delete from compositeur where id_compositeur='$id_compositeur'";


		// On se connecte à la base pour exécuter la requête

		require "codbfile";

		// On exécute la requête

		$result = mysql_query($sql)
					or die ("Impossible d'exécuter le requête");

		// Redirection vers index_admin.php
	        redirection("index_admin.php");

		exit();
	}
	case ("edit_form_select"): //On affiche un formulaire pour ensuite afficher une liste de compositeurs correspondants à la sélection
	{
		echo "
		<form action='admin_compositeur.php?action=edit_list' method='POST'>
		<table align='center' width='90%'>
		<tr align='center' bgcolor='#328FC9'><td><font color='#FFFFFF'>Recherche d'un compositeur</font></td></tr>
		<tr align='center' bgcolor='#E6E6E6'><td>Le nom du compositeur contient : <input type='text' name='filtre_form'>
		<input type='submit' value='Rechercher'></td></tr>
		</table></form>";
	exit();
	}
		
	case ("edit_list"): // On affiche la liste des compositeurs
	{ 		
	$filtre_form=$_POST['filtre_form'];
	//On charge la liste des compositeurs correspondants à la sélection
	$sql="select id_compositeur, nom_compositeur, prenom_compositeur from compositeur
	where (nom_compositeur like '%$filtre_form%' or prenom_compositeur like '%$filtre_form
	%') order by nom_compositeur";
	
	// On se connecte à la base pour exécuter la requête

		require "codbfile";

	// On exécute la requête

		
		$result=mysql_query($sql)
				or die ("Impossible d'exécuter la requête");

		//On affiche la liste dans un tableau
		echo "<table align='center'>
		<tr><td colspan='2' align='center' bgcolor='#328FC9'><FONT color='white'>Liste des compositeur</FONT></td></tr>\n";
		$nb_ligne=mysql_num_rows($result);
		if ($nb_ligne==0)
		{
			echo "<tr><td>Il n'y a aucun compositeur correspondant à votre sélection.</td></tr>";
		}
		else
		{
			parametres_generaux();
			while ($ligne=mysql_fetch_array($result))
			{
				extract ($ligne);
				if ($bgcolor==$bgcolor_impaire)
				{ $bgcolor=$bgcolor_paire; }
				else
				{ $bgcolor=$bgcolor_impaire;}
			
				echo "
				<tr bgcolor='$bgcolor'>
				<td><a href='admin_compositeur.php?action=edit_form&id_compositeur=$id_compositeur'>$nom_compositeur $prenom_compositeur</td>
				</tr>\n";
			}
			echo "</table>";
		}
		exit();
		
		
	}
	case ("edit_form"): // On affiche un formulaire pour modifier les données
	{	$id_compositeur=$_GET['id_compositeur'];

				echo "<div align='center'>Utilisez le formulaire suivant pour modifier les informations</div><p></p>\n";
		// On se connecte à la base pour exécuter la requête

		require "codbfile";

		// On exécute la reqête
		$sql="select  * from compositeur where id_compositeur=$id_compositeur";
		
		$result=mysql_query($sql)
				or die ("Impossible d'exécuter la requête");

		$ligne=mysql_fetch_array($result);
		extract($ligne);

		// On affiche les données dans un formulaire

                $cible_action="edit_sql";         // Pour compléter l'action du formulaire
		require "admin_compositeur.form";

		exit();
	}
	case ("edit_sql"): // On enregistre les données dans la base
	{ 	$id_compositeur=$_POST['id_compositeur'];
		$nom_compositeur=$_POST['nom_compositeur'];
		$prenom_compositeur=$_POST['prenom_compositeur'];
		$photo_compositeur=$_POST['photo_compositeur'];
		$nationalite_compositeur=$_POST['nationalite_compositeur'];
		$commentaire_compositeur=$_POST['commentaire_compositeur'];
		$date_naissance_compositeur=$_POST['date_naissance_compositeur'];
		$date_mort_compositeur=$_POST['date_mort_compositeur'];


		$sql="update compositeur set nom_compositeur=\"$nom_compositeur\", prenom_compositeur=\"$prenom_compositeur\", photo_compositeur='$photo_compositeur', nationalite_compositeur=\"$nationalite_compositeur\", commentaire_compositeur=\"$commentaire_compositeur\",  date_naissance_compositeur='$date_naissance_compositeur', date_mort_compositeur='$date_mort_compositeur'
				where id_compositeur='$id_compositeur'";

		// On se connecte à la base pour exécuter la requête

		require "codbfile";


		// On met à jour la table compositeur

		// On exécute la requête
		$result = mysql_query($sql)
					or die ("Impossible de mettre à jour la table compositeur");

		// Redirection vers index_admin.php
	        redirection("index_admin.php");

		exit();
	}
}



?>

</body>

</html>
