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/packages/rocketchat-channel-settings/server/functions/saveRoomCustomFields.js

22 lines
748 B

import { Meteor } from 'meteor/meteor';
import { Match } from 'meteor/check';
RocketChat.saveRoomCustomFields = function(rid, roomCustomFields) {
if (!Match.test(rid, String)) {
throw new Meteor.Error('invalid-room', 'Invalid room', {
function: 'RocketChat.saveRoomCustomFields',
});
}
if (!Match.test(roomCustomFields, Object)) {
throw new Meteor.Error('invalid-roomCustomFields-type', 'Invalid roomCustomFields type', {
function: 'RocketChat.saveRoomCustomFields',
});
}
const ret = RocketChat.models.Rooms.setCustomFieldsById(rid, roomCustomFields);
// Update customFields of any user's Subscription related with this rid
RocketChat.models.Subscriptions.updateCustomFieldsByRoomId(rid, roomCustomFields);
return ret;
};