Skip to content

Commit 9d4841b

Browse files
feat: add api testing token
1 parent 0031cc7 commit 9d4841b

File tree

8 files changed

+249
-183
lines changed

8 files changed

+249
-183
lines changed

apps/OpenSign/public/locales/en/translation.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -619,5 +619,7 @@
619619
"rotate-left":"Rotate left",
620620
"rotate-alert-mssg":"All widgets on this page will be lost. Are you sure you want to proceed?",
621621
"templateid":"Template-Id",
622-
"bulksendsubcriptionalert":"Please upgrade to Professional or Team plan to use quicksend."
622+
"bulksendsubcriptionalert":"Please upgrade to Professional or Team plan to use quicksend.",
623+
"generate-test-token":"Generate Test Token",
624+
"regenerate-test-token":"Regenerate Test Token"
623625
}

apps/OpenSign/public/locales/fr/translation.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -619,5 +619,7 @@
619619
"rotate-left" :"Faire pivoter à gauche",
620620
"rotate-alert-mssg" :"Tous les widgets de cette page seront perdus. Êtes-vous sûr de vouloir continuer ?",
621621
"templateid":"ID de modèle",
622-
"bulksendsubcriptionalert":"Veuillez passer au forfait Professionnel ou Équipe pour utiliser Quicksend."
622+
"bulksendsubcriptionalert":"Veuillez passer au forfait Professionnel ou Équipe pour utiliser Quicksend.",
623+
"generate-test-token": "Générer jeton de test",
624+
"regenerate-test-token":"Régénérer le jeton de test"
623625
}

