node.js - node js mongoose express-fileupload replacing error -


i'm creating upload project. created 2 routes upload. 1st when user registration part upload image 2nd 1 if driver adding vehicle can add image of vehicle.

the problem when run function 1st time works expected. if run other router after running of function. file replace last uploaded file name. please me fix it

here user registration upload function

if(req.files.file.name.split('.').pop() == 'jpg' ||      req.files.file.name.split('.').pop() == 'jpeg' ||      req.files.file.name.split('.').pop() == 'png') {     uploads     .findone({}, {}, { sort: { 'created_at' : -1 }},     function(err, last){         if(err) throw err;         if(!last) {             uploads             .create({                 filename: filename + '.' + extension,                 path: licenseimg             },             function(err, license){                 if(err) throw err;                 driver                 .create({                     driver_id: user._id,                     driving_license_copy: license._id                 },                 function(){                     req.files.file.mv(licenseimg + req.files.file.name, function(err){                         if(err) return res.status(500).send(err);                         fs.rename(licenseimg + req.files.file.name, licenseimg + filename + '.' + req.files.file.name.split('.').pop(), function(err){                             if(err) throw err;                             config.sendwithhash(                                 user.email,                                 'verify account',                                 'please click link down below verofy account \n http://localhost:1200/user/verify/email/',                                 user.nic + user.phone + user.email                             );                             res.send({                                 message: 'new user created, please verify email first',                             });                         })                     })                 });             });         }         else {             var filename = last.filename;             var renamedname = filename.split('_')[0] + "_" + parseint(parseint(filename.split('.')[0].substr(filename.split('.')[0].lastindexof('_')+1))+1);             console.log(filename);             console.log(renamedname);             uploads             .create({                 filename: renamedname + '.' + extension,                 path: licenseimg             },             function(err, license){                 if(err) throw err;                 driver                 .create({                     driver_id: user._id,                     driving_license_copy: license._id                 },                 function(){                     req.files.file.mv(licenseimg + req.files.file.name, function(err){                         if(err) return res.status(500).send(err);                         fs.rename(licenseimg + req.files.file.name, licenseimg + renamedname + '.' + req.files.file.name.split('.').pop(), function(err){                             if(err) throw err;                             config.sendwithhash(                                 user.email,                                 'verify account',                                 'please click link down below verofy account \n http://localhost:1200/user/verify/email/',                                 user.nic + user.phone + user.email                             );                             res.send({                                 message: 'new user created, please verify email first',                             });                         })                     })                 });             });         }     }); } else {     res.send('cannot upload type of files'); } 

this other upload function executes driver adding vehicle

uploads .findone() .sort({ 'created_at' : -1}) .exec(function(err, last){     if(err) throw err;     var filename = last.filename;     var filepath = './public/uploads/vehicles/';     var extension = last.filename.split('.').pop();     var renamedname = filename.split('_')[0] + "_" + parseint(parseint(filename.split('.')[0].substr(filename.split('.')[0].lastindexof('_')+1))+1);     console.log(last);     console.log(filename);     console.log(renamedname);     uploads     .create({         filename: renamedname + '.' + extension,         path: filepath     },     function(err, vehicleimg){         if(err) throw err;         vehicle         .create({             driver_id: req.decoded._doc._id,             make: req.body.make,             model: req.body.model,             year: req.body.year,             registration_no: req.body.reg_no,             vehicle_img: vehicleimg._id         },         function(){             req.files.file.mv(filepath + req.files.file.name, function(err){                 if(err) return res.status(500).send(err);                 fs.rename(filepath + req.files.file.name, filepath + vehicleimg.filename, function(err){                     if(err) throw err;                         res.send({                             message: 'vehicle added',                         });                     });                 });             });         });     }); 

so here of code error coming from. if knows why that, please let me know how fix it

thank you


Comments

Popular posts from this blog

minify - Minimizing css files -

neo4j - finding mutual friends in a cypher statement starting with three or more persons -

php - How to remove letter in front of the word laravel -