2017-10-12 10:00:28 +08:00
|
|
|
import Annotations from '/imports/api/annotations';
|
2016-11-19 01:35:28 +08:00
|
|
|
import Logger from '/imports/startup/server/logger';
|
|
|
|
|
2017-10-12 08:52:57 +08:00
|
|
|
export default function clearAnnotations(meetingId, whiteboardId, userId) {
|
|
|
|
const selector = {};
|
|
|
|
|
2016-11-19 01:35:28 +08:00
|
|
|
if (meetingId) {
|
2017-10-12 08:52:57 +08:00
|
|
|
selector.meetingId = meetingId;
|
|
|
|
}
|
|
|
|
|
|
|
|
if (whiteboardId) {
|
|
|
|
selector.whiteboardId = whiteboardId;
|
|
|
|
}
|
|
|
|
|
|
|
|
if (userId) {
|
|
|
|
selector.userId = userId;
|
2016-11-19 01:35:28 +08:00
|
|
|
}
|
|
|
|
|
2017-10-12 08:52:57 +08:00
|
|
|
const cb = (err) => {
|
|
|
|
if (err) {
|
2017-10-13 03:07:02 +08:00
|
|
|
return Logger.error(`Removing Annotations from collection: ${err}`);
|
2017-10-12 08:52:57 +08:00
|
|
|
}
|
|
|
|
|
2017-11-28 03:23:38 +08:00
|
|
|
if (userId) {
|
|
|
|
return Logger.info(`Cleared Annotations for userId=${userId} where whiteboard=${whiteboardId}`);
|
2017-10-12 08:52:57 +08:00
|
|
|
}
|
|
|
|
|
2017-11-28 03:23:38 +08:00
|
|
|
if (whiteboardId) {
|
|
|
|
return Logger.info(`Cleared Annotations for whiteboard=${whiteboardId}`);
|
|
|
|
}
|
|
|
|
|
|
|
|
if (meetingId) {
|
|
|
|
return Logger.info(`Cleared Annotations (${meetingId})`);
|
2017-10-12 08:52:57 +08:00
|
|
|
}
|
|
|
|
|
2017-11-28 03:23:38 +08:00
|
|
|
return Logger.info('Cleared Annotations (all)');
|
2017-10-12 08:52:57 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
return Annotations.remove(selector, cb);
|
2017-06-03 03:25:02 +08:00
|
|
|
}
|