summaryrefslogtreecommitdiff
path: root/bucky/db/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'bucky/db/index.js')
-rw-r--r--bucky/db/index.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/bucky/db/index.js b/bucky/db/index.js
index b10e3d8..350f2a4 100644
--- a/bucky/db/index.js
+++ b/bucky/db/index.js
@@ -152,6 +152,27 @@ db.createFile = function(data){
}
db.destroyFile = function(id){
}
+db.moveFile = function(file, thread_id){
+ var s3client = upload.client()
+ var srcPath = '/bucky/data/' + file.get('thread') + '/' + file.get('filename')
+ var destPath = '/bucky/data/' + thread_id + '/' + file.get('filename')
+ var copyPromise = new Promise((resolve, reject) => {
+ s3client.copy(srcPath, destPath).on('response', function(res){
+ s3client.deleteFile(srcPath, function(err, res){
+ if (err) {
+ return reject(err)
+ }
+ file.set('thread', thread_id)
+ file.save().then(() => {
+ resolve()
+ }).catch(err => {
+ reject(err)
+ })
+ })
+ }).end()
+ })
+ return copyPromise
+}
db.destroyFiles = function(files){
var s3client = upload.client()
var rmPromises = files.map((file) => {