Skip to content

Commit f44205b

Browse files
fix: invalid template id error in while opening opening public template
1 parent d3a603d commit f44205b

File tree

2 files changed

+20
-10
lines changed

2 files changed

+20
-10
lines changed

apps/OpenSign/src/pages/DraftTemplate.js

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -654,21 +654,20 @@ const DraftTemplate = () => {
654654
// `saveTemplate` is used to update template on server using savetemplate endpoint
655655
const saveTemplate = async () => {
656656
if (signersdata?.length) {
657-
const loadObj = { isLoad: true, message: t("loading-mssg") };
658-
setIsLoading(loadObj);
657+
setIsLoading({ isLoad: true, message: t("loading-mssg") });
659658
setIsSendAlert(false);
660659
let signers = [];
661660
if (signersdata?.length > 0) {
662-
signersdata.forEach((x) => {
661+
signers = signersdata?.reduce((acc, x) => {
663662
if (x.objectId) {
664-
const obj = {
663+
acc.push({
665664
__type: "Pointer",
666665
className: "contracts_Contactbook",
667666
objectId: x.objectId
668-
};
669-
signers.push(obj);
667+
});
670668
}
671-
});
669+
return acc;
670+
}, []);
672671
}
673672
let pdfUrl = pdfDetails[0]?.URL;
674673
if (pdfRotateBase64) {
@@ -1277,10 +1276,11 @@ const DraftTemplate = () => {
12771276
};
12781277
const handleGeneratePublic = async () => {
12791278
const unlinkSignerIndex = signerPos?.findIndex((x) => !x?.signerObjId);
1280-
const unlinkSigners = signerPos?.filter((x) => !x?.signerObjId)?.length; // unLink with role
1279+
const unlinkSigners = signerPos?.filter((x) => !x?.signerObjId)?.length; // count of total unlink roles
12811280
if (unlinkSignerIndex === 0 && unlinkSigners === 1) {
12821281
try {
1283-
const data = { templateId: templateId, IsPublic: true };
1282+
const role = signerPos[unlinkSignerIndex]?.Role;
1283+
const data = { templateId: templateId, IsPublic: true, Role: role };
12841284
const baseURL = localStorage.getItem("baseUrl");
12851285
const url = `${baseURL}functions/updatetopublictemplate`;
12861286
const headers = {

apps/OpenSignServer/cloud/parsefunction/updateToPublicTemplate.js

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ async function updateTemplate(template, isJwt = false) {
1010
const isPublic = template?.IsPublic !== undefined ? template?.IsPublic : false;
1111
if (template?.IsPublic !== undefined) {
1212
updateTemplate.set('IsPublic', isPublic);
13+
updateTemplate.set('PublicRole', template.PublicRole);
1314
}
1415

1516
let updateTemplateRes;
@@ -29,7 +30,16 @@ async function updateTemplate(template, isJwt = false) {
2930
}
3031
export default async function updateToPublicTemplate(request) {
3132
const jwttoken = request.headers.jwttoken || '';
32-
const template = { Id: request.params.templateId, IsPublic: request.params?.IsPublic };
33+
const Role = request.params.Role;
34+
if (!Role) {
35+
throw new Parse.Error(Parse.Error.INVALID_QUERY, 'Please provide public role.');
36+
}
37+
const PublicRole = [Role];
38+
const template = {
39+
Id: request.params.templateId,
40+
IsPublic: request.params?.IsPublic,
41+
PublicRole: PublicRole,
42+
};
3343

3444
try {
3545
if (request.user) {

0 commit comments

Comments
 (0)