The communications platform that puts data protection first.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Rocket.Chat/app/federation/server/methods/loadContextEvents.js

18 lines
656 B

import { Meteor } from 'meteor/meteor';
import { hasRole } from '../../../authorization/server';
import { FederationRoomEvents } from '../../../models/server';
Meteor.methods({
'federation:loadContextEvents': (latestEventTimestamp) => {
if (!Meteor.userId()) {
throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'loadContextEvents' });
}
if (!hasRole(Meteor.userId(), 'admin')) {
throw new Meteor.Error('error-not-authorized', 'Not authorized', { method: 'loadContextEvents' });
}
return FederationRoomEvents.find({ timestamp: { $gt: new Date(latestEventTimestamp) } }, { sort: { timestamp: 1 } }).fetch();
},
});