diff --git a/components/Modals/interest-modal.tsx b/components/Modals/interest-modal.tsx index 702a51098..738fe6726 100644 --- a/components/Modals/interest-modal.tsx +++ b/components/Modals/interest-modal.tsx @@ -11,7 +11,7 @@ import { checkObjectProperties } from '@modules/portfolio/functions/checkObjectP import Loader from '@ui/Loader'; import { AiOutlineClose, AiOutlineCloseCircle, AiOutlinePlus } from 'react-icons/ai'; -const endpoint = 'https://hng6-r5y3.onrender.com'; +const endpoint = `${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio`; type interestModalProps = { onCloseModal: () => void; @@ -94,7 +94,7 @@ const InterestModal = ({ isOpen, onCloseModal, onSaveModal, userId }: interestMo userId: userId, }; axios - .post(`${endpoint}/api/v1/interests`, data) + .post(`${endpoint}/interests`, data) .then((res) => { setLoading(false); notify({ @@ -154,7 +154,7 @@ const InterestModal = ({ isOpen, onCloseModal, onSaveModal, userId }: interestMo const getAllInterests = () => { setInitialLoading(true); axios - .get(`${endpoint}/api/v1/interests/${userId}`) + .get(`${endpoint}/interests/${userId}`) .then((res) => { setInitialLoading(false); const interestsArray: string[] = res.data?.interestArray; diff --git a/components/Modals/language-modal.tsx b/components/Modals/language-modal.tsx index 5dab74312..9d5fc82c0 100644 --- a/components/Modals/language-modal.tsx +++ b/components/Modals/language-modal.tsx @@ -18,7 +18,7 @@ type languageModalProps = { userId: string; }; -const endpoint = 'https://hng6-r5y3.onrender.com'; +const endpoint = (`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio`) as string; const programmingLanguages = [ 'JavaScript', 'TypeScript', @@ -101,7 +101,7 @@ const LanguageModal = ({ isOpen, onCloseModal, onSaveModal, userId }: languageMo }; const handleDelete = async (params: any) => { - const data = await fetch(`https://hng6-r5y3.onrender.com/api/v1/languages`, { + const data = await fetch(`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/languages`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -141,7 +141,7 @@ const LanguageModal = ({ isOpen, onCloseModal, onSaveModal, userId }: languageMo sectionId: 5, }; axios - .post(`${endpoint}/api/v1/languages`, data) + .post(`${endpoint}/languages`, data) .then(async (res) => { setLoading(false); notify({ @@ -151,7 +151,7 @@ const LanguageModal = ({ isOpen, onCloseModal, onSaveModal, userId }: languageMo type: 'success', }); setValues([]); - await fetch(`${endpoint}/api/v1/getPorfolio/${userId}`); + await fetch(`${endpoint}/getPorfolio/${userId}`); onSaveModal(); }) .catch((err) => { @@ -169,7 +169,7 @@ const LanguageModal = ({ isOpen, onCloseModal, onSaveModal, userId }: languageMo const getAllLanguages = () => { setInitialLoading(true); axios - .get(`${endpoint}/api/v1/languages/${userId}`) + .get(`${endpoint}/languages/${userId}`) .then((res) => { if (res.data.data !== null) { setInitialLoading(false); diff --git a/components/Navbars/TopBar.tsx b/components/Navbars/TopBar.tsx index db775fcb3..f7475b922 100644 --- a/components/Navbars/TopBar.tsx +++ b/components/Navbars/TopBar.tsx @@ -106,7 +106,6 @@ function TopBar(props: { activePage: string; showDashBorad: boolean }) { setToggle(false); } if (notificationsRef.current && !notificationsRef.current.contains(targetNode)) { - console.log(notificationsRef.current); setNotificationMenu(false); } } diff --git a/context/PortfolioLandingContext.tsx b/context/PortfolioLandingContext.tsx index f7304ae13..24c4b8813 100644 --- a/context/PortfolioLandingContext.tsx +++ b/context/PortfolioLandingContext.tsx @@ -116,7 +116,7 @@ const Portfolio = createContext({ export function PortfolioCtxProvider(props: { children: any }) { const queryClient = useQueryClient(); const router = useRouter(); - const portfolioUrl = `https://hng6-r5y3.onrender.com/api/v1/portfolio`; + const portfolioUrl = `${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/portfolio`; const { auth } = useAuth(); const [userId, setUserId] = useState(''); const [slug, setSlug] = useState(''); @@ -272,7 +272,7 @@ export function PortfolioCtxProvider(props: { children: any }) { formData.append('images', coverImage as string | Blob); formData.append('userId', userId); - const response = await fetch('https://hng6-r5y3.onrender.com/api/v1/profile/cover/upload', { + const response = await fetch(`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/profile/cover/upload`, { method: 'POST', body: formData, }); diff --git a/http/auth.ts b/http/auth.ts index 3a375f5a8..e4924b6e5 100644 --- a/http/auth.ts +++ b/http/auth.ts @@ -2,6 +2,7 @@ import axios from 'axios'; const AUTH_HTTP_URL = 'https://zuri-auth.up.railway.app/api/auth/api/auth'; const AUTH_HTTP_URL_2 = 'https://staging.zuri.team/api/auth/api'; +const _AUTH_HTTP_URL = 'https://zuri-auth.up.railway.app/api/auth/api'; const $http = axios.create({ baseURL: AUTH_HTTP_URL, @@ -11,7 +12,7 @@ const $http = axios.create({ }); const $http_2 = axios.create({ - baseURL: AUTH_HTTP_URL_2, + baseURL: _AUTH_HTTP_URL, timeout: 30000, headers: { 'Content-Type': 'application/json; charset=UTF-8', diff --git a/http/axios.ts b/http/axios.ts index 82cb340eb..7920b9e9e 100644 --- a/http/axios.ts +++ b/http/axios.ts @@ -6,7 +6,7 @@ const $http = axios.create({ headers: { 'Content-Type': 'application/json', credentials: 'include', - // 'Access-Control-Allow-Origin': '*', + 'Access-Control-Allow-Origin': '*', }, // withCredentials: false, }); diff --git a/http/checkout.ts b/http/checkout.ts index 69ef676d5..5ca5da701 100644 --- a/http/checkout.ts +++ b/http/checkout.ts @@ -6,7 +6,7 @@ import axios from 'axios'; // export const CART_ENDPOINT = "https://zuri-cart-checkout.onrender.com/api/v1/checkout_cart" -export const CART_ENDPOINT = "http://localhost:8000/api/v1/checkout_cart" +export const CART_ENDPOINT = process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL + "/checkout"; export const STAGING_URL = process.env.NEXT_PUBLIC_APP_STAGING_URL || 'https://staging.zuri.team'; export const RECENTLY_VIEWED_ENDPOINT = 'https://staging.zuri.team/api/marketplace/v1/recently-viewed'; @@ -188,7 +188,7 @@ export const getRecentlyViewedProducts = async (token: string) => { }; export const getRecommendedProducts = async () => { - const apiUrl = 'https://coral-app-8bk8j.ondigitalocean.app/api/marketplace/recommendations'; + const apiUrl = 'https://coral-app-8bk8j.ondigitalocean.app/api/marketplace/v1/recommendations'; try { const response = await axios.get(apiUrl); return response.data.data; diff --git a/modules/explore/explorePage.tsx b/modules/explore/explorePage.tsx index 8ad7f7b26..13cfead02 100644 --- a/modules/explore/explorePage.tsx +++ b/modules/explore/explorePage.tsx @@ -82,7 +82,7 @@ const HomePage = () => { const { data, isLoading } = useQuery({ queryKey: ['profile', deBounce, filters, pageNumber], queryFn: () => fetchUsers(searchQuery), - staleTime: 60000, + // staleTime: 60000, }); return ( diff --git a/modules/marketplace/component/ProductWeThoughtMightInterestYou.tsx b/modules/marketplace/component/ProductWeThoughtMightInterestYou.tsx index dec581e66..5ab74cb65 100644 --- a/modules/marketplace/component/ProductWeThoughtMightInterestYou.tsx +++ b/modules/marketplace/component/ProductWeThoughtMightInterestYou.tsx @@ -19,7 +19,7 @@ export default function ProductWeThoughtMightInterestYou({ id }: any) { const { setCartCountNav, cartCount } = useCart(); const [cartLoading, setCartLoading] = useState(true); - const url = `https://coral-app-8bk8j.ondigitalocean.app/api/marketplace/similar_products/${id}/`; + const url = `https://coral-app-8bk8j.ondigitalocean.app/api/marketplace/v1/similar_products/${id}/`; useEffect(() => { fetch(url) .then((res) => res.json()) @@ -30,7 +30,7 @@ export default function ProductWeThoughtMightInterestYou({ id }: any) { }, [url]); const addToCart = async (ids: string) => { - const apiUrl = `${CART_ENDPOINT}/api/carts`; + const apiUrl = `${CART_ENDPOINT}/carts`; if (auth?.token) { try { const response = await axios.post( diff --git a/modules/marketplace/http/index.ts b/modules/marketplace/http/index.ts index a694bd957..3fa1fa57a 100644 --- a/modules/marketplace/http/index.ts +++ b/modules/marketplace/http/index.ts @@ -1,7 +1,7 @@ import axios from 'axios'; -// export let API_URI = 'https://coral-app-8bk8j.ondigitalocean.app/api/marketplace/v1'; -export let API_URI = 'https://staging.zuri.team/api/marketplace/v1'; +export let API_URI = 'https://coral-app-8bk8j.ondigitalocean.app/api/marketplace/v1'; +// export let API_URI = 'https://staging.zuri.team/api/marketplace/v1'; const http = axios.create({ baseURL: API_URI, diff --git a/modules/portfolio/component/about/about.tsx b/modules/portfolio/component/about/about.tsx index 7955691f2..909f15b33 100644 --- a/modules/portfolio/component/about/about.tsx +++ b/modules/portfolio/component/about/about.tsx @@ -26,12 +26,12 @@ const PortfolioAbout: React.FC = ({ onCloseModal, onSaveModal, const [create, setCreate] = useState(false); // POST ABOUT VALUE TO DATABASE - const API_BASE_URL = 'https://hng6-r5y3.onrender.com'; + const API_BASE_URL = (`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio`) as string; const createResponse = async () => { try { const axiosConfig = { method: 'post', - url: `${API_BASE_URL}/api/v1/about/${userId}`, + url: `${API_BASE_URL}/about/${userId}`, data: bio, }; @@ -79,7 +79,7 @@ const PortfolioAbout: React.FC = ({ onCloseModal, onSaveModal, try { const axiosConfig = { method: 'get', - url: `${API_BASE_URL}/api/v1/about/${userId}`, + url: `${API_BASE_URL}/about/${userId}`, }; const response = await axios(axiosConfig); @@ -115,7 +115,7 @@ const PortfolioAbout: React.FC = ({ onCloseModal, onSaveModal, try { const axiosConfig = { method: 'put', - url: `${API_BASE_URL}/api/v1/about/${id}`, + url: `${API_BASE_URL}/about/${id}`, data: bio, }; @@ -179,7 +179,7 @@ const PortfolioAbout: React.FC = ({ onCloseModal, onSaveModal, try { const axiosConfig = { method: 'delete', - url: `${API_BASE_URL}/api/v1/about/${id}`, + url: `${API_BASE_URL}/about/${id}`, }; const response = await axios(axiosConfig); diff --git a/modules/portfolio/component/awards-modal.tsx b/modules/portfolio/component/awards-modal.tsx index 06c37eda2..451a9ab17 100644 --- a/modules/portfolio/component/awards-modal.tsx +++ b/modules/portfolio/component/awards-modal.tsx @@ -39,7 +39,7 @@ const initialContextValue: Context = { error: '', setIsLoading: () => {}, isLoading: false, - baseURL: 'https://hng6-r5y3.onrender.com', // Add baseURL with a default value + baseURL: (`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio`) as string, // Add baseURL with a default value setBaseURL: () => {}, // Add setter for baseURL }; @@ -62,7 +62,7 @@ const Awards = ({ isOpen, onCloseModal }: awardsModalProps) => { url: '', description: '', }); - const [baseURL, setBaseURL] = useState('https://hng6-r5y3.onrender.com'); + const [baseURL, setBaseURL] = useState(`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio`); const [isModalOpen, setIsModalOpen] = useState(false); const [urlError, setUrlError] = useState(''); const [error, setError] = useState(''); @@ -82,7 +82,7 @@ const Awards = ({ isOpen, onCloseModal }: awardsModalProps) => { try { setIsLoading(true); - const response = await fetch(`${baseURL}/api/v1/awards/${userId}`, { + const response = await fetch(`${baseURL}/awards/${userId}`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -365,7 +365,7 @@ const AwardList: React.FC = () => { const fetchAwards = async () => { try { setIsLoading(true); - const response = await fetch(`${baseURL}/api/v1/awards`); + const response = await fetch(`${baseURL}/awards`); setIsLoading(false); const status = response.status; @@ -446,7 +446,7 @@ const AwardItem: React.FC = ({ award }) => { // Send a PUT request to update the award try { setEditLoading(true); - const response = await fetch(`${baseURL}/api/v1/awards/${id}`, { + const response = await fetch(`${baseURL}/awards/${id}`, { method: 'PUT', headers: { 'Content-Type': 'application/json', @@ -513,7 +513,7 @@ const AwardItem: React.FC = ({ award }) => { try { setDeleteLoading(true); - const response = await fetch(`${baseURL}/api/v1/awards/${id}`, { + const response = await fetch(`${baseURL}/awards/${id}`, { method: 'DELETE', }); const status = response.status; diff --git a/modules/portfolio/component/certification-modal.tsx b/modules/portfolio/component/certification-modal.tsx index fa6f8d050..c4e3df8f7 100644 --- a/modules/portfolio/component/certification-modal.tsx +++ b/modules/portfolio/component/certification-modal.tsx @@ -39,7 +39,7 @@ const initialContextValue: Context = { error: '', setIsLoading: () => {}, isLoading: false, - baseURL: 'https://hng6-r5y3.onrender.com', // Add baseURL with a default value + baseURL: (`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio`) as string, // Add baseURL with a default value setBaseURL: () => {}, // Add setter for baseURL }; @@ -62,7 +62,7 @@ const Certifications = ({ isOpen, onCloseModal }: certificationModalProps) => { url: '', description: '', }); - const [baseURL, setBaseURL] = useState('https://hng6-r5y3.onrender.com'); + const [baseURL, setBaseURL] = useState(`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio`); const [isModalOpen, setIsModalOpen] = useState(false); const [urlError, setUrlError] = useState(''); const [error, setError] = useState(''); diff --git a/modules/portfolio/component/contact-modal.tsx b/modules/portfolio/component/contact-modal.tsx index ed3b78589..84d686426 100644 --- a/modules/portfolio/component/contact-modal.tsx +++ b/modules/portfolio/component/contact-modal.tsx @@ -92,7 +92,7 @@ function ContactModal({ isOpen, onCloseModal, onSaveModal, userId }: contactModa user_id: userId, // Ensure you have the userId available })); - sendArrayOfObjects(data, 'https://hng6-r5y3.onrender.com/api/v1/contacts') + sendArrayOfObjects(data, `${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/contacts`) .then((response: any) => { setLoading(false); notify({ @@ -128,7 +128,7 @@ function ContactModal({ isOpen, onCloseModal, onSaveModal, userId }: contactModa console.log('delete clicked'); const id = 5; try { - const res = await fetch(`https://hng6-r5y3.onrender.com/api/v1/contacts/${id}`, { + const res = await fetch(`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/contacts/${id}`, { method: 'DELETE', headers: { 'Content-Type': 'application/json', @@ -145,7 +145,7 @@ function ContactModal({ isOpen, onCloseModal, onSaveModal, userId }: contactModa const getSocialsAvailable = async () => { try { - const response = await axios.get(`https://hng6-r5y3.onrender.com/api/v1/socials`); + const response = await axios.get(`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/socials`); const data = await response.data; console.log('getSocialsAvailable', data); setAvailableSocials(data?.data); @@ -164,7 +164,7 @@ function ContactModal({ isOpen, onCloseModal, onSaveModal, userId }: contactModa const getAllSocials = async () => { try { - const response = await axios.get(`https://hng6-r5y3.onrender.com/api/v1/contacts/${userId}`); + const response = await axios.get(`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/contacts/${userId}`); const data = await response.data; console.log('responseData', data); } catch (error) { diff --git a/modules/portfolio/component/modals/apiService.js b/modules/portfolio/component/modals/apiService.js index 402822a47..f47bb4edb 100644 --- a/modules/portfolio/component/modals/apiService.js +++ b/modules/portfolio/component/modals/apiService.js @@ -1,6 +1,6 @@ import axios from 'axios'; -const BASE_URL = 'https://hng6-r5y3.onrender.com/api/v1'; +const BASE_URL = `${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/`; export const updateProfileDetails = async (userId, newProfileDetails) => { try { diff --git a/modules/portfolio/component/modals/edit-profile.tsx b/modules/portfolio/component/modals/edit-profile.tsx index e1b47e0de..05215c716 100644 --- a/modules/portfolio/component/modals/edit-profile.tsx +++ b/modules/portfolio/component/modals/edit-profile.tsx @@ -34,11 +34,14 @@ const EditProfile = () => { useEffect(() => { - + console.log("Logging before fetch") const fetchData = async () => { try { setIsLoading(true); - const response = await fetch(`https://hng6-r5y3.onrender.com/api/v1/users/${userId}`); + console.log('Logging this one'); + const response = await fetch(`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/users/${userId}`); + console.log('after logging'); + const userData = await response.json(); @@ -61,7 +64,7 @@ const EditProfile = () => { const getTracks = async () => { try { - const response = await fetch('https://hng6-r5y3.onrender.com/api/v1/tracks'); + const response = await fetch(`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/tracks`); const data = await response.json(); return data.data; } catch (error: any) { @@ -96,7 +99,9 @@ const EditProfile = () => { matchingTrack = availableTracks.find((track: any) => track.track === selectedTrack); if (matchingTrack) { setIsLoading(true); - const response = await fetch(`https://hng6-r5y3.onrender.com/api/v1/users/${userId}`, { + console.log("Logging second one"); + const response = await fetch(`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/users/${userId}`, + { method: 'PUT', headers: { 'Content-Type': 'application/json', @@ -131,7 +136,7 @@ const EditProfile = () => { const formData = new FormData(); formData.append('images', coverImage as string | Blob); formData.append('userId', userId); - const response = await fetch('https://hng6-r5y3.onrender.com/api/v1/profile/image/upload', { + const response = await fetch(`${process.env.NEXT_PUBLIC_BACKEND_ENDPOINT_URL}/portfolio/profile/image/upload`, { method: 'POST', body: formData, }); @@ -253,14 +258,14 @@ const EditProfile = () => { {/* */} - ​ ​ + - ​ +