<%@page import="java.util.*,java.sql.*,javax.naming.*,m05bClasses.*,java.text.SimpleDateFormat"%>
<%@include file="/mantenimientosJSP/includes/m05b.inc"%>

<%
	String error = (request.getParameter("Error")==null || request.getParameter("Error").equals("null"))?"":request.getParameter("Error");
	
	session.removeAttribute("m05bSolicitudReserva");

	String orden = (request.getParameter("Orden")==null || request.getParameter("Orden").equals("null"))?"":request.getParameter("Orden");

	String codigo = request.getParameter("Codigo")==null?"":request.getParameter("Codigo").toUpperCase();
	if (codigo == null) {
		codigo = "";
	}

	String miCodigo, fechaSolicitud, dni, nombre_apellidos, codDepto, descDepto, fechaIni, fechaFin, motivoSolicitud, destino, estadoSolicitudReserva, origen;
	String codAsig;//Agurtzane Mar12: relacionar solicitud y asignación
	String estadoFiltro = request.getParameter("estadoFiltro")==null?m05bConstantes.ACEPTADASINASIGNAR:request.getParameter("estadoFiltro");
	//Agurtzane Feb12: quitar fechas solicitud
	//String fSolDesdeFiltro = request.getParameter("fSolDesdeFiltro")==null?"":request.getParameter("fSolDesdeFiltro");
	//String fSolHastaFiltro = request.getParameter("fSolHastaFiltro")==null?"":request.getParameter("fSolHastaFiltro");
	//Fin Agurtzane Feb12: quitar fechas solicitud
	String fDesdeFiltro = request.getParameter("fDesdeFiltro")==null?"":request.getParameter("fDesdeFiltro");
	String hDesdeFiltro = request.getParameter("hDesdeFiltro")==null?"":request.getParameter("hDesdeFiltro");
	String fHastaFiltro = request.getParameter("fHastaFiltro")==null?"":request.getParameter("fHastaFiltro");
	String hHastaFiltro = request.getParameter("hHastaFiltro")==null?"":request.getParameter("hHastaFiltro");
	//Agurtzane Feb12: buscar por solicitante
	String nombreFiltro = request.getParameter("nombreFiltro")==null?"":request.getParameter("nombreFiltro");
	String dniFiltro = request.getParameter("dniFiltro")==null?"":request.getParameter("dniFiltro");
	//Fin Agurtzane Feb12: buscar por solicitante
%>
<%	// _______________________________XLNETs______________________________________
	// Evaluar variable de session que indica si esta conectado a XLNets
	if (session.getAttribute("objetoSeguridad") == null) {
		// Verificar que no ha transcurrido el tiempo de sesion (web.xml) %>
		<%@ include file="/m05bControlAcceso.inc"%>
<%	}
	String persona = (String) session.getAttribute("persona");
	m05bComun comun = new m05bComun();
%>
<%!
//Agurtzane Mar12: caducar solicitudes
	public m05bLdap.m05bPersonaXLNET obtenerUsuarioXlNets(String usuario, javax.servlet.http.HttpServletRequest request)
	{
		m05bLdap.SecurityHelpperXLNets sh;
		ArrayList listaD = null;
		sh = new m05bLdap.SecurityHelpperXLNets();
		try {
			sh.setHttpRequest(request);
			listaD = sh.getPersonasXLNETs(usuario, "", "", "");
		} catch (m05bLdap.SecurityHelpperException e) {
			// TODO Auto-generated catch block
			m05bClasses.m05bFileLog miLog = new m05bClasses.m05bFileLog();
			miLog.addTraza(e);
		}
		if (listaD != null && listaD.size() > 0)
		{
			return (m05bLdap.m05bPersonaXLNET)listaD.get(0);
		}
	
		return null;
	}
	//Fin Agurtzane Mar12: caducar solicitudes
	public String desEstadoSolicitudReserva(ResourceBundle res, String estado, String origen) {
	//Estados de las solicitudes de reserva

		if (estado.toUpperCase().equals(m05bConstantes.SOLICITADA)) {
			return res.getString("etEstadoSolicitudReservaSOL");
		} else if (estado.toUpperCase().equals(m05bConstantes.RECHAZADA)) {
			if (origen.toUpperCase().equals(m05bConstantes.ORIGENPARQUEMOVIL)) {
				return res.getString("etEstadoSolicitudReservaREC") + " / " + res.getString("etParqueMovil");
			} else if (origen.toUpperCase().equals(m05bConstantes.ORIGENWEBSOLICITUDESVALIDADOR)) {
				return res.getString("etEstadoSolicitudReservaREC") + " / " + res.getString("etValidador");
			} else if (origen.toUpperCase().equals(m05bConstantes.ORIGENWEBSOLICITUDESSOLICITANTE)) {
				return res.getString("etEstadoSolicitudReservaREC") + " / " + res.getString("etSolicitante");
			} else {
				return res.getString("etEstadoSolicitudReservaREC");
			}
		} else if (estado.toUpperCase().equals(m05bConstantes.ACEPTADASINASIGNAR)) {
			return res.getString("etEstadoSolicitudReservaASA");
		} else if (estado.toUpperCase().equals(m05bConstantes.ACEPTADASINENTREGAR)) {
			return res.getString("etEstadoSolicitudReservaASE");
		} else if (estado.toUpperCase().equals(m05bConstantes.ACEPTADASINDEVOLVER)) {
			return res.getString("etEstadoSolicitudReservaASD");
		} else if (estado.toUpperCase().equals(m05bConstantes.FINALIZADA)) {
			return res.getString("etEstadoSolicitudReservaFIN");
//	Agurtzane Mar12: caducar solicitudes
		} else if (estado.toUpperCase().equals(m05bConstantes.CADUCADA)) {
			return res.getString("etEstadoSolicitudReservaCAD");
//	Fin Agurtzane Mar12: caducar solicitudes			
		} else {
			return res.getString("etEstadoSolicitudReservaSINESTADO"); //"SIN ESTADO";
		}
	}
%>

	<%@ include file="/m05bIdioma.inc"%>

<HTML>

	<head>
		<title><%=resTit.getString("titRelSolicitudesReserva")%></title>
		<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
		<link rel="stylesheet" href="<%=m05bConstantesPaginas.PATH_ESTILOS%>/m05bestilos.css" type="text/css">
	  	<script language="javascript1.2" src="<%=m05bConstantesPaginas.PATH_SCRIPTS%>/formateador.js"></script>
		<script language="javascript1.2" src="<%=m05bConstantesPaginas.PATH_SCRIPTS%>/m05Funciones.js"></script>
		<script language="javascript1.2" src="<%=m05bConstantesPaginas.PATH_SCRIPTS%>/m05Horas.js"></script>
	</head>

	<BODY onkeydown="cancelaEnter();"
		  style="cursor: wait"
		  onload="document.body.style.cursor='default'; InitMenu();"
		  onunload="document.body.style.cursor='wait';">
<%
	int contador = 0;
	String sql="", sCodigo="", sOrden="";
	m05bFileLog miLog = new m05bFileLog();
    java.sql.Connection conn = null;
    PreparedStatement pstmt = null;
    ResultSet rs = null;
