Websocket Support (#937)
* Atom / RSS meta link * Spike * Feeling good about this spike now * Remove document.collection * Remove koa.ctx from all presenters to make them portable outside requests * Remove full serialized model from events Move events.add to controllers for now, will eventually be in commands * collections.create event parentDocument -> parentDocumentId * Fix up deprecated tests * Fixed: Doc creation * documents.move * Handle collection deleted * 💚 * Authorize room join requests * Move starred data structure Account for documents with no context on sockets * Add socket.io-redis * Add WEBSOCKETS_ENABLED env variable to disable websockets entirely for self hosted New installations will default to true, existing installations to false * 💚 No need for promise response here * Reload notice
This commit is contained in:
@ -1,6 +1,7 @@
|
||||
// @flow
|
||||
import { Document, Collection } from '../models';
|
||||
import { sequelize } from '../sequelize';
|
||||
import events from '../events';
|
||||
|
||||
export default async function documentMover({
|
||||
document,
|
||||
@ -67,10 +68,17 @@ export default async function documentMover({
|
||||
}
|
||||
|
||||
await document.save({ transaction });
|
||||
document.collection = newCollection;
|
||||
result.documents.push(document);
|
||||
|
||||
await transaction.commit();
|
||||
|
||||
events.add({
|
||||
name: 'documents.move',
|
||||
modelId: document.id,
|
||||
collectionIds: result.collections.map(c => c.id),
|
||||
documentIds: result.documents.map(d => d.id),
|
||||
teamId: document.teamId,
|
||||
});
|
||||
} catch (err) {
|
||||
if (transaction) {
|
||||
await transaction.rollback();
|
||||
|
Reference in New Issue
Block a user