\n "; }
// Cas général, on n'est pas la personne concernée
if ( ! isset($estDispo) || $estDispo == '' )
{ // Dispo Inconnue (icone ?)
generate_html_dispo_inconnu($idP, $idC);
}
else
{
if ( $estDispo == 'oui' )
{ // Disponible
generate_html_dispo_oui($idP, $idC);
}else
{ // Non Disponible
generate_html_dispo_non($idP, $idC);
}
}
}
else
{
if ( $withTD ) { echo "
\n "; }
// On est la personne concernée, on peut donc choisir le créneau
if ( ! isset($estDispo) || $estDispo == '' )
{ // Dispo Inconnue
generate_html_dispo_dire_oui($idR, $idC);
//~ echo ' ';
generate_html_dispo_dire_non($idR, $idC);
}
else
{
if ( $estDispo == 'oui' )
{ // Disponible
generate_html_dispo_oui($idP, $idC);
//~ echo ' '."\n ";
generate_html_dispo_dire_non($idR, $idC);
}else
{
// Non Disponible
generate_html_dispo_dire_oui($idR, $idC);
//~ echo ' '."\n ";
generate_html_dispo_non($idP, $idC);
}
}
}
if ( $withTD ) { echo " | \n"; }
}
// Génération du tableau complet
// TODO : idée : class du tableau différnete quand annulée -> tableau grisé...
function generate_html_array_personnes_crenaux($idR)
{
$idP_Self=$_SESSION['session_idP'];
// Connexion à la base et sélection de la database
require_once 'include/connect.inc.php';
// Récupération des paramètres de la réunion...
$montrerDispoR=$estAnnulee=$is_admin=$estFixee=false;
$idP_orga=null;
$query="SELECT r.montrerDispoR, r.estAnnulee, r.idP_Orga, r.idC_Fixe, r.idL FROM AWOR_Reunion r WHERE r.idR='$idR'";
$result = @mysql_query($query);
if ( $result && ( mysql_num_rows($result) === 1 ) )
{
list($montrerDispoR, $estAnnulee, $idP_orga, $idC_Fixe, $idL_interne) = mysql_fetch_row($result);
$is_admin = ( $idP_Self == $idP_orga );
$montrerDispoR = ( ( $montrerDispoR === 'oui' ) || $is_admin ) ;
//echo "DEBUG : annulée $estAnnulee\n";
$estAnnulee = ( $estAnnulee == 'oui' );
$estFixee = ( $idC_Fixe != null);
}
else
{
return "Impossible d'afficher le tableau de la r�union : Erreur de base de donn�e\n";
}
// DEBUG : tests en for�ant les variables
//$estAnnulee=true;
//~ echo "DEBUG : \nmontrerDispoR==$montrerDispoR\nestAnnulee==$estAnnulee\nestFixee==$estFixee\nis_admin==$is_admin\n";
?>
\n";
}
function traiter_formulaire_fixer_creneau()
{
if ( ! isset($_GET['idR']) || !isset($_GET['idC']) )
{
$errmsg="Impossible de fixer la réunion : paramètres manquants ou erroné";
return $errmsg;
}
$idR=addslashes($_GET['idR']);
$idC=addslashes($_GET['idC']);
$query="UPDATE AWOR_Reunion SET idC_Fixe=$idC WHERE idR=$idR;";
if ( ! mysql_query($query) || mysql_affected_rows() != 1 )
{
$errmsg='Impossible de fixer la réunion : ' . mysql_generate_errmsg();
return $errmsg;
}
return;
}
function traiter_formulaire_creer_reunion()
{
include_once('include/je.inc.php');
$idP=$_SESSION['session_idP'];
// Recherche d'une réunion vierge déjà existante
$query='SELECT idR FROM AWOR_Reunion WHERE idP_Orga=' . "('$idP') AND objetR='Renseignez';";
if ( ( $result = mysql_query($query) ) && (mysql_num_rows($result) > 0) )
{
list($idR)=mysql_fetch_array($result);
}
else
{
// Création de la Réunion sauf si une réunion vierge existe déjà
$query='INSERT INTO AWOR_Reunion(idP_Orga, objetR) VALUES' . "('$idP', 'Renseignez');";
if ( ! $result = @mysql_query($query) || (mysql_affected_rows() != 1) )
{
// Cas d'erreur
$errmsg ='Erreur lors de la création de la liste de participants : ' . mysql_generate_errmsg();
return $errmsg;
}
$idR=mysql_insert_id();
// Création de la Liste des participants
if ( ! $idL=list_new("interne_idR_$idR","NULL",true) )
{
$errmsg ='Erreur lors de la création de la liste de participants : Erreur de base de données';
return $errmsg;
}
$query="UPDATE AWOR_Reunion SET idL='$idL' WHERE idR='$idR'";
if ( ! $result = @mysql_query($query) || (mysql_affected_rows() != 1) )
{
// Cas d'erreur
$errmsg = 'Erreur lors de la création de la liste de participants : ' . mysql_generate_errmsg();
return $errmsg;
}
}
return (int) $idR;
}
function traiter_formulaire_modif_detail_reunion()
{
require_once('include/tools.inc.php');
if ( ! isset($_REQUEST['idR']) || !isset($_POST['objetR']) || !isset($_POST['lieuR']) || !isset($_POST['ordreJourR']) || !isset($_POST['remarquesR']) )
{
$errmsg = 'Impossible de modifier de détail de la réunion : Paramètres manquants';
// DEBUG :
//echo "DEBUG : $query\n$errmsg\n";
return $errmsg;
}
$idR=addslashes_if_needed($_REQUEST['idR']);
$objetR=addslashes_if_needed($_POST['objetR']);
$lieuR=addslashes_if_needed($_POST['lieuR']);
$ordreJourR=addslashes_if_needed($_POST['ordreJourR']);
$remarquesR=addslashes_if_needed($_POST['remarquesR']);
$estAnnulee=( isset($_POST['isCancelled']) && ($_POST['isCancelled']==='on') )?'oui':'non';
$montrerDispoR=( isset($_POST['isHidden']) && ($_POST['isHidden']==='on') )?'non':'oui';
$query="UPDATE AWOR_Reunion SET objetR='$objetR', lieuR='$lieuR', ordreJourR='$ordreJourR', "
." remarquesR='$remarquesR', estAnnulee='$estAnnulee', montrerDispoR='$montrerDispoR' WHERE idR='$idR'";
if ( ! $result = @mysql_query($query) || (mysql_affected_rows() != 1) )
{
// Cas d'erreur
$errmsg = 'Erreur lors de la modification de la réunion : ' . mysql_generate_errmsg();
// DEBUG :
//echo "DEBUG : $query\n$errmsg\n";
return $errmsg;
}
// DEBUG :
//echo "DEBUG : $query\n$errmsg\n";
return;
}
function generate_html_reunion_detail2($idR)
{
$query='SELECT r.objetR, r.ordreJourR, r.lieuR, r.remarquesR, r.montrerDispoR, r.estAnnulee, r.idP_Orga, r.idC_Fixe, p.nomP, p.prenomP'
. " FROM AWOR_Reunion r, AWOR_Personne p WHERE r.idR='$idR' AND p.idP=r.idP_Orga";
$result = @mysql_query($query);
if ( ! $result || ( mysql_num_rows($result) !== 1 ) )
{
$errmsg="Impossible de récuprérer les informations de la réunion : Erreur de base de données\n";
return $errmsg;
}
list($objetR, $ordreJourR, $lieuR, $remarquesR, $montrerDispoR, $estAnnulee, $idP_Orga, $idC_Fixe, $nomP, $prenomP) = mysql_fetch_row($result);
if ( $estAnnulee=='oui' ) { $etat = 'reunion_annulee'; } elseif ( $idC_Fixe!=null) { $etat ='reunion_fixee'; } else { $etat = 'reunion_en_cours'; }
?>
Détails de la réunion
(Editer)\n";
}
$objetR=htmlentities($objetR, ENT_QUOTES);
$ordreJourR=htmlentities($ordreJourR, ENT_QUOTES);
$lieuR=htmlentities($lieuR, ENT_QUOTES);
$remarquesR=htmlentities($remarquesR, ENT_QUOTES);
$nomP=htmlentities($nomP, ENT_QUOTES);
$prenomP=htmlentities($prenomP, ENT_QUOTES);
?>
|
Objet : |
|
Organisateur : |
|
Lieu : |
|
Ordre du jour : |
|
Remarques : |
|
Etat : |
' ."\n";
switch($etat)
{
case 'reunion_fixee':
echo "Fixée\n";
break;
case 'reunion_en_cours':
echo "En préparation\n";
break;
case 'reunion_annulee':
echo "Annulée\n";
break;
}
if ( $montrerDispoR === 'non' ) { echo ', disponibilités masquées'; }
?>
0 )
{
$row = mysql_fetch_assoc($result);
// Affichage des entêtes du tableau et du pied de tableau
echo '\n";
}
}
function delete_from_awor_liste()
{
require_once('include/connect.inc.php');
if ( isset($_POST['id']) && is_array($_POST['id']) )
{
if ( ! base_delete_awor_liste( 'idL', array_keys($_POST['id'] ) ) )
{
echo "ROLLBACK
\n";
mysql_query("ROLLBACK");
}
}
}
function delete_from_awor_fichier()
{
require_once('include/connect.inc.php');
if ( isset($_POST['id']) && is_array($_POST['id']) )
{
if ( ! base_delete_awor_fichier( 'idFic', array_keys($_POST['id'] ) ) )
{
echo "ROLLBACK
\n";
mysql_query("ROLLBACK");
}
}
}
function delete_from_awor_reunion()
{
require_once('include/connect.inc.php');
if ( isset($_POST['id']) && is_array($_POST['id']) )
{
if ( ! base_delete_awor_reunion( array_keys($_POST['id']) ) )
{
echo "ROLLBACK
\n";
mysql_query("ROLLBACK");
}
}
}
function delete_from_awor_personne()
{
require_once('include/connect.inc.php');
if ( isset($_POST['id']) && is_array($_POST['id']) )
{
if ( ! base_delete_awor_personne( array_keys($_POST['id']) ) )
{
echo "ROLLBACK
\n";
mysql_query("ROLLBACK");
}
}
}
function base_delete_awor_reunion($idR_array)
{
echo "function base_delete_awor_reunion($idR_array)
\n";
// Suppression des créneaux associés
$idR_implode=implode(',', $idR_array);
$query = "SELECT idC FROM AWOR_Creneau WHERE idR IN ($idR_implode);";
$idC_array=array();
if ( $result = @mysql_query($query) )
{
while ( list($idC) = mysql_fetch_array($result) ) { $idC_array[]=$idC; }
}
if ( !base_delete_awor_creneau( $idC_array ) ) { return false; }
// Suppression des listes associées
$idR_Interne_implode=implode("','interne_idR_", $idR_array);
if ( $idR_Interne_implode != '' ) { $idR_Interne_implode = "'interne_idR_" . $idR_Interne_implode . "'"; }
$query = "SELECT idL FROM AWOR_Liste WHERE libelleL IN ($idR_Interne_implode);";
//~ echo "$query
\n";
$idL_array=array();
if ( $result = @mysql_query($query) )
{
while ( list($idL) = mysql_fetch_array($result) ) { $idL_array[]=$idL; }
}
//~ print_r($idL_array);
if ( !base_delete_awor_liste('idL', $idL_array) ) { return false; }
if ( !base_delete_awor_fichier('idR', $idR_array) ) { return false; }
if ( !base_delete_awor_repondre('idR', $idR_array) ) { return false; }
$idR_implode=implode(',', $idR_array);
if ( $idR_implode!= '' )
{
$query="DELETE FROM AWOR_Reunion WHERE idR IN ($idR_implode);";
echo "$query
\n";
return ( mysql_query($query) !== false ) ;
}
return true;
}
function base_delete_awor_personne($idP_array)
{
echo "function base_delete_awor_personne($idP_array)
\n";
// Suppression des r�unions organis�es par les personnes concern�es
$idP_implode=implode(',', $idP_array);
$query = "SELECT DISTINCT idR FROM AWOR_Reunion WHERE idP_Orga IN ($idP_implode);";
$idR_array=array();
if ( $result = @mysql_query($query) )
{
while ( list($idR) = mysql_fetch_array($result) ) { $idR_array[]=$idR; }
}
// Suppr Choisir, Repondre
if ( !base_delete_awor_reunion($idR_array) ) { return false; }
// Suppression des personnes dans les listes les contenant
if ( !base_delete_awor_appartenir('idP', $idP_array) ) { return false; }
// Suppression des listes privées appartenant aux personnes
// TODO : voir pour les listes publiques appartenant aux personnes
if ( !base_delete_awor_liste('idP_Createur', $idP_array) ) { return false; }
// Suppression effective des personnes
$idP_implode=implode(',', $idP_array);
if ( $idP_implode!= '' )
{
$query="DELETE FROM AWOR_Personne WHERE idP IN ($idP_implode);";
echo "$query
\n";
return ( mysql_query($query) !== false ) ;
}
}
function base_delete_awor_liste($idName, $id_array)
{
// idName = ( idL | idP_Createur )
echo "function base_delete_awor_liste($idName, $id_array)
\n";
// Suppression du contenu des listes
if ( !base_delete_awor_appartenir('idL', $id_array) ) { return false; }
// Suppression des listes
$id_implode=implode(',', $id_array);
if ( $id_implode!= '' )
{
$query="DELETE FROM AWOR_Liste WHERE $idName IN ($id_implode);";
echo "$query
\n";
mysql_query($query);
}
return true;
}
function base_delete_awor_fichier($idName, $id_array)
{
// $idName = (idFic | idR)
echo "function base_delete_awor_fichier($idName, $id_array)
\n";
require("include/ludo/config.inc.php");
$id_implode=implode(',', $id_array);
// Supression physique
if ( isset($CONFIG['UPLOAD']['relative_path']) ) { $basepath=$CONFIG['UPLOAD']['relative_path']; } else { $basepath='fichiers/';}
$basepath=$_SERVER['DOCUMENT_ROOT'].'/'.$basepath;
$requete = "SELECT nomFic FROM AWOR_Fichier WHERE $idName IN ($id_implode);";
echo "$requete
\n";
if( ( $resultat = mysql_query($requete) ) )
{
while( list($fichier) = mysql_fetch_array($resultat))
{
echo "unlink($basepath.$fichier);
\n";
unlink($basepath.$fichier);
}
}
// Suppression dans la base
if ( $id_implode!= '' )
{
$query="DELETE FROM AWOR_Fichier WHERE $idName IN ($id_implode);";
echo "$query
\n";
return ( mysql_query($query) !== false ) ;
}
return true;
}
function base_delete_awor_choisir($idName, $id_array)
{
// idName = (idP|idR)
echo "function base_delete_awor_choisir($idName, $id_array)
\n";
$id_implode=implode(',', $id_array);
if ( $id_implode!= '' )
{
$query="DELETE FROM AWOR_Choisir WHERE $idName IN ($id_implode);";
echo "$query
\n";
return ( mysql_query($query) !== false ) ;
}
return true;
}
function base_delete_awor_repondre($idName, $id_array)
{
echo "function base_delete_awor_repondre($idName, $id_array)
\n";
// idName=(idR|idP)
// Suppression des Reponses
$id_implode=implode(',', $id_array);
if ( $id_implode!= '' )
{
$query="DELETE FROM AWOR_Repondre WHERE $idName IN ($id_implode);";
echo "$query
\n";
return ( mysql_query($query) !== false ) ;
}
return true;
}
function base_delete_awor_appartenir($idName, $id_array)
{
// $idName = (idL | idP)
echo "function base_delete_awor_appartenir($idName, $id_array)
\n";
// Suppression dans la base
$idL_implode=implode(',', $id_array);
if ( $idL_implode!= '' )
{
$query="DELETE FROM AWOR_Appartenir WHERE $idName IN ($idL_implode);";
echo "$query
\n";
return ( mysql_query($query) !== false ) ;
}
return true;
}
function base_delete_awor_creneau($idC_array)
{
echo "function base_delete_awor_creneau($idC_array)
\n";
// Suppression des réponses aux créneaux
if ( ! base_delete_awor_choisir('idC', $idC_array) ) { return false; }
// Suppression des créneaux
$idC_implode=implode(',', $idC_array);
if ( $idC_implode!= '' )
{
$query="DELETE FROM AWOR_Creneau WHERE idC IN ($idC_implode);";
echo "$query
\n";
return ( mysql_query($query) !== false ) ;
}
return true;
}
// TODO : suppression des listes vides
?>