%>
		<SCRIPT language=JavaScript>
			var urlIdioma;
			var rutaCabecera;
			var detActual;
			urlIdioma = "<%=m05bConstantesPaginas.MTO_REL_SOLICITUDESRESERVA%>?Orden=<%=orden%>";
			detActual = '<%=resCM.getString("cmRelSolicitudesReserva")%>';
			rutaCabecera="";

			function obtenerCadenaFiltro()
			{
				var miEstadoFiltro = document.getElementById("EstadoFiltro").value;
				//Agurtzane Feb12: quitar fechas solicitud
				//var mifSolDesdeFiltro = document.getElementById("SolDesdeFiltro").value;
				//var mifSolHastaFiltro = document.getElementById("SolHastaFiltro").value;
				//Fin Agurtzane Feb12: quitar fechas solicitud
				var mifDesdeFiltro = document.getElementById("DesdeFiltro").value;
				var mihDesdeFiltro = document.getElementById("HoraDesdeFiltro").value;
				var mifHastaFiltro = document.getElementById("HastaFiltro").value;
				var mihHastaFiltro = document.getElementById("HoraHastaFiltro").value;
				//Agurtzane Feb12: buscar por solicitante
				var miNombreFiltro = document.getElementById("NombreFiltro").value;
				var miDniFiltro = document.getElementById("DniFiltro").value;
				//Fin Agurtzane Feb12: buscar por solicitante

				var retorno = "";

				if (miEstadoFiltro != null && miEstadoFiltro != "")
				{
					retorno = retorno + "&estadoFiltro=" + miEstadoFiltro;
				}
				//Agurtzane Feb12: quitar fechas solicitud
				//if (mifSolDesdeFiltro != null && mifSolDesdeFiltro != "")
				//{
				//	retorno = retorno + "&fSolDesdeFiltro=" + mifSolDesdeFiltro;
				//}
				//if (mifSolHastaFiltro != null && mifSolHastaFiltro != "")
				//{
				//	retorno = retorno + "&fSolHastaFiltro=" + mifSolHastaFiltro;
				//}
				//Fin Agurtzane Feb12: quitar fechas solicitud
				if (mifDesdeFiltro != null && mifDesdeFiltro != "")
				{
					retorno = retorno + "&fDesdeFiltro=" + mifDesdeFiltro;
				}
				if (mihDesdeFiltro != null && mihDesdeFiltro != "")
				{
					retorno = retorno + "&hDesdeFiltro=" + mihDesdeFiltro;
				}
				if (mifHastaFiltro != null && mifHastaFiltro != "")
				{
					retorno = retorno + "&fHastaFiltro=" + mifHastaFiltro;
				}
				if (mihHastaFiltro != null && mihHastaFiltro != "")
				{
					retorno = retorno + "&hHastaFiltro=" + mihHastaFiltro;
				}
				//Agurtzane Feb12: buscar por solicitante
				if (miNombreFiltro != null && miNombreFiltro != "")
				{
					retorno = retorno + "&nombreFiltro=" + miNombreFiltro;
				}				
				if (miDniFiltro != null && miDniFiltro != "")
				{
					retorno = retorno + "&dniFiltro=" + miDniFiltro;
				}				
				//Fin Agurtzane Feb12: buscar por solicitante
				return retorno;
			}

			function checkFilaCodigo (codigo)
			{
				var frm = document.getElementById("FormRelSolicitudesReserva");
				for (i=0;i<frm.elements.length;i++)
				{
					if (frm.elements[i].value == codigo)
					{
						var aux = document.getElementById("chSol" + frm.elements[i].name.replace("codigo", ""));
						aux.checked = true;
					}
				}
			}
			var lasrcheckedrow=-1;
			function checkFila (numFila)
			{
				var check = document.getElementById("chSol"+numFila);
				if (!check.checked) {
					lasrcheckedrow=-1;
				}
				else{
					if(lasrcheckedrow!=-1)
						document.getElementById("chSol"+lasrcheckedrow).checked=false;
					lasrcheckedrow=numFila;
				}
				/*if (check.checked) {
					//Deschequeamos todos los demás checks
					var frm = document.getElementById("FormRelSolicitudesReserva");
					for (i=0;i<frm.elements.length;i++)
					{
						if (frm.elements[i].name.indexOf("chSol") == 0)
						{
							if (frm.elements[i].name != "chSol"+numFila)
							{
								if (frm.elements[i].checked)
								{
									frm.elements[i].checked = false;
								}
							}
						}
					}
				}*/
				
			}

			function obtenerCodigoFilaCheckeada()
			{
				//Obtenemos la fila checkeada
				var frm = document.getElementById("FormRelSolicitudesReserva");
				for (i=0;i<frm.elements.length;i++)
				{
					if (frm.elements[i].name.indexOf("chSol") == 0)
					{
						if (frm.elements[i].checked)
						{
							var aux = document.getElementById("codigo" + frm.elements[i].name.replace("chSol", ""));
							return aux.value;
						}
					}
				}
				return -1;
			}

			function obtenerEstadoFilaCheckeada()
			{
				//Obtenemos la fila checkeada
				var frm = document.getElementById("FormRelSolicitudesReserva");
				for (i=0;i<frm.elements.length;i++)
				{
					if (frm.elements[i].name.indexOf("chSol") == 0)
					{
						if (frm.elements[i].checked)
						{
							var aux = document.getElementById("estadoSolicitudReserva" + frm.elements[i].name.replace("chSol", ""));
							return aux.value;
						}
					}
				}
				return -1;
			}

			function fncVerSolicidud()
			{
				var codigoFilaSel = obtenerCodigoFilaCheckeada();
				if (codigoFilaSel == -1)
				{
					alert(dameAlerta(idioma, 274));
				}
				else
				{
					document.FormRelSolicitudesReserva.action = "m05bSolicitudReservaServlet?Accion=" + "<%=m05bConstantes.ACCION_VER_DETALLE%>" + "&Codigo=" + codigoFilaSel + "&Orden=<%=orden%>" + obtenerCadenaFiltro();
    	   			document.FormRelSolicitudesReserva.submit();
       			}
			}

			function fncAsignar()
			{
				var codigoFilaSel = obtenerCodigoFilaCheckeada();
				if (codigoFilaSel == -1)
				{
					alert(dameAlerta(idioma, 274));
				}
				else
				{
					var estadoFilaSel = obtenerEstadoFilaCheckeada();

					//Abrimos la ventana de asignación...
					//if (estadoFilaSel!='<%=m05bConstantes.ACEPTADASINASIGNAR%>')
					//{
					//	alert(dameAlerta(idioma, 275));
					//}
					//else
					//{
						//document.FormRelSolicitudesReserva.action = "m05bSolicitudReservaServlet?Accion=" + "<%=m05bConstantes.ACCION_ASIGNAR%>" + "&CodigoSolicitudReserva=" + codigoFilaSel + "&Orden=<%=orden%>" + obtenerCadenaFiltro();
					    document.FormRelSolicitudesReserva.action="m05bGrabarSolicitudReservaServlet?Codigo=" + codigoFilaSel
																	  + "&Orden=<%=orden%>"
																	  + "&Accion=" + "<%=m05bConstantes.ACCION_ASIGNAR%>"
																	  + "&CodigoSolicitudReserva=" + codigoFilaSel
																   	  + obtenerCadenaFiltro();
						document.FormRelSolicitudesReserva.submit();
					//}
       			}
			}

			function fncRechazar()
			{
				var codigoFilaSel = obtenerCodigoFilaCheckeada();

				if (codigoFilaSel == -1)
				{
					alert(dameAlerta(idioma, 274));
				}
				else
				{
					var estadoFilaSel = obtenerEstadoFilaCheckeada();

					//Abrimos una ventana modal donde el usuario rellenará el motivo del rechazo

					if (estadoFilaSel!='<%=m05bConstantes.SOLICITADA%>'
						&& estadoFilaSel!='<%=m05bConstantes.ACEPTADASINASIGNAR%>'
						&& estadoFilaSel!='<%=m05bConstantes.ACEPTADASINENTREGAR%>')
					{
						alert(dameAlerta(idioma, 273));
					}
					else
					{
						var rdo = window.showModalDialog("m05bRechazarSolicitudReservaJsp.jsp", "", "status:no; center:yes; help:no; minimize:no; maximize:no; border:thin; statusbar:no; dialogWidth:400px; dialogHeight:150px");
						if (rdo != -1) {
						    document.FormRelSolicitudesReserva.action="m05bGrabarSolicitudReservaServlet?Codigo=" + codigoFilaSel
																	  + "&Orden=<%=orden%>"
																	  + "&MotivoRechazo=" + rdo
																	  + "&Accion=" + "<%=m05bConstantes.ACCION_RECHAZAR%>"
																   	  + obtenerCadenaFiltro();
							document.FormRelSolicitudesReserva.submit();
						}
					}
				}
			}  // Fin funcion fncRechazar
			
			//Agurtzane Mar12: relacionar solicitud y asignación
			function fncSeleccionar (codigo){
			     document.FormRelSolicitudesReserva.action="m05bGenerarAsignacionServlet?Codigo=" + codigo + "&Mensaje=buscar";
				 document.FormRelSolicitudesReserva.submit();
			}
			//Fin Agurtzane Mar12: relacionar solicitud y asignación

		</SCRIPT>
		<%@ include file="/mantenimientosJSP/includes/m05Cabecera_c.jsp"%>
		
