Skip to content

Commit f78451d

Browse files
Merge pull request #1621 from OpenSignLabs/updates-13637250862
Merge pull request #349 from OpenSignLabs/crash_pdf
2 parents 28630e2 + 1b7f07a commit f78451d

File tree

10 files changed

+68
-9
lines changed

10 files changed

+68
-9
lines changed

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -847,5 +847,6 @@
847847
"agreement-note": "Hinweis: Durch Ihre Zustimmung unterzeichnen Sie das Dokument nicht sofort. Sie können das Dokument nur elektronisch einsehen. Sie haben die Möglichkeit, es vollständig zu lesen und anschließend zu entscheiden, ob Sie es unterzeichnen möchten.",
848848
"draft-template-info-p1": "Um Ihre Vorlage öffentlich zu machen, muss sie entweder eine einzelne Rolle enthalten oder, wenn sie mehrere Rollen umfasst, müssen alle zusätzlichen Rollen bereits den Unterzeichnern zugewiesen sein. Die nicht zugewiesene öffentliche Rolle muss leer bleiben und an erster Stelle stehen.",
849849
"visit-below-link": "Besuchen Sie den untenstehenden Link, um mehr zu erfahren -",
850-
"storage-help": "Durch die Aktivierung von BYOC können Sie Ihren eigenen S3-Speicher verbinden, sodass Ihre Dateien vollständig unter Ihrer Kontrolle bleiben und keine externen Kopien gespeichert werden. Wenn Ihnen Datenautonomie wichtig ist, erwägen Sie ein Upgrade auf Teams, um diese Funktion freizuschalten."
850+
"storage-help": "Durch die Aktivierung von BYOC können Sie Ihren eigenen S3-Speicher verbinden, sodass Ihre Dateien vollständig unter Ihrer Kontrolle bleiben und keine externen Kopien gespeichert werden. Wenn Ihnen Datenautonomie wichtig ist, erwägen Sie ein Upgrade auf Teams, um diese Funktion freizuschalten.",
851+
"daily-quota-reached": "You’ve reached your daily quota. For assistance, please contact quotas@opensignlabs.com."
851852
}

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -848,5 +848,6 @@
848848
"agreement-note": "Note: Agreeing to this does not mean you are signing the document immediately. This only allows you to review the document electronically. You will have the opportunity to read it in full and decide whether to sign it afterward.",
849849
"draft-template-info-p1": "To make your template public, it must either contain a single role, or, if it includes multiple roles, all additional roles must already be assigned to signers. The unassigned public role should remain empty and must be placed in the first position.",
850850
"visit-below-link": "Visit below link to know more -",
851-
"storage-help": "Enabling BYOC lets you connect your own S3 storage so your files remain entirely under your control—no external copies retained. If data autonomy matters to you, consider upgrading to Teams to unlock this feature."
851+
"storage-help": "Enabling BYOC lets you connect your own S3 storage so your files remain entirely under your control—no external copies retained. If data autonomy matters to you, consider upgrading to Teams to unlock this feature.",
852+
"daily-quota-reached": "You’ve reached your daily quota. For assistance, please contact quotas@opensignlabs.com."
852853
}

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -849,5 +849,6 @@
849849
"draft-template-info-p1": "Para hacer que tu plantilla sea pública, debe contener un único rol o, si incluye múltiples roles, todos los roles adicionales deben estar ya asignados a firmantes. El rol público no asignado debe permanecer vacío y debe estar en la primera posición.",
850850
"visit-below-link": "Visita el siguiente enlace para saber más -",
851851
"upgrade-to-team-plan": "Actualizar a team plan",
852-
"storage-help": "Habilitar BYOC te permite conectar tu propio almacenamiento S3 para que tus archivos permanezcan completamente bajo tu control, sin copias externas retenidas. Si la autonomía de los datos es importante para ti, considera actualizar a Teams para desbloquear esta función."
852+
"storage-help": "Habilitar BYOC te permite conectar tu propio almacenamiento S3 para que tus archivos permanezcan completamente bajo tu control, sin copias externas retenidas. Si la autonomía de los datos es importante para ti, considera actualizar a Teams para desbloquear esta función.",
853+
"daily-quota-reached": "You’ve reached your daily quota. For assistance, please contact quotas@opensignlabs.com."
853854
}

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -846,5 +846,6 @@
846846
"agreement-note": "Remarque : Accepter cela ne signifie pas que vous signez immédiatement le document. Cela vous permet uniquement de consulter le document électroniquement. Vous aurez l'opportunité de le lire entièrement et de décider ensuite si vous souhaitez le signer.",
847847
"draft-template-info-p1": "Pour rendre votre modèle public, il doit contenir un seul rôle ou, s'il inclut plusieurs rôles, tous les rôles supplémentaires doivent déjà être attribués aux signataires. Le rôle public non attribué doit rester vide et être placé en première position.",
848848
"visit-below-link": "Visitez le lien ci-dessous pour en savoir plus -",
849-
"storage-help": "Activer BYOC vous permet de connecter votre propre stockage S3 afin que vos fichiers restent entièrement sous votre contrôle, sans copie externe conservée. Si l'autonomie des données est importante pour vous, envisagez de passer à l'offre Teams pour débloquer cette fonctionnalité."
849+
"storage-help": "Activer BYOC vous permet de connecter votre propre stockage S3 afin que vos fichiers restent entièrement sous votre contrôle, sans copie externe conservée. Si l'autonomie des données est importante pour vous, envisagez de passer à l'offre Teams pour débloquer cette fonctionnalité.",
850+
"daily-quota-reached": "You’ve reached your daily quota. For assistance, please contact quotas@opensignlabs.com."
850851
}

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -847,5 +847,6 @@
847847
"agreement-note": "Nota: Accettare questo non significa che stai firmando immediatamente il documento. Questo ti consente solo di esaminare il documento elettronicamente. Avrai l'opportunità di leggerlo per intero e decidere successivamente se firmarlo.",
848848
"draft-template-info-p1": "Per rendere il tuo modello pubblico, deve contenere un solo ruolo oppure, se include più ruoli, tutti i ruoli aggiuntivi devono essere già assegnati ai firmatari. Il ruolo pubblico non assegnato deve rimanere vuoto e deve essere posizionato per primo.",
849849
"visit-below-link": "Visita il link qui sotto per saperne di più -",
850-
"storage-help": "Abilitare BYOC ti consente di collegare il tuo archivio S3 in modo che i tuoi file rimangano completamente sotto il tuo controllo, senza copie esterne conservate. Se l'autonomia dei dati è importante per te, considera l'upgrade a Teams per sbloccare questa funzionalità."
850+
"storage-help": "Abilitare BYOC ti consente di collegare il tuo archivio S3 in modo che i tuoi file rimangano completamente sotto il tuo controllo, senza copie esterne conservate. Se l'autonomia dei dati è importante per te, considera l'upgrade a Teams per sbloccare questa funzionalità.",
851+
"daily-quota-reached": "You’ve reached your daily quota. For assistance, please contact quotas@opensignlabs.com."
851852
}

