diff options
Diffstat (limited to 'app/node_modules/okservices/oks3/index.js')
| -rw-r--r-- | app/node_modules/okservices/oks3/index.js | 34 |
1 files changed, 24 insertions, 10 deletions
diff --git a/app/node_modules/okservices/oks3/index.js b/app/node_modules/okservices/oks3/index.js index 97abef0..34c5840 100644 --- a/app/node_modules/okservices/oks3/index.js +++ b/app/node_modules/okservices/oks3/index.js @@ -4,6 +4,7 @@ var skipperS3 = require('skipper-s3') // Hack to prevent this god-forsaken module from crashing our shit var d = require('domain').create() d.on('error', function (err) { + console.log(err) console.error('Stupid error in S3 upload. Upload probably prematurely canceled') }) @@ -19,6 +20,12 @@ function OKS3(options) { if (!options.s3.audio) options.s3.audio = {} if (!options.s3.video) options.s3.video = {} +/* + // TODO: maxBytes property doesn't work - if you upload a large file, + // it will just hang until you reload the browser, and then CRASH. + + // Make sure maxbytes property is there - it can be a number, + // or zero/undefined (for no maximum upload size) if (options.s3.maxbytes) { if (! ('maxbytes' in options.s3.image)) options.s3.image.maxbytes = options.s3.maxbytes @@ -27,7 +34,14 @@ function OKS3(options) { if (! ('maxbytes' in options.s3.audio)) options.s3.audio.maxbytes = options.s3.maxbytes } - +*/ + if (options.s3.image.preserveFilename) + options.s3.image.preserveFilename = preserveFilename + if (options.s3.video.preserveFilename) + options.s3.video.preserveFilename = preserveFilename + if (options.s3.audio.preserveFilename) + options.s3.audio.preserveFilename = preserveFilename + var express = options.express; var router = express.Router(); @@ -38,22 +52,22 @@ function OKS3(options) { // provided by skipper. Use that to do AWS stuff router.post('/image', function(req, res) { d.run(function () { - req.file('image').upload({ + var skip = req.file('image').upload({ adapter: skipperS3, key: options.s3.key, secret: options.s3.secret, bucket: options.s3.bucket, dirname: options.s3.dirname, - maxBytes: options.s3.image.maxbytes, - saveAs: options.s3.image.preserveFilename && preserveFilename, + // maxBytes: options.s3.image.maxbytes, + saveAs: options.s3.image.preserveFilename, headers: { 'x-amz-acl': 'public-read' } }, function (err, uploadedFiles) { - if (err) res.status(500).send(err) + if (err) return res.status(500).send(err) res.json(uploadedFiles); }); - }); + }); }); router.post('/audio', function(req, res) { @@ -67,8 +81,8 @@ function OKS3(options) { secret: options.s3.secret, bucket: options.s3.bucket, dirname: options.s3.dirname, - maxBytes: options.s3.audio.maxbytes, - saveAs: options.s3.audio.preserveFilename && preserveFilename, + // maxBytes: options.s3.audio.maxbytes, + saveAs: options.s3.audio.preserveFilename, headers: { 'x-amz-acl': 'public-read' } @@ -90,8 +104,8 @@ function OKS3(options) { secret: options.s3.secret, bucket: options.s3.bucket, dirname: options.s3.dirname, - maxBytes: options.s3.video.maxbytes, - saveAs: options.s3.video.preserveFilename && preserveFilename, + // maxBytes: options.s3.video.maxbytes, + saveAs: options.s3.video.preserveFilename, headers: { 'x-amz-acl': 'public-read' } |
