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:
@@ -10,7 +10,6 @@ import removeMarkdown from '@tommoor/remove-markdown';
|
||||
import isUUID from 'validator/lib/isUUID';
|
||||
import { Collection, User } from '../models';
|
||||
import { DataTypes, sequelize } from '../sequelize';
|
||||
import events from '../events';
|
||||
import parseTitle from '../../shared/utils/parseTitle';
|
||||
import unescape from '../../shared/utils/unescape';
|
||||
import Revision from './Revision';
|
||||
@@ -289,14 +288,9 @@ Document.addHook('afterCreate', async model => {
|
||||
await collection.addDocumentToStructure(model);
|
||||
model.collection = collection;
|
||||
|
||||
events.add({ name: 'documents.create', model });
|
||||
return model;
|
||||
});
|
||||
|
||||
Document.addHook('afterDestroy', model =>
|
||||
events.add({ name: 'documents.delete', model })
|
||||
);
|
||||
|
||||
// Instance methods
|
||||
|
||||
// Note: This method marks the document and it's children as deleted
|
||||
@@ -353,7 +347,6 @@ Document.prototype.publish = async function() {
|
||||
await this.save();
|
||||
this.collection = collection;
|
||||
|
||||
events.add({ name: 'documents.publish', model: this });
|
||||
return this;
|
||||
};
|
||||
|
||||
@@ -367,7 +360,6 @@ Document.prototype.archive = async function(userId) {
|
||||
|
||||
await this.archiveWithChildren(userId);
|
||||
|
||||
events.add({ name: 'documents.archive', model: this });
|
||||
return this;
|
||||
};
|
||||
|
||||
@@ -397,7 +389,6 @@ Document.prototype.unarchive = async function(userId) {
|
||||
this.lastModifiedById = userId;
|
||||
await this.save();
|
||||
|
||||
events.add({ name: 'documents.unarchive', model: this });
|
||||
return this;
|
||||
};
|
||||
|
||||
@@ -417,7 +408,6 @@ Document.prototype.delete = function(options) {
|
||||
|
||||
await this.destroy({ transaction, ...options });
|
||||
|
||||
events.add({ name: 'documents.delete', model: this });
|
||||
return this;
|
||||
});
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user