Esempio n. 1
0
'use strict';

const multer = require('multer');

const storage = multer.diskStorage({
    destination: 'uploads/'
});

module.exports = multer({
    storage
});
Esempio n. 2
0
'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
Esempio n. 3
0
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')

})
Esempio n. 4
0
// 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;
Esempio n. 5
0
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');

Esempio n. 7
0
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
})


//========================
Esempio n. 9
0
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('.');
Esempio n. 10
0
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;
}
Esempio n. 11
0
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: '',
Esempio n. 12
0
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") {
Esempio n. 13
0
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){
Esempio n. 15
0
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);
Esempio n. 16
0
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
Esempio n. 17
0
    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) {
Esempio n. 18
0
function storage() {
  return multer.diskStorage({
    destination: destination,
    filename: filename
  });
}
Esempio n. 19
0
            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");
            }
Esempio n. 20
0
"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);
Esempio n. 21
0
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) {
Esempio n. 22
0
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!'});
			}
Esempio n. 23
0
             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);
Esempio n. 24
0
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){
Esempio n. 26
0
    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);
        }
    }),
Esempio n. 27
0
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'
      });
  });

};
Esempio n. 28
0
});

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);
        }
Esempio n. 29
0
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,
Esempio n. 30
0
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);
}