Compare commits

...

4 Commits

2 changed files with 60 additions and 45 deletions
@@ -1,8 +1,8 @@
import React, { useEffect } from 'react';
import { useDispatch } from "react-redux";
import { useLocation, useNavigate } from 'react-router-dom';
import usersService from '../../../services/UsersService';
import {updateUserDetails} from "../../../store/UserDetails";
import { useDispatch } from "react-redux";
import { updateUserDetails } from "../../../store/UserDetails";
import AuthLayout from "../AuthLayout";
function FbookRedirect() {
@@ -22,38 +22,50 @@ function FbookRedirect() {
console.log(codeResponse);
/*
POST /token HTTP/1.1
Host: oauth2.googleapis.com
Content-Type: application/x-www-form-urlencoded
https://developers.facebook.com/docs/facebook-login/guides/advanced/manual-flow/#exchangecode
Step 1. Get access token by code
code=4/P7q7W91a-oMsCeLvIaQm6bTrgtp7&
client_id=your_client_id&
client_secret=your_client_secret&
redirect_uri=https%3A//oauth2.example.com/code&
grant_type=authorization_code
GET https://graph.facebook.com/v17.0/oauth/access_token?
client_id={app-id}
&redirect_uri={redirect-uri}
&client_secret={app-secret}
&code={code-parameter}
https://developers.facebook.com/docs/facebook-login/guides/access-tokens/get-long-lived
Step 2. Get long-lived token by access token
curl -i -X GET "https://graph.facebook.com/{graph-api-version}/oauth/access_token?
grant_type=fb_exchange_token&
client_id={app-id}&
client_secret={app-secret}&
fb_exchange_token={your-access-token}"
*/
// process.env.REACT_APP_FACEBOOK_CLIENT_ID
// process.env.REACT_APP_FACEBOOK_CLIENT_SCOPE
var reqData = {
auth_type: "FACEBOOK",
code: codeResponse,
redirect_uri: process.env.REACT_APP_GOOGLE_REDIRECT_URL,
redirect_uri: process.env.REACT_APP_FACEBOOK_REDIRECT_URL,
};
// userApi
// .authStart(reqData)
// .then((res) => {
// if (res.status == 200 && res.data.internal_return >= 0 && res.data.member_id && res.data.uid && res.data.session) {
// localStorage.setItem("member_id", `${res.data.member_id}`);
// localStorage.setItem("uid", `${res.data.uid}`);
// localStorage.setItem("session_token", `${res.data.session}`);
// dispatch(updateUserDetails({...res.data}));
// navigate('/', {replace: true})
// return
// }
// navigate('/login', {state: {error: true}})
// })
// .catch((error) => {
// navigate('/login', {state: {error: true}})
// console.log(error);
// });
userApi
.authStart(reqData)
.then((res) => {
if (res.status == 200 && res.data.internal_return >= 0 && res.data.member_id && res.data.uid && res.data.session) {
localStorage.setItem("member_id", `${res.data.member_id}`);
localStorage.setItem("uid", `${res.data.uid}`);
localStorage.setItem("session_token", `${res.data.session}`);
dispatch(updateUserDetails({...res.data}));
navigate('/', {replace: true})
return
}
navigate('/login', {state: {error: true}})
})
.catch((error) => {
navigate('/login', {state: {error: true}})
console.log(error);
});
},[])
return (
<AuthLayout>
+20 -17
View File
@@ -10,6 +10,8 @@ import usersService from "../../services/UsersService";
export default function UploadProduct() {
const apiCall = new usersService()
const [requestStatus, setRequestStatus] = useState({loading: false, status: null, message: ''}) // DETERMINES THE STATUS OF UPLOAD
// preview modal
const [previewProductModal, setPreviewProductModal] = useState(false);
// cancelUploadModal
@@ -86,7 +88,7 @@ export default function UploadProduct() {
// most importend
imgRead.readAsDataURL(e.target.files[0]);
}
if (file) {
if (file.length) {
if (file[0].name) {
setSelectedFile(file?.[0].name);
setImgDetails(file?.[0])
@@ -100,7 +102,6 @@ export default function UploadProduct() {
}
};
const [requestStatus, setRequestStatus] = useState({loading: false, status: null, message: ''})
//FUNCTION TO UPLOAD ITEM
const uploadItem = () => {
let errorArr = []
@@ -119,13 +120,6 @@ export default function UploadProduct() {
// TEST TO SEE IF FIELDS ARE EMPTY
if(errorArr.length){
let message = ''
// for(let i = 0; i<errorArr.length; i++){
// if(errorArr.includes('img')){
// message+='Please select file to upload'
// }else{
// message+='Item name or decription cannot be empty'
// }
// }
if(errorArr.length == 1 && errorArr.includes('img')){
message='Please select file to upload'
}else if (errorArr.length == 1 && !errorArr.includes('img')){
@@ -159,16 +153,25 @@ export default function UploadProduct() {
// action: 'WRENCHBOARD_RESOURCE_MYFILES',
action: 11307
}
console.log('TESTING', reqData)
setRequestStatus({loading: true, status: null, message: ''})
// console.log('TESTING', reqData)
//API CALL TO UPLOAD COMES HERE
setTimeout(()=>{
setRequestStatus({loading: false, status: true, message: 'Bad'})
},3000)
setTimeout(()=>{
setRequestStatus({loading: false, status: false, message: ''})
},7000)
setRequestStatus({loading: true, status: null, message: ''}) // SETS REQUEST LOADING TRUE
apiCall.sendFiles(reqData).then(res=>{
if(res.status != 200 || res.data.internal_return < 0){
return setRequestStatus({loading: false, status: false, message: 'Something went wrong, try again'})
}
setRequestStatus({loading: false, status: true, message: 'Uploaded successfully'})
setImg('')
setItemName('')
setDescription('')
}).catch(error=>{
setRequestStatus({loading: false, status: false, message: 'Network error, try again'})
}).finally(()=>{
setTimeout(()=>{
setRequestStatus({loading: false, status: false, message: ''})
},5000)
})
}
// drop event