From ac0257db671bce0ae2ba160ba93018317184256a Mon Sep 17 00:00:00 2001 From: Biswakalyan Bhuyan Date: Fri, 28 Jun 2024 20:57:46 +0530 Subject: Revert "adding the influencer page and adding the funcitons in it" This reverts commit 4a580e70d713ee80a0093663b665402e1bef5fc9. --- client/package-lock.json | 21 ++++----------------- client/package.json | 1 - client/src/Influencers.js | 28 +++++++++++----------------- server/server.js | 25 ++++++++----------------- 4 files changed, 23 insertions(+), 52 deletions(-) diff --git a/client/package-lock.json b/client/package-lock.json index 8efb06a..a6fa0c1 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -12,7 +12,6 @@ "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", "axios": "^1.7.2", - "dotenv": "^16.4.5", "react": "^18.3.1", "react-dom": "^18.3.1", "react-router-dom": "^6.24.0", @@ -7764,15 +7763,12 @@ } }, "node_modules/dotenv": { - "version": "16.4.5", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", - "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", "license": "BSD-2-Clause", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" + "node": ">=10" } }, "node_modules/dotenv-expand": { @@ -16407,15 +16403,6 @@ } } }, - "node_modules/react-scripts/node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=10" - } - }, "node_modules/read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", diff --git a/client/package.json b/client/package.json index 71228a9..70e70ca 100644 --- a/client/package.json +++ b/client/package.json @@ -7,7 +7,6 @@ "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", "axios": "^1.7.2", - "dotenv": "^16.4.5", "react": "^18.3.1", "react-dom": "^18.3.1", "react-router-dom": "^6.24.0", diff --git a/client/src/Influencers.js b/client/src/Influencers.js index cfa28d9..a72d654 100644 --- a/client/src/Influencers.js +++ b/client/src/Influencers.js @@ -1,18 +1,16 @@ import React, { useState, useEffect, useCallback } from 'react'; import axios from 'axios'; -require('dotenv').config(); -function Influencers() { +function Influencers({ adminPassword }) { const [profiles, setProfiles] = useState([]); const [newProfile, setNewProfile] = useState(''); - const adminPassword = process.env.ADMIN_PASSWROD; - const fetchProfiles = useCallback(async () => { try { - const response = await axios.get('http://localhost:5001/influencers', { - headers: { 'x-admin-password': adminPassword } + const response = await axios.get('http://localhost:5001/profiles', { + headers: { Authorization: `Bearer ${adminPassword}` } }); + console.log('Fetched profiles:', response.data); setProfiles(response.data); } catch (error) { console.error('Error fetching profiles:', error); @@ -25,13 +23,11 @@ function Influencers() { const addProfile = async () => { try { - const updatedProfiles = [...profiles, newProfile]; await axios.post( - 'http://localhost:5001/influencers', - { profiles: updatedProfiles }, - { headers: { 'x-admin-password': adminPassword } } + 'http://localhost:5001/profiles', + { username: newProfile }, + { headers: { Authorization: `Bearer ${adminPassword}` } } ); - setProfiles(updatedProfiles); setNewProfile(''); fetchProfiles(); } catch (error) { @@ -46,10 +42,10 @@ function Influencers() { formData.append('file', file); try { - await axios.post('http://localhost:5001/import-influencers', formData, { + await axios.post('http://localhost:5001/upload', formData, { headers: { 'Content-Type': 'multipart/form-data', - 'x-admin-password': adminPassword + Authorization: `Bearer ${adminPassword}` } }); fetchProfiles(); @@ -61,8 +57,8 @@ function Influencers() { const exportJson = async () => { try { - const response = await axios.get('http://localhost:5001/export-influencers', { - headers: { 'x-admin-password': adminPassword }, + const response = await axios.get('http://localhost:5001/export', { + headers: { Authorization: `Bearer ${adminPassword}` }, responseType: 'blob' }); const url = window.URL.createObjectURL(new Blob([response.data])); @@ -86,14 +82,12 @@ function Influencers() { placeholder="Enter Instagram username" /> -

Current Influencers

-

Import/Export Influencers

{ // Endpoint to get influencers app.get('/influencers', authenticate, (req, res) => { - try { - const influencersData = JSON.parse(fs.readFileSync(path.join(__dirname, 'influencers.json'), 'utf8')); - res.json(influencersData.profiles); - } catch (error) { - console.error('Error fetching influencers:', error); - res.status(500).json({ error: 'Error fetching influencers' }); - } + const influencers = JSON.parse(fs.readFileSync(path.join(__dirname, 'influencers.json'), 'utf8')).profiles; + res.json(influencers); }); -// Endpoint to update influencersData +// Endpoint to update influencers app.post('/influencers', authenticate, (req, res) => { - try { - const { profiles } = req.body; - const influencersData = { profiles }; - fs.writeFileSync(path.join(__dirname, 'influencers.json'), JSON.stringify(updatedData, null, 2)); - } catch (error) { - console.error('Error updating influencers:', error); - res.status(500).json({ error: 'Error updating influencers' }); - } + const { profiles } = req.body; + fs.writeFileSync(path.join(__dirname, 'influencers.json'), JSON.stringify({ profiles }, null, 2)); + res.status(200).json({ message: 'Influencers updated successfully' }); }); // Endpoint to export influencers JSON -- cgit v1.2.3-59-g8ed1b