/** Funcion para el manejo de un archivo json * Recibe el json (verificación de una firma pdf), lo introduce en una tabla y devuelve una un cadena de texto. */ function manejoJsonPDF(json) { var fielJsonEs = { fileId: "Identificador único del archivo en el servidor", fileExist:"El archivo se cargó exitosamente en el servidor", mimeType:"Tipo MIME del archivo verificado", error:"Extension not supported. En caso de que el archivo sea diferente de PDF y BDOC", numberOfSignatures:"Número de firmas existentes en el archivo", signatures:"Lista de firmas", signatureType:"Tipo de firma de archivo PDF", signedOn:"Fecha en que se realiza la firma", integrityCheck:"Chequea la integridad de la firma", timeStamp:"Estampilla de tiempo", reason:"Razón de la firma", location:"Ubicación donde se realiza la firma", alternativeNameOfTheSigner:"Nombre alternativo del firmante", signerCertificateValidFrom:"Fecha de inicio de validez del certificado", signerCertificateStillValid:"El certificado todavía está válido", signerCertificateHasExpired:"El certificado expiró", signatureCoversWholeDocument:"La firma abarca todo el documento PDF", filterSubtype:"Tipo de subfiltro: /adbe.pkcs7.sha1, /adbe.pkcs7.detached", signerCertificateSubject:"Sujeto firmante", signerCertificateValidAtTimeOfSigning:"El certificado es válido en el momento de la firma", encryptionAlgorithm:"Algoritmo de cifrado", timeStampService:"Servicio de estampillado de tiempo", digestAlgorithm:"Algoritmo hash (reseña)", certificatesVerifiedAgainstTheKeyStore:"Certificado verificado contra el repositorio de certificados confiables", documentRevision:"Número de revisión del documento PDF", nameOfTheSigner:"Nombre del firmante", totalDocumentRevisions:"Número total de revisiones del documento PDF", contactInfo:"Información de contacto del firmante", timeStampVerified:"Estampilla de tiempo verificada", signerCertificateIssuer:"Emisor del certificado firmante", signerCertificateValidTo:"Fecha de fin de validez del certificado", signerCertificateSerial:"BDOC: Serial del certificado del firmante", signatureProfile:"BDOC: Perfil de la firma", signatureMethod:"BDOC: Algoritmo de firma utilizado", signatureId:"BDOC: identificador de la firma", signatureSigningTime:"Fecha en que se realiza la firma", signerCertificateIsValid:"El certificado todavía está válido", signatureValidationException:"BDOC: Exepciones de la validación de la firma", isValid:"BDOC: Firma electrónica válida", signerCertificateSubjectName:"Nombre del firmante", containerValidation:"BDOC: Especifica si el contenedor posee una estructura válida", numberOfDataFiles:"BDOC: Cantidad de archivos incluidos en el contenedor BDOC", dataFiles:"BDOC: Lista de archivos incluidos en el contenedor", name:"BDOC: Nombre del archivo incluido en el contenedor", dataFileSize:"BDOC: Tamaño del archivo incluido en el contenedor", filename:"BDOC: Nombre del archivo incluido en el contenedor", mediaType:"BDOC: Tipo MIME del archivo incluido en el contenedor" }; var objVarVerifique = JSON.parse(json); var signatures = ''; //variable que maneja las firmas var fields = ''; //variable que maneja los campos de la firma var title = '

Información de la firma electrónica

'; var head = `
`; var footer = `
Campo Descripción
`; var html = title; var numsign = 0; var htmltemp = ''; var objxEsp = ''; $.each(objVarVerifique, function(idx, obj) { if (idx == "error") { html = '

Extensión no soportada, verifique el archivo

'; return(html); } if (idx == "numberOfSignatures") { numsign = obj; html += `

${fielJsonEs[idx]}: ${obj}

`; } if (idx == "signatures") { signatures = obj; //se almacena la(s) cabecera(s) de las firmas } }); var contsing = 1; // variable que indica la firma donde esta posicionado // recorre las firmas signatures $.each(signatures, function(idx, obj) { html += '

Información de la firma Nro '+ contsing +'

'; html += head; // variable que indica el campo de la firma -- arranca en el campo 6 porque necesitamos que muestre de primero // las 5 campos requeridos var contfiels = 8; fields = obj; // variable que almacena los campos de la firma $.each(fields, function(id, objx) { // Recorreo los campos de la firma if ( fielJsonEs[id] == 'Nombre del firmante' ) { html += ` ${fielJsonEs[id]} ${objx} `; } else if (fielJsonEs[id]=='Fecha en que se realiza la firma') { html += ` ${fielJsonEs[id]} ${objx} `; } else if (fielJsonEs[id]=='Chequea la integridad de la firma') { if(objx == 'true') { objxEsp = 'verdadero'; } else { objxEsp='falso'; } html += ` ${fielJsonEs[id]} ${objxEsp} `; } else if( fielJsonEs[id] == 'El certificado todavía está válido' ) { if(objx == 'true') { objxEsp = 'verdadero'; } else { objxEsp='falso'; } html += ` ${fielJsonEs[id]} ${objxEsp} `; } else if(fielJsonEs[id]=='Fecha de inicio de validez del certificado') { html += ` ${fielJsonEs[id]} ${objx} `; } else if(fielJsonEs[id]=='Fecha de fin de validez del certificado') { html += ` ${fielJsonEs[id]} ${objx} `; } else if(fielJsonEs[id]=='El certificado es válido en el momento de la firma') { if(objx == 'true') { objxEsp = 'verdadero'; } else { objxEsp='falso'; } html += ` ${fielJsonEs[id]} ${objxEsp} `; } else { if ( objx == 'true' ) { htmltemp += ` ${fielJsonEs[id]} verdadero `; } else if(objx == 'false'){ htmltemp += ` ${fielJsonEs[id]} falso `; } else { htmltemp += ` ${fielJsonEs[id]} ${objx} `; } contfiels++; } }); contsing++; html += htmltemp; htmltemp = ''; html += footer; }); return(html); }