Merge pull request #2469 from ether/new-sethtml-tests

I need to do some more work on this at some point..  Leaving here
This commit is contained in:
John McLear 2015-01-19 15:51:37 +00:00
commit 84638a39b7
4 changed files with 57 additions and 11 deletions

View file

@ -410,11 +410,16 @@ exports.setHTML = function(padID, html, callback)
if(ERR(err, callback)) return;
// add a new changeset with the new html to the pad
importHtml.setPadHTML(pad, cleanText(html), callback);
//update the clients on the pad
padMessageHandler.updatePadClients(pad, callback);
importHtml.setPadHTML(pad, cleanText(html), function(e){
if(e){
callback(new customError("HTML is malformed","apierror"));
return;
}else{
//update the clients on the pad
padMessageHandler.updatePadClients(pad, callback);
return;
}
});
});
}

View file

@ -232,11 +232,9 @@ exports.doImport = function(req, res, padId)
if(!directDatabaseAccess){
var fileEnding = path.extname(srcFile).toLowerCase();
if (abiword || fileEnding == ".htm" || fileEnding == ".html") {
try{
importHtml.setPadHTML(pad, text);
}catch(e){
apiLogger.warn("Error importing, possibly caused by malformed HTML");
}
importHtml.setPadHTML(pad, text, function(e){
if(e) apiLogger.warn("Error importing, possibly caused by malformed HTML");
});
} else {
pad.setText(text);
}

View file

@ -40,7 +40,7 @@ function setPadHTML(pad, html, callback)
cc.collectContent(doc);
}catch(e){
apiLogger.warn("HTML was not properly formed", e);
return; // We don't process the HTML because it was bad..
return callback(e); // We don't process the HTML because it was bad..
}
var result = cc.finish();
@ -91,6 +91,7 @@ function setPadHTML(pad, html, callback)
apiLogger.debug('The changeset: ' + theChangeset);
pad.setText("");
pad.appendRevision(theChangeset);
callback(null);
}
exports.setPadHTML = setPadHTML;