So, I'm trying to pass values in my ejs file, but it's not working!
Except for the 'shortL' I'm getting [object promise] for 'first', 'second' and 'third' parameters, as for 'des' and 'gen' no values are returned.
I have tried every possible solution but nothing worked. Please help me!
This is my code:
app.get("/dashboard",(req,res,next)=>{
db.auth().onAuthStateChanged((user) => {
if (user) {
var uid = user.uid;
db.firestore().collection("Users").doc(uid).get()
.then(function (doc){
if(doc.exists){
var shortL =doc.data().short_link
var markId = doc.data().markid;
//rosan's db
let firstColl =secondarydb.firestore().collection("Affiliate_Marketing").doc(markId);
let first =firstColl.collection('data').doc('install').get()
.then(
function(doc){
if(doc.exists){
var install =doc.data().number
return install;
}else{
console.log('No such document!');
}
})
.catch(function(err){
console.log(err);
})
let secondColl= secondarydb.firestore().collection("Affiliate_Marketing").doc(markId);
let second= secondColl.collection('data').doc('login').get()
.then(
function (doc){
if(doc.exists){
var login =doc.data().number
return login;
}else{
console.log('No such document!');
}
})
.catch(function(err){
console.log(err);
})
let thirdColl= secondarydb.firestore().collection("Affiliate_Marketing").doc(markId);
let third=thirdColl.collection('data').doc('purchases');
third.get()
.then(function (doc){
if(doc.exists){
var puchases=doc.data().free_trial
return puchases;
}else{
console.log('No such document!');
}
})
.catch(function(err){
console.log(err);
})
let pur= third.collection('users').doc("hz71u4cgZA6JQ9IR6Yeo").get()
.then(function(doc){
if(doc.exists){
var des = doc.data().skuDetails.description
return des;
}else{
console.log('No such document!');
}
})
.catch(function(err){
console.log(err);
})
res.render("dash",{shortL:shortL,first:first,second:second,third:third,des:pur[0],gen:pur[1]});
}else{
console.log('No such document!');
}
})
.catch(function(err){
console.log(err);
})
} else {
console.log("User signed out");
}
});
})