diff --git a/package.json b/package.json index 2a826fc..00d632f 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "start": "node ./bin/www" }, "dependencies": { + "child-process-promise": "^2.2.1", "cookie-parser": "~1.4.4", "debug": "~2.6.9", "docxtemplater": "^3.21.1", diff --git a/services/user.js b/services/user.js index fc62198..8b920ff 100644 --- a/services/user.js +++ b/services/user.js @@ -3,6 +3,7 @@ const jalali = require("jalali-moment"); const persianjs = require('persianjs') const docxTemp = require('../tools/docxtemp') const imageResizer = require('../tools/imageResizer') +const addImageToWord = require('../tools/addImageToWord') let methods = {} @@ -85,9 +86,9 @@ methods.completeForm =(userId)=>{ return docxTemp(userInfo, userInfo.fileName) - }).then(link=>{ + }).then(docxFileName=>{ - resolve(link) + addImageToWord(docxFileName, userInfo.fileName + '.png') }).catch(err => { if (err.eText) { diff --git a/tools/addImageToWord.js b/tools/addImageToWord.js new file mode 100644 index 0000000..5a6f243 --- /dev/null +++ b/tools/addImageToWord.js @@ -0,0 +1,16 @@ +const exec = require('child-process-promise').exec; + +module.exports = function (docxFile, image){ + return new Promise ((resolve, reject)=>{ + exec('mkdir word/media') + .then(function (result) { + var stdout = result.stdout; + var stderr = result.stderr; + console.log('stdout: ', stdout); + console.log('stderr: ', stderr); + }) + .catch(function (err) { + console.error('ERROR: ', err); + }); + } + )} \ No newline at end of file diff --git a/tools/docxtemp.js b/tools/docxtemp.js index b5e692c..697b86c 100644 --- a/tools/docxtemp.js +++ b/tools/docxtemp.js @@ -107,7 +107,7 @@ module.exports = function (templateInfo, fileName) { type: 'nodebuffer' }); fs.writeFileSync(path.resolve(__dirname, `../public/files/${templateInfo.firstName}-${templateInfo.lastName}-${fileName}`), buf); - resolve(`http://localhost:3000/users/download/${templateInfo.firstName}-${templateInfo.lastName}-${fileName}`) + resolve(`${templateInfo.firstName}-${templateInfo.lastName}-${fileName}`) .catch(err => { reject({