From a65dd79d056d35e8ebb0f74887d9f9cacd0a3469 Mon Sep 17 00:00:00 2001 From: Mark Holmquist Date: Thu, 21 Jun 2012 11:29:30 -0700 Subject: [PATCH] Add in a new hook for handleMessage Add a new hook: handleMessage. Whenever a message comes in, it is intercepted by this hook. --- src/node/handler/PadMessageHandler.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/node/handler/PadMessageHandler.js b/src/node/handler/PadMessageHandler.js index 3f6cfa56a..6cc8bf676 100644 --- a/src/node/handler/PadMessageHandler.js +++ b/src/node/handler/PadMessageHandler.js @@ -33,6 +33,7 @@ var plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins.js"); var log4js = require('log4js'); var messageLogger = log4js.getLogger("message"); var _ = require('underscore'); +var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks.js"); /** * A associative array that translates a session to a pad @@ -160,7 +161,12 @@ exports.handleDisconnect = function(client) * @param message the message from the client */ exports.handleMessage = function(client, message) -{ +{ + _.map(hooks.callAll( "handleMessage", { client: client, message: message }), function ( newmessage ) { + if ( newmessage || newmessage === null ) { + message = newmessage; + } + }); if(message == null) { messageLogger.warn("Message is null!");