Fix logic so defined msg.payload is not prereq for delete.

This commit is contained in:
Mark Hindess 2014-09-09 19:46:38 +01:00
parent 0111ab8901
commit 72dcb53d23
1 changed files with 21 additions and 24 deletions

View File

@ -28,34 +28,31 @@ module.exports = function(RED) {
var filename = msg.filename || this.filename;
if (filename === "") {
node.warn('No filename specified');
} else if (msg.hasOwnProperty('delete')) {
fs.unlink(filename, function (err) {
if (err) { node.warn('Failed to delete file : '+err); }
//console.log('Deleted file",filename);
});
} else if (typeof msg.payload != "undefined") {
if (msg.hasOwnProperty('delete')) {
fs.unlink(filename, function (err) {
if (err) { node.warn('Failed to delete file : '+err); }
//console.log('Deleted file",filename);
var data = msg.payload;
if (typeof data == "object") {
if (!Buffer.isBuffer(data)) {
data = JSON.stringify(data);
}
}
if (typeof data == "boolean") { data = data.toString(); }
if ((this.appendNewline)&&(!Buffer.isBuffer(data))) { data += "\n"; }
if (this.overwriteFile) {
fs.writeFile(filename, data, function (err) {
if (err) { node.warn('Failed to write to file : '+err); }
//console.log('Message written to file',filename);
});
}
else {
var data = msg.payload;
if (typeof data == "object") {
if (!Buffer.isBuffer(data)) {
data = JSON.stringify(data);
}
}
if (typeof data == "boolean") { data = data.toString(); }
if ((this.appendNewline)&&(!Buffer.isBuffer(data))) { data += "\n"; }
if (this.overwriteFile) {
fs.writeFile(filename, data, function (err) {
if (err) { node.warn('Failed to write to file : '+err); }
//console.log('Message written to file',filename);
});
}
else {
fs.appendFile(filename, data, function (err) {
if (err) { node.warn('Failed to append to file : '+err); }
//console.log('Message appended to file',filename);
});
}
fs.appendFile(filename, data, function (err) {
if (err) { node.warn('Failed to append to file : '+err); }
//console.log('Message appended to file',filename);
});
}
}
});