|
|
|
|
@ -2,7 +2,7 @@ import { Meteor } from 'meteor/meteor'; |
|
|
|
|
import { check } from 'meteor/check'; |
|
|
|
|
|
|
|
|
|
import { Subscriptions, Rooms } from '../../app/models/server'; |
|
|
|
|
import { canAccessRoom, hasPermission, roomAccessAttributes } from '../../app/authorization/server'; |
|
|
|
|
import { canAccessRoom, canAccessRoomId, hasPermission, roomAccessAttributes } from '../../app/authorization/server'; |
|
|
|
|
import { settings } from '../../app/settings/server'; |
|
|
|
|
import { loadMessageHistory } from '../../app/lib/server'; |
|
|
|
|
|
|
|
|
|
@ -19,6 +19,7 @@ Meteor.methods({ |
|
|
|
|
const fromId = Meteor.userId(); |
|
|
|
|
|
|
|
|
|
const room = Rooms.findOneById(rid, { fields: { ...roomAccessAttributes, t: 1 } }); |
|
|
|
|
|
|
|
|
|
if (!room) { |
|
|
|
|
return false; |
|
|
|
|
} |
|
|
|
|
@ -27,6 +28,10 @@ Meteor.methods({ |
|
|
|
|
return false; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (room.prid && !canAccessRoomId(room.prid, fromId)) { |
|
|
|
|
return false; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
const canAnonymous = settings.get('Accounts_AllowAnonymousRead'); |
|
|
|
|
const canPreview = hasPermission(fromId, 'preview-c-room'); |
|
|
|
|
|
|
|
|
|
|