summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2016-04-05 14:05:35 -0400
committerJules Laplace <jules@okfoc.us>2016-04-05 14:05:35 -0400
commit56580705e3a62eaf1c498c1c0456fc33fe3b2f76 (patch)
treee0e42a12aae98aacc733e3f7bb210d72d63c9d19 /app
parentcd929e1c38c02c1d048abe702c04c7d4d6188011 (diff)
broaden media support
Diffstat (limited to 'app')
-rw-r--r--app/node_modules/okserver/index.js2
-rw-r--r--app/node_modules/okservices/oks3/index.js54
2 files changed, 50 insertions, 6 deletions
diff --git a/app/node_modules/okserver/index.js b/app/node_modules/okserver/index.js
index ee1b4fb..3428565 100644
--- a/app/node_modules/okserver/index.js
+++ b/app/node_modules/okserver/index.js
@@ -60,7 +60,7 @@ function OKServer(options) {
app.use(router);
// Add services
if (services.s3) {
- app.use('/_services/image', services.s3.middleware());
+ app.use('/_services/s3', services.s3.middleware());
}
if (services.twitter) {
app.use('/_services/twitter', services.twitter.middleware())
diff --git a/app/node_modules/okservices/oks3/index.js b/app/node_modules/okservices/oks3/index.js
index d556c20..dc0ca19 100644
--- a/app/node_modules/okservices/oks3/index.js
+++ b/app/node_modules/okservices/oks3/index.js
@@ -4,7 +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.error('Stupid error in S3 upload. Image upload probably prematurely canceled')
+ console.error('Stupid error in S3 upload. Upload probably prematurely canceled')
})
function OKS3(options) {
@@ -20,9 +20,9 @@ function OKS3(options) {
router.use(skipper());
- router.post('/', function(req, res) {
- // req should have a method `file` on it which is
- // provided by skipper. Use that to do AWS stuff
+ // req should have a method `file` on it which is
+ // provided by skipper. Use that to do AWS stuff
+ router.post('/image', function(req, res) {
d.run(function () {
req.file('image').upload({
adapter: skipperS3,
@@ -38,7 +38,51 @@ function OKS3(options) {
if (err) res.status(500).send(err)
res.json(uploadedFiles);
});
- })
+ });
+ });
+
+ router.post('/audio', function(req, res) {
+ d.run(function () {
+ if (! options.s3.allowAudioUploads) {
+ return res.status(500).json({ error: "audio uploading not permitted" })
+ }
+ req.file('audio').upload({
+ adapter: skipperS3,
+ key: options.s3.key,
+ secret: options.s3.secret,
+ bucket: options.s3.bucket,
+ dirname: options.s3.dirname,
+ maxBytes: options.s3.maxbytesAudio,
+ headers: {
+ 'x-amz-acl': 'public-read'
+ }
+ }, function (err, uploadedFiles) {
+ if (err) res.status(500).send(err)
+ res.json(uploadedFiles);
+ });
+ });
+ });
+
+ router.post('/video', function(req, res) {
+ d.run(function () {
+ if (! options.s3.allowVideoUploads) {
+ return res.status(500).json({ error: "video uploading not permitted" })
+ }
+ req.file('video').upload({
+ adapter: skipperS3,
+ key: options.s3.key,
+ secret: options.s3.secret,
+ bucket: options.s3.bucket,
+ dirname: options.s3.dirname,
+ maxBytes: options.s3.maxbytesVideo,
+ headers: {
+ 'x-amz-acl': 'public-read'
+ }
+ }, function (err, uploadedFiles) {
+ if (err) res.status(500).send(err)
+ res.json(uploadedFiles);
+ });
+ });
});
this._middleware = router;