<%

//Agurtzane Feb12: quitar fechas solicitud
//	if (fDesdeFiltro.equals("HOY")) {
//		if (idioma.getIdiomaActual().toUpperCase() == "EU") {
//			fDesdeFiltro = new SimpleDateFormat("yyyy/MM/dd").format(new java.util.Date());
//		} else {
//			fDesdeFiltro = new SimpleDateFormat("dd/MM/yyyy").format(new java.util.Date());
//		}
//	}

	if (fDesdeFiltro.equals("HOY")) {
		fDesdeFiltro ="";
	}
//Fin Agurtzane Feb12: quitar fechas solicitud	
%>

<%
	try {
		
	
		m05bConexion miConex = new m05bConexion();
		conn = miConex.getConnection();
		conn.setAutoCommit(false);  // Al final si todo ha ido bien se hace commit
		

		//Agurtzane Mar12: caducar solicitudes		
		PreparedStatement pstmtCad = null, pstmtCompCad = null;
		String strFormato= "yyyyMMdd";
	    ResultSet rsCad = null, rsCompCad=null;
	    Statement stmt = conn.createStatement();
		String fHoy=new SimpleDateFormat(strFormato).format(new java.util.Date());
		String strSql="";

		String personaCodigo = (String) session.getAttribute("personaCodigo");
	    m05bLdap.m05bPersonaXLNET personaXLNET = null;
		if (personaXLNET == null) personaXLNET = this.obtenerUsuarioXlNets(personaCodigo, request);		
		
		strSql="select ID_SOLICITUD_100, FECHA_FIN_100, ESTADO_102 from ASIGNAR_SOLICITUDES";
		strSql+=" where ESTADO_102 in ('"+ m05bConstantes.ACEPTADASINASIGNAR +"', '"+ m05bConstantes.SOLICITADA+"')";
		strSql+= " and FECHA_FIN_100 <= TO_DATE('" + fHoy + "','" + strFormato + "')";
		
		miLog.addTraza(persona, "RelSolicitudesReserva", "Caducar strSql: " + strSql, m05bConstantes.LOG_NIVEL_BAJO);

		try{
			pstmtCad = conn.prepareStatement(strSql);
			rsCad = pstmtCad.executeQuery();
			while(rsCad.next())
			{
				//Comprobamos que no está ya caducado
				strSql="SELECT 1 FROM M05102T00"; 
				strSql+=" WHERE ID_SOLICITUD_102=" +  rsCad.getString("ID_SOLICITUD_100");
				strSql+=" AND ESTADO_102='" + m05bConstantes.CADUCADA +"'"; 
				strSql+=" AND SITUACION_102='" + m05bConstantes.SITUACION_ALTA +"'";
				miLog.addTraza(persona, "RelSolicitudesReserva", "SQL comprobar si ya caducada: " + strSql, m05bConstantes.LOG_NIVEL_BAJO);							
				pstmtCompCad = conn.prepareStatement(strSql);
				rsCompCad = pstmtCompCad.executeQuery();
				if(!rsCompCad.next())
				{
					strSql="INSERT INTO M05102T00 (ID_SOLICITUD_102, COD_VALIDADOR_102, ESTADO_102, SITUACION_102, FECHA_VALIDACION_102)";
					strSql+=" VALUES (";
					strSql+= rsCad.getString("ID_SOLICITUD_100");
					strSql+= ", '" + personaXLNET.getCodigo() +"'";
					strSql+= ", '" + m05bConstantes.CADUCADA +"'";
					strSql+= ", '" + m05bConstantes.SITUACION_ALTA +"'";
					strSql+= ", sysdate)";
					stmt.execute(strSql);
					conn.commit();
					miLog.addTraza(persona , "RelSolicitudesReserva", "SQL INSERT realizada-solicitud caducada: "  + strSql, m05bConstantes.LOG_NIVEL_BAJO);
				}else{miLog.addTraza(persona , "RelSolicitudesReserva", "Ya estaba caducada: "  + rsCad.getString("ID_SOLICITUD_100"), m05bConstantes.LOG_NIVEL_BAJO);}
			}				

		}catch (Exception SQLException) {
			miLog.addTraza(persona , "RelSolicitudesReserva", "Error SQL strSql caducada: " + strSql + ". Error: " + SQLException.getMessage(), m05bConstantes.LOG_NIVEL_BAJO);
			miLog.addTraza(SQLException);
		} finally {
			if (rsCad != null) rsCad.close();
			if (rsCompCad != null) rsCompCad.close();								
			if (pstmtCad != null) pstmtCad.close();
			if (pstmtCompCad != null) pstmtCompCad.close();
			if (stmt != null) stmt.close();
		}
		//Fin Agurtzane Mar12: caducar solicitudes	
	
		sCodigo = codigo;
		sOrden = orden;

		if (codigo != null) {
			codigo = codigo.toUpperCase();
		}

		sql = "select "
			+ "ID_SOLICITUD_100, COD_SOLICITANTE_101, DNI_101, NOMBRE_APELLIDOS_101, COD_DEPTO_101, "
			+ "DESCC_DEPTO_101, DESCE_DEPTO_101,"
			+ "FECHA_SOLICITUD_100, FECHA_INI_100, FECHA_FIN_100, ORIGEN_102, "
			+ "MOTIVO_102, DESTINO_STR_CAS, DESTINO_STR_EUS, ESTADO_102 "
			+ ", COD_ASIGNACION_100,fhasta_01  " //Agurtzane Mar12: relacionar solicitud y asignación
			+ "from ASIGNAR_SOLICITUDES left join m0501t00 ON cod_asignacion_100=cod_asig_01 WHERE 1 = 1 ";

		/*FILTRO*/
		//if (codigo != null && !codigo.equals("") && !codigo.equals("NULL")) {
		//	sql = sql + " and ID_SOLICITUD_100 = " + codigo;
		//}
		if (estadoFiltro != null && !estadoFiltro.equals("") && !estadoFiltro.equals("NULL") && !estadoFiltro.equals("TODAS")) {
			sql = sql + " and ESTADO_102 = '" + estadoFiltro + "'";
		}	
		//Agurtzane Feb12: quitar fechas solicitud
		//if (fSolDesdeFiltro != null && !fSolDesdeFiltro.equals("") && !fSolDesdeFiltro.equals("NULL")) {
		//	sql = sql + " and FECHA_SOLICITUD_100 >= TO_DATE('" + fSolDesdeFiltro + "','" + formatoFecha + "')";
		//}
		//if (fSolHastaFiltro != null && !fSolHastaFiltro.equals("") && !fSolHastaFiltro.equals("NULL")) {
		//	sql = sql + " and FECHA_SOLICITUD_100 <= TO_DATE('" + fSolHastaFiltro + "','" + formatoFecha + "')";
		//}
		//Fin Agurtzane Feb12: quitar fechas solicitud
	if (fDesdeFiltro != null && !fDesdeFiltro.equals("") && !fDesdeFiltro.equals("NULL")) {
			if (hDesdeFiltro != null && !hDesdeFiltro.equals("") && !hDesdeFiltro.equals("NULL")) {
				sql = sql + " and FECHA_INI_100 >= TO_DATE('" + fDesdeFiltro + " " + hDesdeFiltro + "','" + formatoFechaHora + "')";
			}
			else {
				sql = sql + " and FECHA_INI_100 >= TO_DATE('" + fDesdeFiltro + "','" + formatoFecha + "')";
			}
		}	
		if (fHastaFiltro != null && !fHastaFiltro.equals("") && !fHastaFiltro.equals("NULL")) {
			if (hHastaFiltro != null && !hHastaFiltro.equals("") && !hHastaFiltro.equals("NULL")) {
				sql = sql + " and FECHA_FIN_100 <= TO_DATE('" + fHastaFiltro + " " + hHastaFiltro + "','" + formatoFechaHora + "')";
			}
			else {
				sql = sql + " and FECHA_FIN_100 <= TO_DATE('" + fHastaFiltro + "','" + formatoFecha + "')";
			}
		}	
		//Agurtzane Feb12: buscar por solicitante
		if (nombreFiltro != null && !nombreFiltro.equals("") && !nombreFiltro.equals("NULL")) {
			sql = sql + " and UPPER(NOMBRE_APELLIDOS_101) LIKE UPPER('%" + nombreFiltro + "%')"; 
		}
		if (dniFiltro != null && !dniFiltro.equals("") && !dniFiltro.equals("NULL")) {
			sql = sql + " and UPPER(DNI_101) LIKE UPPER('%" + dniFiltro + "%')"; 
		}		
		//Fin Agurtzane Feb12: buscar por solicitante
		/**/

		/*ORDEN*/
		if (orden.equals("FECHASINIFIN") || orden.equals("")) {
			sql = sql + " order by FECHA_INI_100 ASC, FECHA_FIN_100 ASC, ID_SOLICITUD_100";
		} else if (orden.equals("FECHASOLICITUD")) {
			sql = sql + " order by FECHA_SOLICITUD_100, ID_SOLICITUD_100";
		} else {
			sql = sql + " order by FECHA_INI_100 ASC, FECHA_FIN_100 ASC, ID_SOLICITUD_100";
		}
		/**/

		miLog.addTraza(persona, "RelSolicitudesReserva", "SQL: " + sql, m05bConstantes.LOG_NIVEL_BAJO);
	//	System.out.println(sql);
		pstmt = conn.prepareStatement(sql);
		rs = pstmt.executeQuery();

%>

<div id='p01popUpWindowCalendar' style='position:relative; top:15px left:150px'></div>

<p>
<table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0" align="center">
	<tr><td colspan=3></td></tr>
	<tr valign="top">
		<td width="2%">
			<DIV ID="thessm" style="visibility: hidden; Position: Absolute; Left: 0; Top: 80; Z-Index: 20;">
	      		<DIV ID="thessm2" style="Position: Absolute; Left: (-150); Top: 0; Z-Index: 20;">
	                <%@ include file="/m05bMenuInicial.inc"%>
	       		</DIV>
			</DIV>
		</td>
		<td>&nbsp</td>
		<td width="98%">
			<FORM NAME="FormRelSolicitudesReserva" METHOD="POST">

				<!-- Calendarios -->
				<%	String m05bCalendarEstilo = m05bFicheroProperties.getInstance().getParameter("m05bEstilos.Calendario");%>
				<%=m05bCalendarEstilo%>
				<%	String m05bCalendarScripts = m05bFicheroProperties.getInstance().getParameter("m05bScripts.Calendario");%>
				<%=m05bCalendarScripts%>

				<TABLE class="general">
					<tr>
						<td colspan="5" width="70%" valign="top" class="searchTitle"><%= res.getString("etFiltrarPor")%></td>
					</tr>
					<tr>
						<td class="inputFieldTitle" align="left"><%=res.getString("etEstado")%></td>
																		
						<!-- Agurtzane Feb12: buscar por solicitante -->
						<!-- td colspan="2" class="inputFieldTitle" align="left"><%=res.getString("etFechaSolicitudDesde")%></td-->
						<!-- td colspan="2" class="inputFieldTitle" align="left"><%=res.getString("etFechaSolicitudHasta")%></td-->
						
						<!-- Agurtzane Feb12: quitar fechas solicitud
						<td class="inputFieldTitle" align="left"><%=res.getString("etFechaSolicitudDesde")%></td>
						<td class="inputFieldTitle" align="left"><%=res.getString("etFechaSolicitudHasta")%></td>
						Fin Agurtzane Feb12: quitar fechas solicitud-->
						
						
						<td class="inputFieldTitle" align="left"><%=res.getString("etFechaDesde")%></td>
						<td class="inputFieldTitle" align="left"><%=res.getString("etFechaHasta")%></td>	
											
						
						<!-- Fin Agurtzane Feb12: buscar por solicitante -->
					</tr>
					<tr>
						<td align="left">
							<!-- INI COMBO DE ESTADOS DE SOLICITUD DE RESERVA -->
							<select class="inputField" NAME="EstadoFiltro" />
						    	<option id="<%=m05bConstantes.ACEPTADASINASIGNAR%>" value="<%=m05bConstantes.ACEPTADASINASIGNAR%>"><%=res.getString("etEstadoSolicitudReservaASA")%></option>
						    	<option id="<%=m05bConstantes.ACEPTADASINENTREGAR%>" value="<%=m05bConstantes.ACEPTADASINENTREGAR%>"><%=res.getString("etEstadoSolicitudReservaASE")%></option>
						    	<option id="<%=m05bConstantes.ACEPTADASINDEVOLVER%>" value="<%=m05bConstantes.ACEPTADASINDEVOLVER%>"><%=res.getString("etEstadoSolicitudReservaASD")%></option>
						    	<option id="<%=m05bConstantes.FINALIZADA%>" value="<%=m05bConstantes.FINALIZADA%>"><%=res.getString("etEstadoSolicitudReservaFIN")%></option>
						    	<option id="<%=m05bConstantes.SOLICITADA%>" value="<%=m05bConstantes.SOLICITADA%>"><%=res.getString("etEstadoSolicitudReservaSOL")%></option>
						    	<option id="<%=m05bConstantes.RECHAZADA%>" value="<%=m05bConstantes.RECHAZADA%>"><%=res.getString("etEstadoSolicitudReservaREC")%></option>
						    	<!-- Agurtzane Mar12: caducar solicitudes-->
						    	<option id="<%=m05bConstantes.CADUCADA%>" value="<%=m05bConstantes.CADUCADA%>"><%=res.getString("etEstadoSolicitudReservaCAD")%></option>
						    	<!-- Fin Agurtzane Mar12: caducar solicitudes-->
								<option id="TODAS" value="TODAS">&lt;--<%=res.getString("etTodas")%>--&gt;</option>
							</select>

							<script type="text/javascript">
								document.getElementById("<%=estadoFiltro%>").selected = true;
							</script>

							<!-- FIN COMBO DE ESTADOS DE SOLICITUD DE RESERVA -->
						</td>
						
						
						<td align="left" >
						<!-- Agurtzane Feb12: quitar fechas solicitud
							<INPUT class="inputFieldOblig" TYPE="TEXT" NAME="SolDesdeFiltro" VALUE="<%--=fSolDesdeFiltro--%>" size="10" maxlength="10" onblur="javascript:formatearFecha(this);return false;"/>
							<a href='#' name='anchorSolDesde' onClick='JavaScript: showCalendar("anchorSolDesde","eusk",document.all("SolDesdeFiltro"),true,200,200,2002);return false;' onMouseOver="top.status='Ver Calendario'; return true" onMouseOut="top.status=''; return true"><img border="0" src='<%=m05bConstantesPaginas.PATH_IMAGENES%>/p01calendario.gif'/></a>
						Fin Agurtzane Feb12: quitar fechas solicitud -->
						
							<INPUT class="inputField" TYPE="TEXT" NAME="DesdeFiltro" id="DesdeFiltro" VALUE="<%=fDesdeFiltro%>" size="10" maxlength="10" onblur="javascript:formatearFecha(this);return false;"/>
							<a href='#' name='anchorDesde' onClick=' showCalendar("anchorDesde",idioma,document.all("DesdeFiltro"),true,200,200,2002);return false;' onMouseOver="top.status='Ver Calendario'; return true" onMouseOut="top.status=''; return true"><img border="0" src='<%=m05bConstantesPaginas.PATH_IMAGENES%>/p01calendario.gif'/></a>
		       				<INPUT class="inputField" TYPE="TEXT" NAME="HoraDesdeFiltro" VALUE="<%=hDesdeFiltro%>" size="5" maxlength="5" onBlur="javascript:formatearHora(this);ValidaHoras(this.value);"/>
						
												
						</td>

						
						<!-- Agurtzane Feb12: buscar por solicitante>
		       			<td></td-->


						
		      			<td align="left">
		      			<!-- Agurtzane Feb12: quitar fechas solicitud
			      			<INPUT class="inputField" TYPE="TEXT" NAME="SolHastaFiltro" VALUE="<%--=fSolHastaFiltro--%>" size="10" maxlength="10" onblur="javascript:formatearFecha(this);return false;"/>
		       				<a href='#' name='anchorSolHasta' onClick='JavaScript: showCalendar("anchorSolHasta","cast",document.all("SolHastaFiltro"),true,200,200,2002);return false;' onMouseOver="top.status='Ver Calendario'; return true" onMouseOut="top.status=''; return true"><img border="0" src='<%=m05bConstantesPaginas.PATH_IMAGENES%>/p01calendario.gif'/></a>	
	       				Fin Agurtzane Feb12: quitar fechas solicitud-->
	       				
	       				<INPUT class="inputField" TYPE="TEXT" NAME="HastaFiltro" id="HastaFiltro" VALUE="<%=fHastaFiltro%>" size="10" maxlength="10" onblur="javascript:formatearFecha(this);return false;"/>
						<a href='#' name='anchorHasta' onClick=' showCalendar("anchorHasta",idioma,document.all("HastaFiltro"),true,200,200,2002);return false;' onMouseOver="top.status='Ver Calendario'; return true" onMouseOut="top.status=''; return true"><img border="0" src='<%=m05bConstantesPaginas.PATH_IMAGENES%>/p01calendario.gif'/></a>
						<INPUT class="inputField" TYPE="TEXT" NAME="HoraHastaFiltro" VALUE="<%=hHastaFiltro%>" size="5" maxlength="5" onBlur="javascript:formatearHora(this);ValidaHoras(this.value);"/>
       				</td>							
	       				
						<!-- Agurtzane Feb12: buscar por solicitante>
		       			<td></td-->


					</tr>
					<!-- Agurtzane Feb12: quitar fechas solicitud
					<tr>
						<td>&nbsp</td-->
						<!-- Agurtzane Feb12: buscar por solicitante, quitar fechas solicitud (lo subimos arriba= -->
						<!-- td colspan="2" class="inputFieldTitle" align="left"><%=res.getString("etFechaDesde")%></td-->
						<!-- td colspan="2" class="inputFieldTitle" align="left"><%=res.getString("etFechaHasta")%></td-->				
						<!-- Fin Agurtzane Feb12: buscar por solicitante -->						
<!-- Agurtzane Feb12: quitar fechas solicitud
					</tr>
					<tr-->
					<!-- Agurtzane Feb12: quitar fechas solicitud - lo subimos arriba
						<td></td>
						<td align="left" >
							<INPUT class="inputFieldOblig" TYPE="TEXT" NAME="DesdeFiltro" VALUE="<%=fDesdeFiltro%>" size="10" maxlength="10" onblur="javascript:formatearFecha(this);return false;"/>
							<a href='#' name='anchorDesde' onClick='JavaScript: showCalendar("anchorDesde","cast",document.all("DesdeFiltro"),true,200,200,2002);return false;' onMouseOver="top.status='Ver Calendario'; return true" onMouseOut="top.status=''; return true"><img border="0" src='<%=m05bConstantesPaginas.PATH_IMAGENES%>/p01calendario.gif'/></a>
		       				<INPUT class="inputFieldOblig" TYPE="TEXT" NAME="HoraDesdeFiltro" VALUE="<%=hDesdeFiltro%>" size="5" maxlength="5" onBlur="javascript:formatearHora(this);ValidaHoras(this.value);"/>
	       				</td>
	       				Fin Agurtzane Feb12: quitar fechas solicitud-->
						<!-- Agurtzane Feb12: buscar por solicitante>
		       			<td></td-->

					<!-- Agurtzane Feb12: quitar fechas solicitud - lo subimos arriba
		      			<td align="left">
		      				<INPUT class="inputFieldOblig" TYPE="TEXT" NAME="HastaFiltro" VALUE="<%=fHastaFiltro%>" size="10" maxlength="10" onblur="javascript:formatearFecha(this);return false;"/>
							<a href='#' name='anchorHasta' onClick='JavaScript: showCalendar("anchorHasta","cast",document.all("HastaFiltro"),true,200,200,2002);return false;' onMouseOver="top.status='Ver Calendario'; return true" onMouseOut="top.status=''; return true"><img border="0" src='<%=m05bConstantesPaginas.PATH_IMAGENES%>/p01calendario.gif'/></a>
							<INPUT class="inputFieldOblig" TYPE="TEXT" NAME="HoraHastaFiltro" VALUE="<%=hHastaFiltro%>" size="5" maxlength="5" onBlur="javascript:formatearHora(this);ValidaHoras(this.value);"/>
						</td>
						Fin Agurtzane Feb12: quitar fechas solicitud - lo subimos arriba-->
						
						<!-- Agurtzane Feb12: buscar por solicitante>
		       			<td></td-->


						<!-- Agurtzane Feb12: buscar por solicitante>
						<td width="30%" align="right">
				    		<input style="margin-left: 30px;" type="button" class="boton" name="<%= res.getString("etBOT_BUSCAR")%>" value="<%= res.getString("etBOT_BUSCAR")%>" ONCLICK="JavaScript:fncBuscar('<%=codigo%>');return false;" onMouseOver="top.status='<%= res.getString("etBOT_STATUSBUSCAR")%>'; return false" onMouseOut="top.status=''; return false"/>
						</td>
						<Agurtzane Feb12: buscar por solicitante -->
						
					<!-- Agurtzane Feb12: quitar fechas solicitud</tr-->
					<!-- Agurtzane Feb12: buscar por solicitante -->
					<tr>
						<td class="inputFieldTitle" align="left"><%=res.getString("etDNI")%></td>
						<td class="inputFieldTitle" align="left"><%=res.getString("etNombre")%></td>
				    </tr>
					<tr>
				      <td align="left"><INPUT size ="30" class="inputField" TYPE="TEXT" NAME="DniFiltro" value="<%=dniFiltro%>" maxlength="10"/> </td>
				      <td align="left">
				      	<INPUT size="60" class="inputField" TYPE="TEXT" NAME="NombreFiltro" value="<%=nombreFiltro%>" maxlength="50"/>
				      	</td><td width="30%" align="left">
			    		<input type="button" class="boton" name="<%= res.getString("etBOT_BUSCAR")%>" value="<%= res.getString("etBOT_BUSCAR")%>" ONCLICK="JavaScript:fncBuscar('<%=codigo%>');return false;" onMouseOver="top.status='<%= res.getString("etBOT_STATUSBUSCAR")%>'; return false" onMouseOut="top.status=''; return false"/>
					</td>				      
		  			</tr>
		  			<!-- Fin Agurtzane Feb12: buscar por solicitante -->
				</TABLE>

				<BR>

				<TABLE class="general">
					<tr>
						<td width="70%" valign="top" class="searchTitle"><%= res.getString("etOrdenarPor")%></td>
					</tr>
					<tr>
						<td class="grupoAsignacion" align="left">
							<%if (orden.equals("FECHASINIFIN")||orden.equals("")) {%>
								<input type="RADIO" NAME="Orden" CHECKED VALUE="FECHASINIFIN" onclick="JavaScript:fncCambiarOrden('<%=codigo%>')" border='0'/><FONT size="2"><%= res.getString("etFechasIniFin")%></FONT>								
								<input type="RADIO" NAME="Orden" VALUE="FECHASOLICITUD" onclick="JavaScript:fncCambiarOrden('<%=codigo%>')" border='0'/><FONT size="2"><%= res.getString("etFechaSolicitud")%></FONT>
							<% } else if (orden.equals("CODIGO")) {%>
								<input type="RADIO" NAME="Orden" VALUE="FECHASINIFIN" onclick="JavaScript:fncCambiarOrden('<%=codigo%>')" border='0'/><FONT size="2"><%= res.getString("etFechasIniFin")%></FONT>
								<input type="RADIO" NAME="Orden" VALUE="FECHASOLICITUD" onclick="JavaScript:fncCambiarOrden('<%=codigo%>')" border='0'/><FONT size="2"><%= res.getString("etFechaSolicitud")%></FONT>
							<% } else if (orden.equals("FECHASOLICITUD")) {%>
								<input type="RADIO" NAME="Orden" VALUE="FECHASINIFIN" onclick="JavaScript:fncCambiarOrden('<%=codigo%>')" border='0'/><FONT size="2"><%= res.getString("etFechasIniFin")%></FONT>
								<input type="RADIO" NAME="Orden" CHECKED VALUE="FECHASOLICITUD" onclick="JavaScript:fncCambiarOrden('<%=codigo%>')" border='0'/><FONT size="2"><%= res.getString("etFechaSolicitud")%></FONT>
					      	<% }%>
						</td>

						<%--
						<td width="10%" align="right">
					    	<input type="button" class="boton" name="<%= res.getString("etBOT_PRESENTAR")%>" value="<%= res.getString("etBOT_PRESENTAR")%>" ONCLICK="JavaScript:fncImprimir('<%=codigo%>'); return false" onMouseOver="top.status='<%= res.getString("etBOT_STATUSPRESENTAR")%>'; return false" onMouseOut="top.status=''; return false" />
						</td>

					    <td width="10%" align="right">
					    	<input type="button" class="boton" name="<%= res.getString("etBOT_BUSCAR")%>" value="<%= res.getString("etBOT_BUSCAR")%>" ONCLICK="JavaScript:fncBuscar();return false;" onMouseOver="top.status='<%= res.getString("etBOT_STATUSBUSCAR")%>'; return false" onMouseOut="top.status=''; return false" />
						</td>
						--%>

						<td width="30%" align="right">
					    	<input style="margin-left: 20px;" type="button" class="boton" name="<%= res.getString("etVER_SOLICITUD")%>" value="<%= res.getString("etVER_SOLICITUD")%>" ONCLICK="JavaScript:fncVerSolicidud();return false;" onMouseOver="top.status='<%= res.getString("etBOT_STATUSVER_SOLICITUD")%>'; return false" onMouseOut="top.status=''; return false" />
					    	<input style="margin-left: 20px;" type="button" class="boton" name="<%= res.getString("etIR_A_ASIGNAR")%>" value="<%= res.getString("etIR_A_ASIGNAR")%>" ONCLICK="JavaScript:fncAsignar();return false;" onMouseOver="top.status='<%= res.getString("etBOT_STATUSIR_A_ASIGNAR")%>'; return false" onMouseOut="top.status=''; return false" />
					    	<input style="margin-left: 20px;" type="button" class="boton" name="<%= res.getString("etRECHAZAR")%>" value="<%= res.getString("etRECHAZAR")%>" ONCLICK="JavaScript:fncRechazar();return false;" onMouseOver="top.status='<%= res.getString("etBOT_STATUSRECHAZAR")%>'; return false" onMouseOut="top.status=''; return false" />
						</td>
					</tr>
				</TABLE>

				<p>
				<p>

				<TABLE class="general">
					<tr>
						<td width="2%" valign="top" class="searchTitle">&nbsp&nbsp</td>
						<td class="searchTitle" width="9%"><%= res.getString("etFechaSolicitud")%></td>
						<td class="searchTitle" width="6%"><%= res.getString("etDNI")%></td>
						<td class="searchTitle" width="20%"><%= res.getString("etNombreYApellidos")%></td>
					    <td class="searchTitle" width="9%"><%= res.getString("etFechaDesde")%></td>
   					    <td class="searchTitle" width="9%"><%= res.getString("etFechaHasta")%></td>
   					    <td class="searchTitle" width="9%"><%= res.getString("etFechaHastaAsig")%></td>   					    
   					    <td class="searchTitle" width="15%"><%= res.getString("etDestino")%></td>
   					    <td class="searchTitle" width="12%"><%= res.getString("etEstado")%></td>   					    
   					     <td class="searchTitle" width="12%"><%= res.getString("etAsignacion")%></td> <!-- Agurtzane Mar12: relacionar solicitud y asignación -->
					</tr>
					<%		
					String fechaFinAsig="";
				while (rs.next() == true) {
					miCodigo 		= rs.getString("ID_SOLICITUD_100");
					fechaSolicitud	= rs.getString("FECHA_SOLICITUD_100");
					dni 			= rs.getString("DNI_101")==null?"":rs.getString("DNI_101");
					nombre_apellidos= rs.getString("NOMBRE_APELLIDOS_101")==null?"":rs.getString("NOMBRE_APELLIDOS_101");
					codDepto		= rs.getString("COD_DEPTO_101");
					if (idioma.getIdiomaActual().toUpperCase() == "EU") {
						descDepto 	= rs.getString("DESCE_DEPTO_101")==null?"":rs.getString("DESCE_DEPTO_101");
					} else {
						descDepto 	= rs.getString("DESCC_DEPTO_101")==null?"":rs.getString("DESCC_DEPTO_101");
					}
					fechaIni 		= rs.getString("FECHA_INI_100")==null?"":rs.getString("FECHA_INI_100");
					fechaFin 		= rs.getString("FECHA_FIN_100")==null?"":rs.getString("FECHA_FIN_100");
					fechaFinAsig 		= rs.getString("fhasta_01")==null?"":rs.getString("fhasta_01");
					
					motivoSolicitud	= rs.getString("MOTIVO_102")==null?"":rs.getString("MOTIVO_102");
					if (idioma.getIdiomaActual().toUpperCase() == "EU") {
						destino = rs.getString("DESTINO_STR_EUS")==null?"":rs.getString("DESTINO_STR_EUS");
					} else {
						destino = rs.getString("DESTINO_STR_CAS")==null?"":rs.getString("DESTINO_STR_CAS");
					}
					estadoSolicitudReserva = rs.getString("ESTADO_102")==null?"":rs.getString("ESTADO_102");
					origen = rs.getString("ORIGEN_102")==null?"":rs.getString("ORIGEN_102");
					codAsig = rs.getString("COD_ASIGNACION_100")==null?"":rs.getString("COD_ASIGNACION_100"); //Agurtzane Mar12: relacionar solicitud y asignación
					contador++;
					
				%>

					<tr>
					   <td><input name='<%="chSol" + contador%>' type="checkbox" class="inputFieldTitle" width="2%" onselect="checkFila(<%=contador%>)" onclick="checkFila(<%=contador%>)"></td>
   			   		   <td class="inputFieldTitle"><FONT size="1"><%=comun.formatearFechaHora(fechaSolicitud,campoTexto3)%></FONT></td>
			   		   <td class="inputFieldTitle"><FONT size="1"><%=dni%></FONT></td>
			   		   <td class="inputFieldTitle"><FONT size="1"><%=nombre_apellidos%></FONT></td>
			   		   <td class="inputFieldTitle"><FONT size="1"><%=comun.formatearFechaHora(fechaIni,campoTexto3)%></FONT></td>
			   		   <td class="inputFieldTitle"><FONT size="1"><%=comun.formatearFechaHora(fechaFin,campoTexto3)%></FONT></td>
			   		   <td class="inputFieldTitle"><FONT size="1"><%=comun.formatearFechaHora(fechaFinAsig,campoTexto3)%></FONT></td>
   			   		   <td class="inputFieldTitle"><FONT size="1"><%=destino%></FONT></td>
			   		   <td class="inputFieldTitle"><FONT size="1"><%=desEstadoSolicitudReserva(res, estadoSolicitudReserva, origen)%></FONT></td>			   		   
			   		   <!-- Agurtzane Mar12: relacionar solicitud y asignación -->
						<td class=inputFieldTitle width="5%"><FONT size="1"><A href="JavaScript:fncSeleccionar('<%=codAsig%>')"><%=codAsig%></A></FONT></td>
			   		   <!-- Fin Agurtzane Mar12: relacionar solicitud y asignación -->
					</tr>
					<input name='<%="codigo" + contador%>' value="<%=miCodigo%>" type="hidden">
					<input name='<%="estadoSolicitudReserva" + contador%>' value="<%=estadoSolicitudReserva%>" type="hidden">
				<%}				%>
					<tr></tr>
				    <tr align="center">
						<td class="inputField" colspan="7"><%=res.getString("etTotal")%> <%=contador%></td>
				    </tr>
				</TABLE>
			</FORM>
		</td>
	</tr>

	<tr>
		<td colspan="3">
			<%@ include file="/mantenimientosJSP/includes/m05Pie_c.jsp"%>
		</td>
	</tr>

</table>

<SCRIPT language='javascript'>

    setTimeout('initSlide();', 1);

	function fncBuscar(codigo) {

		/*TENEMOS QUE COMPROBAR QUE LA FECHA DESDE DEL FILTRO SEA MAYOR O IGUAL A LA ACTUAL*/
		if (comprobarFechas()) {

			var orden;
			if (document.FormRelSolicitudesReserva.Orden[0].checked) {
				orden="FECHASINIFIN";
			} else if (document.FormRelSolicitudesReserva.Orden[1].checked) {
				orden="FECHASOLICITUD";
			} else {
				orden="FECHASINIFIN";
			}
	
			if (codigo != "") {
				document.FormRelSolicitudesReserva.action="m05bRelSolicitudesReservaJsp.jsp?Orden=" + orden + "&Codigo=" + codigo + obtenerCadenaFiltro();
			} else {
				var codigoFilaSel = obtenerCodigoFilaCheckeada();
				document.FormRelSolicitudesReserva.action="m05bRelSolicitudesReservaJsp.jsp?Orden=" + orden + "&CodigoSel=" + codigoFilaSel + obtenerCadenaFiltro();
			}
			document.FormRelSolicitudesReserva.submit();
		}
	}

	function fncCambiarOrden(codigo) {
	
		/*TENEMOS QUE COMPROBAR QUE LA FECHA DESDE DEL FILTRO SEA MAYOR O IGUAL A LA ACTUAL*/
		if (comprobarFechas()) {
		
			var orden;
			if (document.FormRelSolicitudesReserva.Orden[0].checked) {
				orden="FECHASINIFIN";
			} else if (document.FormRelSolicitudesReserva.Orden[1].checked) {
				orden="FECHASOLICITUD";
			} else {
				orden="FECHASINIFIN";
			}
	
			if (codigo != "") {
				document.FormRelSolicitudesReserva.action="m05bRelSolicitudesReservaJsp.jsp?Orden=" + orden + "&Codigo=" + codigo + obtenerCadenaFiltro();
			} else {
				var codigoFilaSel = obtenerCodigoFilaCheckeada();
				document.FormRelSolicitudesReserva.action="m05bRelSolicitudesReservaJsp.jsp?Orden=" + orden + "&CodigoSel=" + codigoFilaSel + obtenerCadenaFiltro();
			}
			document.FormRelSolicitudesReserva.submit();
		}
	}

	function fncImprimir(codigo) {
		var docu = document.FormRelSolicitudesReserva;
		var orden;
		if (docu.Orden[0].checked) {
			orden="FECHASINIFIN";
		}else if (docu.Orden[1].checked) {
			orden="FECHASOLICITUD";
		} else {
			orden="FECHASINIFIN";
		}
    	docu.action="m05bSolicitudesReservaPDFJsp.jsp?Orden=" + orden + "&Codigo=" + codigo + obtenerCadenaFiltro();
    	docu.submit();
    }

    function comprobarFechas() {
    	formatearFecha(FormRelSolicitudesReserva.DesdeFiltro);
    	formatearFecha(FormRelSolicitudesReserva.HastaFiltro);
		/*Comprobamos que la fecha hasta sea posterior a la fecha desde*/
		/*Y que la fecha desde sea posterior a la fecha hora de ahora*/
		if (!esVacio(FormRelSolicitudesReserva.DesdeFiltro.value)
			|| !esVacio(FormRelSolicitudesReserva.HastaFiltro.value)) {
			var fechaDesde = -1;
			var fechaHasta = 99999999;
			
			if (!esVacio(FormRelSolicitudesReserva.DesdeFiltro.value)) {
				if(idioma=="es")
				fechaDesde = fechaANumero(FormRelSolicitudesReserva.DesdeFiltro.value, "dd/MM/yyyy");
				else
					fechaDesde = fechaANumero(FormRelSolicitudesReserva.DesdeFiltro.value, "yyyy/MM/dd");
			}
			if (!esVacio(FormRelSolicitudesReserva.HastaFiltro.value)) {
				if(idioma=="es")
				fechaHasta = fechaANumero(FormRelSolicitudesReserva.HastaFiltro.value, "dd/MM/yyyy");
				else
					fechaHasta = fechaANumero(FormRelSolicitudesReserva.HastaFiltro.value, "yyyy/MM/dd");
			}

			var textoC = "";

			if (fechaHasta < fechaDesde) {
				textoC = textoC + "<%=res.getString("FechaHastaDebeSerMayorAFechaDesde")%>";
			} else if (fechaHasta == fechaDesde) {

				var horaDesde = -1;
				var horaHasta = 9999;			
				if (!esVacio(FormRelSolicitudesReserva.HoraDesdeFiltro.value)) {
					horaDesde = parseInt(FormRelSolicitudesReserva.HoraDesdeFiltro.value.replace(":",""), 10);
				}
				if (!esVacio(FormRelSolicitudesReserva.HoraHastaFiltro.value)) {
					horaHasta = parseInt(FormRelSolicitudesReserva.HoraHastaFiltro.value.replace(":",""), 10);
				}

				if (horaHasta < horaDesde) {
					textoC = textoC + "<%=res.getString("FechaHastaDebeSerMayorAFechaDesde")%>";
				}

			}
			
			/*
			if (esVacio(textoC)) {
				var f = new Date();
				var fechaActual = padLeft(f.getFullYear(), 4, "0")
									+ "" + padLeft((f.getMonth() + 1), 2, "0")
									+ "" + padLeft(f.getDate(), 2, "0");
		
				if (fechaDesde < fechaActual) {
					textoC = textoC + "<%=res.getString("FechaDesdeDebeSerMayorAFechaAhora")%>";
				}
			}
			*/

			if (!esVacio(textoC)) {
				alert(textoC);
				return false;
			}
		}

		return true;
		/**/
	}

	function esVacio(cadena){
		var blanco = " \n\t" + String.fromCharCode(13);
		var i;
		var es_vacio;
		for(i = 0, es_vacio = true; (i < cadena.length) && es_vacio; i++)
			es_vacio = blanco.indexOf(cadena.charAt(i)) != - 1;
		return es_vacio;
	}

	function fechaANumero(strFecha, formato)
	{
		try
		{
			var dtCh= "/";
			var pos1=strFecha.indexOf(dtCh);
			var pos2=strFecha.indexOf(dtCh,pos1+1);
			
			//CASTELLANO
			var day=strFecha.substring(0,pos1);
			var month=strFecha.substring(pos1+1,pos2);
			var year=strFecha.substring(pos2+1);
		
			if (formato=="yyyy/MM/dd") {
				//EUSKERA
				year=strFecha.substring(0,pos1);
				month=strFecha.substring(pos1+1,pos2);
				day=strFecha.substring(pos2+1);
			}
			return parseInt(year + "" + month + "" + day, 10);
		} catch(e) {
			return 0;
		}
	}

	function padLeft(s, len, c) {
		c = c || '0';
		str = s.toString();
		while(str.length < len) str = c + str;
		return str;
	}
	

</SCRIPT>

<%
		String codigoSel = request.getParameter("CodigoSel")==null?"":request.getParameter("CodigoSel").toUpperCase();
		if (codigoSel != null && !codigoSel.equals("") && !codigoSel.equals("NULL")) {
%>
			<script type="text/javascript">
				checkFilaCodigo(<%=codigoSel%>);
			</script>
<%
		}

	} catch (Exception SQLException) {
		miLog.addTraza(SQLException);
	} finally {
		if (rs != null)
			rs.close();
		if (pstmt != null)
			pstmt.close();
		if (conn != null)
			conn.close();
	}
%>
</BODY>
</HTML>

<% if (error != null && !"".equals(error)) { %>
<script>alert('<%=error%>');</script>
<%} %>