diff --git a/helpers/getCompanyNameAndLogo.js b/helpers/getCompanyNameAndLogo.js new file mode 100644 index 0000000..cd01c71 --- /dev/null +++ b/helpers/getCompanyNameAndLogo.js @@ -0,0 +1,21 @@ +// Get Stock Company symbol Function +const axios = require("axios"); + +module.exports = async function getCompanyNameAndLogo(symbol) { + + let data = await axios + .get( + `https://www.alphavantage.co/query?function=OVERVIEW&symbol=${symbol}&apikey=${process.env.ALPHA_VANTAGE_KEY}` + ) + .then(async (resp) => { + let companyName = resp.data.Name; + console.log(companyName); + let logoSrc = await axios.get(`https://autocomplete.clearbit.com/v1/companies/suggest?query=:${companyName.split(' ')[0]}`).then((resp) => resp.data[0].logo).catch(err => console.log(err)); + return { companyName, logoSrc }; + }) + .catch((err) => { + console.log(err); + }); + + return data; +}; diff --git a/routes/api/cart.js b/routes/api/cart.js index 0c61fdc..3324d45 100644 --- a/routes/api/cart.js +++ b/routes/api/cart.js @@ -5,6 +5,7 @@ const { ensureAuth } = require("../../middleware/auth"); const User = require("../../models/User"); const getPrice = require("../../helpers/getPrice"); +const getCompanyNameAndLogo = require("../../helpers/getCompanyNameAndLogo"); // TODO // Stocks Cart Buy/Sell @@ -16,9 +17,9 @@ const getPrice = require("../../helpers/getPrice"); // @route GET /cart/:symbol router.get("/:symbol", ensureAuth, async (req, res) => { const symbol = req.params.symbol; - const {latestPrice} = await getPrice(symbol); - res.status(200).render("cart", { layout: "layouts/app", symbol, latestPrice, href: '/market', avatar: req.user.image }); - + const { latestPrice } = await getPrice(symbol); + const { companyName, logoSrc } = await getCompanyNameAndLogo(symbol); + res.status(200).render("cart", { layout: "layouts/app", symbol, latestPrice, logoSrc, companyName, href: '/market', avatar: req.user.image }); }); // @desc To buy diff --git a/views/cart.ejs b/views/cart.ejs index d2bd99c..83acf08 100644 --- a/views/cart.ejs +++ b/views/cart.ejs @@ -1,47 +1,52 @@ -
+

Buy Stock

-
+ class="new grid grid-flow-col grid-cols-3 md:grid-cols-4 grid-rows-2 grig-gap-0 md:gap-4 bg-white shadow-md p-2 lg:p-6 text-center"> +
Company Name
-
- +
+
+ +

<%= companyName %>

+
-