Skip to content

Commit b09becf

Browse files
Merge pull request #1419 from OpenSignLabs/validation
fix: user does not exist error while creating document
2 parents 1776931 + 0673242 commit b09becf

File tree

2 files changed

+34
-34
lines changed

2 files changed

+34
-34
lines changed

apps/OpenSign/src/primitives/AddContact.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,6 @@ const AddContact = (props) => {
6060
);
6161
const userId = user?.objectId || "";
6262
const tenantDetails = await getTenantDetails(userId, props.jwttoken);
63-
console.log("tenantDetails", tenantDetails);
6463
const tenantId = tenantDetails?.objectId || "";
6564
if (tenantId) {
6665
try {
@@ -78,7 +77,6 @@ const AddContact = (props) => {
7877
const axiosRes = await axios.post(url, data, { headers });
7978
const contactRes = axiosRes?.data?.result || {};
8079
if (contactRes?.objectId) {
81-
console.log("contactRes ", contactRes);
8280
props.details(contactRes);
8381
if (props.closePopup) {
8482
props.closePopup();
Lines changed: 34 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,35 @@
11
import { parseJwt } from '../../Utils.js';
22
import jwt from 'jsonwebtoken';
3+
4+
async function getTenantByUserId(userId) {
5+
try {
6+
const query = new Parse.Query('contracts_Users');
7+
query.equalTo('UserId', {
8+
__type: 'Pointer',
9+
className: '_User',
10+
objectId: userId,
11+
});
12+
const extuser = await query.first({ useMasterKey: true });
13+
if (extuser) {
14+
const user = extuser?.get('CreatedBy')?.id || userId;
15+
const tenantCreditsQuery = new Parse.Query('partners_Tenant');
16+
tenantCreditsQuery.equalTo('UserId', {
17+
__type: 'Pointer',
18+
className: '_User',
19+
objectId: user,
20+
});
21+
tenantCreditsQuery.exclude('FileAdapters');
22+
tenantCreditsQuery.exclude('PfxFile');
23+
const res = await tenantCreditsQuery.first({ useMasterKey: true });
24+
return res;
25+
} else {
26+
return {};
27+
}
28+
} catch (err) {
29+
console.log('err in getTenant ', err);
30+
return 'user does not exist!';
31+
}
32+
}
333
export default async function getTenant(request) {
434
const jwttoken = request.headers.jwttoken || '';
535
const userId = request.params.userId || '';
@@ -10,50 +40,22 @@ export default async function getTenant(request) {
1040
const userCls = new Parse.Query(Parse.User);
1141
userCls.equalTo('email', jwtDecode?.user_email);
1242
const userRes = await userCls.first({ useMasterKey: true });
13-
const userId = userRes?.id;
43+
const apiUserId = userRes?.id;
1444
const tokenQuery = new Parse.Query('appToken');
1545
tokenQuery.equalTo('userId', {
1646
__type: 'Pointer',
1747
className: '_User',
18-
objectId: userId,
48+
objectId: apiUserId,
1949
});
2050
const appRes = await tokenQuery.first({ useMasterKey: true });
2151
const decoded = jwt.verify(verifyToken, appRes?.get('token'));
2252
if (decoded?.user_email) {
23-
try {
24-
const tenantCreditsQuery = new Parse.Query('partners_Tenant');
25-
tenantCreditsQuery.equalTo('UserId', {
26-
__type: 'Pointer',
27-
className: '_User',
28-
objectId: userId,
29-
});
30-
tenantCreditsQuery.exclude('FileAdapters');
31-
tenantCreditsQuery.exclude('PfxFile');
32-
const res = await tenantCreditsQuery.first({ useMasterKey: true });
33-
if (res) {
34-
return res;
35-
}
36-
} catch (e) {
37-
return 'user does not exist!';
38-
}
53+
return await getTenantByUserId(apiUserId);
3954
} else {
4055
return { status: 'error', result: 'Invalid token!' };
4156
}
4257
}
4358
} else if (userId) {
44-
try {
45-
const tenantCreditsQuery = new Parse.Query('partners_Tenant');
46-
tenantCreditsQuery.equalTo('UserId', {
47-
__type: 'Pointer',
48-
className: '_User',
49-
objectId: userId,
50-
});
51-
const res = await tenantCreditsQuery.first();
52-
if (res) {
53-
return res;
54-
}
55-
} catch (e) {
56-
return 'user does not exist!';
57-
}
59+
return await getTenantByUserId(userId);
5860
}
5961
}

0 commit comments

Comments
 (0)