diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2017-12-10 17:25:32 +0100 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2017-12-10 17:25:32 +0100 |
| commit | 3cc9ff370a5e3f5bf321dc56963ae3bc73e75284 (patch) | |
| tree | 194bcafac19e2cc1a77aaab7303d68aafdbbe312 | |
| parent | d9b9383118302aff6d73856175d7362d8b1463c5 (diff) | |
posting new threads and comments working
| -rw-r--r-- | bucky/app/bucky.js | 39 | ||||
| -rw-r--r-- | bucky/app/index.js | 1 | ||||
| -rw-r--r-- | bucky/app/router.js | 2 | ||||
| -rw-r--r-- | bucky/util/upload.js | 7 | ||||
| -rw-r--r-- | package-lock.json | 5 | ||||
| -rw-r--r-- | package.json | 1 |
6 files changed, 39 insertions, 16 deletions
diff --git a/bucky/app/bucky.js b/bucky/app/bucky.js index 5198400..2b07f03 100644 --- a/bucky/app/bucky.js +++ b/bucky/app/bucky.js @@ -87,7 +87,7 @@ var bucky = module.exports = { private: false, color: req.body.color, viewed: 0, - revision: 'a', + revision: 0, } db.createThread(data).then(function(thread){ res.thread = thread @@ -221,16 +221,33 @@ var bucky = module.exports = { res.json({ error: "no files" }) return } - var data = { - thread: res.thread.get('id'), - parent_id: req.body.parent_id || -1, - username: req.user.get('username'), - date: util.now(), - comment: req.body.comment, - } - db.createComment(data).then(function(comment){ - res.comment = comment - next() + var thread_id = res.thread.get('id') + var dirname = '/bucky/data/' + thread_id + '/' + var promises = req.files.map((file) => { + return new Promise( (resolve, reject) => { + upload.put({ + file: file, + preserveFilename: true, + dirname: dirname, + unacceptable: function(err){ + reject(err) + }, + success: function(url){ + var data = { + thread: res.thread.get('id'), + username: req.user.get('username'), + filename: file.originalname, + date: util.now(), + size: file.size, + private: false, + storage: 'i.asdf.us', + } + db.createFile(data).then(function(file){ + resolve(file) + }).catch( (err) => reject(err) ) + } + }) + }) }) }, diff --git a/bucky/app/index.js b/bucky/app/index.js index cbf7388..be3e732 100644 --- a/bucky/app/index.js +++ b/bucky/app/index.js @@ -60,7 +60,6 @@ site.init = function(){ key: process.env.S3_KEY, secret: process.env.S3_SECRET, bucket: process.env.S3_BUCKET, - path: process.env.S3_PATH, }) site.route(app) diff --git a/bucky/app/router.js b/bucky/app/router.js index 134ab1d..bd72a4d 100644 --- a/bucky/app/router.js +++ b/bucky/app/router.js @@ -80,7 +80,7 @@ module.exports = function(app){ multer.array("files"), bucky.verifyFilesOrComment, bucky.createThread, -// bucky.createFiles, + bucky.createOptionalFiles, bucky.createOptionalComment, function(req, res){ res.json(res.thread) diff --git a/bucky/util/upload.js b/bucky/util/upload.js index 517d5f7..d92183e 100644 --- a/bucky/util/upload.js +++ b/bucky/util/upload.js @@ -14,6 +14,7 @@ var acceptableuploadTypes = { module.exports = {} module.exports.init = function (opt){ + options = opt s3 = knox.createClient({ key: opt.key, secret: opt.secret, @@ -28,8 +29,8 @@ module.exports.put = function (opt) { var file = opt.file - var types = opt.types || acceptableuploadTypes - var extension = types[file.mimetype] + var types = opt.types + var extension = types && types[file.mimetype] if (opt.preserveFilename) { filename = file.originalname @@ -40,7 +41,7 @@ module.exports.put = function (opt) { var remote_path = "/" + opt.dirname + "/" + filename - if (! extension) { + if (types && ! extension) { err = "Unacceptable filetype." } else if (opt.maxSize && file.size > opt.maxSize) { diff --git a/package-lock.json b/package-lock.json index b49027b..e659d49 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1584,6 +1584,11 @@ "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" }, + "node-uuid": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz", + "integrity": "sha1-sEDrCSOWivq/jTL7HxfxFn/auQc=" + }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", diff --git a/package.json b/package.json index a6b1cd7..d88160a 100644 --- a/package.json +++ b/package.json @@ -30,6 +30,7 @@ "multer": "^1.0.3", "multiparty": "^4.1.2", "mysql2": "^0.15.8", + "node-uuid": "^1.4.8", "passport": "^0.3.0", "passport-local": "^1.0.0", "serve-favicon": "^2.3.0", |
