	function correo_para(correo,dominio,extension, subject) { 
		if (subject==''){
			subject='contacto desde www.tecnica4.com';
		}
		window.location.href='mailto:' + correo + '@' + dominio + '.' + extension + '?' + 'subject' + '=' + subject; 
	}
		
	//para expandir los elementos de la bolsa de trabajo
	function mostrar(n){
		//alert(n);
		var pm = document.getElementById("Ver_"+ n);
		var p = document.getElementById(n);
        if(p.style.display == 'none'){
                //mostramos
                p.style.display='';
                p.style.visibility='visible';
				pm.innerHTML ="(-)Detalle";
                }
            else{
                //ocultamos
                p.style.display='none';
                p.style.visibility='hidden';
				pm.innerHTML ="(+)Detalle";
        }
		//alert(p.className);
		//var el = document.getElementById('tabla_ofertas');
		//var as = el.getElementsByTagName('tr');
		//alert(as.length);
		//for (var i=0; i<as.length; i++) {
      		//as[i].style.color = '#000'; // negro
		//	alert (as[i].id);
			// as[i].style.display='none';
             //as[i].style.visibility='hidden';
			
		//}
	}
	
	//para crear los ids necesarios para tr de expandir/contraer
	function crear(n){
        	var c='X';
        	var cad='';
        	for(var i = 0; i < n; i++) {
        		cad=cad+c;
        	}
        	return cad;
	}

	function trimleft( str ) {
		var resultstr = "";
		var i = len = 0;
	
		// return immediately if an invalid value was passed in
		if (str+"" == "undefined" || str == null)
			return null;
	
		// make sure the argument is a string
		str += "";
	
		if (str.length == 0)
			resultstr = "";
		else {
			// loop through string starting at the beginning as long as there
			// are spaces.
			// len = str.length - 1;
			len = str.length;
	
			while ((i <= len) && (str.charAt(i) == " "))
				i++;
			// when the loop is done, we're sitting at the first non-space char,
			// so return that char plus the remaining chars of the string.
			resultstr = str.substring(i, len);
		}
	
		return resultstr;
	}

	function trimright( str ) {
		var resultstr = "";
		var i = 0;
	
		// return immediately if an invalid value was passed in
		if (str+"" == "undefined" || str == null)
			return null;
	
		// make sure the argument is a string
		str += "";
	
		if (str.length == 0)
			resultstr = "";
		else {
			// loop through string starting at the end as long as there
			// are spaces.
			i = str.length - 1;
			while ((i >= 0) && (str.charAt(i) == " "))
				i--;
	
			// when the loop is done, we're sitting at the last non-space char,
			// so return that char plus all previous chars of the string.
			resultstr = str.substring(0, i + 1);
		}
		return resultstr;
	}

	//funciones para importar y presentar el fichero de proyectos
	function importXML_Proyectos()
		{
			if (document.implementation && document.implementation.createDocument)
			{
				xmlDoc = document.implementation.createDocument("", "", null);
				xmlDoc.onload = createTable_Proyectos;
			}
			else if (window.ActiveXObject)
			{
				xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.onreadystatechange = function () {
					if (xmlDoc.readyState == 4) createTable_Proyectos()
				};
		 	}
			else
			{
				alert('Tu navegador no puede ejecutar este script');
				return;
			}
			xmlDoc.load("proyectos.xml");
		}


	function createTable_Proyectos()
		{
			var x = xmlDoc.getElementsByTagName('contenido');
			var newEl = document.createElement('TABLE');
			newEl.setAttribute('cellPadding',0);
			var tmp = document.createElement('TBODY');
			newEl.appendChild(tmp);
			
			var flag;
			for (i=0;i<x[0].childNodes.length;i++)
			{
				var row = document.createElement('TR');
				var container = document.createElement('TD');
				flag=0;
				var t = document.createElement('TABLE');
				t.setAttribute('cellPadding',1);
				t.className = "t_proyecto";
				var tb = document.createElement('TBODY');
				t.appendChild(tb);
				
				for (j=0;j<x[0].childNodes[i].childNodes.length;j++)
				{	
					if (x[0].childNodes[i].childNodes[j].nodeType != 1) continue;
					var r = document.createElement('TR');
					var c = document.createElement('TD');
					if (flag==0) {
							c.className = "tit_proyecto";
							}else{
							c.className = "des_proyecto";
							}
					var theData;
					var nodo = x[0].childNodes[i].childNodes[j].nodeName;
					var cad = '';
					//alert(x[0].childNodes[i].childNodes[j].nodeName);
					 switch (nodo){
					 	case "proyecto":
							cad='';
							break;
						case "cliente":
							cad='Cliente: ';
							break;
						case "lugar":
							cad='Lugar: ';
							break;
						case "fecha":
							cad='Fecha: ';
							break;
						case "coste":
							cad='Presupuesto: ';
							break;
						case "descripcion":
							cad='Descripción: ';
							break;
					 }
					theData = document.createTextNode(cad + x[0].childNodes[i].childNodes[j].firstChild.nodeValue);
					c.appendChild(theData);
					r.appendChild(c);
					tb.appendChild(r);
					flag=1;
				}
				
				
				container.appendChild(t);
				row.appendChild(container);
				tmp.appendChild(row);
			}
			var d = document.getElementById('tabla_proyectos');
			d.appendChild(newEl);
		}
	
	//funciones para importar el fichero de contactos con sus direcciones de correo	
	function importXML_Contactos()
		{
			if (document.implementation && document.implementation.createDocument)
			{
				xmlDoc = document.implementation.createDocument("", "", null);
				xmlDoc.onload = createTable_Contactos;
			}
			else if (window.ActiveXObject)
			{
				xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.onreadystatechange = function () {
					if (xmlDoc.readyState == 4) createTable_Contactos()
				};
		 	}
			else
			{
				alert('Tu navegador no puede ejecutar este script');
				return;
			}
			xmlDoc.load("personal.xml");
		}


	function createTable_Contactos()
		{
			var valorItem;
			var flag;
			var subject='contacto desde www.tecnica4.com';
			var x = xmlDoc.getElementsByTagName('contenido');
			var newEl = document.createElement('TABLE');
			newEl.setAttribute('cellPadding',0);
			newEl.setAttribute('cellspacing',0);
			newEl.className = "contactos";
			var tmp = document.createElement('TBODY');
			newEl.appendChild(tmp);
			for (i=0;i<x[0].childNodes.length;i++)
			{
				var row = document.createElement('TR');
				
				for (j=0;j<x[0].childNodes[i].childNodes.length;j++)
				{	
					if (x[0].childNodes[i].childNodes[j].nodeType != 1) continue;
					var container = document.createElement('TD');
					var theData;
					var lnk = document.createElement("a");
					//valorItem = x[0].childNodes[i].childNodes[j].firstChild.nodeValue;
					if (x[0].childNodes[i].childNodes[j].firstChild.nodeValue=='no'){
						theData = '';
						valorItem = '';
					}else{
					
						valorItem = x[0].childNodes[i].childNodes[j].firstChild.nodeValue;
						var nodo = x[0].childNodes[i].childNodes[j].nodeName;
						switch (nodo){
							case "tecnicos":
								valorItem = valorItem.split('.').join(',');
								theData = document.createTextNode(valorItem);
								break;
						 	case "email":
								lnk.className= "lnk_contactos";
								lnk.href= 'mailto:' + valorItem + '?' + 'subject' + '=' + subject;
								theData = document.createTextNode(x[0].childNodes[i].childNodes[j].firstChild.nodeValue);
								break;
							default:
								theData = document.createTextNode(x[0].childNodes[i].childNodes[j].firstChild.nodeValue);
						 }
					 }
					 if (valorItem!=''){
					 	lnk.appendChild(theData);
					 	container.appendChild(lnk);
					 }else{
					 	container.appendChild(lnk);
					 	container.setAttribute('colspan',2);
					 }
					row.appendChild(container);
				}
				
				tmp.appendChild(row);
			}
			var d = document.getElementById('tabla_contactos');
			d.appendChild(newEl);
		}
	
	//funciones para importar el fichero de bolsa de trabajo	
	function importXML_Bolsa()
		{
			if (document.implementation && document.implementation.createDocument)
			{
				xmlDoc = document.implementation.createDocument("", "", null);
				xmlDoc.onload = createTable_Bolsa;
			}
			else if (window.ActiveXObject)
			{
				xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.onreadystatechange = function () {
					if (xmlDoc.readyState == 4) createTable_Bolsa()
				};
		 	}
			else
			{
				alert('Tu navegador no puede ejecutar este script');
				return;
			}
			xmlDoc.load("trabajo.xml");
		}


	function createTable_Bolsa()
		{
			var valorItem;
			var ref;
			var flag;
			var theData;
			var a;
			var p;
			var h;
			var row;
			var container;
			var salto;
			var cont=0;
			var subject='contacto desde www.tecnica4.com';
			var x = xmlDoc.getElementsByTagName('contenido');
			var newEl = document.createElement('TABLE');
			newEl.setAttribute('cellpadding',0);
			newEl.setAttribute('cellspacing',0);
			newEl.className = "oferta";
			var tmp = document.createElement('TBODY');
			newEl.appendChild(tmp);
			//alert(x[0].childNodes.length);
			for (i=0;i<x[0].childNodes.length;i++)
			{
				for (j=0;j<x[0].childNodes[i].childNodes.length;j++)
				{	
					if (x[0].childNodes[i].childNodes[j].nodeType != 1) continue;
					//valorItem = x[0].childNodes[i].childNodes[j].firstChild.nodeValue;
					if (x[0].childNodes[i].childNodes[j].firstChild.nodeValue==''){
						theData = '';
						valorItem = '';
					}else{
						valorItem = x[0].childNodes[i].childNodes[j].firstChild.nodeValue;
						var nodo = x[0].childNodes[i].childNodes[j].nodeName;
						switch (nodo){
							case "referencia":
								row = document.createElement('TR');
								container = document.createElement('TD');
								container.setAttribute('width','15%');
								container.width = '15%';
								a = document.createElement("a");
								valorItem = "Referencia:" + valorItem;
								ref = valorItem;
								theData = document.createTextNode(valorItem);
								row.className = "ref_oferta";
								a.appendChild(theData);
								container.appendChild(a);
								row.appendChild(container);
								tmp.appendChild(row);
								cont++;
								break;
							case "descripcion_corta":
								row = document.createElement('TR');
								container = document.createElement('TD');
								container.setAttribute('width','85%');
								container.width = '85%';
								a = document.createElement("a");
								theData = document.createTextNode(valorItem);
								row.className = "breve_oferta";
								a.appendChild(theData);
								container.appendChild(a);
								row.appendChild(container);
								//metemos el link del detalle
								a = document.createElement("a");
								var cad = crear(cont);
								a.id= "Ver_"+cad;
								a.onclick = new Function("","mostrar('" + cad + "');");
								theData = document.createTextNode("(+)Detalle");
								a.appendChild(theData);
								container = document.createElement('TD');
								container.setAttribute('width','15%');
								container.appendChild(a);
								container.className="lnk_oferta";
								row.appendChild(container);
								tmp.appendChild(row);
								break;
							case "descripcion_larga":
								row = document.createElement('TR');
								row.className = "contenido_oferta";
								//creamos el id necesario para cada oferta en pantalla
								row.id =crear(cont);
								row.style.visibility="hidden";
								row.style.display="none";
								container = document.createElement('TD');
								container.setAttribute('colspan',2);
								container.colSpan='2';
								//metemos el h2 de la descripcion larga
								h = document.createElement('H2');
								theData = document.createTextNode("Descripción del puesto");
								h.appendChild(theData);
								container.appendChild(h);
								//creamos la lista con los distintos items 
								var texto = valorItem.split('-');
								//el primer elemento es la cabecera de la descripcion
								p = document.createElement('p');
								theData = document.createTextNode(texto[0]);
								p.appendChild(theData);
								container.appendChild(p);
								if (texto.length > 1){
									//creamos lista
									var ulLista = document.createElement('ul');
									for (k=1;k<texto.length;k++){
										var cadena=trimleft(trimright(texto[k]));
										liLista = document.createElement('li');
										theData = document.createTextNode(cadena);
										liLista.appendChild(theData);
										ulLista.appendChild(liLista);
									}
									container.appendChild(ulLista);
								}
								break;
								
							case "perfil":
								//metemos el h2 del perfil
								h = document.createElement('H2');
								theData = document.createTextNode("Perfil buscado");
								h.appendChild(theData);
								container.appendChild(h);
								//metemos el contenido del perfil
								//creamos la lista con los distintos items 
								var texto = valorItem.split('-');
								if (texto.length > 1){
									var ulLista = document.createElement('ul');
									for (k=1;k<texto.length;k++){
										var cadena=trimleft(trimright(texto[k]));
										liLista = document.createElement('li');
										theData = document.createTextNode(cadena);
										liLista.appendChild(theData);
										ulLista.appendChild(liLista);
									}
									container.appendChild(ulLista);
								}else{
									p = document.createElement('p');
									theData = document.createTextNode(texto[0]);
									p.appendChild(theData);
									container.appendChild(p);
								}
								break;
								
							case "se_ofrece":
								//metemos el h2 de se_ofrece
								h = document.createElement('H2');
								theData = document.createTextNode("Se ofrece");
								h.appendChild(theData);
								container.appendChild(h);
								//metemos el contenido de se_ofrece
								//creamos la lista con los distintos items 
								var texto = valorItem.split('-');
								if (texto.length > 1){
									var ulLista = document.createElement('ul');
									for (k=1;k<texto.length;k++){
										var cadena=trimleft(trimright(texto[k]));
										liLista = document.createElement('li');
										theData = document.createTextNode(cadena);
										liLista.appendChild(theData);
										ulLista.appendChild(liLista);
									}
									container.appendChild(ulLista);
								}else{
									p = document.createElement('p');
									theData = document.createTextNode(texto[0]);
									p.appendChild(theData);
									container.appendChild(p);
								}
								break;
							case "contacto":
								//metemos el h2 de datos de contacto
								h = document.createElement('H2');
								theData = document.createTextNode("Datos de contacto");
								h.appendChild(theData);
								container.appendChild(h);
								//metemos el p de se_ofrece
								p = document.createElement('P');
								theData = document.createTextNode(valorItem + ' ');
								p.appendChild(theData);
								
								//crear link para acceso a recursos humanos
								var lnk = document.createElement("a");
								lnk.className= "lnk_contactos";
								subject = ref;
								lnk.href= 'mailto:' + 'rrhh@tecnica4.com' + '?' + 'subject' + '=' + subject;
								theData = document.createTextNode('Acceso a Recursos Humamos');
								lnk.appendChild(theData);
					 			p.appendChild(lnk);
								
								container.appendChild(p);
								
								row.appendChild(container);
								
								tmp.appendChild(row);
								break;
						 	}
						 	
					 	}
				}
				
				
			}
			var d = document.getElementById('tabla_ofertas');
			d.appendChild(newEl);
		}
