var items = {};
var toggled = 0;

String.prototype.trim = function() { return this.replace(/^\s+|\s+$/, ''); };

function listMainComponents(item,tipo,elem)
{
	if (typeof(item) != "undefined" && item != null) {
		var i = 2;
		for (p in item) {
			i = (i == 1) ? 2 : 1;
			var temp1 = new Template('<div class="#{estilo}" title="#{title}" id="title_#{tipo}_#{id}"><div class="flag"><img src="../img/icons/status_#{estado}.png" /></div><div class="title">#{name}</div><div class="type">#{type}</div><div class="date">#{start}</div><a class="minfo" title="Más información" id="toggle_#{id}" href="javascript:toggleInfo(\'#{tipo}\',\'#{id}\');">&nbsp;</a></div></div><div class="big#{estilo}" id="#{tipo}_#{id}" style="display:none"></div>');
			var temp2 = new Template('<div class="#{estilo}" title="#{title}" id="title_#{tipo}_#{id}"><div class="flag"><img src="../img/icons/status_#{estado}.png" /></div><div class="title" style="width: 385px; margin-right: 5px;">#{name}</div><div class="date">#{start}</div><a class="minfo" title="Más información" id="toggle_#{id}" href="javascript:toggleInfo(\'#{tipo}\',\'#{id}\');">&nbsp;</a></div></div><div class="big#{estilo}" id="#{tipo}_#{id}" style="display:none"></div>');
			if (tipo != "conocenos") {
				var jsontoeval = {
					"tipo": tipo,
					"estilo": "listado" + i,
					"id": p,
					"title": estados[item[p].estado],
					"estado": item[p].estado,
					"name": item[p].name,
					"type": tipos[item[p].tipo],
					"start": item[p].start
				};
			}
			else {
				var temp1 = new Template('<div class="#{estilo}" title="#{title}" id="title_#{tipo}_#{id}"><div class="flag"><img src="../img/icons/status_#{estado}.png" /></div><div class="title" style="width: 220px;">#{name}</div><div class="type" style="width: 180px;">#{type}</div><a class="minfo" title="Más información" id="toggle_#{id}" href="javascript:toggleInfo(\'#{tipo}\',\'#{id}\');">&nbsp;</a></div></div><div class="big#{estilo}" id="#{tipo}_#{id}" style="display:none"></div>');
				var jsontoeval = {
					"estilo": "listado" + i,
					"id": p,
					"title": estados[item[p].estado],
					"estado": item[p].estado,
					"name": item[p].name,
					"type": item[p].tipo,
				};
			}
			if (tipo != 'eventos') {
				$(elem).innerHTML += temp1.evaluate(jsontoeval);
			}
			else {
				$(elem).innerHTML += temp2.evaluate(jsontoeval);
			}
		}
	}
	else {
		$(elem).innerHTML = "No hay elementos de esta categoría para mostrar.";
	}	
}

function listMainCategories (items,tipo,elem) {
	var tpl = new Template('<div class="form"><h1>#{categoria}</h1><a href="#{link}#{id}">Acceder</a></div>');
	if (tipo == 1) {
		link = "formacion.php?tipo=";
	}
	else {
		link = "becas.php?tipo=";
	}
	for (p in items) {
		var jsontoeval = {
			"link" : link,
			"id": p,
			"categoria": items[p]	
		}
		$(elem).innerHTML += tpl.evaluate(jsontoeval);
	}
}

function makePopup(item,elem,tipo) {
	var temp = new Template('<a class="button" href="#{link}" title="#{name}">#{name}</a>');
	var i = 0;
	for (p in item) {
		var jsontoeval = {
			"link": tipo + ".php?tipo=" + p,
			"name": item[p],
		}
		i++;
		$(elem).innerHTML += temp.evaluate(jsontoeval);
	}
	//$(elem).style.height = parseInt(30*i) + "px";
}

function showPopup(elem) {
	$(elem).style.display = "table";
}

function closePopup(elem) {
	$(elem).style.display = "none";
}

function closePopups ()
{
	$('POPUPformacion').style.display = "none";
	$('POPUPbecas').style.display = "none";
	$('POPUPeventos').style.display = "none";
}

function openPopFormacion()
{
	showPopup(POPUPformacion); 
	closePopup(POPUPbecas); 
	closePopup(POPUPeventos);
}

function openPopBecas()
{
	showPopup(POPUPbecas); 
	closePopup(POPUPformacion); 
	closePopup(POPUPeventos);
}

function openPopEventos()
{
	showPopup(POPUPeventos); 
	closePopup(POPUPbecas); 
	closePopup(POPUPformacion);
}



