This commit is contained in:
Peter Maquiran
2022-03-04 14:20:39 +01:00
parent f5880fec2a
commit c112080917
6 changed files with 205 additions and 89 deletions
+42 -5
View File
@@ -11,11 +11,11 @@ export class ChatStorageService {
private storage: Storage,
) { }
/**
/**
* @description delete message in the DB. get all messages, delete then corresponding message and update the store
* @param id message ID
*/
async deleteMessageFromDb(messageId, roomId) {
if (environment.chatOffline) {
await this.storage.get('chatmsg' + roomId).then(async(messages: any = []) => {
@@ -118,7 +118,6 @@ export class ChatStorageService {
}
}
async addMessageDB(ChatMessage, roomId) {
if (environment.chatOffline) {
await this.storage.get('chatmsg' + roomId).then(async(messages: any = []) => {
@@ -133,7 +132,7 @@ export class ChatStorageService {
messages.push(ChatMessage)
await this.storage.set('chatmsg' + roomId, messages)
console.log('add to DB', ChatMessage)
// console.log('add to DB', ChatMessage)
} else {
const find = messages.find((message)=> {
@@ -144,12 +143,50 @@ export class ChatStorageService {
delete ChatMessage.temporaryData
messages.push(ChatMessage)
await this.storage.set('chatmsg' + roomId, messages)
console.log('add to DB', ChatMessage)
// console.log('add to DB', ChatMessage)
} else {
console.log('duplicate')
}
}
})
}
}
async addManyMessageDB(_ChatMessage: any[], roomId) {
if (environment.chatOffline) {
await this.storage.get('chatmsg' + roomId).then(async(messages: any = []) => {
if(!Array.isArray(messages)) {
messages = []
}
await _ChatMessage.forEach(async(ChatMessage)=>{
if(!ChatMessage._id && environment.chatOffline) {
delete ChatMessage.temporaryData
messages.push(ChatMessage)
} else {
const find = messages.find((message)=> {
return message._id == ChatMessage._id
})
if(!find) {
delete ChatMessage.temporaryData
messages.push(ChatMessage)
}
}
})
console.log('add to DB')
await this.storage.set('chatmsg' + roomId, messages)
})
}
}
}