'use strict'; const multer = require('multer'); const storage = multer.diskStorage({ destination: 'uploads/' }); module.exports = multer({ storage });
'use strict'; var controller = require(__dirname + '/imageController'); var multer = require('multer'); var storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, '/tmp/') } }); var upload = multer({storage: storage}); module.exports = function (app) { /** * @namespace /event/image GET * @desc Returns JSON object of all events images */ app.get('/', controller.getImages); /** * @namespace /event/image/:imageId GET * @desc Returns JSON object of specific image */ app.get('/:imageId', controller.getImage); /** * @namespace /event/image/image POST * @desc Returns JSON object of all events images
router.post('/invoice/import', function(req, res) { // router.post('/caz',function(req,res){ var storage = multer.diskStorage({ destination: function (req, file, callback) { callback(null, './tmp') } }) var upload = multer({ storage : storage}).single('upload'); upload(req,res,function(err) { if(err) { console.log(error) } console.log('file:', req.file) var inputFile = req.file.path fs.readFile(inputFile, 'utf8', function (err,data) { if (err) { return console.log(err); } parse(data, {comment: '#', delimiter: ';'}, function(err, output){ var firstRow=1 // skip header for (var ii=firstRow; ii < output.length; ii++){ var date = output[ii][0].replace(/\./g, '/') var name = output[ii][1] var lordo= parseFloat(output[ii][3].replace(/\./g, '').replace(/\,/g, '.')) if ( lordo > 0 ) { var import_unique_id=date+name+lordo new Invoice({ name : name, lordo : lordo, invoice_date_string : date, import_unique_id : import_unique_id }) .save(function(err, invoice) { if (err) { return console.log(err); } }); console.log('---'+ii+'-------------') console.log('date: '+ date) console.log('name: '+ name) console.log('lordo: '+ lordo) console.log('import_unique_id: '+ import_unique_id) } } }) }) }) ///////////////////// res.redirect('/test') })
// server/routes/mediaRoute.js var express = require('express'); var multer = require('multer'); var mediaCtrl = require('../controllers/mediaCtrl'); var storage = multer.diskStorage({ //multers disk storage settings destination: function (req, file, cb) { cb(null, __dirname+'/../uploads/') }, filename: function (req, file, cb) { var datetimestamp = Date.now(); cb(null, file.originalname) } }); var upload = multer({ storage: storage }) //var upload = multer({dest:'./uploads'}); var router = express.Router(); router.get('/list',mediaCtrl.saveMediaFeed); router.post('/upload',upload.array('files'), mediaCtrl.mediaUploadAction); module.exports = router;
var fs = require('fs'); var multer = require("multer"); var paths = require('./paths.js'); function _readFiles(dirname, onSuccess, onError) { fs.readdir(dirname, function (err, filenames) { if (err) { onError(err); return; } onSuccess(filenames); }); } var fileStorage = multer.diskStorage({ destination: function (req, file, callback) { callback(null, paths.avatarsPath); }, filename: function (req, file, callback) { callback(null, file.fieldname + '-' + Date.now() + '.jpg'); } }); var _upload = multer({ storage: fileStorage }).single('userPhoto'); module.exports = { readFiles: _readFiles, upload: _upload };
'use strict'; var express = require('express'); var app = express(); var multer = require('multer') var upload = multer({ dest: 'uploads/' }) app.use(express.static('public')); var fs = require("fs"); var storage = multer.diskStorage({ destination: function (req, file, callback) { callback(null, './uploads'); }, filename: function (req, file, callback) { callback(null, file.fieldname + '-' + Date.now()); } }); var MongoClient = require("mongodb").MongoClient, assert = require("assert"); var mongoose = require('mongoose'); var url = "mongodb://*****:*****@ds023442.mlab.com:23442/metadata-service"; MongoClient.connect(url, function(err, db) { assert.equal(null, err); console.log("Connected correctly to server"); db.close(); }); mongoose.connect( 'mongodb://*****:*****@ds023442.mlab.com:23442/metadata-service');
var crypto = require('crypto'), uuid = require('node-uuid'), fs = require('fs'), Users = require('../models/users'), Posts = require('../models/post'); var express = require('express'); var router = express.Router(); var multer = require('multer'); var storage = multer.diskStorage({ destination: function(req, file, cb){ cb(null, './public/images'); }, filename: function(req, file, cb){ cb(null, file.originalname); } }); var upload = multer({storage: storage}); router.get('/', function(req, res){ Posts.find(req.session.username, function(err, obj){ console.log(obj); res.render('index', {title: '主页', posts: obj, username: req.session.username,success: req.flash('success').toString(),error: req.flash('error').toString()}) }); }); router.get('/login', checkNotLogin); router.get('/login', function(req, res){ res.render('login', {title: '登录', username: req.session.username,success: req.flash('success').toString(),error: req.flash('error').toString()}) }); router.post('/login', checkNotLogin);
//------------------ var pool = require('./db.js'); //----------------- // 引用multer外掛 //----------------- var multer = require('multer'); //--------------------------------- // 上傳圖片存放資料夾及檔名設定 //--------------------------------- var storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, 'public\\images'); }, filename: function (req, file, cb) { cb(null, Date.now()+"--"+file.originalname); } }) //----------------------------------------------- // 產生multer的上傳物件 //----------------------------------------------- var maxSize=1024*1024; //設定最大可接受圖片大小 var upload = multer({ storage:storage }) //========================
var crypto = require('crypto'); var facebook = require('../helpers/facebook'); var mongoose = require('mongoose'); var fs = require('fs'); var multer = require('multer'); var public_dir = 'public'; var profile_path = '/uploads/profile/'; var profileStorage = multer.diskStorage({ destination: public_dir + profile_path, filename: function (req, file, cb) { cb(null, req.user.facebook.user_id + '.' + getExtension(file.originalname)); } }); var fileFilter = function (req, file, cb) { var okayTypes = ['image/jpeg', 'image/png']; if (okayTypes.indexOf(file.mimetype) > -1){ cb(null, true); } else { cb(null, false); } } var getExtension = function (file) { var file_split = file.split('.');
module.exports=function(app,express) { var apinotes=express.Router(); var storage = multer.diskStorage({ //multers disk storage settings destination: function (req, file, cb) { cb(null, './pdf/'); }, filename: function (req, file, cb,fields,res) { var datetimestamp = Date.now(); cb(null, req.body.displayname + '-' + datetimestamp + '.' + file.originalname.split('.')[file.originalname.split('.').length -1]); gm('./pdf/'+req.body.displayname + '-' + datetimestamp + '.' + file.originalname.split('.')[file.originalname.split('.').length -1]+'[0]') // The name of your pdf .setFormat("jpg") .resize(200) // Resize to fixed 200px width, maintaining aspect ratio .quality(75) // Quality from 0 to 100 .write('./public/thumnail/'+req.body.displayname + '-' + datetimestamp + '.jpg', function(error){ // Callback function executed when finished if (!error){ console.log("Finished saving JPG"); var pdf=new notes({ user:req.decoded._id, username:req.decoded.username, occupation:req.decoded.occupation, displayname:req.body.displayname, timestamp:datetimestamp, tags:req.body.tags, description:req.body.description, level:req.body.level }); pdf.save(function(err) { if(err) { if(err.code===11000) { res.json({message:'notes already exists'}); return; } res.json(err); } }); } else console.log("There was an error!", error); }); } }); var upload = multer({ //multer settings storage: storage }).single('file'); var multiparty = require('connect-multiparty'); multipartyMiddleware = multiparty(); /** API path that will upload the files */ apinotes.post('/upload',middleware.requireLogin,function(req, res) { upload(req,res,function(err){ if(err){ res.json({error_code:1,err_desc:err}); return; } res.json({error_code:0,err_desc:null}); }); }); apinotes.get('/all',middleware.requireLogin,function(req, res) { notes.find({}).populate('comments').populate('forumtopics.reply').exec(function(err,notes) { if(err) { res.send(err); return; } res.json({notes:notes}); }); }); apinotes.get('/bookById/:id',middleware.requireLogin,function(req, res) { notes.findById(req.params.id).populate('comments').populate('forumtopics.reply').exec(function(err,notes) { if(err) { res.send(err); return; } res.json({book:notes}); }); }); apinotes.put('/tomybag/:id',middleware.requireLogin,function(req,res) { User.find({username:req.decoded.username},req.body,function(err,users) { users=users[0]; if (users.mybag.indexOf(req.params.id)==-1) { console.log("before adding to bag"); console.log(users.mybag); users.mybag.push(req.params.id); console.log( users.mybag); users.save(function (err) { if(err) { res.send(err); return; } else { res.json({ message:"successfully added book", action:true, success:true }); } }); } }); }); apinotes.put('/todelmybag/:id',middleware.requireLogin,function(req,res) { User.find({username:req.decoded.username},req.body,function(err,users) { console.log("todelmybag"); users=users[0]; if (users.mybag.indexOf(req.params.id) !=-1) { console.log("before deleting from bag"); console.log(users.mybag); users.mybag.remove(req.params.id); console.log( users.mybag); users.save(function (err) { if(err) { res.send(err); return; } else { res.json({ message:"successfully added book", success:true }); } }); } }); }); apinotes.put('/like/:id',middleware.requireLogin,function(req,res) { notes.findById(req.params.id,req.body,function(err,notespdf) { console.log(notespdf); if (notespdf.likes.indexOf(req.decoded._id)==-1) { console.log("before like"); console.log(notespdf.likes); notespdf.likes.push(req.decoded._id); console.log(notespdf.likes); notespdf.save(function (err) { if(err) { res.send(err); return; } else { res.json({ message:"successfully liked book", action:true, success:true }); } }); } else { console.log("before dislike"); console.log(notespdf.likes); notespdf.likes.splice(notespdf.likes.indexOf(req.decoded._id),1); console.log(notespdf.likes); notespdf.save(function (err) { if(err) { res.send(err); return; } else { res.json({ message:"successfully disliked book", action:false, success:true }); } }); } }); }); apinotes.put('/dislike/:id',middleware.requireLogin,function(req,res) { notes.findById(req.params.id,req.body,function(err,notespdf) { if (notespdf.dislikes.indexOf(req.decoded._id)==-1) { console.log("before dislike"); console.log(notespdf.dislikes); notespdf.dislikes.push(req.decoded._id); console.log(notespdf.likes); notespdf.save(function (err) { if(err) { res.send(err); return; } else { res.json({ message:"successfully disliked book", action:true, success:true }); } }); } else { console.log("before dislike again"); console.log(notespdf.dislikes); notespdf.dislikes.splice(notespdf.dislikes.indexOf(req.decoded._id),1); console.log(notespdf.dislikes); notespdf.save(function (err) { if(err) { res.send(err); return; } else { res.json({ message:"successfully disliked again book", action:false, success:true }); } }); } }); }); apinotes.get('/tomybag',middleware.requireLogin,function(req,res) { User.find({username:req.decoded.username},req.body,function(err,user) { user=user[0]; if(err) { res.send(err); return; } else { res.json({ mybag:user.mybag, success:true }); } }); }); apinotes.get('/tomybag1',middleware.requireLogin,function(req,res) { User.find({username:req.decoded.username}) .populate('mybag') .exec(function(error, books) { console.log(books); if(error) { res.send(err); return; } else { res.json({ data:books, success:true }); } }) }); apinotes.get('/mybooks',middleware.requireLogin,function(req,res) { notes.find({username:req.decoded.username},function(error, books) { if(error) { res.send(err); return; } else { res.json({ data:books, success:true }); } }); }); apinotes.put('/delcomment/:id',middleware.requireLogin,function(req,res) { Comments.findByIdAndRemove(req.params.id,function (err) { if (!err) { notes.findById(req.body.id,function(err,notespdf) { console.log("before comment deleted"); console.log(notespdf.comments); notespdf.comments.splice(notespdf.comments.indexOf(req.params.id),1); console.log(notespdf.comments); notespdf.save(function (err) { if(err) { res.send(err); return; } else { res.json({ message:"successfully deleted comment", success:true }); } }); }) } }) }); apinotes.put('/addtopic/:id',middleware.requireLogin,function(req,res) { console.log(req.body); notes.findById(req.params.id,function(err,notes) { if(err) { res.send(err); return; } else { notes.forumtopics.push({name:req.body.name,views:0}); notes.save(function (err) { if(!err) { res.json({ message:"successfully addtopic to book", success:true }); } else console.log(err); }); } }); }); apinotes.put('/addreply/:id',middleware.requireLogin,function(req,res) { var rep=req.body; notes.findById(req.params.id,function(err,notes) { if(err) { res.send(err); return; } else { var timestamp=Date.now(); var reply={timestamp:timestamp,reply:rep.reply,userid:rep.userid,user:rep.user}; var newreply=new Forumreplys(reply); newreply.save(function(error,reply) { if (error) { console.log('error occured...f**k this'); console.log(error); } else { console.log('no error f**k me Hahhha hurrey'); console.log(reply); notes.forumtopics[rep.index].reply.push(reply); notes.save(function(err) { if(!err) { res.json({ reply:reply, message:"successfully replied to forum topic", success:true }); } else console.log(err); }) } }) } }); }); apinotes.put('/comments/:id',middleware.requireLogin,function(req,res) { comments=new Comments(req.body); comments.save(function(err,comment) { if (err) console.log(err); else { notes.findById(req.params.id,function(err,notes) { if(err) { res.send(err); return; } else { notes.comments.push(comment); notes.save(function (err) { if(!err) { res.json({ comment:comment, message:"successfully commented book", success:true }); } else console.log(err); }); } }); } }); }); return apinotes; }
var express = require('express'); var router = express.Router(); var multer = require('multer'); var fs = require('fs'); var json2csv = require('json2csv'); var readline = require('readline'); var storage = multer.diskStorage({ destination: function(req, file, cb) { cb(null, 'public/uploads/'); }, filename: function(req, file, cb) { if (file.mimetype == 'text/csv') { filetype = '.csv'; } else { filetype = ''; } cb(null, file.fieldname + '-' + Date.now() + filetype); }, }); var url = require('url'); var qs = require('querystring'); var nodemailer = require('nodemailer'); //Node Mailer var transporter = nodemailer.createTransport({ host: 'smtp.gmail.com', port: 587, auth: { user: '',
var serverSettings = require("../settings/"); var app = express(); app.use(compression()); app.use(logger.morgan()); // Options for where to store uploaded audio and max size var fileOptions = { storage: multer.diskStorage({ destination: function(req, file, cb) { var dir = path.join(serverSettings.workingDirectory, uuid.v1()); mkdirp(dir, function(err) { return cb(err, dir); }); }, filename: function(req, file, cb) { cb(null, "audio"); } }) }; if (serverSettings.maxUploadSize) { fileOptions.limits = { fileSize: +serverSettings.maxUploadSize }; } if (typeof serverSettings.workingDirectory !== "string") {
const express = require('express'); const _ = require('lodash'); const fs = require('fs'); const router = express.Router(); const multer = require('multer'); const settings = require('../utils').settings; const missingProps = require('../utils').missingProps; const crypto = require('crypto'); const storage = multer.diskStorage({ destination(req, file, cb) { cb(null, './uploads/') }, filename(req, file, cb) { crypto.pseudoRandomBytes(16, (err, raw) => { cb(null, raw.toString('hex') + Date.now()); }); } }); const upload = multer({ storage: storage, limits: { fileSize: 5*1024*1024 } }).single('file'); const API = require('../models/API'); const List = require('../models/List'); const User = require('../models/User'); const Snippet = require('../models/Snippet'); const Generator = require('../models/Generator');
/**@param express = the express framework instance for REST services * @param app = an object representing the express web application * @param router = an object that contains the different web routes of the 'company' resource * @param multer = a resource that enables file uploads using 'multipart/form-data' * @param jwt = resource that creates, encripts and decripts security tokens */ var express = require('express'); var app = express(); var router = express.Router(); var multer = require('multer'); var jwt = require('jsonwebtoken'); //declares where the uploaded coupon images will be saved, and what name will they have var storage = multer.diskStorage({ destination: function (req, file, callback) { callback(null, 'C:/Users/yuval/Desktop/node.js/couponSystem/serverjs/public/images'); }, filename: function (req, file, callback) { callback(null, file.fieldname + '-' + Date.now()+'.jpg'); } }); var upload = multer({ storage : storage}).single('file'); /**uploads a coupon's image * @param req = http request * @param res = http response * @param next = the connection to the next middlewear in order * @pathname upload */ router.post('/',upload,function(req,res,next){ var cookie = req.cookies["cAuth"]; //if there is no authorization cookie, return an error if(cookie=='undefined' || cookie==null){
app.use(express.static(__dirname + '/public')); //////////////////////////////// CHAT //////////////////////////////// // CONNECTION D'UN USER var users = {}; // Objet contenant tous les utilisateurs connectés var numUsers = 0; // Nombre d'utilisateurs connectés // ================================================================== // GESTION D'UPLOAD DES AVATARS // ================================================================== var storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, './uploads/origin'); }, filename: function (req, file, cb) { cb(null, (Math.random().toString(36)+'00000000000000000').slice(2, 10) + Date.now() + path.extname(file.originalname)); } }); var upload = multer({ storage: storage, limits: { fileSize: 1000004, files: 1 } }); app.post('/', upload.single('avatar'), function(req, res){ //console.log(req.body); //console.log(req.file);
app.use(bodyParser.json()); // For Upload files //////////////////////////////////////////////////////////// var storage = multer.diskStorage({ //multers disk storage settings destination: function (req, file, cb) { cb(null, './uploads/'); }, filename: function (req, file, cb) { var date = new Date(); var y = date.getFullYear();var m = date.getMonth() + 1; var d = date.getDate();var hh = date.getHours();var mm = date.getMinutes(); var ss = date.getSeconds(); var mss = date.getMilliseconds(); var yS = y.toString();var mS = m.toString(); if (m<10) {mS = '0'+mS;} var dS = d.toString(); if (d<10) {dS = '0'+dS;} var hhS = hh.toString(); if (hh<10) {hhS = '0'+hhS;} var mmS = mm.toString(); if (mm<10) {mmS = '0'+mmS;} var ssS = ss.toString(); if (ss<10) {ssS = '0'+ssS;} var mssS = mss.toString(); if (mss<10) {ssS = '00'+ssS;} else if (mss<100) {ssS = '0'+ssS;} timestamp = yS+mS+dS+'_'+hhS+mmS+ssS+mssS; uploadFname = 'ijah_upload_'+timestamp+'.'+ file.originalname.split('.')[file.originalname.split('.').length-1]; cb(null,uploadFname); } }); var upload = multer({ //multer settings storage: storage
multer = require('multer'); //* ======== // HELPERS //* ======== var helpers = require('./helpers'); //* ============== // CONFIGURATION //* ============== // custom file upload configruation var storage = multer.diskStorage({ destination: function(req, file, cb) { cb(null, 'public/uploads'); }, filename: function(req, file, cb) { //every file is converted to uuid file.originalname = helpers.uuid(file.originalname); cb(null, file.originalname + helpers.getFileExtension(file.mimetype)); } }); //if default storage is not avaiable use the custom storage. var dest = 'public/uploads/' || storage; //use dest || storage property var upload = multer({storage: storage}); var app = express(); app.set('view engine', 'ejs'); app.use(bodyParser.urlencoded({extended: true})); var files = []; app.get('/', function(req, res) {
function storage() { return multer.diskStorage({ destination: destination, filename: filename }); }
database: 'family_photo' }).then(function(conn) { console.log("db is connected: ", conn); return conn; }); }; //////// UPLOAD //////////////////////////// // hooks to tie into upload lifecycle var storage = multer.diskStorage({ destination: function (req, file, callback) { console.log("destination uploads"); callback(null, './uploads'); }, filename: function (req, file, callback) { console.log("filename"); callback(null, file.fieldname + '-' + Date.now() + ".jpg"); } }); var upload = multer({ storage : storage }).single('user_photo'); app.post('/photo',function(req,res){ console.log("post photo"); var accountEmail = req.body.user_email; upload(req,res,function(err) { if(err) { return res.end("Error uploading file.\n"); }
"use strict"; var express = require('express'); var multer = require('multer'); var resolve = require('path').resolve; var router = express.Router(); var dest = resolve(process.cwd(), './'); var storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, dest); // Absolute path. Folder must exist, will not be created for you. }, filename: function (req, file, cb) { cb(null, file.originalname); } }); module.exports = () => { let catcher = multer({storage:storage}); router.use('/', (req, res, next) => { // res.header("Access-Control-Allow-Origin", "*"); res.header('Access-Control-Allow-Origin', 'http://localhost:3000'); res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE'); res.header('Access-Control-Allow-Headers', 'Content-Type'); // res.status(200).send(); next(); }); router.post('/', catcher.single('file'), (req, res) => { // console.log(req.file); res.status(200);
var express = require('express'); var router = express.Router(); var fs = require('fs'); var multer = require('multer'); var storageConf = multer.diskStorage({ destination: function (req, file, cb) { cb(null, './uploads/cfdi'); }, filename: function (req, file, cb) { cb(null, file.originalname); } }); var upload = multer({storage: storageConf}).array('cfdi_xml', 12); router.get('/', function(req, res, next) { var files = fs.readdirSync("./uploads/cfdi"); var newFiles = []; //console.log(files); while(files.length){ newFiles.push(files.splice(0, 4)); } console.log(newFiles); res.render('cfdi', { title: 'Swarnabh Banerjee | CFDI', cfdiFiles: newFiles}); }); router.post('/', function (req, res, next) {
var User = require('./models/user'); var Service = require('./models/service'); var Request = require('./models/request'); var mail = require('./mail'); var multer = require('multer'); var storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, 'frontend/public/userImage/'); }, filename: function (req, file, cb) { var extension = file.originalname.split(/[. ]+/).pop(); cb(null, req['user']._id+ '.' + extension); } }); var upload = multer({ storage: storage }); module.exports = function(app, passport) { app.get('/findUser/:email', function(req, res) { console.log("reached in findUser " + req.params.email); User.findOne({'local.email':req.params.email}, function(err, user) { if (err) { res.status(500).json({message: 'Error happened!', data: err}); } else if (user == "" || user == null || user == undefined) { res.status(404).json({message: 'No such user found!'}); }
res.json(user.images); } else { res.sendStatus(404); } }); }; //настройка загружаемых файлов const storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, path.join(__dirname, '../public/i')); }, filename: function (req, file, cb) { let ext = file.originalname.split('.').pop(), name = (Math.random() * 100000000000).toFixed(); ext = ext ? ext : 'jpg'; cb(null, name + '.' + ext); } }); const fileFilter = (req, file, cb) => { const mimeTypes = ["image/gif", "image/jpeg", "image/pjpeg", "image/png", "image/svg+xml", "image/tiff", "image/vnd.microsoft.icon", "image/vnd.wap.wbmp"]; if ( mimeTypes.indexOf(file.mimetype) != -1 ) { cb(null, true); } else { cb(null, false);
var express = require('express'); var router = express.Router(); var multer = require('multer'); // Save the files in the uploads directory var uploadFolder = 'uploads'; var storage = multer.diskStorage({ // used to determine within which folder the uploaded files should be stored. destination: function(req, file, callback) { callback(null, uploadFolder); }, filename: function(req, file, callback) { // req.body.name should contain the name of track callback(null, file.originalname); } }); var fileFilter = function (req, file, cb) { var acceptableMimeTypes = ['audio/wav', 'audio/x-wav']; if (acceptableMimeTypes.indexOf(file.mimetype) == -1) { req.fileValidationError = 'Sorry, this file type is not allowed for upload'; return cb(null, false, new Error('Sorry, this file type is not allowed for upload')); } else { cb(null, true); } } var upload = multer({ dest: 'uploads/', limits: { fileSize: 16000000 },
var Project = require('../models/project'); var express = require('express'); var router = express.Router(); var multer = require('multer'); var fs = require('fs'); var storage = multer.diskStorage({ //multers disk storage settings destination: function (req, file, cb) { cb(null, './pulbic/uploads/'); }, filename: function (req, file, cb) { var datetimestamp = Date.now(); cb(null, file.fieldname + '-' + datetimestamp + '.' + file.originalname.split('.')[file.originalname.split('.').length -1]); } }); var upload = multer({ //multer settings storage: storage }).single('file'); /* get all projects */ router.get('/', function(req, res, next) { Project.find({}).exec(function(err, Project){ if(err) res.json({error: err}); res.json(Project); }); }); /* get specific project */ router.get('/:id',function(req,res){ Project.findById(req.params.id).exec(function(err, Project){
storageIcons = multer.diskStorage({ destination: function (req, file, cb) { var path = "public/" + config.upload.icons.path.replace("{{userId}}", req.userId || req.user._id), storagePath = "public/" + config.upload.storagePath.replace("{{userId}}", req.userId || req.user._id); getFolderSize(storagePath, function (err, size) { if (err) { return cb(err, path); } req.storageSize = size; fse.stat(path, function (err) { if (err) { fse.mkdirs(path + config.upload.icons.thumbRelPath, function (err) { cb(err, path); }); return; } cb(null, path); }); }); }, filename: function (req, file, cb) { cb(null, Date.now() + "-" + file.originalname); } }),
module.exports = function(app, config) { var env = process.env.NODE_ENV || 'development'; app.locals.ENV = env; app.locals.ENV_DEVELOPMENT = env == 'development'; app.engine('handlebars', exphbs({ layoutsDir: config.root + '/app/views/layouts/', defaultLayout: 'main', partialsDir: [config.root + '/app/views/partials/'] })); app.set('views', config.root + '/app/views'); app.set('view engine', 'handlebars'); // app.use(favicon(config.root + '/public/img/favicon.ico')); app.use(logger('dev')); app.use(bodyParser.urlencoded({ extended: true })); app.use(cookieParser()); app.use(compress()); app.use(express.static(config.root + '/public', { maxAge: 86400000 })); app.use(express.static(config.root + '/uploads', { maxAge: 86400000 })); app.use(methodOverride()); app.use(flash()); //Multer var storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, './public/uploads/') }, filename: function (req, file, cb) { var name = file.originalname.substring(0, file.originalname.indexOf('.')).split(' ').join('_'); cb(null, name + '.' + mime.extension(file.mimetype)); } }); var upload = multer({ storage: storage }); app.use(upload.array('fileupload')); //passport local config var passport = require('passport'); var LocalStrategy = require('passport-local').Strategy; app.use(require('express-session')({ secret: 'keyboard cat', resave: false, saveUninitialized: false })); app.use(flash()); app.use(passport.initialize()); app.use(passport.session()); //redirect if necessary app.use(function (req, res, next) { if(_.contains(config.redirects, req.url)) { res.redirect('/'); return; } next(); }); var controllers = glob.sync(config.root + '/app/controllers/*.js'); controllers.forEach(function (controller) { require(controller)(app); }); app.use(function (req, res, next) { var err = new Error('Not Found'); err.status = 404; next(err); }); if(app.get('env') === 'development'){ app.use(function (err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: err, title: 'error' }); }); } app.use(function (err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: {}, title: 'error' }); }); };
}); app.get('/downloadPdf', function (req, res) { var file = './public/file.pdf'; res.download(file); }); app.get('/firebase', function (req, res) { res.sendFile(__dirname + "/views/firebase.html"); }); var storage = multer.diskStorage({ destination: function (req, file, callback) { callback(null, './public'); }, filename: function (req, file, callback) { callback(null, file.originalname); } }); var upload = multer({storage: storage}); var cpUpload = upload.fields([ {name: 'title', maxCount: 1}, {name: 'excel', maxCount: 1}, {name: 'image', maxCount: 1} ]); app.post('/upload', function (req, res) { cpUpload(req, res, function (err) { if (err) { return res.end("Error uploading file." + err); }
const sort = middlewares.sort const utils = require('../../../helpers/utils') const router = express.Router() const uploads = config.get('storage.uploads') const Video = mongoose.model('Video') // multer configuration const storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, uploads) }, filename: function (req, file, cb) { let extension = '' if (file.mimetype === 'video/webm') extension = 'webm' else if (file.mimetype === 'video/mp4') extension = 'mp4' else if (file.mimetype === 'video/ogg') extension = 'ogv' utils.generateRandomString(16, function (err, randomString) { const fieldname = err ? undefined : randomString cb(null, fieldname + '.' + extension) }) } }) const reqFiles = multer({ storage: storage }).fields([{ name: 'videofile', maxCount: 1 }]) router.get('/', validatorsPagination.pagination, validatorsSort.videosSort, sort.setVideosSort, pagination.setPagination,
module.exports = function (authentication, passport, upload) { //----------------------------------Member Info----------------------------------- authentication.get('/member_info', userDetailsController.getMemberInfo); authentication.put('/member_info', userDetailsController.putMemberInfo); authentication.delete('/member_info', userDetailsController.deleteMemberInfo); // -----------------------------Upload Profile PIC ----------------------------------------------------------------- var storage = multer.diskStorage({ destination: function (req, file, cb) { var dir_name = __dirname + './../../public/uploads/' + req.member._id + '/'; if (!fs.existsSync(dir_name)) { fs.mkdirSync(dir_name); } cb(null, dir_name); }, filename: function (req, file, cb) { var datetimestamp = Date.now(); cb(null, 'profile_' + datetimestamp + '.' + file.originalname.split('.')[file.originalname.split('.').length - 1]) } }); var upload = multer({ //multer settings storage: storage }).single('file'); authentication.post('/profile/pic', function (req, res, next) { upload(req, res, function (err) { if (err) { console.log(err); return; } next(); }); }, userDetailsController.postProfilePic); //-----------------------------------Defaults and Customs ---------------------------------------------------------- authentication.get('/labels', LabelsSettingsController.getLabels); //authentication.post('/labels', LabelsSettingsValidator.postLabelsValidator, LabelsSettingsController.postLabels); //authentication.patch('/labels/:label_id/:new_label_name', LabelsSettingsValidator.patchLabelsValidator, LabelsSettingsController.patchLabels); //authentication.delete('/labels/:label_id', LabelsSettingsValidator.deleteLabelsValidator, LabelsSettingsController.deleteLabels); // -------------------------------------- Phone Numbers ------------------------------------------------------------ authentication.patch('/numbers', userAccessController.patchChangeContactNumber); // -------------------------------------- Email Address ------------------------------------------------------------ authentication.patch('/emails', userAccessController.patchEmailAddress); // -------------------------------------- Activities --------------------------------------------------------------- authentication.get('/activities', ActivitiesAPI.getActivities); // -------------------------------------- Notifications ------------------------------------------------------------ authentication.get('/notifications', SettingsController.getNotifications); authentication.put('/notifications', SettingsController.putNotifications); //GET: change password authentication.post('/change/password', userAccessValidator.changePasswordValidator, userAccessController.postChangePassword); //get user status authentication.get('/user/status', userAccessController.userStatus); //GET: check if user exists authentication.get('/user/:email', userAccessValidator.checkIfUserExistsValidator, userAccessController.checkIfUserExists); //Logout authentication.get('/logout', userAccessController.logOut); }