summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/api/hooks_server-side.md17
-rw-r--r--src/node/handler/PadMessageHandler.js3
2 files changed, 20 insertions, 0 deletions
diff --git a/doc/api/hooks_server-side.md b/doc/api/hooks_server-side.md
index 51026140..435872ea 100644
--- a/doc/api/hooks_server-side.md
+++ b/doc/api/hooks_server-side.md
@@ -263,3 +263,20 @@ exports.exportFileName = function(hook, padId, callback){
callback("newFileName"+padId);
}
```
+
+## userLeave
+Called from src/node/handler/PadMessageHandler.js
+
+This in context:
+
+1. session (including the pad id and author id)
+
+This hook gets called when an author leaves a pad. This is useful if you want to perform certain actions after a pad has been edited
+
+Example:
+
+```
+exports.userLeave = function(hook, session, callback) {
+ console.log('%s left pad %s', session.author, session.padId);
+};
+```
diff --git a/src/node/handler/PadMessageHandler.js b/src/node/handler/PadMessageHandler.js
index 26eb17a6..e1ac994e 100644
--- a/src/node/handler/PadMessageHandler.js
+++ b/src/node/handler/PadMessageHandler.js
@@ -145,6 +145,9 @@ exports.handleDisconnect = function(client)
//Go trough all user that are still on the pad, and send them the USER_LEAVE message
client.broadcast.to(session.padId).json.send(messageToTheOtherUsers);
+
+ // Allow plugins to hook into users leaving the pad
+ hooks.callAll("userLeave", session);
});
}