function toggleInfo(type,id) {
	var url = "ajax/general.php?action=getInfo";
	if (toggled == 0) {
		$('toggle_' + id).style.backgroundImage = "url('../img/icons/less_info.png')";
		$('toggle_' + id).title = "Menos información";
		$(type + '_' + id).innerHTML = "<div style='text-align: center'><img src='../img/icons/ajax-loader.gif' title='Cargando ...' alt='Cargando ...' /></div>";
		$("title_" + type + "_" + id).className = "alt_" + $("title_" + type + "_" + id).className;
		$(type + "_" + id).style.display = "block";
		new Ajax.Request(url, {
			method: 'post',
			parameters: 'type='+type+'&id='+id,
			onSuccess: function(transport)
			{
				eval(transport.responseText.trim());
				displayInfo(type);
			}
		});
		toggled = id;
	}
	else {
		$('toggle_' + toggled).style.backgroundImage = "url('../img/icons/more_info.png')";
		$('toggle_' + toggled).title = "Más información";
		var laclase = $("title_" + type + "_" +  toggled).className.split("_");
		$("title_" + type + "_" +  toggled).className = laclase[1];
		$(type + "_" + toggled).style.display = "none";
		if (id != toggled) {
			$('toggle_' + id).style.backgroundImage = "url('../img/icons/less_info.png')";
			$('toggle_' + id).title = "Menos información";
			$(type + '_' + id).innerHTML = "<div style='text-align: center'><img src='../img/icons/ajax-loader.gif' title='Cargando ...' alt='Cargando ...' /></div>";
			$("title_" + type + "_" + id).className = "alt_" + $("title_" + type + "_" + id).className;
			$(type + "_" + id).style.display = "block";
			new Ajax.Request(url, {
				method: 'post',
				parameters: 'type='+type+'&id='+id,
				onSuccess: function(transport)
				{
					eval(transport.responseText.trim());
					displayInfo(type);
				}
			});
			toggled = id;
		}
		else {
			toggled = 0;
		}
	}
}

