Fix get deleted messages, change the method to get messages and return only _ids (#13021)

Change `chat.getDeletedMessages` to get messages after informed date and return only message's _id
pull/11124/merge
Marcos Spessatto Defendi 7 years ago committed by Rodrigo Nascimento
parent af60043217
commit 6151a895c8
  1. 3
      packages/rocketchat-api/server/v1/chat.js
  2. 4
      packages/rocketchat-lib/server/models/_Base.js
  3. 9
      packages/rocketchat-lib/server/models/_BaseDb.js

@ -357,9 +357,10 @@ RocketChat.API.v1.addRoute('chat.getDeletedMessages', { authRequired: true }, {
} else if (isNaN(Date.parse(since))) {
throw new Meteor.Error('The "since" query parameter must be a valid date.');
}
const cursor = RocketChat.models.Messages.trashFindDeleted(new Date(since), { rid: roomId }, {
const cursor = RocketChat.models.Messages.trashFindDeletedAfter(new Date(since), { rid: roomId }, {
skip: offset,
limit: count,
fields: { _id: 1 },
});
const total = cursor.count();

@ -128,10 +128,6 @@ class ModelsBase {
return this._db.trashFindDeletedAfter(...args);
}
trashFindDeleted(...args) {
return this._db.trashFindDeleted(...args);
}
processQueryOptionsOnResult(result, options = {}) {
if (result === undefined || result === null) {
return undefined;

@ -376,15 +376,6 @@ class ModelsBaseDb extends EventEmitter {
return trash.find(query, options);
}
trashFindDeleted(deletedAt, query = {}, options) {
query.__collection__ = this.name;
query._deletedAt = {
$gte: deletedAt,
};
return trash.find(query, options);
}
}
export default ModelsBaseDb;

Loading…
Cancel
Save