@@ -94,16 +94,17 @@ async function sendCompletedMail(e) {
94
94
} catch ( e ) {
95
95
console . log ( 'error in fetch tenant in signpdf' , e . message ) ;
96
96
}
97
- e = {
97
+ g = {
98
98
extUserId : s . objectId ,
99
99
url : a ,
100
100
from : 'OpenSign™' ,
101
101
recipient : i ,
102
102
subject : o ,
103
103
pdfName : r ,
104
104
html : n ,
105
+ mailProvider : e . mailProvider ,
105
106
} ;
106
- await axios . post ( serverUrl + '/functions/sendmailv3' , e , {
107
+ await axios . post ( serverUrl + '/functions/sendmailv3' , g , {
107
108
headers : {
108
109
'Content-Type' : 'application/json' ,
109
110
'X-Parse-Application-Id' : APPID ,
@@ -173,8 +174,9 @@ async function PDF(o) {
173
174
try {
174
175
var n = o . params . docId ,
175
176
e = o . params . userId ,
176
- l = o . params . isCustomCompletionMail ,
177
- d = await axios . get (
177
+ l = o . params . isCustomCompletionMail || ! 1 ,
178
+ d = o . params . mailProvider || '' ,
179
+ c = await axios . get (
178
180
serverUrl + '/classes/contracts_Document/' + n + '?include=ExtUserPtr,Signers' ,
179
181
{
180
182
headers : {
@@ -184,33 +186,33 @@ async function PDF(o) {
184
186
} ,
185
187
}
186
188
) ,
187
- c = await axios . get ( serverUrl + '/users/me' , {
189
+ p = await axios . get ( serverUrl + '/users/me' , {
188
190
headers : {
189
191
'X-Parse-Application-Id' : APPID ,
190
192
'X-Parse-Session-Token' : o . headers . sessiontoken ,
191
193
} ,
192
194
} ) ;
193
- if ( ! c . data || ! c . data . objectId ) return { status : 'error' , message : 'This user not allowed!' } ;
195
+ if ( ! p . data || ! p . data . objectId ) return { status : 'error' , message : 'This user not allowed!' } ;
194
196
{
195
197
var a ,
196
198
t ,
197
199
s ,
198
- p = JSON . stringify ( { objectId : e } ) ;
200
+ m = JSON . stringify ( { objectId : e } ) ;
199
201
let r , i ;
200
202
i = e
201
- ? ( a = await axios . get ( serverUrl + '/classes/contracts_Contactbook?where=' + p , {
203
+ ? ( a = await axios . get ( serverUrl + '/classes/contracts_Contactbook?where=' + m , {
202
204
headers : {
203
205
'X-Parse-Application-Id' : APPID ,
204
206
'X-Parse-Session-Token' : o . headers . sessiontoken ,
205
207
} ,
206
208
} ) ) . data && 0 < a . data . results . length
207
209
? ( ( r = a ) , 'contracts_Contactbook' )
208
- : ( ( r = await axios . get ( serverUrl + '/classes/contracts_Users?where=' + p , {
210
+ : ( ( r = await axios . get ( serverUrl + '/classes/contracts_Users?where=' + m , {
209
211
headers : { 'X-Parse-Application-Id' : APPID , 'X-Parse-Master-Key' : masterKEY } ,
210
212
} ) ) ,
211
213
'contracts_Users' )
212
214
: ( ( t = JSON . stringify ( {
213
- UserId : { __type : 'Pointer' , className : '_User' , objectId : c . data . objectId } ,
215
+ UserId : { __type : 'Pointer' , className : '_User' , objectId : p . data . objectId } ,
214
216
} ) ) ,
215
217
( s = await axios . get ( serverUrl + '/classes/contracts_Users?where=' + t , {
216
218
headers : { 'X-Parse-Application-Id' : APPID , 'X-Parse-Master-Key' : masterKEY } ,
@@ -223,125 +225,130 @@ async function PDF(o) {
223
225
} ,
224
226
} ) ) ,
225
227
'contracts_Contactbook' ) ) ;
226
- var m = r . data . results [ 0 ] . Name ,
227
- g = r . data . results [ 0 ] . Email ;
228
+ var g = r . data . results [ 0 ] . Name ,
229
+ u = r . data . results [ 0 ] . Email ;
228
230
if ( ! o . params . pdfFile ) return { status : 'error' , message : 'Pdf file not present!' } ;
229
231
{
230
232
let e = Buffer . from ( o . params . pdfFile , 'base64' ) ;
231
- var u = process . env . PFX_BASE64 ,
232
- h = Buffer . from ( u , 'base64' ) ,
233
- f = {
233
+ var h = process . env . PFX_BASE64 ,
234
+ f = Buffer . from ( h , 'base64' ) ,
235
+ P = {
234
236
UserPtr : { __type : 'Pointer' , className : i , objectId : r . data . results [ 0 ] . objectId } ,
235
237
SignedUrl : '' ,
236
238
Activity : 'Signed' ,
237
239
ipAddress : o . headers [ 'x-real-ip' ] ,
238
240
} ;
239
241
let a ;
240
- var P = ( a =
241
- d . data . AuditTrail && 0 < d . data . AuditTrail . length
242
- ? [ ...d . data . AuditTrail , f ]
243
- : [ f ] ) . filter ( e => 'Signed' === e . Activity ) ;
242
+ var y = ( a =
243
+ c . data . AuditTrail && 0 < c . data . AuditTrail . length
244
+ ? [ ...c . data . AuditTrail , P ]
245
+ : [ P ] ) . filter ( e => 'Signed' === e . Activity ) ;
244
246
let t = ! 1 ;
245
247
! (
246
- ( d . data . Signers && 0 < d . data . Signers . length && P . length !== d . data . Signers . length ) ||
248
+ ( c . data . Signers && 0 < c . data . Signers . length && y . length !== c . data . Signers . length ) ||
247
249
! ( t = ! 0 )
248
250
) ;
249
- var y ,
251
+ var v ,
250
252
b ,
251
- v ,
252
253
U ,
253
254
I ,
254
255
w ,
255
- D = `exported_file_${ Math . floor ( 5e3 * Math . random ( ) ) } .pdf` ,
256
- S = './exports/' + D ;
256
+ D ,
257
+ S = `exported_file_${ Math . floor ( 5e3 * Math . random ( ) ) } .pdf` ,
258
+ _ = './exports/' + S ;
257
259
let s = e . length ;
258
260
s = (
259
261
t
260
- ? ( ( y = d . data . Signers ?. map ( e => e . Name + ' <' + e . Email + '>' ) ) ,
262
+ ? ( ( v = c . data . Signers ?. map ( e => e . Name + ' <' + e . Email + '>' ) ) ,
261
263
( e =
262
- y && 0 < y . length
264
+ v && 0 < v . length
263
265
? ( ( b = await PDFDocument . load ( e ) ) ,
264
266
pdflibAddPlaceholder ( {
265
267
pdfDoc : b ,
266
- reason : 'Digitally signed by OpenSign for ' + y ?. join ( ', ' ) ,
268
+ reason : 'Digitally signed by OpenSign for ' + v ?. join ( ', ' ) ,
267
269
location : 'n/a' ,
268
270
signatureLength : 15e3 ,
269
271
} ) ,
270
- ( v = await b . save ( ) ) ,
271
- Buffer . from ( v ) )
272
- : ( ( U = await PDFDocument . load ( e ) ) ,
272
+ ( U = await b . save ( ) ) ,
273
+ Buffer . from ( U ) )
274
+ : ( ( I = await PDFDocument . load ( e ) ) ,
273
275
pdflibAddPlaceholder ( {
274
- pdfDoc : U ,
275
- reason : 'Digitally signed by OpenSign for ' + m + ' <' + g + '>' ,
276
+ pdfDoc : I ,
277
+ reason : 'Digitally signed by OpenSign for ' + g + ' <' + u + '>' ,
276
278
location : 'n/a' ,
277
279
signatureLength : 15e3 ,
278
280
} ) ,
279
- ( I = await U . save ( ) ) ,
280
- Buffer . from ( I ) ) ) ,
281
- ( w = await new SignPDF ( e , h ) . signPDF ( ) ) ,
282
- fs . writeFileSync ( S , w ) ,
283
- w )
284
- : ( fs . writeFileSync ( S , e ) , e )
281
+ ( w = await I . save ( ) ) ,
282
+ Buffer . from ( w ) ) ) ,
283
+ ( D = await new SignPDF ( e , f ) . signPDF ( ) ) ,
284
+ fs . writeFileSync ( _ , D ) ,
285
+ D )
286
+ : ( fs . writeFileSync ( _ , e ) , e )
285
287
) . length ;
286
- var _ ,
287
- A ,
288
+ var A ,
288
289
x ,
289
290
E ,
290
291
j ,
291
292
k ,
292
293
F ,
293
294
C ,
294
295
T ,
295
- N = await uploadFile ( D , S ) ;
296
- if ( N && N . imageUrl )
296
+ N ,
297
+ M = await uploadFile ( S , _ ) ;
298
+ if ( M && M . imageUrl )
297
299
return (
298
- ( _ = await updateDoc (
300
+ ( A = await updateDoc (
299
301
o . params . docId ,
300
- N . imageUrl ,
302
+ M . imageUrl ,
301
303
r . data . results [ 0 ] . objectId ,
302
304
o . headers [ 'x-real-ip' ] ,
303
- d . data ,
305
+ c . data ,
304
306
i
305
307
) ) ,
306
- sendDoctoWebhook ( d , N . imageUrl , 'signed' , r ?. data . results ?. [ 0 ] ) ,
307
- saveFileUsage ( s , N . imageUrl , c . data . objectId ) ,
308
- _ &&
309
- _ . isCompleted &&
310
- ( ( A = { ...d . data , AuditTrail : _ . AuditTrail } ) ,
311
- ( x = await GenerateCertificate ( A ) ) ,
312
- ( E = await PDFDocument . load ( x ) ) ,
308
+ sendDoctoWebhook ( c , M . imageUrl , 'signed' , r ?. data . results ?. [ 0 ] ) ,
309
+ saveFileUsage ( s , M . imageUrl , p . data . objectId ) ,
310
+ A &&
311
+ A . isCompleted &&
312
+ ( ( x = { ...c . data , AuditTrail : A . AuditTrail } ) ,
313
+ ( E = await GenerateCertificate ( x ) ) ,
314
+ ( j = await PDFDocument . load ( E ) ) ,
313
315
pdflibAddPlaceholder ( {
314
- pdfDoc : E ,
316
+ pdfDoc : j ,
315
317
reason : 'Digitally signed by OpenSign.' ,
316
318
location : 'n/a' ,
317
319
signatureLength : 15e3 ,
318
320
} ) ,
319
- ( j = await E . save ( ) ) ,
320
- ( k = Buffer . from ( j ) ) ,
321
- ( F = await new SignPDF ( k , h ) . signPDF ( ) ) ,
322
- fs . writeFileSync ( './exports/certificate.pdf' , F ) ,
323
- ( T = {
324
- CertificateUrl : ( C = await uploadFile (
321
+ ( k = await j . save ( ) ) ,
322
+ ( F = Buffer . from ( k ) ) ,
323
+ ( C = await new SignPDF ( F , f ) . signPDF ( ) ) ,
324
+ fs . writeFileSync ( './exports/certificate.pdf' , C ) ,
325
+ ( N = {
326
+ CertificateUrl : ( T = await uploadFile (
325
327
'certificate.pdf' ,
326
328
'./exports/certificate.pdf'
327
329
) ) . imageUrl ,
328
330
} ) ,
329
- await axios . put ( serverUrl + '/classes/contracts_Document/' + n , T , {
331
+ await axios . put ( serverUrl + '/classes/contracts_Document/' + n , N , {
330
332
headers : {
331
333
'Content-Type' : 'application/json' ,
332
334
'X-Parse-Application-Id' : APPID ,
333
335
'X-Parse-Master-Key' : masterKEY ,
334
336
} ,
335
337
} ) ,
336
- d . data . IsSendMail && ! 1 === d . data . IsSendMail
338
+ c . data . IsSendMail && ! 1 === c . data . IsSendMail
337
339
? console . log ( "don't send mail" )
338
- : sendCompletedMail ( { url : N . imageUrl , isCustomMail : l , doc : d . data } ) ,
339
- saveFileUsage ( k . length , C . imageUrl , c . data . objectId ) ,
340
- sendDoctoWebhook ( d , N . imageUrl , 'completed' ) ) ,
341
- fs . unlinkSync ( S ) ,
342
- console . log ( 'New Signed PDF created called: ' + S ) ,
343
- 'success' === _ . message
344
- ? { status : 'success' , data : N . imageUrl }
340
+ : sendCompletedMail ( {
341
+ url : M . imageUrl ,
342
+ isCustomMail : l ,
343
+ doc : c . data ,
344
+ mailProvider : d ,
345
+ } ) ,
346
+ saveFileUsage ( F . length , T . imageUrl , p . data . objectId ) ,
347
+ sendDoctoWebhook ( c , M . imageUrl , 'completed' ) ) ,
348
+ fs . unlinkSync ( _ ) ,
349
+ console . log ( 'New Signed PDF created called: ' + _ ) ,
350
+ 'success' === A . message
351
+ ? { status : 'success' , data : M . imageUrl }
345
352
: { status : 'error' , message : 'Please provide required parameters!' }
346
353
) ;
347
354
}
0 commit comments