fix: gmail login not working

This commit is contained in:
prafull-opensignlabs
2024-08-09 19:58:29 +05:30
parent 290ff54638
commit 75ef6934b4
2 changed files with 37 additions and 39 deletions
+5 -16
View File
@@ -77,10 +77,7 @@ const GoogleSignInBtn = ({
const data = jwtDecode(response.credential);
// console.log("data ", data);
if (data.sub && data.email) {
const details = {
Email: data.email,
Name: data.name
};
const details = { Email: data.email, Name: data.name };
setUserDetails({ ...userDetails, ...details });
const Gdetails = {
Id: data.sub,
@@ -94,26 +91,18 @@ const GoogleSignInBtn = ({
}
};
const checkExtUser = async (details) => {
// const extUser = new Parse.Query("contracts_Users");
// extUser.equalTo("Email", details.Gmail);
// const extRes = await extUser.first();
const params = { email: details.Gmail };
const extRes = await Parse.Cloud.run("getUserDetails", params);
// console.log("extRes ", extRes);
if (extRes) {
const params = { ...details, Phone: extRes?.get("Phone") || "" };
// const params = { ...details, Phone: extRes?.get("Phone") || "" };
const params = { ...details, extUserId: extRes.objectId };
const payload = await Parse.Cloud.run("googlesign", params);
// console.log("payload ", payload);
if (payload && payload.sessiontoken) {
// setThirdpartyLoader(true);
// const billingDate =
// extRes.get("Next_billing_date") && extRes.get("Next_billing_date");
// console.log("billingDate expired", billingDate > new Date());
const LocalUserDetails = {
name: details.Name,
email: details.Gmail,
phone: extRes?.get("Phone") || "",
company: extRes.get("Company")
phone: payload?.phone || "",
company: payload.company
};
localStorage.setItem("userDetails", JSON.stringify(LocalUserDetails));
thirdpartyLoginfn(payload.sessiontoken);
@@ -21,36 +21,45 @@ export default async function GoogleSign(request) {
const userEmail = request.params.Gmail;
const phone = request.params?.Phone || '';
const name = request.params.Name;
const extUserId = request.params?.extUserId || '';
const authData = { google: { id: userGoogleId, id_token: userTokenId } };
const userQuery = new Parse.Query(Parse.User);
userQuery.equalTo('email', userEmail);
const res = await userQuery.first({ useMasterKey: true });
if (res) {
try {
const SignIn = await axios.put(
serverUrl + '/users/' + res.id,
{ authData: authData },
{
headers: {
'X-Parse-Application-Id': APPID,
'X-Parse-Master-key': masterKEY,
},
}
);
if (extUserId) {
const userQuery = new Parse.Query('contracts_Users');
const resExtUser = await userQuery.get(extUserId, { useMasterKey: true });
const _resExtUser = JSON.parse(JSON.stringify(resExtUser));
try {
const SignIn = await axios.put(
serverUrl + '/users/' + res.id,
{ authData: authData },
{
headers: {
'X-Parse-Application-Id': APPID,
'X-Parse-Master-key': masterKEY,
},
}
);
if (SignIn.data) {
// console.log("google Sign in", SignIn);
const sessiontoken = SignIn.data.sessionToken;
console.log('Google sessiontoken', sessiontoken);
return {
email: userEmail,
message: 'User Sign In',
sessiontoken: sessiontoken,
};
if (SignIn.data) {
// console.log("google Sign in", SignIn);
const sessiontoken = SignIn.data.sessionToken;
return {
email: userEmail,
phone: _resExtUser?.Phone || '',
company: _resExtUser?.Company,
message: 'User Sign In',
sessiontoken: sessiontoken,
};
}
} catch (err) {
console.log('err in user google sign in', err);
return { message: 'Internal server error' };
}
} catch (err) {
console.log('err in user google sign in', err);
return { message: 'Internal server error' };
} else {
return { message: 'Internal server err' };
}
} else {
// console.log("in sign up condition");