const multer = require('multer'); const path = require('path'); const env = require('../helpers/env'); const fileHelper = require('../helpers/file_helper'); const storage = multer.diskStorage({ //multers disk storage settings destination: function (req, file, cb) { cb(null, env.INV_UPLOAD_DIR); }, filename: function (req, file, cb) { var datetimestamp = Date.now(); cb( null, file.fieldname + '-' + datetimestamp + '.' + file.originalname.split('.')[file.originalname.split('.').length - 1] ); }, }); const invoiceSettingsUpload = multer({ storage: storage, fileFilter: function (req, file, callback) { const ext = path.extname(file.originalname); if (!['.png', '.jpg', '.jpeg'].includes(ext.toLowerCase())) { return callback(new multer.MulterError('Only images are allowed')); } callback(null, true); }, limits: { fileSize: env.INV_MAX_UPLOAD_SIZE_MB * 1024 * 1024, }, }); module.exports = { invoiceSettingsUpload };