<?php
// =============================================================================
// Affichage de la liste des enregistrements d'une table
// =============================================================================
// -----------------------------------------------------------------------------
// affichage d'un enregistrement avec modes visu, modif, del, copy
// -----------------------------------------------------------------------------
// $record : enregistrement à afficher 
function displayRecordManagement2($tableName, $primaryKey_List, $record, $row_Type, $pageName) {
	global $backUrl, $userId;
	echo "<tr class=tabRow".$row_Type.">";
	
	// keys to string
	// Recup de la clé. REVOIR LA CLE car si elle est composée, ça doit être un tableau.
	foreach($primaryKey_List as $key =>$value) $recordKey[$key]=$value."='".$record[$key]."'";
	$recordKey=implode("_",$recordKey);
	//$key=$record[0];
	
	$viewPageName=$updPageName=$delPageName=$copyPageName=$pageName;
	// modifier
	echo '<td align=center><a href="'.$viewPageName.'?mode=view&tableName='.$tableName.'&recordKey='.$recordKey."&backUrl=$backUrl&userId=$userId".'">';
	//echo '<img src="segami/buttonView.png" alt="Voir" border=0> Voir</a>';
	echo '<img src="segami/buttonView.png" alt=Afficher border=0></a>';
	// modifier
	echo '<td align=center><a href="'.$updPageName.'?mode=upd&tableName='.$tableName.'&recordKey='.$recordKey."&backUrl=$backUrl&userId=$userId".'">';
	//echo '<img src="segami/buttonEdit.png" alt="Modifier" border=0> Modifier</a>';
	echo '<img src="segami/buttonEdit.png" alt=Modifier border=0></a>';
	// supprimer
	echo '<td align=center><a href="'.$delPageName.'?mode=del&tableName='.$tableName.'&recordKey='.$recordKey."&backUrl=$backUrl&userId=$userId".'">';
	//echo '<img src="segami/buttonDelete.png" alt="Supprimer" border=0> Supprimer</a>';
	echo '<img src="segami/buttonDelete.png" alt=Supprimer border=0></a>';
	// copier
	echo '<td align=center><a href="'.$copyPageName.'?mode=copy&tableName='.$tableName.'&recordKey='.$recordKey."&backUrl=$backUrl&userId=$userId".'">';
	//echo '<img src="segami/buttonCopy.png" alt="Copier" border=0> Copier</a>';
	echo '<img src="segami/buttonCopy.png" alt=Copier border=0></a>';
	foreach($record as $key =>$val) echo "<td>$val";
	
	echo "</tr>\n";
}
// -----------------------------------------------------------------------------
// affichage de la liste des enregistrements d'une table (dans une table html indépendante)
// -----------------------------------------------------------------------------
// recherche des tables de la base
// et affichage d'une liste à choix multiple pour le choix de la table à modifier.
// affichage automatique de la page $goto_page lorsqu'il y a un changement de valeur de ce champ.
//@	in	: $tableName ; nom de la table
//@ in	: $varList 	 ; liste des valeurs locales : connexion à la base, ...
//@ out	:	aucune sortie, affichage direct
//
		//$varList['tableOrderBy']=$dicTable[$tableName]['standardOrderBy'];
		$varList['tableOrderBy']=$DIC_Table[$tableName]['standardOrderBy'];
		// entête de table
		//echo "<h3 align=center>Contenu actuel de la table : ".$tableName.".</h3>";
		echo "<center><a href='$backUrl?mode=add&tableName=$tableName&backUrl=$backUrl&userId=$userId'>
					<font size=1>Ajouter un enregistrement</font></a></center>\n";
		echo "<table width=100%>\n";
		$field_List=DB_getFieldList($tableName, $connexion);
		$primaryKey_List=getPrimaryKey($field_List);
		// entêtes de colonnes
		echo "<tr><th>View<th>UPD<th>DEL<th>Copy";
		for ($i=0; $i<count($field_List); $i++)
				echo "<th>".$field_List[$i]['name'];
		echo "\n";
		
		$sql_Query="select * from ".$tableName;
		// tri éventuel
		if (isset($var_List['tableOrderBy']))
			$sql_Query.=" order by ".$varList['tableOrderBy'];
		$sql_Query.=" ;";
		//dbg echo $sql_Query.=" ;";
		
		// affichage de chaque ligne
		$sql_Id=DB_ouvrirRequete($sql_Query, $connexion);
		//dbg sqldbg($varList['connectId']);
		$row_Type=1;
		$sql_Count=0;
		$sql_Record = DB_lireLigneT($sql_Id);
		while($sql_Record)
		{ 
			if ($row_Type == 0) $row_Type=1;
			else $row_Type = 0;
			displayRecordManagement2($tableName, $primaryKey_List, $sql_Record, $row_Type, $backUrl);
			$sql_Count=$sql_Count+1; 
			$sql_Record = DB_lireLigneT($sql_Id);
		}
		
		// affichage du rapport
		if ($sql_Count==0) $end_Text = "Aucun enregistrement à afficher";
		else 					 $end_Text=$sql_Count." enregistrements affich&eacute;s";
		// pied de table
		echo "<tr><td align=center colspan=100%> $end_Text ; ";
		echo " <a href='$backUrl?mode=add&tableName=$tableName&backUrl=$backUrl&userId=$userId'>Ajouter un enregistrement</a> </td></tr>\n";

		echo "</table>";
	
?>

