[f1ec144] | 1 | |
---|
[025e022] | 2 | function ColumnsDataTablePDF(){ |
---|
| 3 | var columns = [ |
---|
| 4 | {title: "Nombre del firmante", data: "nameOfTheSigner" }, |
---|
| 5 | {title: "Fecha en que se realiza la firma", data: "signedOn"}, |
---|
| 6 | {title: "Chequea la integridad de la firma", data: "integrityCheck"}, |
---|
| 7 | {title: "El certificado todavía está válido", data: "signerCertificateStillValid"}, |
---|
| 8 | {title: "Fecha de inicio de validez del certificado", data: "signerCertificateValidFrom"}, |
---|
| 9 | {title: "Fecha de fin de validez del certificado", data: "signerCertificateValidTo"}, |
---|
| 10 | {title: "El certificado es válido en el momento de la firma", data: "signerCertificateValidAtTimeOfSigning"}, |
---|
| 11 | {title: "Tipo de firma de archivo PDF", data: "signatureType"}, |
---|
| 12 | {title: "Estampilla de tiempo", data: "timeStamp"}, |
---|
| 13 | {title: " Razón de la firma", data: "reason"}, |
---|
| 14 | {title: "Ubicación donde se realiza la firma", data: "location"}, |
---|
| 15 | {title: "Nombre alternativo del firmante", data: "alternativeNameOfTheSigner"}, |
---|
| 16 | {title: "La firma abarca todo el documento PDF", data: "signatureCoversWholeDocument"}, |
---|
| 17 | {title: "Tipo de subfiltro: /adbe.pkcs7.sha1, /adbe.pkcs7.detached", data: "filterSubtype"}, |
---|
| 18 | {title: "Sujeto firmante", data: "signerCertificateSubject"}, |
---|
| 19 | {title: "Algoritmo de cifrado", data: "encryptionAlgorithm"}, |
---|
| 20 | {title: "Servicio de estampillado de tiempo", data: "timeStampService"}, |
---|
| 21 | {title: "Algoritmo hash (reseña)", data: "digestAlgorithm"}, |
---|
| 22 | {title: "Certificado verificado contra el repositorio de certificados confiables", data: "certificatesVerifiedAgainstTheKeyStore"}, |
---|
| 23 | {title: "Número de revisión del documento PDF", data: "documentRevision"}, |
---|
| 24 | {title: "Número total de revisiones del documento PDF", data: "totalDocumentRevisions"}, |
---|
| 25 | {title: "Información de contacto del firmante", data: "contactInfo", style:"width: 2px;"}, |
---|
| 26 | {title: "Estampilla de tiempo verificada", data: "timeStampVerified"}, |
---|
| 27 | {title: "Emisor del certificado firmante", data: "signerCertificateIssuer"}, |
---|
| 28 | {title:"Información", data: function(event){ |
---|
| 29 | return '<button id="informacion" type="input" class="btn btn-success btn-sm" data-toggle="modal" data-target="#myModalVerificar" onclick="javascript:Dialog_Verificar('+event.documentRevision+')">Info(<font color="red">'+event.documentRevision+'</font>)</button>'; |
---|
| 30 | } |
---|
| 31 | } |
---|
| 32 | ]; |
---|
| 33 | |
---|
| 34 | return columns; |
---|
| 35 | |
---|
| 36 | } |
---|
| 37 | |
---|
| 38 | |
---|
[f1ec144] | 39 | function InfoContentVerificar(id){ |
---|
| 40 | |
---|
| 41 | for (var i = 0; i < INFO_CHECK.signatures.length; i++) { |
---|
| 42 | if (parseInt(INFO_CHECK.signatures[i]['documentRevision']) == parseInt(id)){ |
---|
| 43 | |
---|
| 44 | var html1 = ""; |
---|
| 45 | |
---|
| 46 | html1 += '<font style="font-size: 14pt">'; |
---|
| 47 | html1 += '<table class="table table-hover" width="100%" id="data" >'; |
---|
| 48 | html1 += '<tr>'; |
---|
| 49 | html1 += '<td style="text-align: left" width="700"><b>Nombre del firmante:</b> </td>'; |
---|
| 50 | html1 += '<td style="text-align: left" width="500"><span> '+INFO_CHECK.signatures[i]['nameOfTheSigner']+'</span></td>'; |
---|
| 51 | html1 += '</tr>'; |
---|
| 52 | html1 += '<tr>'; |
---|
| 53 | html1 += '<td style="text-align: left"><b>Fecha en que se realiza la firma:</b> </td>'; |
---|
| 54 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['signedOn']+'</span></td>'; |
---|
| 55 | html1 += '</tr>'; |
---|
| 56 | html1 += '<tr>'; |
---|
| 57 | html1 += '<td style="text-align: left"><b>Chequea la integridad de la firma:</b> </td>'; |
---|
| 58 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['integrityCheck']+'</span></td>'; |
---|
| 59 | html1 += '</tr>'; |
---|
| 60 | html1 += '<tr>'; |
---|
| 61 | html1 += '<td style="text-align: left"><b>El certificado todavía está válido:</b> </td>'; |
---|
| 62 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['signerCertificateStillValid']+'</span></td>'; |
---|
| 63 | html1 += '</tr>'; |
---|
| 64 | html1 += '<tr>'; |
---|
| 65 | html1 += '<td style="text-align: left"><b>Fecha de fin de validez del certificado:</b> </td>'; |
---|
| 66 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['signerCertificateValidFrom']+'</span></td>'; |
---|
| 67 | html1 += '</tr>'; |
---|
| 68 | html1 += '<tr>'; |
---|
| 69 | html1 += '<td style="text-align: left"><b>Fecha de fin de validez del certificado:</b> </td>'; |
---|
| 70 | html1 += '<td style="text-align: left"><span>' +INFO_CHECK.signatures[i]['signerCertificateValidTo']+'</span></td>'; |
---|
| 71 | html1 += '</tr>'; |
---|
| 72 | html1 += '<tr>'; |
---|
| 73 | html1 += '<td style="text-align: left" ><b>El certificado es válido en el momento de la firma:</b> </td>'; |
---|
| 74 | html1 += '<td style="text-align: left" ><span> '+INFO_CHECK.signatures[i]['signerCertificateValidAtTimeOfSigning']+'</span></td>'; |
---|
| 75 | html1 += '</tr>'; |
---|
| 76 | html1 += '<tr>'; |
---|
| 77 | html1 += '<td style="text-align: left" ><b>Tipo de firma de archivo PDF:</b> </td>'; |
---|
| 78 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['signatureType']+'</span></td>'; |
---|
| 79 | html1 += '</tr>'; |
---|
| 80 | html1 += '<tr>'; |
---|
| 81 | html1 += '<td style="text-align: left"><b>Estampilla de tiempo:</b> </td>'; |
---|
| 82 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['timeStamp']+'</span></td>'; |
---|
| 83 | html1 += '</tr>'; |
---|
| 84 | html1 += '<tr>'; |
---|
| 85 | html1 += '<td style="text-align: left"><b>Razón de la firma:</b> </td>'; |
---|
| 86 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['reason']+'</span></td>'; |
---|
| 87 | html1 += '</tr>'; |
---|
| 88 | html1 += '<tr>'; |
---|
| 89 | html1 += '<td style="text-align: left"><b>Ubicación donde se realiza la firma:</b> </td>'; |
---|
| 90 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['location']+'</span></td>'; |
---|
| 91 | html1 += '</tr>'; |
---|
| 92 | html1 += '<tr>'; |
---|
| 93 | html1 += '<td style="text-align: left"><b>Nombre alternativo del firmante:</b> </td>'; |
---|
| 94 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['alternativeNameOfTheSigner']+'</span></td>'; |
---|
| 95 | html1 += '</tr>'; |
---|
| 96 | html1 += '<tr>'; |
---|
| 97 | html1 += '<td style="text-align: left"><b>La firma abarca todo el documento PDF:</b> </td>'; |
---|
| 98 | html1 += '<td style="text-align: left"><span>' +INFO_CHECK.signatures[i]['signatureCoversWholeDocument']+'</span></td>'; |
---|
| 99 | html1 += '</tr>'; |
---|
| 100 | html1 += '<tr>'; |
---|
| 101 | html1 += '<td style="text-align: left" ><b>Tipo de subfiltro: /adbe.pkcs7.sha1, /adbe.pkcs7.detached:</b> </td>'; |
---|
| 102 | html1 += '<td style="text-align: left" ><span> '+INFO_CHECK.signatures[i]['filterSubtype']+'</span></td>'; |
---|
| 103 | html1 += '</tr>'; |
---|
| 104 | html1 += '<tr>'; |
---|
| 105 | html1 += '<td style="text-align: left"><b>Sujeto firmante:</b> </td>'; |
---|
| 106 | html1 += '<td style="text-align: left"><span><font style="font-size: 8pt">' +INFO_CHECK.signatures[i]['signerCertificateSubject']+'</font></span></td>'; |
---|
| 107 | html1 += '</tr>'; |
---|
| 108 | html1 += '<td style="text-align: left" ><b>Algoritmo de cifrado:</b> </td>'; |
---|
| 109 | html1 += '<td style="text-align: left" ><span> '+INFO_CHECK.signatures[i]['encryptionAlgorithm']+'</span></td>'; |
---|
| 110 | html1 += '</tr>'; |
---|
| 111 | html1 += '<tr>'; |
---|
| 112 | html1 += '<td style="text-align: left" ><b>Servicio de estampillado de tiempo:</b> </td>'; |
---|
| 113 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['timeStampService']+'</span></td>'; |
---|
| 114 | html1 += '</tr>'; |
---|
| 115 | html1 += '<tr>'; |
---|
| 116 | html1 += '<td style="text-align: left"><b>Algoritmo hash (reseña):</b> </td>'; |
---|
| 117 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['digestAlgorithm']+'</span></td>'; |
---|
| 118 | html1 += '</tr>'; |
---|
| 119 | html1 += '<tr>'; |
---|
| 120 | html1 += '<td style="text-align: left"><b>Certificado verificado contra el repositorio de certificados confiables:</b> </td>'; |
---|
| 121 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['certificatesVerifiedAgainstTheKeyStore']+'</span></td>'; |
---|
| 122 | html1 += '</tr>'; |
---|
| 123 | html1 += '<tr>'; |
---|
| 124 | html1 += '<td style="text-align: left"><b>Número de revisión del documento PDF:</b> </td>'; |
---|
| 125 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['documentRevision']+'</span></td>'; |
---|
| 126 | html1 += '</tr>'; |
---|
| 127 | html1 += '<tr>'; |
---|
| 128 | html1 += '<td style="text-align: left"><b>Número total de revisiones del documento PDF:</b> </td>'; |
---|
| 129 | html1 += '<td style="text-align: left"><span> '+INFO_CHECK.signatures[i]['totalDocumentRevisions']+'</span></td>'; |
---|
| 130 | html1 += '</tr>'; |
---|
| 131 | html1 += '<tr>'; |
---|
| 132 | html1 += '<td style="text-align: left"><b>Información de contacto del firmante:</b> </td>'; |
---|
| 133 | html1 += '<td style="text-align: left"><span>' +INFO_CHECK.signatures[i]['contactInfo']+'</span></td>'; |
---|
| 134 | html1 += '</tr>'; |
---|
| 135 | html1 += '<tr>'; |
---|
| 136 | html1 += '<td style="text-align: left" ><b>Estampilla de tiempo verificada:</b> </td>'; |
---|
| 137 | html1 += '<td style="text-align: left" ><span> '+INFO_CHECK.signatures[i]['timeStampVerified']+'</span></td>'; |
---|
| 138 | html1 += '</tr>'; |
---|
| 139 | html1 += '<tr>'; |
---|
| 140 | html1 += '<td style="text-align: left"><b>Emisor del certificado firmante:</b> </td>'; |
---|
| 141 | html1 += '<td style="text-align: left"><span><font style="font-size: 8pt">' +INFO_CHECK.signatures[i]['signerCertificateIssuer']+'</font></span></td>'; |
---|
| 142 | html1 += '</tr>';; |
---|
| 143 | html1 += '</table>'; |
---|
| 144 | html1 += '</font>'; |
---|
| 145 | |
---|
| 146 | $('div#Dialogo_Check-table').append(html1); |
---|
| 147 | } |
---|
| 148 | } |
---|
| 149 | } |
---|
| 150 | |
---|
| 151 | function Dialog_Verificar(id){ |
---|
| 152 | document.getElementById("Dialogo_Check").innerHTML = '\ |
---|
| 153 | <style>\ |
---|
| 154 | .modal .modal-dialog { width: 80%; height: 80%, };\ |
---|
| 155 | </style>\ |
---|
| 156 | <div id="myModalVerificar" class="modal fade" role="dialog">\ |
---|
| 157 | <div class="modal-dialog">\ |
---|
| 158 | <div class="modal-content">\ |
---|
| 159 | <div id = "title" class="modal-header">\ |
---|
| 160 | <!--<button type="button" class="close" data-dismiss="modal">×</button>-->\ |
---|
[025e022] | 161 | <h4 class="modal-title text-primary"><center>Información de la firma('+id+')</center></h4>\ |
---|
[f1ec144] | 162 | </div>\ |
---|
| 163 | <div id = "body" class="modal-body">\ |
---|
| 164 | <br>\ |
---|
| 165 | <div id="Dialogo_Check-table"></div>\ |
---|
| 166 | </div>\ |
---|
| 167 | <div class="modal-footer">\ |
---|
| 168 | <button type="button" id="informacion" data-dismiss="modal">Close</button>\ |
---|
| 169 | </div>\ |
---|
| 170 | </div>\ |
---|
| 171 | </div>\ |
---|
| 172 | </div>'; |
---|
| 173 | |
---|
| 174 | InfoContentVerificar(id); |
---|
| 175 | |
---|
| 176 | } |
---|
| 177 | |
---|
| 178 | |
---|
[025e022] | 179 | |
---|
| 180 | |
---|
| 181 | function DataTableVerificarPDF(response){ |
---|
| 182 | |
---|
| 183 | var columns = ColumnsDataTablePDF(); |
---|
| 184 | var table = $('#myCkeckPDF').DataTable({ |
---|
| 185 | language: { |
---|
| 186 | "lengthMenu": "Mostrar _MENU_ registros", |
---|
| 187 | "zeroRecords": "No hay resultados - Disculpe", |
---|
| 188 | "info": "Mostrando pagina _PAGE_ de _PAGES_", |
---|
| 189 | "search": "Buscar:", |
---|
| 190 | "infoEmpty": "No records available", |
---|
| 191 | "infoFiltered": "(filtered from _MAX_ total records)" |
---|
| 192 | }, |
---|
| 193 | order: [[ 1, 'desc' ]], |
---|
| 194 | data: response.signatures, |
---|
| 195 | columns: columns, |
---|
[f1ec144] | 196 | dom: 'Bfrtip', |
---|
| 197 | columnDefs: [ |
---|
| 198 | { |
---|
[025e022] | 199 | |
---|
| 200 | "className": "dt-center", |
---|
| 201 | "targets": [ 2,3,4,5,6,8,9,11,12,13,14,15,16,17,18,19,20,21,22,23 ], |
---|
| 202 | "visible": false, |
---|
| 203 | //"searchable": false |
---|
[f1ec144] | 204 | }, |
---|
| 205 | |
---|
| 206 | ], |
---|
| 207 | buttons: [ |
---|
| 208 | { |
---|
| 209 | extend: 'pageLength', |
---|
| 210 | text: 'Mostrar Filas', |
---|
| 211 | titleAttr: 'Mostrar Filas', |
---|
| 212 | }, |
---|
| 213 | { |
---|
| 214 | extend: 'print', |
---|
| 215 | text: 'Imprimir', |
---|
| 216 | title: 'Contenido de la Firma', |
---|
| 217 | message: 'Datos de la Firma', |
---|
| 218 | titleAttr: 'Imprimir', |
---|
| 219 | exportOptions: { |
---|
[025e022] | 220 | columns: [ 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23] |
---|
[f1ec144] | 221 | } |
---|
| 222 | }, |
---|
| 223 | { |
---|
| 224 | extend: 'excelHtml5', |
---|
| 225 | text: 'XLXS', |
---|
| 226 | title: 'Contenido de la Firma', |
---|
| 227 | titleAttr: 'Excel', |
---|
| 228 | message: 'Datos de la Firma', |
---|
| 229 | exportOptions: { |
---|
[025e022] | 230 | columns: [ 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23] |
---|
[f1ec144] | 231 | } |
---|
| 232 | }, |
---|
| 233 | { |
---|
| 234 | extend: 'csvHtml5', |
---|
| 235 | text: 'CSV', |
---|
| 236 | title: 'Contenido de la Firma', |
---|
| 237 | titleAttr: 'CSV', |
---|
| 238 | exportOptions: { |
---|
[025e022] | 239 | columns: [ 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23] |
---|
[f1ec144] | 240 | } |
---|
| 241 | }, |
---|
| 242 | { |
---|
| 243 | extend: 'pdfHtml5', |
---|
| 244 | text: 'PDF', |
---|
| 245 | titleAttr: 'PDF', |
---|
| 246 | title: 'Contenido de la Firma', |
---|
| 247 | download: 'open', |
---|
| 248 | customize: function (doc){ |
---|
| 249 | doc.defaultStyle.fontSize = 3; |
---|
| 250 | doc.styles.tableHeader.fontSize = 4; |
---|
| 251 | doc.styles.tableHeader.fillColor = "#0085a1"; |
---|
| 252 | }, |
---|
| 253 | //orientation: 'landscape', |
---|
| 254 | pageSize: 'A3', |
---|
| 255 | exportOptions: { |
---|
[025e022] | 256 | columns: [ 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23] |
---|
[f1ec144] | 257 | |
---|
| 258 | } |
---|
| 259 | } |
---|
| 260 | ] |
---|
| 261 | }); |
---|
[025e022] | 262 | |
---|
[f1ec144] | 263 | return table; |
---|
| 264 | |
---|
| 265 | } |
---|