-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathindex.js
50 lines (38 loc) · 973 Bytes
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
'use strict';
const Promise = require('bluebird');
const cloudinary = require('cloudinary');
const path = require('path')
let BaseStore;
try {
BaseStore = require('ghost/core/server/storage/base');
} catch(e) {
if (e.code !== 'MODULE_NOT_FOUND') throw e;
BaseStore = require(path.join(process.cwd(), 'core/server/storage/base'));
}
class Store extends BaseStore {
constructor(config) {
super()
this.config = config || {}
cloudinary.config(config);
}
save(image) {
const secure = this.config.secure || false;
return new Promise(function(resolve) {
cloudinary.uploader.upload(image.path, function(result) {
resolve(secure ? result.secure_url : result.url);
});
});
}
serve() {
return function(req, res, next) {
next();
};
}
read() {
}
delete() {
}
exists() {
}
}
module.exports = Store;