function DevolverCantidadDias($fecha_shift)
{	
	$miconexion = new Conexion;
	$miconexion-> conectar();
	$id_tipo_dia = $miconexion->StoredProcedure("call AsociarDia('$fecha_shift')");
	$total_shift = 0;
			
	list($fech, $hora_shift) = explode(" ",$fecha_shift);
	if ($hora_shift == '06:00:00'){
		$id_shift = 1;}
	else if ($hora_shift == '12:00:00'){
		$id_shift = 6;}
	else{
		$id_shift = 2;}
		
	$personas = $miconexion->StoredProcedureArray("call DevolverCantPersonasShift('$id_tipo_dia', '$id_shift')");
		
	$total_shift = 0;
	while ($myrow = mysqli_fetch_array($personas))
	{
		$id_usuario = $myrow["id_usuario"];	
		$total_shift++;
	}
		
	$excepciones = $miconexion->StoredProcedureArray("call DevolverExcepcionesShift('$fecha_shift')");
	
	while ($myrow = mysqli_fetch_array($excepciones))
	{
		$id_usuario = $myrow["id_usuario"];	
		$id_tipo_excepcion = $myrow["id_tipo_excepcion"];
		//echo "Excepcion: ".$id_tipo_excepcion;
		if ($id_usuario == 62)
				$total_shift--;
		else
		{	
			if ($id_tipo_excepcion == 1 || $id_tipo_excepcion == 4 || $id_tipo_excepcion == 5 || $id_tipo_excepcion == 9)
					$total_shift--;
				else if ($id_tipo_excepcion == 2 || $id_tipo_excepcion == 3)
					$total_shift++;	
		}
		
	}
	return $total_shift;
}
function ImprimirHorario ($dia, $hora_inicio, $hora_fin, $fecha)
{

	$miconexion = new Conexion;
	$miconexion->conectar("staffcenter", "atc-nh-natsdb.nationalnet.com", "staffcenter", "XgwofvLY2ayLf");
	echo "<td><table width=\"100%\" >";
	$dateTime = new DateTime($fecha);
	$new_fecha = date_format ($dateTime, 'Y-m-d');
	$fecha_final = $new_fecha." ".$hora_inicio;
	$tipo_dia = $miconexion->StoredProcedure("call DevolverTipoDia('$dia')");
	$id_shift = $miconexion->StoredProcedure("call DevolverIdShift('$hora_inicio', '$hora_fin')");
	$result = $miconexion->StoredProcedureArray("call ImprimirShifts('$dia', '$hora_inicio', '$hora_fin')");

			$cont = 1;
			while ($myrow = mysqli_fetch_array($result))
			{
				 $id_usuario = $myrow["id_usuario"];
				 $fecha_ingreso = $miconexion->StoredProcedure("call DevuelveFechaIngreso('$id_usuario')");
				 $fecha_fin = $miconexion->StoredProcedure("call DevuelveFechaFin('$id_usuario')");
				 echo "<tr>";
				 if ($cont % 2 != 0)
				 echo "<td>";
				 else
				 echo "<td bgcolor=\"#bbcbe3\">";
				 $id_horario = $miconexion->StoredProcedure("call DevolverIdHorario('$tipo_dia', '$id_shift', '$id_usuario')");
				 $nombre = $miconexion->StoredProcedure("call DevolverNombre('$id_usuario')");
				 $reemplazo = $miconexion->StoredProcedure("call ChequearCambio('$fecha_final', '$id_usuario', '$id_horario')");
				 $reemplazo_vac = $miconexion->StoredProcedure("call ChequearVac('$fecha_final', '$id_usuario', '$id_horario')");
				 $falta_solo = $miconexion->StoredProcedure("call ChequearFaltaSolo('$id_usuario', '$fecha_final', '$id_horario')");
				 $vacaciones = $miconexion->StoredProcedure("call ChequearVacacionesR('$id_horario', '$fecha_final','$id_usuario')");
				 $vac_p = $miconexion->StoredProcedure("call ChequearVacacionesP('$id_horario', '$fecha_final','$id_usuario')");
				 $incapacidad = $miconexion->StoredProcedure("call ChequearIncapacidad('$id_horario', '$fecha_final','$id_usuario')");
				 $doble = $miconexion->StoredProcedure("call ChequearPDoble('$id_horario', '$fecha_final','$id_usuario')");
				 $vacaciones_admin = $miconexion->StoredProcedure("call ChequearVacAdmin('$id_horario', '$fecha_final','$id_usuario')");


				 if ($reemplazo == 0 && $falta_solo == 0 && $vacaciones == 0 && $vac_p == 0 && $incapacidad == 0 && $doble == 0 && $vacaciones_admin == 0 && $supervisor == 0)

					echo $nombre;

				 else
				 {
					if ($reemplazo != 0)
					{
						echo "<strike style=\"color:#FF0000\">$nombre</strike>";
						echo "  ";
						$nombre_reemplazo = $miconexion->StoredProcedure("call DevolverNombre('$reemplazo')");
						echo $nombre_reemplazo;

					}
					else if ($falta_solo != 0)
						echo "<strike style=\"color:#FF0000\">$nombre</strike>";
						else if ($vacaciones != 0)
						{
							$nombre_reemplazo_vac = $miconexion->StoredProcedure("call DevolverNombre('$reemplazo_vac')");
							if ($nombre_reemplazo_vac != 0)
							{
									echo "<div style=\"color:#000000\"><strike style=\"color:#009900\">$nombre</strike><b style=\"color:#009900\"> (vacations) </b>- $nombre_reemplazo_vac</div>";
							}
							else
								echo "<div style=\"color:#000000\"><strike style=\"color:#009900\">$nombre</strike><b style=\"color:#009900\"> (vacations) </b></div>";
						}
							 else if ($vac_p != 0)
								echo "<div style=\"color:#0099FF\">$nombre - paid vacations (double)</div>";
									else if ($incapacidad != 0)
									echo "<div style=\"color:#CC3333\">$nombre - incapacitado(a)</div>";
										else if ($doble != 0)
											echo "<div style=\"color:#FF0000\"><b>$nombre - double</b></div>";
											else if ($vacaciones_admin != 0)
												echo "<div style=\"color:#009900\"><b>$nombre - vacaciones</b></div>";
				  }

				 echo "</td>";
				 echo "</tr>";
				 $cont ++;

				}
			$result2 = $miconexion->StoredProcedureArray("call ChequearExtrasSolo('$fecha_final')");

			//Imprime Extras

			if ($result2 != NULL)
			{

				while ($myrow = mysqli_fetch_array($result2))
				{
					echo "<tr>";
					if ($cont % 2 != 0)
					echo "<td>";
					else
					echo "<td bgcolor=\"#bbcbe3\">";
					$id_horarioh = $myrow["id_horario"];
					$id_usuarioh = $myrow["id_usuario"];
					$id_tipo_excepcion = $myrow["id_tipo_excepcion"];
					$nombreh = $miconexion->StoredProcedure("call DevolverNombre('$id_usuarioh')");
					$tipo_diah = $miconexion->StoredProcedure("call DevolverTipoDiaH('$id_horarioh')");
					$id_shifth = $miconexion->StoredProcedure("call DevolverIdShiftH('$id_horarioh')");
					if ($tipo_diah == $tipo_dia && $id_shifth == $id_shift)
						echo "<div style=\"color:#FF9900\">$nombreh - extra shift</div>";

					echo "</td>";
						echo "</tr>";
					$cont ++;
				}
			}

			$result3 = $miconexion->StoredProcedureArray("call ChequearTraining('$fecha_final')");

			if ($result3 != NULL)
			{


				//Imprime Personas en training

				while ($myrow = mysqli_fetch_array($result3))
				{
					echo "<tr>";
					if ($cont % 2 != 0)
					echo "<td>";
					else
					echo "<td bgcolor=\"#bbcbe3\">";
					$id_horarioh = $myrow["id_horario"];
					$id_usuarioh = $myrow["id_usuario"];
					$id_tipo_excepcion = $myrow["id_tipo_excepcion"];
					$nombreh = $miconexion->StoredProcedure("call DevolverNombre('$id_usuarioh')");
					$tipo_diah = $miconexion->StoredProcedure("call DevolverTipoDiaH('$id_horarioh')");
					$id_shifth = $miconexion->StoredProcedure("call DevolverIdShiftH('$id_horarioh')");
					if ($tipo_diah == $tipo_dia && $id_shifth == $id_shift)
						echo "<div style=\"color:#CC33FF\">$nombreh - training</div>";

					echo "</td>";
					echo "</tr>";
					$cont ++;
				}
			}

			echo "</tr>";
    		echo "</table></td>";
}
function CuentaFaltas ($fecha_inicio, $fecha_fin, $id_usuario, $tipo)
{
	$miconexion = new Conexion;
	$miconexion->conectar("staffcenter", "atc-nh-natsdb.nationalnet.com", "staffcenter", "XgwofvLY2ayLf");
	$result = $miconexion->StoredProcedureArray("call ConsultarExcepciones('$fecha_inicio', '$fecha_fin', '$id_usuario')");
	$horas_falta = 0;

	while ($myrow = mysqli_fetch_array($result))
	{
		$id_tipo_excepcion = $myrow["id_tipo_excepcion"];
		$tipo_excepcion = $miconexion->StoredProcedure("call ChequearExcepcionFalta('$id_tipo_excepcion')");
		if ($tipo_excepcion == 1)
		{
			$fecha = $myrow["fecha"];
			$dateTime = new DateTime($fecha);
			$formatted_date = date_format ($dateTime, 'Y-m-d 00:00:00');
			$resultado_fecha = $miconexion->StoredProcedure("call ChequearFechas('$formatted_date', '$fecha_inicio', '$fecha_fin')");
			if ($resultado_fecha == 1)
			{
				$id_horario = $myrow["id_horario"];
				if ($tipo == "dia")
				{
					$rebajo_horas = $miconexion->StoredProcedure("call ChequeaRebajosDia('$id_horario', '$fecha', '$id_usuario')");
					if ($rebajo_horas != 0)
						$horas_falta = $horas_falta + $rebajo_horas;
					else
					{
						$resultado_horas = $miconexion->StoredProcedure("call ChequeaShiftDia('$id_horario')");
						$horas_falta = $horas_falta + $resultado_horas;
					}

				}
				else
				{
					$rebajo_horas = $miconexion->StoredProcedure("call ChequeaRebajosNoche('$id_horario', '$fecha', '$id_usuario')");
					if ($rebajo_horas != 0)
						$horas_falta = $horas_falta + $rebajo_horas;
					else
					{
						$resultado_horas = $miconexion->StoredProcedure("call ChequeaShiftNoche('$id_horario')");
						$horas_falta = $horas_falta + $resultado_horas;
					}
				}


			}

		}
	}
	return $horas_falta;
}
body{
background-image:url(../images/new/keys.png);
background-attachment: fixed;
background-position:left;
background-repeat:no-repeat;}
</style>
</head>
<body >
";

