diff --git a/apps/OpenSign/src/App.js b/apps/OpenSign/src/App.js
index 929008576..40bebb3de 100644
--- a/apps/OpenSign/src/App.js
+++ b/apps/OpenSign/src/App.js
@@ -109,6 +109,10 @@ function App() {
path="/login/:id/:userMail/:contactBookId/:serverUrl"
element={}
/>
+ }
+ />
} />
{
handleServerUrl();
@@ -36,14 +38,29 @@ function GuestLogin() {
setAppLogo(logo);
}
- //split url in array from '&'
localStorage.clear();
- const checkSplit = serverUrl.split("&");
- const server = checkSplit[0];
- const parseId = checkSplit[1];
- const appName = checkSplit[2];
+ let parseId, appName, newServer;
+ //first condition is used to handle old route data url that already save
+ if (id) {
+ //split url in array from '&'
+ const checkSplit = serverUrl.split("&");
+ const server = checkSplit[0];
+ parseId = checkSplit[1];
+ appName = checkSplit[2];
+ newServer = server.replaceAll("%2F", "/");
+ setEmail(userMail);
+ } else {
+ parseId = appInfo.appId;
+ newServer = `${appInfo.baseUrl}/`;
+ appName = appInfo.appname;
+ const decodebase64 = atob(base64url);
+ //split url in array from '/'
+ const checkSplit = decodebase64.split("/");
+ setEmail(checkSplit[1]);
+ setDocumentId(checkSplit[0]);
+ setContactId(checkSplit[2]);
+ }
- const newServer = server.replaceAll("%2F", "/");
localStorage.setItem("baseUrl", newServer);
localStorage.setItem("parseAppId", parseId);
localStorage.setItem("_appName", appName);
@@ -74,7 +91,7 @@ function GuestLogin() {
};
let body = {
email: email.toString(),
- docId: id
+ docId: documentId
};
let Otp = await axios.post(url, body, { headers: headers });
@@ -137,7 +154,7 @@ function GuestLogin() {
//save isGuestSigner true in local to handle login flow header in mobile view
localStorage.setItem("isGuestSigner", true);
setLoading(false);
- navigate(`/load/recipientSignPdf/${id}/${contactBookId}`);
+ navigate(`/load/recipientSignPdf/${documentId}/${contactId}`);
}
} catch (error) {
console.log("err ", error);
diff --git a/apps/OpenSign/src/pages/PdfRequestFiles.js b/apps/OpenSign/src/pages/PdfRequestFiles.js
index 4b4cb0781..421e32c17 100644
--- a/apps/OpenSign/src/pages/PdfRequestFiles.js
+++ b/apps/OpenSign/src/pages/PdfRequestFiles.js
@@ -741,14 +741,18 @@ function PdfRequestFiles() {
localStorage.getItem("parseAppId"),
sessionToken: localStorage.getItem("accesstoken")
};
- const serverUrl = localStorage.getItem("baseUrl");
- const newServer = serverUrl.replaceAll("/", "%2F");
+ // const serverUrl = localStorage.getItem("baseUrl");
+ // const newServer = serverUrl.replaceAll("/", "%2F");
const objectId = user.objectId;
- const serverParams = `${newServer}&${localStorage.getItem(
- "parseAppId"
- )}&${localStorage.getItem("_appName")}`;
+ // const serverParams = `${newServer}&${localStorage.getItem(
+ // "parseAppId"
+ // )}&${localStorage.getItem("_appName")}`;
const hostUrl = window.location.origin;
- let signPdf = `${hostUrl}/login/${pdfDetails?.[0].objectId}/${user.Email}/${objectId}/${serverParams}`;
+ const encodeBase64 = btoa(
+ `${pdfDetails?.[0].objectId}/${user.Email}/${objectId}`
+ );
+ let signPdf = `${hostUrl}/login/${encodeBase64}`;
+ // let signPdf = `${hostUrl}/login/${pdfDetails?.[0].objectId}/${user.Email}/${objectId}/${serverParams}`;
const openSignUrl =
"https://www.opensignlabs.com/contact-us";
const orgName = pdfDetails[0]?.ExtUserPtr.Company
diff --git a/apps/OpenSign/src/pages/PlaceHolderSign.js b/apps/OpenSign/src/pages/PlaceHolderSign.js
index 1eaddc43c..516ffa68c 100644
--- a/apps/OpenSign/src/pages/PlaceHolderSign.js
+++ b/apps/OpenSign/src/pages/PlaceHolderSign.js
@@ -251,7 +251,6 @@ function PlaceHolderSign() {
navigate(`/subscription`);
}
}
-
//function for get document details
const getDocumentDetails = async () => {
fetchTenantDetails();
@@ -968,15 +967,13 @@ function PlaceHolderSign() {
const shareLinkList = [];
let signerMail = signersdata;
for (let i = 0; i < signerMail.length; i++) {
- const serverUrl = localStorage.getItem("baseUrl");
- const newServer = serverUrl.replaceAll("/", "%2F");
const objectId = signerMail[i].objectId;
- const serverParams = `${newServer}&${localStorage.getItem(
- "parseAppId"
- )}&${localStorage.getItem("_appName")}`;
-
const hostUrl = window.location.origin;
- let signPdf = `${hostUrl}/login/${pdfDetails?.[0].objectId}/${signerMail[i].Email}/${objectId}/${serverParams}`;
+ //convert this url documentId/signersEmail/signerObjId base64 and send url
+ const encodeBase64 = btoa(
+ `${pdfDetails?.[0].objectId}/${signerMail[i].Email}/${objectId}`
+ );
+ let signPdf = `${hostUrl}/login/${encodeBase64}`;
shareLinkList.push({ signerEmail: signerMail[i].Email, url: signPdf });
}
return shareLinkList.map((data, ind) => {
@@ -1050,15 +1047,13 @@ function PlaceHolderSign() {
"X-Parse-Application-Id": localStorage.getItem("parseAppId"),
sessionToken: localStorage.getItem("accesstoken")
};
- const serverUrl = localStorage.getItem("baseUrl");
- const newServer = serverUrl.replaceAll("/", "%2F");
const objectId = signerMail[i].objectId;
- const serverParams = `${newServer}&${localStorage.getItem(
- "parseAppId"
- )}&${localStorage.getItem("_appName")}`;
-
const hostUrl = window.location.origin;
- let signPdf = `${hostUrl}/login/${pdfDetails?.[0].objectId}/${signerMail[i].Email}/${objectId}/${serverParams}`;
+ //convert this url documentId/signersEmail/signerObjId base64 and send url
+ const encodeBase64 = btoa(
+ `${pdfDetails?.[0].objectId}/${signerMail[i].Email}/${objectId}`
+ );
+ let signPdf = `${hostUrl}/login/${encodeBase64}`;
const openSignUrl = "https://www.opensignlabs.com/";
const orgName = pdfDetails[0]?.ExtUserPtr.Company
? pdfDetails[0].ExtUserPtr.Company
diff --git a/apps/OpenSign/src/primitives/GetReportDisplay.js b/apps/OpenSign/src/primitives/GetReportDisplay.js
index 8064e7382..da8ed1d95 100644
--- a/apps/OpenSign/src/primitives/GetReportDisplay.js
+++ b/apps/OpenSign/src/primitives/GetReportDisplay.js
@@ -286,13 +286,19 @@ const ReportTable = (props) => {
const handleShare = (item) => {
setActLoader({ [item.objectId]: true });
const host = window.location.origin;
- const serverUrl = process.env.REACT_APP_SERVERURL
- ? process.env.REACT_APP_SERVERURL
- : window.location.origin + "/api/app";
- const baseURL = serverUrl.replace(/\//g, "%2F");
+ // const serverUrl = process.env.REACT_APP_SERVERURL
+ // ? process.env.REACT_APP_SERVERURL
+ // : window.location.origin + "/api/app";
+ // const baseURL = serverUrl.replace(/\//g, "%2F");
+
+ const getUrl = (x) => {
+ const encodeBase64 = btoa(`${item.objectId}/${x.Email}/${x.objectId}`);
+ return `${host}/login/${encodeBase64}`;
+ };
+
const urls = item.Signers.map((x) => ({
email: x.Email,
- url: `${host}/login/${item.objectId}/${x.Email}/${x.objectId}/${baseURL}%2F&opensign&contracts`
+ url: getUrl(x)
}));
setShareUrls(urls);
setIsShare({ [item.objectId]: true });