mirror of
				https://gitlab.com/comunic/comunicapiv2
				synced 2025-11-03 19:14:03 +00:00 
			
		
		
		
	Can open new conversations
This commit is contained in:
		@@ -1,6 +1,7 @@
 | 
			
		||||
import { Conversation, BaseConversation } from "../entities/Conversation";
 | 
			
		||||
import { DatabaseHelper } from "./DatabaseHelper";
 | 
			
		||||
import { time } from "../utils/DateUtils";
 | 
			
		||||
import { ConversationMessage } from "../entities/ConversationMessage";
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Conversations helper
 | 
			
		||||
@@ -240,6 +241,23 @@ export class ConversationsHelper {
 | 
			
		||||
		}) == 1;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Get the last messages of a conversation
 | 
			
		||||
	 * 
 | 
			
		||||
	 * @param convID Target conversation ID
 | 
			
		||||
	 * @param numberOfMessages The maximum number of messages to return
 | 
			
		||||
	 */
 | 
			
		||||
	public static async GetLastMessages(convID: number, numberOfMessages: number) : Promise<Array<ConversationMessage>> {
 | 
			
		||||
		return (await DatabaseHelper.Query({
 | 
			
		||||
			table: MESSAGES_TABLE,
 | 
			
		||||
			where: {
 | 
			
		||||
				conv_id: convID
 | 
			
		||||
			},
 | 
			
		||||
			limit: numberOfMessages,
 | 
			
		||||
			order: "id DESC"
 | 
			
		||||
		})).map(m => this.DBToConversationMessage(convID, m));
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Get the list of members of a conversation
 | 
			
		||||
	 * 
 | 
			
		||||
@@ -274,4 +292,22 @@ export class ConversationsHelper {
 | 
			
		||||
			members: await this.GetConversationMembers(row.id)
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Turn a database entry into a conversation message
 | 
			
		||||
	 * 
 | 
			
		||||
	 * @param convID The ID of the conversation the message belongs to
 | 
			
		||||
	 * @param row Row to convert
 | 
			
		||||
	 * @return Generated conversation message
 | 
			
		||||
	 */
 | 
			
		||||
	private static DBToConversationMessage(convID: number, row: any) : ConversationMessage {
 | 
			
		||||
		return new ConversationMessage({
 | 
			
		||||
			id: row.id,
 | 
			
		||||
			convID: convID,
 | 
			
		||||
			userID: row.user_id,
 | 
			
		||||
			timeSent: row.time_insert,
 | 
			
		||||
			imagePath: row.image_path ? row.image_path : "",
 | 
			
		||||
			message: row.message ? row.message : ""
 | 
			
		||||
		});
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user