/***********************************************
Funcion para generar un objeto XMLHTTPRewquest
según el navegador.
Devuelve un objeto XMLHTTPRequest

Autor: Alvaro Remesal
Version: 0.1
Fecha: 28/04/2008
***********************************************/
var newAjax = function() {
	var objXMLReq = false;
	try // Para Mozillas, FF, Operas, etc...
	{
		objXMLReq = new XMLHttpRequest();
	} 
	catch (trymicrosoft) 
	{
	  try // Para IE 6 y superiores
	  {
		objXMLReq = new ActiveXObject("Msxml2.XMLHTTP");
	  } 
	  catch (othermicrosoft) 
	  {
		try // Para IE inferiores al 6
		{
			objXMLReq = new ActiveXObject("Microsoft.XMLHTTP");
		} 
		catch (failed) 
		{
			objXMLReq = false;
		} 
	  }
	}
	if (!objXMLReq)
	  alert("No se pudo inicializar el objeto XMLHTTPRequest");
	  
	 return objXMLReq;
}

/***********************************************
Funcion para cargar las provincias de un pais
Parametros: id del pais, id del elemento <select>, id del contenedor del select
Rellena el contendor con el <select> generado por includes/getProvSelect.php,
que tiene las provincias del país que se haya pasado

Autor: Alvaro Remesal
Version: 0.1
Fecha: 28/04/2008
***********************************************/		
var selProvincias = function(value,el,cont) {
	// Ojo, los parametros add y limit son variables que se deben inicializar, cuando sea necesario, en un JS ANTES de llamar a esta funcion
	// add -> aniade evento onChange a provincias para varias provincias
	// limit -> aniade evento onChange a provincias para limitrofes
	if( typeof(add) == 'undefined' ) add = 0;
	if( typeof(limit) == 'undefined' ) limit = 0;
	var ruta = '/includes/getProvSelect.php?idpais='+value+'&elem='+el+'&add='+add+'&limit='+limit;
    objAjax = newAjax();
    document.getElementById(cont).innerHTML='Cargando datos...';
    objAjax.open("GET", ruta); 
	objAjax.onreadystatechange = function() { 
	  if (objAjax.readyState == 4) 
	  { 
		document.getElementById(cont).innerHTML=objAjax.responseText; 		
	  } 
	  
	} 
	objAjax.send(null); 
    return false;
}


var selProvinciasCheckbox = function(value,el,el_destino,cont) {
	// Ojo, los parametros add y limit son variables que se deben inicializar, cuando sea necesario, en un JS ANTES de llamar a esta funcion
	// add -> aniade evento onChange a provincias para varias provincias
	// limit -> aniade evento onChange a provincias para limitrofes
	if( typeof(add) == 'undefined' ) add = 0;
	if( typeof(limit) == 'undefined' ) limit = 0;
	var ruta = '/includes/getProvSelectCheckbox.php?idpais='+value+'&elem='+el+'&el_destino='+el_destino+'&add='+add+'&limit='+limit;
    objAjax = newAjax();
    document.getElementById(cont).innerHTML='Cargando datos...';
    objAjax.open("GET", ruta); 
	objAjax.onreadystatechange = function() { 
	  if (objAjax.readyState == 4) 
	  { 
		document.getElementById(cont).innerHTML=objAjax.responseText; 		
	  } 
	  
	} 
	objAjax.send(null); 
    return false;
}

/***********************************************
Funcion para cargar las titulaciones correspondientes a un estudio
Parametros: id del estudio, id del elemento <select>, id del contenedor del select
Rellena el contenedor con el <select> generado por includes/getTituloSelect.php,
que tiene las titulaciones del estudio que se haya pasado
***********************************************/	
var selEstudios = function(value,el,cont) {
	// Ojo, los parametros add y limit son variables que se deben inicializar, cuando sea necesario, en un JS ANTES de llamar a esta funcion
	// add -> aniade evento onChange a provincias para varias provincias
	// limit -> aniade evento onChange a provincias para limitrofes
	if( typeof(add) == 'undefined' ) add = 0;
	if( typeof(limit) == 'undefined' ) limit = 0;
	var ruta = '/includes/getTituloSelect.php?idestudio='+value+'&elem='+el;
    objAjax = newAjax();
    document.getElementById(cont).innerHTML='Cargando datos...';
    objAjax.open("GET", ruta); 
	objAjax.onreadystatechange = function() { 
	  if (objAjax.readyState == 4) 
	  { 
		document.getElementById(cont).innerHTML=objAjax.responseText;
	  } 
	  
	} 
	objAjax.send(null); 
    return false;
}
/***********************************************
Funcion para aniadir oferta a portafolio
Parametros: id de la oferta
Llama al ASP que aniade la oferta a la sesion del usuario, a la vez que actualiza
la presentacion en la pagina

Autor: Alvaro Remesal
Version: 0.1
Fecha: 08/05/2008
***********************************************/		
var insertPortafolio = function(id) {
    
	var ruta = '/includes/insertPortafolio.php?id='+id;
    objAjax = newAjax();
	// Actualizamos portafolio
	document.getElementById('numportf').innerHTML = eval(document.getElementById('numportf').innerHTML) + 1;
	// Cambiamos enlace
	document.getElementById('enlPortf'+id).innerHTML = '<b>Ya guardado</b>';
    // Peticion
    objAjax.open("GET", ruta); 
	objAjax.send(null); 
    return false;
}

/***********************************************
Funcion para eliminar una oferta del portafolio
Parametros: id de la oferta
Llama al ASP que elimina la oferta de la sesion del usuario, a la vez que actualiza
la presentacion en la pagina

Autor: Alvaro Remesal
Version: 0.1
Fecha: 08/05/2008
***********************************************/		
var deletePortafolio = function(id) {
    
	var ruta = '/includes/deletePortafolio.php?id='+id;
    objAjax = newAjax();
	// Actualizamos portafolio
	document.getElementById('numportf').innerHTML = eval(document.getElementById('numportf').innerHTML) - 1;
	// Eliminamos caja con la oferta
	document.getElementById('itemPortf'+id).remove();
    // Peticion
    objAjax.open("GET", ruta); 
	objAjax.send(null); 
    return false;
}


function mostrar(nombreCapa){ 
document.getElementById(nombreCapa).style.display="BLOCK"; 
} 
function ocultar(nombreCapa){ 
document.getElementById(nombreCapa).style.display="NONE"; 
} 
function capa(nombreCapa) {
if (document.getElementById(nombreCapa).style.display=="none")
	{
	mostrar(nombreCapa);
	}
else
	{
	ocultar(nombreCapa);
	}

}