function displayInfo(type)
{
	switch (type) { case "formacion": var tipo = 1; break;  case "becas": var tipo = 2; break;  case "eventos": var tipo = 3; break; default: break; }
	var temp_file = new Template('<div class="info1"><a class="button_#{class}" href="../files/'+type+'/#{file}" title="#{file}">#{file}</a></div>');
	var temp_solicitudyes =  new Template('<br><span><a class="button2" id="subscribe-#{id}" href="javascript:suscribe(\'#{sessionid}\',\'#{id}\','+tipo+');">Inscribirse</a></span>');
	var temp_solicitudno = new Template('<br /><div class="button">#{estadosolicitud}</div>');	
	var temp_registrarse = new Template('<br /><span><a class="button2" href="registro.php">Regístrate para inscribirte</a></span>');
	var temp_rellenar1 = new Template('<br /><span><a class="button2" href="user_mod.php">Rellene la información para cursos y eventos.</a></span>');
	if (type == "becas") {
		var temp_estudiosadicional1 = new Template('<strong>Especialidad:</strong>&nbsp;#{especialidad}<br />');
		var temp_estudiosadicional2 = new Template('<strong>Idiomas:</strong> #{idiomas}<br />');
		var temp_principal = new Template('#{descripcion} <div class="box1">Formación recomendada</div><div id="info" class="info1"><strong>Estudios:</strong>&nbsp;#{actividad}<br /></div>');
		var temp_valorables = new Template('<div class="box1">Conocimientos Valorables</div><div class="info1">#{valorables}</div>');
		var temp_especificos = new Template('<div class="box1">Conocimientos Valorables</div><div class="info1">#{especificos}</div>');
		for (p in items) {
			var elem = type+"_"+p;
			var item = items[p];
			$(elem).innerHTML = "";
			$(elem).innerHTML += temp_principal.evaluate(item);
			if (item.especialidad.trim() != "") { $("info").innerHTML += temp_estudiosadicional1.evaluate(item); }
			if (item.idiomas.trim() != "") { $("info").innerHTML += temp_estudiosadicional2.evaluate(item); }
			if (item.valorables.trim() != "") { $(elem).innerHTML += temp_valorables.evaluate(item); }
			if (item.especificos.trim() != "") { $(elem).innerHTML += temp_especificos.evaluate(item); }
			Effect.ScrollTo("title_"+elem);
			if (item.estadosolicitud.trim() != null) {
				if (item.estadosolicitud == "5") { $(elem).innerHTML += temp_solicitudyes.evaluate(item); }
				else if (item.estadosolicitud == "1") { $(elem).innerHTML += temp_registrarse.evaluate(item); }
				//else if (item.estadosolicitud == "100") { $(elem).innerHTML += temp_rellenar1.evaluate(item); }
				else { $(elem).innerHTML += temp_solicitudno.evaluate(item); }
			}			
		}
	}
	else if (type == "formacion") {
		var temp_principal = new Template('#{descripcion}<div class="box1">Detalles de la formación</div><div class="info1"><strong>Horario:</strong>&nbsp;#{horario}<br /><strong>Finalización:</strong>&nbsp;#{end}<br /><strong>Precio:</strong>&nbsp;#{precio}</div><div class="box1">Créditos convalidables</div><div class="info1">#{creditos}</div>');
		for (p in items) {
			var elem = type+"_"+p;
			var item = items[p];
			$(elem).innerHTML = "";
			$(elem).innerHTML += temp_principal.evaluate(item);
			if (item.files) {
				$(elem).innerHTML += '<div class="box1">Archivos adicionales</div>';
				for (k in item.files) {
					var ext = item.files[k].substr(-3);
					if (ext == "pdf") { var laclase = "filepdf"; }
					else { var laclase = "fileimg"; }
					var jsontoeval = {"class":laclase, "file": item.files[k]};
					$(elem).innerHTML += temp_file.evaluate(jsontoeval);
				};
			}
			Effect.ScrollTo("title_"+elem);
			if (item.estadosolicitud.trim() != null) {
				if (item.estadosolicitud == "5") { $(elem).innerHTML += temp_solicitudyes.evaluate(item); }
				else if (item.estadosolicitud == "1") { $(elem).innerHTML += temp_registrarse.evaluate(item); }
				else if (item.estadosolicitud == "100") { $(elem).innerHTML += temp_rellenar1.evaluate(item); }
				else { $(elem).innerHTML += temp_solicitudno.evaluate(item); }
			}
		}
	}
	else {
		for (p in items) {
			var elem = type+"_"+p;
			var item = items[p];
			$(elem).innerHTML = "";
			$(elem).innerHTML += item.descripcion;
			if (item.files)
			{
				$(elem).innerHTML += '<div class="box1">Archivos adicionales</div>';
				for (k in item.files) {
					var ext = item.files[k].substr(-3);
					if (ext == "pdf") { var laclase = "filepdf"; }
					else { var laclase = "fileimg"; }
					var jsontoeval = {"class":laclase, "file": item.files[k]};
					$(elem).innerHTML += temp_file.evaluate(jsontoeval);
				};
			}
			Effect.ScrollTo("title_"+elem);
			if (item.estadosolicitud.trim() != null) {
				if (item.estadosolicitud == "5") { $(elem).innerHTML += temp_solicitudyes.evaluate(item); }
				else if (item.estadosolicitud == "1") { $(elem).innerHTML += temp_registrarse.evaluate(item); }
				else if (item.estadosolicitud == "100") { $(elem).innerHTML += temp_rellenar1.evaluate(item); }
				else { $(elem).innerHTML += temp_solicitudno.evaluate(item); }
			}

		}
	}
}

function suscribe(userid, itemid, type) {
	var url = "../publica/ajax/general.php?action=suscribe";
	new Ajax.Request(url, {
		method: 'post',
		parameters: 'usersId='+userid+'&itemId='+itemid+'&type='+type,
		onSuccess: function(transport) {
			if (transport.responseText.trim() == "1") {
				$("subscribe-" + itemid).href = "#";
				$("subscribe-" + itemid).style.backgroundColor = "#6D8080";
				$("subscribe-" + itemid).style.color = "#FFF";
				$("subscribe-" + itemid).innerHTML = "Inscrito";
			}
			else if (transport.responseText.trim() == "2") {
				alert("Ya está inscrito a más de 3 becas, es el máximo");				
			}
			else {
				alert("Ha ocurrido un problema enviando la solicitud, vuelva a intentarlo.");
			}
		}
	});
}

function delSolicitud(idusuario,item,type)
{
	if (!confirm("¿Está seguro de que desea borrar esta solicitud?")) { }
	else
	{
		var url = "../publica/ajax/general.php?action=delSolicitud"; 
		new Ajax.Request(url, {
			method: 'post',
			parameters: 'user='+idusuario+'&item='+item+'&type='+type,
			onSuccess: function(transport) {
				if (transport.responseText == "1") {
					alert("Se ha eliminado la solicitud");
					setTimeout("listSolicitudes()",250);
				}					
			}
		});
	}
}
	
function listSolicitudes() {
	var url = "../publica/ajax/general.php?action=listSolicitudes";
	new Ajax.Request(url, {
		method: 'get',
		onSuccess: function(transport) {
			$("solicitudes").innerHTML = transport.responseText;
		}
	});
}

