"; } ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# function index() { global $_SESSION; ######################################################################### ### Création de différents objets ######################################################################### $db = new dbquery(); $db->connect(); $func = new functions(); $gdd = new gdd(); ################################################### ### Initialisation des valeurs de la demande ################################################### $Vli_chiffre_gdd = 152; $Vli_annee_gdd = 2010; $Vls_type_label_gdd = "EV"; $Vls_type_nom_gdd = "Espace Vert"; $gdd->set_chiffre($Vli_chiffre_gdd); $gdd->set_annee($Vli_annee_gdd); $gdd->set_type_label($Vls_type_label_gdd); $gdd->set_type_nom($Vls_type_nom_gdd); ################################################### ### Afficher le chiffre ################################################### echo $gdd->afficher_numero_gdd(); } ################################################################# ################################################################# ### Création de la demande ################################################################# ################################################################# function creation_demande() { global $_SESSION; ######################################################################### $Vli_id_courrier = $_GET["id"]; ######################################################################### ### Création de différents objets ######################################################################### $db = new dbquery(); $db->connect(); $func = new functions(); $gdd = new gdd(); ######################################################################### ### Création de menu déroulant des différent type de demande ######################################################################### $res_liste_type_demande = $db->query(" SELECT td.nom, td.abreviation, td.id FROM gdd_type_demande td WHERE td.actif = \"Y\" ORDER BY td.nom "); $Vls_menu_type_demande = " "; ################################################### ### Afficher du formulaire de demande ################################################### echo "
"; } ################################################################# ################################################################# ### Validation de la création de la demande ################################################################# ################################################################# function validation_creation_demande() { global $_SESSION; ######################################################################### ### Création de différents objets ######################################################################### $db = new dbquery(); $db->connect(); $func = new functions(); $gdd = new gdd(); ############################################################################# ### Récupération des valeur du formulaire ############################################################################# $Vli_id_courrier = $_POST["Vfi_id_courrier"]; $Vlt_liste_titre_demande = $_POST["Vfs_liste_titre_demande"]; $Vlt_liste_id_type = $_POST["Vfs_liste_id_type"]; $Vlt_liste_date_limite = $_POST["Vfs_liste_date_limite"]; ############################################################################# ### Récupération de l'année actuelle ############################################################################# $Vli_annee_actuelle = date("Y"); $Vls_id_user = $_SESSION["user"]["UserId"]; ############################################################################# ### Création des demandes dans la base ############################################################################# foreach($Vlt_liste_titre_demande AS $key => $Vls_titre_demande) { $Vli_id_type_demande = $Vlt_liste_id_type[$key]; $Vld_date_limite = $Vlt_liste_date_limite[$key]; $Vlt_date_limite = explode("/", $Vld_date_limite); $Vls_date_limite = $Vlt_date_limite[2]."-".$Vlt_date_limite[1]."-".$Vlt_date_limite[0]; #################################################### ### Recherche du numéro de la demande selon ### l'annee et le type de la demande #################################################### $res_num_max_demande = $db->query(" SELECT MAX(d.numero) FROM gdd_demande d WHERE d.annee = $Vli_annee_actuelle AND d.fkid_type_demande = $Vli_id_type_demande "); $val_num_max_demande = $db->fetch_array(); if($val_num_max_demande[0] !="") { $Vli_num_max_demande = $val_num_max_demande[0] + 1; } else { $Vli_num_max_demande = 1; } ##################################### ### Insertion dans la base ##################################### $res_liste_type_demande = $db->query(" INSERT INTO gdd_demande (fkid_type_demande, annee, numero, fkid_courrier, date_creation, titre_demande, fkid_user_createur, date_limite) VALUES (\"$Vli_id_type_demande\", \"$Vli_annee_actuelle\", \"$Vli_num_max_demande\", \"$Vli_id_courrier\", \"".date("Y-m-d H:m:s")."\", \"$Vls_titre_demande\", \"$Vls_id_user\", \"$Vls_date_limite\" ) "); } } ################################################################# ################################################################# ### Modification de la demande ################################################################# ################################################################# function modifier_demande() { global $_SESSION; $Vli_id_demande = $_GET["id_demande"]; $Vli_id_user_connecter = $_SESSION["user"]["UserId"]; $Vls_onglet = $_GET["onglet"]; $Vli_carrousel_current = $_GET["carrousel_current"]; $Vli_id_annotation_open = $_GET["id_annotation"]; ######################################################################### $Vls_groupe_connect = $_SESSION["user"]["primarygroup"]; $Vls_user_connect = $_SESSION["user"]["UserId"]; ### Constitution de la liste des groupes de la GDD if( count($_SESSION['user']['groups']) > 0 ) { $Vlt_liste_groupe = array(); for($i=0; $i|
";
#####################################################################
#####################################################################
#####################################################################
### Onglet Information
#####################################################################
#####################################################################
#####################################################################
if($Vls_onglet=="")
{
$Vls_class_onglet = "on";
}
else
{
$Vls_class_onglet = "off";
}
echo "
";
#####################################################################
#####################################################################
#####################################################################
### Onglet Intervention
#####################################################################
#####################################################################
#####################################################################
###########################################################
### Recherche de tous les emetteurs et destinataires
###########################################################
$res_liste_emet_dest = $db->query("
SELECT
gi.fkid_user_emetteur,
gi.fkid_user_destinataire
FROM
gdd_intervention gi
WHERE
gi.fkid_demande = \"$Vli_id_demande\"
");
$Vlt_liste_emet_dest = array();
### on ajoute automatiquement la personne qui a créé la demande
$Vlt_liste_emet_dest[] = $Vli_id_user_createur;
while($val_liste_emet_dest = $db->fetch_array())
{
$Vls_emetteur_inter = $val_liste_emet_dest[0];
$Vls_destinataire_inter = $val_liste_emet_dest[1];
$Vlt_liste_emet_dest[] = $Vls_emetteur_inter;
$Vlt_liste_emet_dest[] = $Vls_destinataire_inter;
###############################################################################
### On regarde toutes les personnes qui ont les droits pour traiter
### les demandes et les interventions de l'emetteur ou le destinataire
###############################################################################
if(user_autorise_traitement($Vls_emetteur_inter, $Vli_id_user_connecter) OR user_autorise_traitement($Vls_destinataire_inter, $Vli_id_user_connecter))
{
$Vlt_liste_emet_dest[] = $Vli_id_user_connecter;
//echo $Vli_id_user_connecter;
}
}
###########################################################
if($Vls_onglet=="intervention")
{
$Vls_class_onglet = "on";
}
else
{
$Vls_class_onglet = "off";
}
echo"
";
#####################################################################
#####################################################################
#####################################################################
### Onglet des annotations
#####################################################################
#####################################################################
#####################################################################
####################################################
### Création de la liste des groupes
####################################################
$query_liste_groupe = "
SELECT
ug.group_id,
ug.group_desc
FROM
gdd_demande gdd,
gdd_domaine_groupe gdg,
usergroups ug
WHERE
gdd.id = \"$Vli_id_demande\"
AND gdd.fkid_domaine = gdg.fkid_domaine
AND gdg.fkid_groupe = ug.group_id
ORDER BY
ug.group_desc
";
$res_liste_groupe = $db->query($query_liste_groupe);
$Vls_liste_groupe = "";
while($val_liste_groupe = $db->fetch_array())
{
$Vli_id_groupe_destinataire = $val_liste_groupe[0];
$Vls_nom_groupe_destinataire = $val_liste_groupe[1];
######################################################
$Vls_liste_groupe .= "
$Vls_nom_groupe_destinataire
"; } #################################################### ### Création de la liste des utilisateurs #################################################### $query_liste_user = " SELECT u.user_id, u.lastname, u.firstname FROM gdd_demande gdd, gdd_domaine_groupe gdg, usergroups ug, usergroup_content ugc, users u WHERE gdd.id = \"$Vli_id_demande\" AND gdd.fkid_domaine = gdg.fkid_domaine AND gdg.fkid_groupe = ug.group_id AND ug.group_id = ugc.group_id AND ugc.user_id = u.user_id ORDER BY u.lastname "; $res_liste_user = $db->query($query_liste_user); $Vls_liste_utilisateur = ""; $Vlt_liste_utilisateur = array(); while($val_liste_user = $db->fetch_array()) { $Vli_id_user_destinataire = $val_liste_user[0]; $Vls_nom_user_destinataire = $val_liste_user[1]; $Vls_prenom_user_destinataire = $val_liste_user[2]; ###################################################### ### On regarde si l'utilisateur n'est pas déjà affiché ###################################################### if(!in_array($Vli_id_user_destinataire, $Vlt_liste_utilisateur)) { $Vlt_liste_utilisateur[] = $Vli_id_user_destinataire; $Vls_liste_utilisateur .= " $Vls_nom_user_destinataire $Vls_prenom_user_destinataire "; } } ####################################################################################################################### ### Création de la liste des utilisateurs qui on une annotation pour eux ### permettra de savoir si la personne a le droit de réagir sur l'annotation ### même si la personne n'est pas le créateur de la de la demande ou propiétaire d'une intervention ####################################################################################################################### $query_liste_user_autorise_annotation = " SELECT gau.fkid_destinataire FROM gdd_annotation ga, gdd_annotation_user gau WHERE ga.fkid_demande = \"$Vli_id_demande\" AND ga.id = gau.fkid_annotation "; $res_liste_user_autorise_annotation = $db->query($query_liste_user_autorise_annotation); $Vlt_liste_user_autorise_annotation = array(); while($val_liste_user_autorise_annotation = $db->fetch_array()) { $Vlt_liste_user_autorise_annotation[] = $val_liste_user_autorise_annotation[0]; } #################################################### ### Création de la liste des annotations #################################################### ### Formation de la liste des groupe à rechercher $Vls_where_groupe_rechercher = ""; foreach($Vlt_liste_groupe as $Vli_id_groupe_rechercher) { $Vls_where_groupe_rechercher .= "OR ga.liste_groupe like \"%|$Vli_id_groupe_rechercher|%\""; } ### Formation de la liste des users chez qui il a le droit de voir $query_liste_user_autorise_lecture = " SELECT gau.fkid_user_proprietaire FROM gdd_autorise_user gau WHERE gau.fkid_user_autorise = \"$Vls_user_connect\" "; $res_liste_user_autorise_lecture = $db->query($query_liste_user_autorise_lecture); $Vlt_liste_user_autorise_lecture = array(); while($val_liste_user_autorise_lecture = $db->fetch_array()) { $Vls_id_user_autorise_lecture = $val_liste_user_autorise_lecture[0]; $Vlt_liste_user_autorise_lecture[] = $Vls_id_user_autorise_lecture; } $Vls_where_user_rechercher = ""; foreach($Vlt_liste_user_autorise_lecture as $Vls_id_user_autorise_lecture) { $Vls_where_user_rechercher .= "OR ga.liste_user like \"%|$Vls_id_user_autorise_lecture|%\""; } ################################################ $query_liste_annotation = " SELECT ga.id, ga.date_creation, ga.annotation, ga.tous, ga.liste_groupe, ga.liste_user, u.user_id, u.lastname, u.firstname, ug.group_desc FROM gdd_annotation ga, users u, usergroup_content ugc, usergroups ug WHERE ga.fkid_demande = $Vli_id_demande AND ga.fkid_createur= u.user_id AND u.user_id = ugc.user_id AND ugc.primary_group = \"Y\" AND ugc.group_id = ug.group_id AND (ga.fkid_createur = \"$Vls_user_connect\" OR ga.tous = \"Y\" ".$Vls_where_groupe_rechercher." ".$Vls_where_user_rechercher." OR ga.liste_user like \"%|$Vls_user_connect|%\" ) ORDER BY ga.date_creation DESC "; $res_liste_annotation = $db->query($query_liste_annotation); $Vls_liste_annotation = "
";
while($val_liste_annotation = $db->fetch_array())
{
$Vli_id_annotation = $val_liste_annotation[0];
$Vld_date_creation_annotation = $val_liste_annotation[1];
$Vls_annotation = $val_liste_annotation[2];
$Vls_tous_annotation = $val_liste_annotation[3];
$Vls_liste_groupe_annotation = $val_liste_annotation[4];
$Vls_liste_user_annotation = $val_liste_annotation[5];
$Vls_id_user_createur = $val_liste_annotation[6];
$Vls_nom_createur = $val_liste_annotation[7];
$Vls_prenom_createur = $val_liste_annotation[8];
$Vls_nom_groupe_createur = $val_liste_annotation[9];
############################################################
$Vlt_date_creation_annotation = explode(" ", $Vld_date_creation_annotation);
$Vls_jour_creation_annotation = $Vlt_date_creation_annotation[0];
$Vls_heure_creation_annoation = $Vlt_date_creation_annotation[1];
$Vlt_jour_creation_annotation = explode("-", $Vls_jour_creation_annotation);
$Vls_jour_creation_annotation = $Vlt_jour_creation_annotation[2]."/".$Vlt_jour_creation_annotation[1]."/".$Vlt_jour_creation_annotation[0];
$Vlt_heure_creation_annoation = explode(":", $Vls_heure_creation_annoation);
$Vls_heure_creation_annoation = $Vlt_heure_creation_annoation[0]."H".$Vlt_heure_creation_annoation[1];
############################################################
$Vls_annotation = str_replace("\n", "
";
####################################################
if($Vls_onglet=="annotation")
{
$Vls_class_onglet = "on";
}
else
{
$Vls_class_onglet = "off";
}
echo"
";
#####################################################################
#####################################################################
#####################################################################
### Onglet Courrier et pièces jointes
#####################################################################
#####################################################################
#####################################################################
$query_liste_courrier = "
select
r.res_id,
r.format,
dt.description,
r.SOURCE,
ds.path_template,
r.filename,
r.path,
r.CREATION_DATE
from
res_x r,
doctypes dt,
docservers ds
where
dt.TYPE_ID = r.TYPE_ID
AND
r.DOCSERVER_ID = ds.DOCSERVER_ID
AND
(
r.res_id = ".$Vli_id_courrier."
OR
r.relation = ".$Vli_id_courrier."
)
ORDER BY
r.res_id asc
";
$res_liste_courrier = $db->query($query_liste_courrier);
$Vls_liste_courrier = "";
$cpt_courrier = 1;
while($val_liste_courrier = $db->fetch_array())
{
$Vli_id_courrier_liste_courrier = $val_liste_courrier[0];
$Vls_format_liste_courrier = $val_liste_courrier[1];
$Vls_description_liste_courrier = $val_liste_courrier[2];
$Vli_source_liste_courrier = $val_liste_courrier[3];
$Vli_path_template_liste_courrier = $val_liste_courrier[4];
$Vli_file_name_liste_courrier = $val_liste_courrier[5];
$Vli_path_liste_courrier = $val_liste_courrier[6];
$Vli_date_creation_liste_courrier = $val_liste_courrier[7];
############################################################
$Vls_liste_courrier .= "
", $Vls_annotation); ############################################################ ### On regarde si la personne à lu cette annotation ############################################################ $db2 = new dbquery(); $db2->connect(); $query_annotation_lu = " SELECT gau.id FROM gdd_annotation_user gau WHERE gau.fkid_annotation = $Vli_id_annotation AND fkid_destinataire = \"$Vls_user_connect\" AND gau.lu = \"N\" "; $res_annotation_lu = $db2->query($query_annotation_lu); $val_liste_annotation = $db2->fetch_array(); $Vli_id_annotation_lecture = $val_liste_annotation[0]; if($Vli_id_annotation_lecture!="" AND $Vls_id_user_createur!=$Vls_user_connect) { $Vls_image_nouvelle_annotation = "
";
$Vls_affichage_bouton_lu = "
"; } #################################################### ### Création de la liste des utilisateurs #################################################### $query_liste_user_affichage = " SELECT u.user_id, u.lastname, u.firstname FROM gdd_demande gdd, gdd_domaine_groupe gdg, usergroups ug, usergroup_content ugc, users u WHERE gdd.id = \"$Vli_id_demande\" AND gdd.fkid_domaine = gdg.fkid_domaine AND gdg.fkid_groupe = ug.group_id AND ug.group_id = ugc.group_id AND ugc.user_id = u.user_id ORDER BY u.lastname "; $res_liste_user_affichage = $db3->query($query_liste_user_affichage); $Vls_liste_utilisateur_affichage = ""; $Vlt_liste_utilisateur_affichage = array(); while($val_liste_user_affichage = $db3->fetch_array()) { $Vli_id_user_destinataire = $val_liste_user_affichage[0]; $Vls_nom_user_destinataire = $val_liste_user_affichage[1]; $Vls_prenom_user_destinataire = $val_liste_user_affichage[2]; ###################################################### ### On regarde si l'utilisateur n'est pas déjà affiché ###################################################### if(!in_array($Vli_id_user_destinataire, $Vlt_liste_utilisateur_affichage)) { $Vlt_liste_utilisateur_affichage[] = $Vli_id_user_destinataire; ###################################################### if(substr_count($Vls_liste_user_annotation, "|".$Vli_id_user_destinataire."|")!="0") { $Vls_user_annotation_cheched = "checked"; $Vls_user_annotation_class = "survole_text"; } else { $Vls_user_annotation_cheched = ""; $Vls_user_annotation_class = ""; } ###################################################### $Vls_liste_utilisateur_affichage .= " $Vls_nom_user_destinataire $Vls_prenom_user_destinataire "; } } ###################################################### if($Vls_tous_annotation=="Y") { $Vls_tous_annotation_cheched = "checked"; $Vls_tous_annotation_class = "survole_text"; } else { $Vls_tous_annotation_cheched = ""; $Vls_tous_annotation_class = ""; } ###################################################### ### Creation de l'affichage de la liste destinataire ###################################################### $Vls_liste_destinataire_annoation = " "._GDD_ANNOTATION_DESTINATAIRE."
"._GDD_ALL."
"._GDD_ALL_USER."
"._GDD_ANNOTATION_GROUP."
$Vls_liste_groupe_affichage
"._GDD_ANNOTATION_USER."
$Vls_liste_utilisateur_affichage
|
";
####################################################
### Affichage du courrier
####################################################
echo"
|
"._GDD_COURRIER_PRINCIPAL." |
|
"._GDD_PIECE_JOINTE_COURRIER." N°".($cpt_courrier-1)." |