From ba72241eea1b344f5a36885f52602d59d43738aa Mon Sep 17 00:00:00 2001 From: OldHawk Date: Sat, 15 Jul 2017 15:28:46 +0800 Subject: [PATCH] fix(forums): attach download error --- .../directives/mt-markdown-editor.client.directive.js | 2 +- .../server/controllers/forums.server.controller.js | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/modules/core/client/directives/mt-markdown-editor.client.directive.js b/modules/core/client/directives/mt-markdown-editor.client.directive.js index 983ba68a..4380a67b 100644 --- a/modules/core/client/directives/mt-markdown-editor.client.directive.js +++ b/modules/core/client/directives/mt-markdown-editor.client.directive.js @@ -33,7 +33,7 @@ scope.uFiles = []; scope.uImages = []; - var eleUploadTip = angular.element('
{{\'FORUMS.ATTACH_UPLOAD_TOOLTIP\' | translate}}
'); + var eleUploadTip = angular.element('
{{\'FORUMS.ATTACH_UPLOAD_TOOLTIP\' | translate}}
'); var eleUploadBegin = angular.element('
{{\'FORUMS.ATTACH_UPLOADING\' | translate}}: {{uFile.name}}
'); var eleUploadList = angular.element('
  1. {{f.name}} 
'); diff --git a/modules/forums/server/controllers/forums.server.controller.js b/modules/forums/server/controllers/forums.server.controller.js index 390ba5d1..c3dceb3a 100644 --- a/modules/forums/server/controllers/forums.server.controller.js +++ b/modules/forums/server/controllers/forums.server.controller.js @@ -679,6 +679,7 @@ exports.attachUpload = function (req, res) { exports.attachDownload = function (req, res) { var topic = req.topic; var filePath = undefined; + var fileName = undefined; if (req.params.replyId) { topic._replies.forEach(function (rep) { @@ -687,6 +688,7 @@ exports.attachDownload = function (req, res) { if (at._id.equals(req.query.attachId)) { at.downCount++; filePath = config.uploads.attach.file.dest + at.filename; + fileName = at.filename; topic.markModified('_replies'); topic.save(); @@ -699,14 +701,15 @@ exports.attachDownload = function (req, res) { if (at._id.equals(req.query.attachId)) { at.downCount++; filePath = config.uploads.attach.file.dest + at.filename; + fileName = at.filename; topic.save(); } }); } - return downFile(filePath); + return downFile(filePath, fileName); - function downFile(filePath) { + function downFile(filePath, filename) { if (!filePath) { res.status(422).send({ message: 'FILE_DOES_NOT_FINDED' @@ -719,7 +722,7 @@ exports.attachDownload = function (req, res) { try { //res.set('Content-Type', 'application/x-bittorrent'); - res.set('Content-Disposition', 'attachment; filename=' + encodeURI(req.params.filename)); + res.set('Content-Disposition', 'attachment; filename=' + encodeURI(filename)); res.set('Content-Length', stat.size); fs.createReadStream(filePath).pipe(res);