diff options
-rw-r--r-- | src/node/handler/ExportHandler.js | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/node/handler/ExportHandler.js b/src/node/handler/ExportHandler.js index 0a808977..8e7c070b 100644 --- a/src/node/handler/ExportHandler.js +++ b/src/node/handler/ExportHandler.js @@ -105,7 +105,7 @@ exports.doExport = function(req, res, padId, type) //if this is a html export, we can send this from here directly if(type == "html") { - // do any final changes the plugin might want to make cake + // do any final changes the plugin might want to make hooks.aCallFirst("exportHTMLSend", html, function(err, newHTML){ if(newHTML.length) html = newHTML; res.send(html); @@ -133,7 +133,19 @@ exports.doExport = function(req, res, padId, type) function(callback) { destFile = tempDirectory + "/etherpad_export_" + randNum + "." + type; - convertor.convertFile(srcFile, destFile, type, callback); + + var handledByPlugin = false; + // Allow plugins to overwrite the convert in export process + hooks.aCallAll("exportConvert", {srcFile: srcFile, destFile: destFile}, function(err, result){ + if(!err && result.length > 0){ + // console.log("export handled by plugin", destFile); + handledByPlugin = true; + callback(); + }else{ + convertor.convertFile(srcFile, destFile, type, callback); + } + }); + }, //send the file function(callback) |