function incompatibleBrowser(){
	//$('MENU').remove();
	//$('FOTOS').remove();
	$('SIDEBAR').remove();
	$('CONTENT').style.width = '845px';
	$('CONTENT').innerHTML = "<h1>Navegador Incompatible</h1><img src='../img/icons/warning.png' align='left' vspace='7'><p class='big' style='width: auto;'>Se han detectado problemas de compatibilidad con su navegador actual. Estamos trabajando para solucionarlo tan rápido como podemos, mientras tanto, le recomendamos que para una correcta visualización de la página web descargue temporalmente <a href='http://download.mozilla.org/?product=firefox-3.0.10&os=win&lang=es-ES'>Mozilla Firefox</a> y visite la página con él.<br /><br />Gracias y disculpe las molestias. Atentamente, el equipo de la Cátedra SEAT UPC</p>";
}

function login() {
	if(($('usersName').value != "" && $('usersName').value != undefined) && ($('usersPass').value != "" && $('usersPass').value != undefined)) {
		var url = "../publica/ajax/general.php?action=login";
		new Ajax.Request(url, {
			method: 'post',
			parameters: 'usersName='+$('usersName').value+'&usersPass='+$('usersPass').value,
			onSuccess: function(transport) {
				result = transport.responseText.split("#");
				if (result[0] == "1") { window.location.reload(); }
				else { alert("La contraseña o el usuario introducidos no son correctos."); }
			}
		});
	}
	else { alert("Complete el formulario con su usuario y contraseña."); }
}

function logout() {
	var url = "../publica/ajax/general.php?action=logout";
	new Ajax.Request(url, {
		method: 'get',
		onSuccess: function(transport) {
			if (transport.responseText.trim() == "1") { window.location.href = "index.php"; }
		}
	});
}
			
function doCajas(cajas) {
	var tpl = new Template('<div class="#{tipo}"><div class="titulo2" id="title_#{tipo}">#{title}</div><div class="info2" id="content_#{tipo}">#{content}</div><a href="#{link}" class="link_caja" id="link_#{tipo}"></a>')
	for (p in cajas) {
		var link;
		switch (cajas[p].main) { case 1: link = "formacion.php"; break; case 2: link = "becas.php"; break; case 3: link = "eventos.php"; break; default: break; }
		if (cajas[p].tipo != "undefined" && cajas[p].tipo != undefined) { link += "?tipo="+cajas[p].tipo+"&id="+cajas[p].item; }
		else { link += "?id="+cajas[p].item; }
		var jsontoeval = {"tipo" : p, "title" : cajas[p].title, "content" : cajas[p].content, "link": link }
		$('SIDEBAR').innerHTML += tpl.evaluate(jsontoeval);
	}
}

function doSelect(formfield, variable, item) {
	$(formfield).innerHTML = "";
	for (p in variable) {
		var opt = document.createElement("OPTION");
		if (typeof(variable[p]) == "object") {
			opt.innerHTML = variable[p].name;
			opt.setAttribute('value', p);
		}
		else {
			opt.innerHTML = variable[p];
			opt.setAttribute('value', parseInt(p));
		}
		if (p == item) {
			opt.selected = "1";
		}
		$(formfield).appendChild(opt);
	};
}

function selSelect(item,id)
{
	var div = $(item);
	var elms = div.getElementsByTagName("*");
	for (var i = 0, maxI = elms.length; i < maxI; ++i) {
		var elm = elms[i];
		if (parseInt(elm.value) == parseInt(id)) {
			elm.selected = "1";
		}
	}	
}

function doLinks(links)
{
	var tpl = new Template('<a class="link_columna" title="#{name}" href="formacion.php?id=#{id}">- #{name}</a>');
	for (p in links)
	{
		var item = links[p];
		$('columna1').innerHTML += tpl.evaluate(item);
	}
}

function doPatrocinadores(patrocinadores)
{
	var tpl = new Template('<a href="#{url}" target="_blank" title="#{name}"><img src="../files/patrocinadores/#{imagen}" alt="#{name}" title="#{name}" align="middle" border="0" hspace="5"></a>');
	for (p in patrocinadores)
	{
		var item = patrocinadores[p];
		$('patrocinadores').innerHTML += tpl.evaluate(item);
	}

}

function contacto()
{
	if (JSV.Validate.checkForm('contacto')) {
		var url = "../publica/ajax/general.php?action=contacto";
		new Ajax.Request(url, {
			method: 'post',
			parameters: "nombre="+$('form_contactoNombre').value+"&poblacion="+$('form_contactoPoblacion').value+"&provincia="+$('form_contactoProvincia').value+"&telefono="+$('form_contactoTelefono').value+"&email="+$('form_contactoMail').value+"&dept="+$('form_contactoDept').value+"&msg="+$('form_contactoConsulta').value,
			onSuccess: function(transport) {
				
			}
		});
	}
}

