<?php 
/*
Autor: Lic. Carlos Alberto Vaca Coronado
Version: 3.2.0
*/

#login
	ob_start();
	header( "Cache-control: private" );
	$header = "Location: http://" . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) ;
	if(!isset($_POST["user"]) || !isset($_POST["pass"]))
	{
		$header .= "/index.php";
		header($header);
		ob_end_flush();
		exit();
	}
	session_name('portal_absa');
	session_start();
	require("conexion/conectar.php");
	
	$conexion = new CONDB();
	$conexion->conectar();

	//$fecha = date("Y-m-d");
	$md5=md5($_POST["pass"]);
	$_SESSION["USUARIO_INACTIVO_EN_DIAS"] = "";
	if(file_exists("config.ini")){
		$vlineas = file("config.ini");
		foreach ($vlineas as $sLinea) {
			if(substr($sLinea,0,19) == "RES_RFC_REFERENCIA="){
					$_SESSION["RES_RFC_REFERENCIA"]=trim(substr($sLinea,19));
			}else if(substr($sLinea,0,25) == "USUARIO_INACTIVO_EN_DIAS="){
					$_SESSION["USUARIO_INACTIVO_EN_DIAS"]=trim(substr($sLinea,25));
			}
		}
	}
	$stmt = mysqli_prepare($conexion->CONEXION,"SELECT 
	username,
	nombre,
	pass,
	RFC_Cliente,
	esAdmin,
	todoRFC,
	permisosP,
	permisosC,
	email,
	activado,
	telefono,
	contactoP,
	esProv,
	tdocto,
	cambia_status_check,
	agrega_pago_check,
	ref_rfc_receptor,
	compensar_documentos,
	editar_expediente,
	ver_reportes,
	mod_pendientes_cancelar,
	mod_acepta_rechaza_cancelacion,
	mod_desbloquea_provision_pago,
	if(date_format(date_add(fechaAcceso,interval ".$_SESSION["USUARIO_INACTIVO_EN_DIAS"]." DAY),'%Y%m%d') <= date_format(current_timestamp(),'%Y%m%d'),1,0) as inactivo
	FROM usuariosweb WHERE username=? AND pass=? LIMIT 1");
	
	$md5=md5($_POST["pass"]);
	$usuario = $_POST["user"];
	
	// echo $md5."".$usuario;exit;
	
	mysqli_stmt_bind_param($stmt,"ss",$usuario,$md5);
	
	// $qUsuario	=	"SELECT * FROM usuariosweb WHERE username='".$_POST["user"]."' AND pass='".$md5."' LIMIT 1";
	// $rUsuario	=	mysqli_query($conexion->CONEXION,$qUsuario);
	if(!mysqli_stmt_execute($stmt)){
		?><script>$j_6.messager.alert("Error","Ocurrio un error en el acceso. Intente nuevamente.","error");$j_6("#pass").val("");$j_6("#user").select();</script><?
		exit;
	}
	
	mysqli_stmt_bind_result($stmt,$username, $nombre, $pass, $RFC_Cliente, $esAdmin, $todoRFC, $permisosP, $permisosC, $email, $activado, $telefono, $contactoP, $esProv, $tdocto, $cambia_status_check, $agrega_pago_check, $ref_rfc_receptor, $compensar_documentos, $editar_expediente, $ver_reportes, $mod_pendientes_cancelar, $mod_acepta_rechaza_cancelacion, $mod_desbloquea_provision_pago, $inactivo);
	mysqli_stmt_store_result($stmt);
	
	if(mysqli_stmt_num_rows($stmt) == 1)
	{
		mysqli_stmt_fetch($stmt);
		if(trim(strtoupper($_POST['user'])) != "ADMIN"){
			if($_SESSION["USUARIO_INACTIVO_EN_DIAS"] != "" && $_SESSION["USUARIO_INACTIVO_EN_DIAS"] != "0"){
				if($inactivo == 1){
					$query = "Update usuariosweb set activado=3 where username='".$_POST['user']."'";
					mysqli_query($conexion->CONEXION,$query);
					?><script>$j_6.messager.alert("Error","El usuario se ha bloqueado por falta de actividad. Favor de contactar al administrador.","error");</script><?exit;
				}
			}
		}
		
		
		if(strtoupper(trim($_POST["user"])) != "ADMIN"){
			if(trim($_SESSION["RES_RFC_REFERENCIA"]) == "SI"){
				//if(trim($esAdmin) != "SI"){
				
					if(trim($todoRFC) == "SI"){
						$arrRFCS = explode(",",$ref_rfc_receptor);
						if(!in_array($_SESSION['RFC_RECEPTOR_PORTAL'],$arrRFCS)){?>
						<script>$j_6.messager.alert("Error","Usuario o password incorrecto","error");$j_6("#pass").val("");$j_6("#user").select();</script>
						<?exit;}
					}else{
						$qProv="select rfc_receptor,rfc from proveedores where rfc_receptor='".$_SESSION['RFC_RECEPTOR_PORTAL']."' and rfc='".$RFC_Cliente."' LIMIT 1";
						
						$rP = mysqli_query($conexion->CONEXION,$qProv);
						if(mysqli_num_rows($rP) <= 0){
							?>
								<script>$j_6.messager.alert("Error","Usuario o password incorrecto","error");$j_6("#pass").val("");$j_6("#user").select();</script>
								<?exit;
						}
					}
				/*}else{
					if(strtoupper(trim($ref_rfc_receptor)) != strtoupper($_SESSION['RFC_RECEPTOR_PORTAL'])){
						?>
							<script>$j_6.messager.alert("Error","Usuario o password incorrecto","error");$j_6("#pass").val("");$j_6("#user").select();</script>
							<?exit;
					}
				}*/
			}
		}
		
		
		/*if(trim($_SESSION["RES_RFC_REFERENCIA"]) == "SI"){
			if(strtoupper(trim($_POST["user"])) != "ADMIN"){
				$arrRFCS = explode(",",$ref_rfc_receptor);
				if(!in_array($_SESSION['RFC_RECEPTOR_PORTAL'],$arrRFCS)){?>
				<script>$j_6.messager.alert("Error","Usuario o password incorrecto","error");$j_6("#pass").val("");$j_6("#user").select();</script>
				<?exit;}
			}
		}*/

		if(isset($_GET['accion']) && $_GET['accion'] == "ACTIVACION"){
			$url="admin.php?modulo=ACTIVAUSUARIO&accion=ACTIVACION&usuarioActivar=".$_GET['usuarioActivar']."&razonSocial=".$_GET['razonSocial'];
			$return="LoginActivar.php";
			if($esAdmin == "NO" || $esAdmin == "")
			{
			?>
				<script>alert("El usuario no tiene permiso de acceso,\nfavor de contactar al Administrador del Sistema");$j_6("#pass").val("");$j_6("#user").select();</script>
			<?	//ob_end_flush();
				exit();
			}
		}else{
			$url="admin.php";
			$return="index.php";
		}
		//$_SESSION['codigo']=$codigo;
		$_SESSION['usuario_p_prov_absa']=$username;
		$_SESSION['nombre_p_prov_absa']=$nombre;
		$_SESSION['name_p_prov_absa']=$nombre;
		$_SESSION['pass_p_prov_absa']=$pass;
		$_SESSION['rfc_cliente_p_prov_absa']=$RFC_Cliente;
		$_SESSION['esAdmin_p_prov_absa']=$esAdmin;
		$_SESSION['todo_RFC_p_prov_absa']=$todoRFC;
		$_SESSION['permisos_p_prov_absa']=$permisosP;
		$_SESSION['permisos_c_prov_absa']=$permisosC;
		$_SESSION['email_user_p_prov_absa']=$email;
		$_SESSION['activado_p_prov_absa']=$activado;
		$_SESSION['correo_p_prov_absa']=$email;
		$_SESSION['telefono_p_prov_absa']=$telefono;
		$_SESSION['contactoP_p_prov_absa']=$contactoP;
		$_SESSION['esProv_p_prov_absa']=$esProv;
		$_SESSION['tipo_usuario_ABSA']=$tipo_usuario;
		$_SESSION['tipo_usuario_vimifos']=@$tipo_usuario_vimifos;
		$_SESSION['tdocto']=$tdocto;
        $_SESSION['prefijo_usr']=@$prefijo;
		$_SESSION['sesion_cambia_status_check']=$cambia_status_check;
		$_SESSION['sesion_agrega_pago_check']=$agrega_pago_check;
		$_SESSION['sesion_ref_rfc_receptor']=$ref_rfc_receptor;
		$_SESSION['sesion_compensar_documentos']=$compensar_documentos;
		$_SESSION['sesion_editar_expediente']=$editar_expediente;
		$_SESSION['sesion_ver_reportes']=$ver_reportes;
		$_SESSION['sesion_mod_pendientes_cancelar']=$mod_pendientes_cancelar;
		$_SESSION['sesion_mod_acepta_rechaza_cancelacion']=$mod_acepta_rechaza_cancelacion;
		$_SESSION['sesion_mod_desbloquea_provision_pago']=$mod_desbloquea_provision_pago;
		
                

		
		if($esProv == "SI"){
			$query = "Update usuariosweb set fechaAcceso=now() where username='".$_POST['user']."'";
			mysqli_query($conexion->CONEXION,$query);
			
			
			if(file_exists("config.ini")){
			$vlineas = file("config.ini");
			
				foreach ($vlineas as $sLinea) {
						if(substr($sLinea,0,16) == "REMUEVEARCHIVOS=" && trim($sLinea) == "REMUEVEARCHIVOS=SI"){
							$_SESSION["remueveArchivos"]="SI";
						}else if(substr($sLinea,0,16) == "REMUEVEARCHIVOS="){
							$_SESSION["remueveArchivos"]="NO";
						}
						if(substr($sLinea,0,9) == "RECEPTOR=" && trim($sLinea) == "RECEPTOR=MOMATT"){
							$_SESSION["receptor_portal"]="MOMATT";
						}else if(substr($sLinea,0,9) == "RECEPTOR="){
							$_SESSION["receptor_portal"]="GENERICO";
						}else if(substr($sLinea,0,15) == "PORTAL_MOSTRAR="){
							$_SESSION["tipo_portal"]=trim(substr($sLinea,15));
						}else if(substr($sLinea,0,19) == "ARCHIVOS_RECIBIDOS="){
							$_SESSION["archivos_recibidos"]=trim(substr($sLinea,19));
						}else if(substr($sLinea,0,16) == "MOSTRAR_PDF_STD="){
							$_SESSION["mostrar_pdf_std"]=trim(substr($sLinea,16));
						}else if(substr($sLinea,0,17) == "LABEL_ASIGNADO_A="){
								$_SESSION["Label_asignado_a"]=trim(substr($sLinea,17));
						}else if(substr($sLinea,0,16) == "LABEL_ADICIONAL="){
								$_SESSION["Label_adicional"]=trim(substr($sLinea,16));
						}else if(substr($sLinea,0,17) == "ACTIVACION_ADMIN="){
								$_SESSION["activacion_admin"]=trim(substr($sLinea,17));
						}else if(substr($sLinea,0,24) == "PERMITIR_UN_USUARIO_REG="){
								$_SESSION["PERMITIR_UN_USUARIO_REG"]=trim(substr($sLinea,24));
						}else if(substr($sLinea,0,19) == "RES_RFC_REFERENCIA="){
								$_SESSION["RES_RFC_REFERENCIA"]=trim(substr($sLinea,19));
						}else if(substr($sLinea,0,13) == "MODULO_PAGOS="){
								$_SESSION["MODULO_PAGOS"]=trim(substr($sLinea,13));
						}else if(substr($sLinea,0,27) == "MODULO_PENDIENTES_CANCELAR="){
								$_SESSION["MODULO_PENDIENTES_CANCELAR"]=trim(substr($sLinea,27));
						}else if(substr($sLinea,0,17) == "TIPO_CANCELACION="){
								$_SESSION["TIPO_CANCELACION"]=trim(substr($sLinea,17));
						}else if(substr($sLinea,0,19) == "PROVISION_DE_PAGOS="){
								$_SESSION["PROVISION_DE_PAGOS"]=trim(substr($sLinea,19));
						}else if(substr($sLinea,0,11) == "URL_PORTAL="){
								$_SESSION["URL_PORTAL"]=trim(substr($sLinea,11));
						}else if(substr($sLinea,0,26) == "CANCELACION_WSUTILQUERIES="){
								$_SESSION["CANCELACION_WSUTILQUERIES"]=strtoupper(trim(substr($sLinea,26)));
						}
						
                                                
				}
			}
			else{
				$_SESSION["remueveArchivos"]="NO";
			}
			if($activado == '2'){
				if(trim($email) == "-"){?>
					<script>$j_6.messager.prompt('Ingrese Correo.', 'Ingrese su correo correcto.<br/><br/>Recuerde que es muy importante que el correo ingresado sea realmente el suyo<br/>para fines de algunas notificaciones.', function(r){
								if (r != ""){
									$j_6.post("extras/guardaCorreo.php",{usuario: "<?=$username?>", email: r},function(data){
										if(data == "true"){
											window.location.href='<?=$url?>';
										}else{
											$j_6.messager.alert("Error.","Ocurrio un error al actualizar el correo.<br/><br/>Intente nuevamente.","error");
										}
											
									});
								}else{
									$j_6.messager.alert("Error.","Ingrese el correo.","error");
								}
							});
					</script>
				<?
				}else{
					?><script>window.location.href='<?=$url?>'</script><?
				}
				/*header($header .$url);
				ob_end_flush();
				exit();*/
			}else if($activado == '0'){
		?>
				<script>$j_6.messager.confirm("Notificaci&oacute;n.","Aun no ha confirmado su email.<br/>&iquest;Desea editar su perfil?<br/>Presione cancelar para seguir con el registro.", function(r){
							if (r){
									ventanaModal3('[editarPerfil.php,800,500]','<?=$username?>');
									return false;
							}else{
								$j_6.messager.confirm("Notificaci&oacute;n.","Desea que se le envie el correo de confirmaci&oacute;n de email?",function(r2){
									if(r2){
										$j_6.post("reenviaCorreoActivacion.php",{usuario: "<?=$username?>", email: "<?=$email?>", nombre: "<?=$nombre?>", password: "<?=$pass?>"},function(data){
											if(data == "true")
												$j_6.messager.alert("Informaci&oacute;n","Correo enviado con exito.","info");
											else
												$j_6.messager.alert("Error","Error al enviar el correo.","error");
											
										});
									}
								});
							}
						});</script>
		<?
				/*header($header .$return."?error=ACTIVACION");
				ob_end_flush();*/
				exit();	
			}else{
		?>
				<script>$j_6.messager.confirm("Error","El usuario aun no tiene el permiso de ingresar<br/>&iquest;Desea solicitar nuevamente el permiso?", function(r){
							if (r){
								$j_6.post("reenviaSolicitudActivacion.php",{usuario: "<?=$username?>", email: "<?=$email?>", nombre: "<?=$nombre?>", contacto: "<?=$contactoC?>", telefono: "<?=$telefono?>"},function(data){
									if(data == "true")
										$j_6.messager.alert("Informaci&oacute;n","Correo enviado con exito.","info");
									else
										$j_6.messager.alert("Error","Error al enviar el correo.","error");
									
								});
							}
							});
				</script>
		<?
				/*header($header .$return."?error=ACTIVACION");
				ob_end_flush();*/
				exit();	
			}
		}else{
		?>
			<script>$j_6.messager.alert("Error","El usuario no tiene permiso de acceso,\nfavor de contactar al Administrador del Sistema","error");$j_6("#pass").val("");$j_6("#user").select();</script>
		<?
			/*header($header .$return."?error=PERMISO");
			ob_end_flush();*/
			exit();
		}
		
	}
	else
	{
	?>
		<script>$j_6.messager.alert("Error","Usuario o password incorrecto","error");$j_6("#pass").val("");$j_6("#user").select();</script>
	<?
		/*$header .= "/index.php?error=1";
		header($header);
		ob_end_flush();*/
		exit();
	}

	ob_end_flush();
	// @mysqli_free_result($resultado);
	@mysqli_close($conexion->CONEXION);
?>