@speakr/speakr-module-services
Version:
SPEAKR Shared Service Module
55 lines (47 loc) • 1.24 kB
JavaScript
;
const db = require('../../db');
const fs = require('fs');
const path = require('path');
const env = require('../../env/');
const AWS = require('aws-sdk');
const BUCKET_NAME = env.AWS_S3_BUCKET || 'initiatives-media';
AWS.config = {
accessKeyId: env.AWS_S3_ACCESS_KEY,
secretAccessKey: env.AWS_S3_SECRET_KEY,
region: env.AWS_REGION
};
const s3 = new AWS.S3();
module.exports = {
AccountImportsDownload ,
byId
};
function AccountImportsDownload (options) {
const url = options.req.headers.file;
let params;
if(url) {
const file = url.split('/imported_accounts/')
params = {
Bucket: `faveme`,
Key: `faveme/${env.NODE_ENV}/Speakr/imported_accounts/${file[1]}`,
ResponseContentType: 'text/csv'
}
} else {
reject('No Url Provided.')
}
let s3Get;
s3Get = new Promise((resolve, reject ) => {
return s3.getObject(params, (err, data) => {
if(err) reject({
message: `Error Downloading File :: ${params.Key}`,
purpose: err.message
});
options.data = data;
return resolve(options);
})
})
return s3Get
.then(options => Promise.resolve(options))
.catch(err => Promise.reject(err));
}
function byId(options) {
}