Return recently opened conversations messages

This commit is contained in:
Pierre
2017-06-25 18:09:18 +02:00
parent 2872a84457
commit eed7db90cf
4 changed files with 63 additions and 8 deletions

View File

@ -20,7 +20,7 @@ class conversations {
/**
* @var String $conversationMessagesTabel Name of the conversation messages table
*/
private $conversationMessagesTable;
private $conversationsMessagesTable;
/**
@ -29,7 +29,7 @@ class conversations {
public function __construct(){
$this->conversationsListTable = CS::get()->config->get("dbprefix")."conversations_list";
$this->conversationsUsersTable = CS::get()->config->get("dbprefix")."conversations_users";
$this->conversationMessagesTable = CS::get()->config->get("dbprefix")."conversations_messages";
$this->conversationsMessagesTable = CS::get()->config->get("dbprefix")."conversations_messages";
}
/**
@ -429,7 +429,7 @@ class conversations {
private function insertMessage($userID, $conversationID, $message, $image_path = false){
//Prepare values
$tableName = $this->conversationMessagesTable;
$tableName = $this->conversationsMessagesTable;
$values = array(
"ID_".$this->conversationsListTable => $conversationID,
"ID_utilisateurs" => $userID,
@ -539,6 +539,31 @@ class conversations {
return true;
}
/**
* Get the last messages of a conversation
*
* @param Integer $conversationID The ID of the target conversation
* @param Integer $numberOfMessages The number of messages to return
* @return Array The messages of the conversation
*/
public function getLastMessages($conversationID, $numberOfMessages) : array {
//Prepare database request
$tableName = $this->conversationsMessagesTable;
//Define conditions
$conditions = "WHERE ID_".$this->conversationsListTable." = ? ORDER BY ID DESC LIMIT ".($numberOfMessages*1);
$condVals = array(
$conversationID
);
//Try to perform request on the database
$messages = CS::get()->db->select($tableName, $conditions, $condVals);
//Return messages
return $messages;
}
}
//Register component