'use strict'; const request = require('request'); const db = require('../app/db') const logger = require('../app/logger'); var banners = { getfamilybanners: function (req, res, next) { //console.log("REQ---->",req.body.uid); var data = { "uid": req.body.uid, "member_id": req.body.member_id, "limit": (req.body.limit != null && req.body.limit !== "") ? req.body.limit : 20, "sessionid": req.body.sessionid, "page": req.body.page }; console.log("REQ req.body.uid ---->",data); let Qstring =""; let Qstring1 =""; let Qstring2 =""; let QextraString =""; let bannerCards = {}; let total_past_client_due = -1; let total_active_client_job = -1; // WHO IS THIS let client_id = 0 ; Qstring = " SELECT id AS client_id FROM members WHERE uid = '"+data.uid+"' AND id = " +data.member_id; logger.info(Qstring); db.query(Qstring, function (err, result) { try { if (err) throw err; logger.info("client_id result.rows ==> ",result.rows); client_id = result.rows[0]["client_id"]; logger.info("client_id AAA ==> ",client_id); // we must have client_id to contibnue var reqClinet = { "uid": req.body.uid, "client_id": req.body.member_id, }; this.RecoCheckActive=( reqClinet,r2,r3)=>{ } Qstring1 = " SELECT count(id) AS total_active_jobs FROM members_jobs_contract " + " WHERE client_id = "+client_id+" AND status =1 AND delivery_date > now() "; logger.info(Qstring1); db.query(Qstring1, function (err, result) { try { if (err) throw err; total_active_client_job=0; total_active_client_job = result.rows[0]["total_active_jobs"]; logger.info("total_active_client_job** ==> ",total_active_client_job); if (total_active_client_job) bannerArray.current.banner.status = 1; } catch (e) { logger.info("Error on Active Jobs =>", e.message); } }); logger.info("total_active_client_job ==> ",total_active_client_job); Qstring2 = " SELECT count(id) AS total_past_due FROM members_jobs_contract " + " WHERE client_id = "+client_id+" AND status =1 AND delivery_date < now() "; logger.info(Qstring2); db.query(Qstring2, function (err, result) { try { if (err) throw err; total_past_client_due=0; total_past_client_due = result.rows[0]["total_past_due"]; if (total_past_client_due) bannerArray.pastdue.banner.status = 1; } catch (e) { logger.info("Error on past due =>", e.message); } }); logger.info("total_past_client_due ==> ",total_past_client_due); bannerArray.current.banner.status = 1; if( total_past_client_due >=0 && total_active_client_job >=0 ){ logger.info("RETURN ABOUT TO ==> ************** "); let resultItem ={ "result": bannerArray, "total_record": 4 } next(null, resultItem ); // pass control to the next handler } // end of we have client id } catch (e) { logger.info("Error on Client Id =>", e.message); } }); logger.info("client_id ==> ",client_id); //*********** // next(null, { // "result": [], // "total_record": 0 // } ); // pass control to the next handler // logger.info(" bannerArray.pending ==> ", bannerArray["pending"]); // bannerCards.push({"pending" : bannerArray.pending }); //bannerCards.push(bannerArray.current); // // logger.info(Qstring); // db.query(Qstring, function (err, result) { // try { // if (err) throw err; // let resultItem ={ // "result": result.rows, // "total_record": result.rowCount // } // // logger.info(result); // next(null, resultItem); // pass control to the next handler // // next(null, result.rows); // pass control to the next handler // } catch (e) { // next(e.message, null); // pass control to the next handler // } // }); var bannerArray = { "pending": { "banner": { "image": "https://www.wrenchboard.com/assets/images/apps/banners/kids/banner-start.jpg", "icon": "bannerimage.icon", "style": "style1", "text": "Ready to Start ?", "description": "Waiting for you to get started", "action": "pending", "status": "0" } }, "current": { "banner": { "image": "https://www.wrenchboard.com/assets/images/apps/banners/kids/banner-active.jpg", "icon": "bannerimage.icon", "style": "style2", "text": "Current Activities", "description": "Your currently active task", "action": "mytask", "status": "0" } }, "suggested": { "banner": { "image": "https://www.wrenchboard.com/assets/images/apps/banners/kids/banner-suggested.jpg", "icon": "bannerimage.icon", "style": "style2", "text": "Waiting for Parent", "description": "Waiting for parent to get started", "action": "parentwaiting", "status": "0" } }, "recommend": { "banner": { "image": "https://www.wrenchboard.com/assets/images/apps/banners/kids/banner-recommend.jpg", "icon": "bannerimage.icon", "style": "style3", "text": "Recommend to Parent", "description": "Send to parent to approve", "action": "familymarket", "status": "0" } }, "pastdue": { "banner": { "image": "https://www.wrenchboard.com/assets/images/apps/banners/kids/banner-pastdue.jpg", "icon": "bannerimage.icon", "style": "style5", "text": "Past Due", "description": "Ask for more time if past due", "action": "pastdue", "status": "0" } } }; // "another1task": { // "banner": { // "image": "https://www.wrenchboard.com/assets/images/apps/banners/recommend-banner.jpg", // "icon": "bannerimage.icon", // "style": "style4", // "text": "Dummy for now", // "description": "dummy dummy dummy", // "action": "thisaction" // } // }, }, homebanners: function (req, res, next) { var result=[]; this.RecoCheckOffers(req, res, function(err, result){ logger.info("************************ aaaa"); logger.info(result); logger.info("************************ bbbb"); }); var result_list =[ { "title": "Some family accounts are yet to log in.", "contract": null, "card_type": "FAMILY_NOLOGIN", "card_style": null, "description": "Some family members have not logged in - a little nudge might help.", "blog_id": "0", "card_icon": "icon1", "offer_id": "0", "banner": "https://www.wrenchboard.com/assets/images/apps/banners/family-login.jpg", "banner_location": "URL", "link_path": "acc-family", "button_text": "Continue", "short_button_text": "View Now", "short_title": "Some family accounts are yet to log in", "short_description": "Help your family member get started.", "short_style": "short_style" }, { "title": "Yo man , you have Coupons to play with", "contract": null, "card_type": "COUPONS", "card_style": null, "description": "You have received some cash coupons waiting to be redeemed.", "blog_id": "0", "card_icon": "icon1", "offer_id": "0", "banner": "https://www.wrenchboard.com/assets/images/apps/banners/banner-coupons.jpg", "banner_location": "URL", "link_path": "my-coupon", "button_text": "Continue", "short_button_text": "Redeem", "short_title": "Redeem your Cash Coupons!", "short_description": "You have received some cash coupons waiting to be redeemed.", "short_style": "short_style lg" }, { "title": "Some of your task as owner Need Review now ", "contract": null, "card_type": "REVIEWJOB", "card_style": null, "description": "Some of your task as owner Need Review now,Some of your task as owner Need Review now, S Need Review now", "blog_id": "0", "card_icon": "icon1", "offer_id": "0", "banner": "banner-job-due.jpg", "banner_location": "LOCAL", "link_path": "my-review-jobs", "button_text": "View Tasks", "short_button_text": "Start Review", "short_title": "Review Ready Tasks", "short_description": "Some of your jobs are waiting for approval ", "short_style": "short_style lr" }, { "title": "Some of your task as owner of the tasks are due ", "contract": null, "card_type": "PASTDUEJOB", "card_style": null, "description": "Some of your task as owner of the tasks are due, Some of your task as owner of the tasks are due", "blog_id": "0", "card_icon": "icon1", "offer_id": "0", "banner": "https://www.wrenchboard.com/assets/images/apps/banners/past-due.jpg", "banner_location": "URL", "link_path": "my-pastdue-jobs", "button_text": "View Tasks", "short_button_text": "View", "short_title": "Past Due Tasks", "short_description": "Some of you task are now past due", "short_style": "short_style lr" }, { "title": "Share WrenchBoard with a friend.", "contract": null, "card_type": "INVITE", "card_style": null, "description": "Show WrenchBoard to a friend and earn free coupons. Get started.", "blog_id": "0", "card_icon": "icon1", "offer_id": "0", "banner": "banner-refer.jpg", "banner_location": "LOCAL", "link_path": "referral", "button_text": "Continue", "short_button_text": "View now", "short_title": "Invite a Friend - get Rewards", "short_description": "Share WrenchBoard with a friend.", "short_style": "short_style by" } ]; let resultItem ={ "result": result_list, "total_record": 5 } next(null, resultItem ); // pass control to the next handler }, RecoCheckOffers : function (req, res, next) { let Qstring ="SELECT * FROM members_jobs_offer WHERE expire > now() "+ "AND status = 1 AND client_id > 0 AND client_id =" +req.body.member_id; logger.info(Qstring); db.query(Qstring, function (err, result) { try { if (err) throw err; let resultItem ={ "result": [ { "title": "Share RecoCheckOffers with a friend.", "contract": null, "card_type": "INVITE", "card_style": null, "description": "Show WrenchBoard to a friend and earn free coupons. Get started.", "blog_id": "0", "card_icon": "icon1", "offer_id": "0", "banner": "banner-refer.jpg", "banner_location": "LOCAL", "link_path": "referral", "button_text": "Continue", "short_button_text": "View now", "short_title": "Invite a Friend - get Rewards", "short_description": "Share WrenchBoard with a friend.", "short_style": "short_style by" } ] , "total_record": result.rowCount }; logger.info(result); next(null, resultItem); // pass control to the next handler } catch (e) { next(e.message, null); // pass control to the next handler } }); }, async RecoCheckActive (req, res, next) { let total_active_client_job=0; let Qstring = " SELECT count(id) AS total_active_jobs FROM members_jobs_contract " + " WHERE client_id = "+req.client_id+" AND status =1 AND delivery_date > now() "; logger.info(Qstring); db.query(Qstring, function (err, result) { try { if (err) throw err; total_active_client_job = result.rows[0]["total_active_jobs"]; logger.info("total_active_client_job** ==> ",total_active_client_job); let resultItem ={ "total_active_client_job": total_active_client_job } next(null, resultItem); // pass control to the next handler } catch (e) { logger.info("Error on Active Jobs =>", e.message); } }); logger.info("total_active_client_job ==> ",total_active_client_job); }, RecoCheckFamilyLogin : function (req, res, next) {}, RecoCheckFamilyCount : function (req, res, next) {}, RecoCheckCoupons : function (req, res, next) {}, RecoCheckTaskDue : function (req, res, next) {}, RecoCheckTaskReview : function (req, res, next) {}, RecoCheckBlog : function (req, res, next) {}, RecoOffersInterest : function (req, res, next) {}, RecoReferAFreind : function (req, res, next) {}, RecoPendingInterestCount : function (req, res, next) {}, }; module.exports = banners;