From: Steve Hackbarth Date: Mon, 8 Sep 2014 20:47:06 +0000 (-0400) Subject: hook up actual qr writer X-Git-Tag: v4.7.0-beta.2~7^2~4 X-Git-Url: http://git.roojs.org/?a=commitdiff_plain;h=89b47c8cecee4c4ee233241ae33198587678cfa0;p=xtuple hook up actual qr writer --- diff --git a/i_love_qr.png b/i_love_qr.png deleted file mode 100644 index 75671dee6..000000000 Binary files a/i_love_qr.png and /dev/null differ diff --git a/node-datasource/routes/generate_report.js b/node-datasource/routes/generate_report.js index 58c4995cf..5eefd43b4 100644 --- a/node-datasource/routes/generate_report.js +++ b/node-datasource/routes/generate_report.js @@ -15,6 +15,7 @@ regexp:true, undef:true, strict:true, trailing:true, white:true */ path = require("path"), ipp = require("ipp"), Report = require('fluentreports').Report, + qr = require('qr-image'), queryForData = require("./export").queryForData; /** @@ -550,23 +551,16 @@ regexp:true, undef:true, strict:true, trailing:true, white:true */ return; } - async.each(marriedQrElements, function (element, next) { - var target = element.target.substring(0, 5); - imageFilenameMap[element.source] = target + ".png"; - - // here's the actual qr code code, which requires node 10 - //var qr = require('qr-image'); - //var qr_svg = qr.image('I love QR!', { type: 'png' }); - //qr_svg.pipe(require('fs').createWriteStream('i_love_qr.png')); - - // here's the placeholder code that serves as a proof of concept - var sourceFile = path.join(__dirname, "../../i_love_qr.png"); - fs.readFile(sourceFile, function (err, contents) { - fs.writeFile(path.join(workingDir, target + ".png"), contents, function (err) { - next(); - }); + async.eachSeries(marriedQrElements, function (element, next) { + var targetFilename = element.target.replace(/\W+/g, "") + ".png", + qr_svg = qr.image(element.target, { type: 'png' }), + writeStream = fs.createWriteStream(path.join(workingDir, targetFilename)); + + qr_svg.pipe(writeStream); + writeStream.on("finish", function () { + imageFilenameMap[element.source] = targetFilename; + next(); }); - // end placeholder code }, done); };