apps/OpenSign/src/pages/AddAdmin.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -459,13 +459,13 @@ const AddAdmin = () => {
459459
<input
460460
type="checkbox"
461461
className="op-checkbox op-checkbox-sm"
462-
id="termsandcondition"
462+
id="subscribetoopensign"
463463
checked={isSubscribeNews}
464464
onChange={(e) => setIsSubscribeNews(e.target.checked)}
465465
/>
466466
<label
467467
className="text-xs cursor-pointer ml-1 mb-0"
468-
htmlFor="termsandcondition"
468+
htmlFor="subscribetoopensign"
469469
>
470470
{t("subscribe-to-opensign")}
471471
</label>

apps/OpenSign/src/pages/GenerateToken.js

Lines changed: 70 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ function GenerateToken() {
3232
price: (75.0).toFixed(2)
3333
});
3434
const [isFormLoader, setIsFormLoader] = useState(false);
35+
const [apitestToken, setApiTestToken] = useState("");
3536
const quantityList = [500, 1000, 5000, 50000];
3637
useEffect(() => {
3738
fetchToken();
@@ -61,11 +62,15 @@ function GenerateToken() {
6162
setAmount((obj) => ({ ...obj, totalapis: allowedapis }));
6263
SetApiToken(res?.data?.result?.result);
6364
}
64-
setIsLoader(false);
65+
const body = { email: Parse?.User?.current()?.getEmail() || "" };
66+
const testurl = "https://sandbox.opensignlabs.com/api/gettesttoken";
67+
const testRes = await axios.post(testurl, body);
68+
setApiTestToken(testRes.data?.token);
6569
} catch (err) {
6670
SetApiToken();
67-
setIsLoader(false);
6871
console.log("Err", err);
72+
} finally {
73+
setIsLoader(false);
6974
}
7075
};
7176
const handleSubmit = async (e) => {
@@ -160,6 +165,41 @@ function GenerateToken() {
160165
setIsFormLoader(false);
161166
}
162167
};
168+
169+
const handleGenerateTestToken = async (e) => {
170+
e.preventDefault();
171+
setIsLoader(true);
172+
// setIsModal((obj) => ({ ...obj, generateapi: false }));
173+
try {
174+
const url = "https://sandbox.opensignlabs.com/api/generatetesttoken";
175+
const headers = {
176+
"Content-Type": "application/json",
177+
token: apitestToken || "1"
178+
};
179+
const extUser = JSON.parse(localStorage.getItem("Extand_Class"))?.[0];
180+
const body = {
181+
name: extUser?.Name,
182+
email: extUser?.Email,
183+
phone: extUser?.Phone,
184+
company: extUser?.Company,
185+
jobTitle: extUser?.JobTitle
186+
};
187+
const res = await axios.post(url, body, { headers: headers });
188+
if (res) {
189+
setApiTestToken(res.data?.token);
190+
setIsAlert({ type: "success", msg: t("token-generated") });
191+
} else {
192+
console.error("Error while generating Token");
193+
setIsAlert({ type: "danger", msg: t("something-went-wrong-mssg") });
194+
}
195+
} catch (error) {
196+
setIsAlert({ type: "danger", msg: t("something-went-wrong-mssg") });
197+
console.log("while generating Token", error);
198+
} finally {
199+
setIsLoader(false);
200+
setTimeout(() => setIsAlert({ type: "success", msg: "" }), 1500);
201+
}
202+
};
163203
return (
164204
<React.Fragment>
165205
<Title title={"API Token"} />
@@ -179,6 +219,34 @@ function GenerateToken() {
179219
/>
180220
</h1>
181221
<ul className="w-full flex flex-col p-2 text-sm">
222+
<li className="flex flex-col md:flex-row justify-between items-center border-y-[1px] border-gray-300 break-all py-2">
223+
<div className="w-full md:w-[70%] flex-col md:flex-row text-xs md:text-[15px] flex items-center gap-x-5">
224+
<span className="ml-1">API Test Token :</span>{" "}
225+
<span id="token" className="md:text-end py-2 md:py-0">
226+
<span
227+
className="cursor-pointer"
228+
onClick={() => copytoclipboard(apitestToken)}
229+
>
230+
{apitestToken ? apitestToken : "_____"}
231+
</span>
232+
<button
233+
className="op-btn op-btn-accent op-btn-outline op-btn-sm ml-2 cursor-pointer"
234+
onClick={() => copytoclipboard(apitestToken)}
235+
>
236+
<i className="fa-light fa-copy"></i>
237+
</button>
238+
</span>
239+
</div>
240+
<button
241+
onClick={handleGenerateTestToken}
242+
// onClick={apitestToken ? handleModal : handleGenerateTestToken}
243+
className="op-btn op-btn-primary"
244+
>
245+
{apitestToken
246+
? t("regenerate-test-token")
247+
: t("generate-test-token")}
248+
</button>
249+
</li>
182250
<li className="flex flex-col md:flex-row justify-between items-center border-y-[1px] border-gray-300 break-all py-2">
183251
<div className="w-full md:w-[70%] flex-col md:flex-row text-xs md:text-[15px] flex items-center gap-x-5">
184252
<span className="ml-1">{t("api-token")}:</span>{" "}

apps/OpenSign/src/pages/Login.js

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import {
2121
saveLanguageInLocal
2222
} from "../constant/Utils";
2323
import Loader from "../primitives/Loader";
24-
import { paidUrl } from "../json/plansArr";
2524
import { useTranslation } from "react-i18next";
2625
import SelectLanguage from "../components/pdf/SelectLanguage";
2726

@@ -81,13 +80,8 @@ function Login() {
8180
}
8281
setState({ ...state, [name]: value });
8382
};
84-
const handlePaidRoute = (plan) => {
85-
const route = paidUrl(plan);
86-
if (route === "/subscription") {
87-
navigate(route);
88-
} else {
89-
openInNewTab(route, "_self");
90-
}
83+
const handlePaidRoute = () => {
84+
navigate("/subscription");
9185
};
9286
const handleSubmit = async (event) => {
9387
localStorage.removeItem("accesstoken");

apps/OpenSignServer/cloud/parsefunction/ContractUsersAftersave.js

Lines changed: 0 additions & 40 deletions
This file was deleted.

apps/OpenSignServer/cloud/parsefunction/ExtUserAftersave.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ async function ExtUserAftersave(request) {
1414
const updateSub = new Parse.Object('contracts_Subscriptions');
1515
updateSub.id = resSub.id;
1616
updateSub.increment('UsersCount', 1);
17-
updateSub.save(null, { useMasterKey: true });
17+
await updateSub.save(null, { useMasterKey: true });
1818
} else {
1919
const addSub = new Parse.Object('contracts_Subscriptions');
2020
addSub.set('UsersCount', 1);
@@ -33,7 +33,7 @@ async function ExtUserAftersave(request) {
3333
className: 'partners_Tenant',
3434
objectId: extUser.get('TenantId').id,
3535
});
36-
addSub.save(null, { useMasterKey: true });
36+
await addSub.save(null, { useMasterKey: true });
3737
}
3838
}
3939
} catch (err) {

0 commit comments

Comments
 (0)