diff options
author | Biswakalyan Bhuyan <biswa@surgot.in> | 2024-06-28 18:00:44 +0530 |
---|---|---|
committer | Biswakalyan Bhuyan <biswa@surgot.in> | 2024-06-28 18:00:44 +0530 |
commit | 251ff2f06d8e118e3e81b0458d284fbf62af1934 (patch) | |
tree | 6196cb60fb134dc631446516a5ee0b367b21f370 /client/src | |
parent | 8329db0b28cf1a65350daf5505f375cc000383e7 (diff) | |
download | insta-local-251ff2f06d8e118e3e81b0458d284fbf62af1934.tar.gz insta-local-251ff2f06d8e118e3e81b0458d284fbf62af1934.tar.bz2 insta-local-251ff2f06d8e118e3e81b0458d284fbf62af1934.zip |
adding the influencer page and adding the funcitons in it
Diffstat (limited to 'client/src')
-rw-r--r-- | client/src/Influencers.js | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/client/src/Influencers.js b/client/src/Influencers.js index a72d654..cfa28d9 100644 --- a/client/src/Influencers.js +++ b/client/src/Influencers.js @@ -1,16 +1,18 @@ import React, { useState, useEffect, useCallback } from 'react'; import axios from 'axios'; +require('dotenv').config(); -function Influencers({ adminPassword }) { +function Influencers() { 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/profiles', { - headers: { Authorization: `Bearer ${adminPassword}` } + const response = await axios.get('http://localhost:5001/influencers', { + headers: { 'x-admin-password': adminPassword } }); - console.log('Fetched profiles:', response.data); setProfiles(response.data); } catch (error) { console.error('Error fetching profiles:', error); @@ -23,11 +25,13 @@ function Influencers({ adminPassword }) { const addProfile = async () => { try { + const updatedProfiles = [...profiles, newProfile]; await axios.post( - 'http://localhost:5001/profiles', - { username: newProfile }, - { headers: { Authorization: `Bearer ${adminPassword}` } } + 'http://localhost:5001/influencers', + { profiles: updatedProfiles }, + { headers: { 'x-admin-password': adminPassword } } ); + setProfiles(updatedProfiles); setNewProfile(''); fetchProfiles(); } catch (error) { @@ -42,10 +46,10 @@ function Influencers({ adminPassword }) { formData.append('file', file); try { - await axios.post('http://localhost:5001/upload', formData, { + await axios.post('http://localhost:5001/import-influencers', formData, { headers: { 'Content-Type': 'multipart/form-data', - Authorization: `Bearer ${adminPassword}` + 'x-admin-password': adminPassword } }); fetchProfiles(); @@ -57,8 +61,8 @@ function Influencers({ adminPassword }) { const exportJson = async () => { try { - const response = await axios.get('http://localhost:5001/export', { - headers: { Authorization: `Bearer ${adminPassword}` }, + const response = await axios.get('http://localhost:5001/export-influencers', { + headers: { 'x-admin-password': adminPassword }, responseType: 'blob' }); const url = window.URL.createObjectURL(new Blob([response.data])); @@ -82,12 +86,14 @@ function Influencers({ adminPassword }) { placeholder="Enter Instagram username" /> <button onClick={addProfile}>Add</button> + <h3>Current Influencers</h3> <ul> {profiles.map((profile, index) => ( <li key={index}>{profile}</li> ))} </ul> + <h3>Import/Export Influencers</h3> <input type="file" |