prestation/PHPMailer/Modele/Messagerie.php
2025-12-01 18:54:33 +00:00

166 lines
4.6 KiB
PHP

<?php
require_once 'Framework/Modele.php';
class Messagerie extends Modele {
public function getmessagesnonlus()
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$user = $_SESSION['p_login'];
/*
$sql = 'call sp_p_messages_non_lus(?)';
$resultat = $this->executerRequete($sql, array($codePrestataire));
*/
$sql = 'call sp_p_messages_non_lus_user(?, ?)';
$resultat = $this->executerRequete($sql, array($codePrestataire, $user));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function countmessagesnonlus()
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$sql = 'call sp_p_count_messages_non_lus(?)';
$resultat = $this->executerRequete($sql, array($codePrestataire));
$donnees = $resultat->fetch(PDO::FETCH_ASSOC);
$_SESSION['p_nbMessagesNonLus_C'] = $donnees['nbMessagesNonLus'];
return $_SESSION['p_nbMessagesNonLus_C'];
}
public function creermessage($textMessage, $idParent)
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_creer_messagerie(?, ?, ?, ?);';
$this->executerRequete($sql, array($codePrestataire, $textMessage, $user, $idParent));
}
public function marquercommelu($idMessagerie)
{
$user = $_SESSION['p_login'];
$sql = 'call sp_p_marquer_messagerie_lu(?, ?);';
$this->executerRequete($sql, array($idMessagerie, $user));
}
public function getmessages($codePrestataire, $date1, $date2, $messageLu, $textMessage)
{
$sql = 'call sp_p_messages(?, ?, ?, ?, ?)';
$resultat = $this->executerRequete($sql, array($codePrestataire, $date1, $date2, $messageLu, $textMessage));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function repondremessage($idMessagerie, $idParent, $textMessage)
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_repondre_messagerie(?, ?, ?, ?, ?);';
$this->executerRequete($sql, array($codePrestataire, $idMessagerie, $idParent, $textMessage, $user));
}
public function getmessageriesimple($idMessagerie, $idParent)
{
$sql = 'call sp_p_get_messagerie_simple(?, ?);';
$resultat = $this->executerRequete($sql, array($idMessagerie, $idParent));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function getmessageriehistorique($idParent)
{
$sql = 'call sp_p_messages_historique(?)';
$resultat = $this->executerRequete($sql, array($idParent));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getmessagescommun($date1, $date2)
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$sql = 'call sp_p_messages_commun(?, ?, ?)';
$resultat = $this->executerRequete($sql, array($codePrestataire, $date1, $date2));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getderniermessagenonlu()
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$sql = 'call sp_p_dernier_message_non_lu(?)';
$resultat = $this->executerRequete($sql, array($codePrestataire));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function countmessagesnonlususer()
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_count_messages_non_lus_user(?, ?)';
$resultat = $this->executerRequete($sql, array($codePrestataire, $user));
$donnees = $resultat->fetch(PDO::FETCH_ASSOC);
$_SESSION['p_nbMessagesNonLus_C'] = $donnees['nbMessagesNonLus'];
return $_SESSION['p_nbMessagesNonLus_C'];
}
public function getderniermessagenonluuser()
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_dernier_message_non_lu_user(?, ?)';
$resultat = $this->executerRequete($sql, array($codePrestataire, $user));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function marquercommeluser($idMessagerie)
{
$user = $_SESSION['p_login'];
$sql = 'call sp_p_marquer_messagerie_lu_user(?, ?);';
$this->executerRequete($sql, array($idMessagerie, $user));
}
public function vidermessagerie($dateLimite)
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_marquer_messagerie_plusieurs_lu_user(?, ?, ?)';
$this->executerRequete($sql, array($codePrestataire, $dateLimite, $user));
}
}