require ("conexion.php");
$miconexion = new Conexion;
$miconexion->conectar("staffcenter", "atc-nh-natsdb.nationalnet.com", "staffcenter", "XgwofvLY2ayLf");
$nombre = $miconexion->StoredProcedure("call DevolverNombreCompleto('$usuario')");
$tipo_usuario = $miconexion->StoredProcedure("call DevolverTipoUsuario('$tipo')");
$temp_logins = $miconexion->StoredProcedureArray("call ConsultarLogin()");

switch($transaccion){
	case 'changepw':
		echo "<div style=\"margin-top:50px;margin-left:50px; \">";
		echo "<form action=\"password.php?transaccion=p&tipo=$tipo&usuario=$usuario\" method=\"post\">
		<table border='0'>
		<tr>
		";
		echo "<td><strong>Actual password:</strong></td><td><input type=\"password\" name=\"oldpass\"></td>
		</tr>
		<tr>
		";
		echo "<td><strong>New password:</strong></td><td><input type=\"password\" name=\"new\"></td>
		</tr>
		<tr>
	</style></head>";
	
	require ("conexion.php");
	$miconexion = new Conexion;
	$miconexion->conectar("staffcenter", "atc-nh-natsdb.nationalnet.com", "staffcenter", "XgwofvLY2ayLf");

}

if ($_REQUEST["excel"]!="si"){
include("validar.php");
include ("header.php");
}


$logins = array();
$temp_logins = $miconexion->StoredProcedureArray("call ConsultarLogin()");

function DevolverArray ($array1, $descripcion)
{
	$array2 = array();
	while ($myrow = mysqli_fetch_array($array1))
	{
		array_push($array2, $myrow[$descripcion]);	
	}
	return $array2;
}

function DeterminarFechaQuincena()
{
	$miconexion = new Conexion;
	$miconexion->conectar("staffcenter", "atc-nh-natsdb.nationalnet.com", "staffcenter", "XgwofvLY2ayLf");