apps/OpenSign/src/components/pdf/EmailComponent.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,15 @@ function EmailComponent({
103103
setEmailList([]);
104104
}, 1500);
105105
setIsLoading(false);
106+
} else if (sendMail?.data?.result?.status === "daily-quota-reached") {
107+
setIsLoading(false);
108+
setIsEmail(false);
109+
setIsAlert({
110+
isShow: true,
111+
alertMessage: t("daily-quota-reached")
112+
});
113+
setEmailValue("");
114+
setEmailList([]);
106115
} else {
107116
setIsLoading(false);
108117
setIsEmail(false);

apps/OpenSign/src/pages/PlaceHolderSign.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1311,6 +1311,11 @@ function PlaceHolderSign() {
13111311
setIsMailSend(true);
13121312
setIsLoading({ isLoad: false });
13131313
setIsUiLoading(false);
1314+
} else if (sendMail?.data?.result?.status === "daily-quota-reached") {
1315+
setMailStatus("daily-quota-reached");
1316+
setIsSend(true);
1317+
setIsMailSend(true);
1318+
setIsUiLoading(false);
13141319
} else if (sendMail?.data?.result?.status === "quota-reached") {
13151320
setMailStatus("quotareached");
13161321
setIsSend(true);

apps/OpenSign/src/primitives/GetReportDisplay.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -806,6 +806,12 @@ const ReportTable = (props) => {
806806
setIsAlert(true);
807807
setAlertMsg({ type: "success", message: t("mail-sent-alert") });
808808
setIsResendMail({});
809+
} else if (res?.data?.result?.status === "daily-quota-reached") {
810+
setIsAlert(true);
811+
setAlertMsg({
812+
type: "danger",
813+
message: t("daily-quota-reached")
814+
});
809815
} else {
810816
setIsAlert(true);
811817
setAlertMsg({

apps/OpenSignServer/cloud/parsefunction/sendMailGmailProvider.js

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ const makeEmail = async (
3535
bcc,
3636
filename,
3737
certificatePath,
38-
replyto
38+
replyto,
39+
testPdf
3940
) => {
4041
const publicUrl = new URL(process.env.SERVER_URL);
4142
const htmlContent = html;
@@ -46,7 +47,7 @@ const makeEmail = async (
4647
let str;
4748
if (url) {
4849
let attachments;
49-
let Pdf = fs.createWriteStream('test.pdf');
50+
let Pdf = fs.createWriteStream(testPdf);
5051
const writeToLocalDisk = () => {
5152
return new Promise((resolve, reject) => {
5253
const isSecure =
@@ -161,6 +162,8 @@ export default async function sendMailGmailProvider(_extRes, template) {
161162
// Construct email message
162163
const from = sender || _extRes.Email || 'me';
163164
const to = receiver;
165+
const randomNumber = Math.floor(Math.random() * 5000);
166+
const testPdf = `test_${randomNumber}.pdf`;
164167
const email = await makeEmail(
165168
to,
166169
from,
@@ -171,7 +174,8 @@ export default async function sendMailGmailProvider(_extRes, template) {
171174
bcc,
172175
filename,
173176
certificatePath,
174-
replyto
177+
replyto,
178+
testPdf
175179
);
176180
// Update Gmail client with new access token
177181
const newGmail = createGmailClient(access_token);
@@ -189,6 +193,13 @@ export default async function sendMailGmailProvider(_extRes, template) {
189193
console.log('Err in unlink certificate sendmailgmail provider');
190194
}
191195
}
196+
if (fs.existsSync(testPdf)) {
197+
try {
198+
fs.unlinkSync(testPdf);
199+
} catch (err) {
200+
console.log('Err in unlink pdf sendmailv3');
201+
}
202+
}
192203
return { code: 200, message: 'Email sent successfully' };
193204
} catch (error) {
194205
console.error('Error sending email:', error);

apps/OpenSignServer/cloud/parsefunction/sendMailv3.js

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,9 @@ async function sendMailProvider(req, plan, monthchange) {
2929
}
3030
}
3131
if (req.params.url) {
32-
let Pdf = fs.createWriteStream('test.pdf');
32+
const randomNumber = Math.floor(Math.random() * 5000);
33+
const testPdf = `test_${randomNumber}.pdf`;
34+
let Pdf = fs.createWriteStream(testPdf);
3335
const writeToLocalDisk = () => {
3436
return new Promise((resolve, reject) => {
3537
const isSecure =
@@ -129,6 +131,13 @@ async function sendMailProvider(req, plan, monthchange) {
129131
console.log('Err in unlink certificate sendmailv3');
130132
}
131133
}
134+
if (fs.existsSync(testPdf)) {
135+
try {
136+
fs.unlinkSync(testPdf);
137+
} catch (err) {
138+
console.log('Err in unlink pdf sendmailv3');
139+
}
140+
}
132141
return { status: 'success' };
133142
}
134143
} else {
@@ -146,6 +155,13 @@ async function sendMailProvider(req, plan, monthchange) {
146155
console.log('Err in unlink certificate sendmailv3');
147156
}
148157
}
158+
if (fs.existsSync(testPdf)) {
159+
try {
160+
fs.unlinkSync(testPdf);
161+
} catch (err) {
162+
console.log('Err in unlink pdf sendmailv3');
163+
}
164+
}
149165
return { status: 'success' };
150166
}
151167
} else {
@@ -156,6 +172,13 @@ async function sendMailProvider(req, plan, monthchange) {
156172
console.log('Err in unlink certificate sendmailv3');
157173
}
158174
}
175+
if (fs.existsSync(testPdf)) {
176+
try {
177+
fs.unlinkSync(testPdf);
178+
} catch (err) {
179+
console.log('Err in unlink pdf sendmailv3');
180+
}
181+
}
159182
return { status: 'error' };
160183
}
161184
}

0 commit comments

Comments
 (0)