var arr_submenu;
var arr_menu;
var ajax = 0;
var home_seccion_cont;
var home_seccion_div;
var home_submenu_cont;
var home_galeria_cont;
var titulo;
var menu_actual;
var menu_animacion;
var valor_home = '';
/* ESTANDAR */
function obtElemento(elemento){
	return 	window.document.getElementById(elemento)
}
function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}
function objetoAjax() {
	var xmlhttp=false;
	try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {
		try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; }
	}
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp = new XMLHttpRequest(); }
	return xmlhttp;
}
function validarTexto(nombre_item){
	var txt;
	var msj;
	if (obtElemento(nombre_item) == null ) { return false; }
	txt = obtElemento(nombre_item).value;
	txt=trim(txt);
	if ( txt.length == "" ) { return false; } else { return true; }
}
function validarExpr(nombre_item, expre){
	var txt;
	var msj;
	if (obtElemento(nombre_item) == null ) { return false; }
	txt = obtElemento(nombre_item).value;
	txt=trim(txt);
	if( !expre.test(txt)) { return false; } else { return true;	}
}
function ajustarAltura() {
	obtElemento('contenido').style.height = 'auto';
	if(obtElemento('contenido').offsetHeight < document.documentElement.clientHeight){
		obtElemento('contenido').style.height = document.documentElement.clientHeight + 'px';
	}
}
/* ESTANDAR */
/* INICIAR ELEMENTOS */
window.onload = function() {
	ajustarAltura();
	home_seccion_cont = obtElemento('home_seccion_cont');
	home_submenu_cont = obtElemento('home_submenu_cont');
	home_galeria_cont = obtElemento('home_galeria_cont');
	home_seccion_div = obtElemento('home_seccion_div');
	obtElemento('menu_1').onmouseover = function(){ menu_opcion_fdo_izq(0) };
	obtElemento('menu_1').onmouseout = function(){ menu_opcion_fdo_izq(1) };
	arr_menu = new Array();
	for(i=1; i<=num_menu; i++){
		arr_menu[i] = i;
		setOnclickM(i);
	}
	iniciarSubmenu();
	activarPaginacion();
	activarSlimbox();
	home_galeria_cont.style.height = home_galeria_cont.offsetHeight + 'px';
	home_seccion_div.style.height = home_seccion_cont.offsetHeight + 'px';
}
function cambiarTitulo(){
	document.title = obtElemento('titulo_temp').innerHTML;
}
function cambiarNumSubmenu(){
	num_submenu = obtElemento('num_submenu').innerHTML;
}
function iniciarSubmenu(){
	arr_submenu = new Array();
	for(i=1; i<=num_submenu; i++){
		arr_submenu[i] = i;
		setOnmouseover(i);
		setOnmouseout(i);
		setOnclick(i);
	}
}
function activarPaginacion(){
	if(obtElemento('seccion_pg_siguiente')){
		obtElemento('seccion_pg_siguiente').onclick = function(){  botoncargarSeccion(this.href, null); return false; }
	}
	if(obtElemento('seccion_pg_anterior')){
		obtElemento('seccion_pg_anterior').onclick =  function(){ botoncargarSeccion(this.href, null); return false; }
	}
}
function setOnmouseover(i){ obtElemento('submenu_' + i ).onmouseover = function(){ menu_opcion_final(0, arr_submenu[i]) }; }
function setOnmouseout(i){ obtElemento('submenu_' + i ).onmouseout = function(){ menu_opcion_final(1, arr_submenu[i]) }; }
function setOnclick(i){ 
	obtElemento('submenu_' + i ).onclick = function(){  botoncargarSeccion(this.href, arr_submenu[i]); return false; }
}
function botoncargarSeccion(url, submenu){
	if(submenu != null){ desactivarSubmenu(); activarSubmenu(submenu); }
	var cadena = url.split(ruta_archivo + '?');
	animarSalidaSeccion();
	var tiempo = setTimeout("cargarSeccion('" + cadena[1] + "', " + submenu + ")",1000);
}
function setOnclickM(i){
	obtElemento('menu_' + i ).onclick = function(){ 
		desactivarMenu();
		activarMenu(i); 
		var cadena = this.href.split(ruta_archivo + '?');
		animarSalidaHome(this.rel, cadena[1], arr_menu[i]);
		//var tiempo = setTimeout("cargarPagina('" + cadena[1] + "', " + arr_menu[i] + ")",1000);
		if( arr_menu[i] == 1 ){ menu_opcion_fdo_izq2(0) } else { menu_opcion_fdo_izq2(1) }
		return false; 
	};
}
function desactivarSubmenu(){ for(i=1; i<=num_submenu; i++){ menu_opcion_final2(1, i); } }
function activarSubmenu(i){ 
	menu_opcion_final2(0, i) 
	animarEntradaLigaSubmenu(i);
}
function desactivarMenu(){ for(i=1; i<=num_menu; i++){ menu_opcion_final3(1, i); } }
function activarMenu(i){ 
	menu_opcion_final3(0, i); 
	menu_actual = i; }
/* INICIAR ELEMENTOS */
/* AJAX */
function cargarSeccion(url, i){
	fun_ajax();
	ajax = objetoAjax();
	datos = "ajax/seccion.php?" + url;
	ajax.open("GET", datos);
	ajax.onreadystatechange = function() {
		if (ajax.readyState == 4) { 
			home_seccion_cont.innerHTML = ajax.responseText; 
			activarPaginacion(); 
			cambiarTitulo(); 
			pngfix_2(); 
			home_galeria_cont.innerHTML = ''; 
			activarSlimbox(); 
			animarEntradaSeccion(); 
		}
		if (ajax.readyState == 1) { /*cargando*/ }	
	}
	ajax.send(null)
}
function cargarPagina(url, i){
	fun_ajax();
	ajax = objetoAjax();
	datos = "ajax/submenu.php?" + url;
	ajax.open("GET", datos);
	ajax.onreadystatechange = function() {
		if (ajax.readyState == 4) {  home_submenu_cont.innerHTML = ajax.responseText; cambiarNumSubmenu(); iniciarSubmenu(); cargarHome(url); }
		if (ajax.readyState == 1) { /*cargando*/ }	
	}
	ajax.send(null)
}
function cargarHome(url){
	fun_ajax();
	ajax = objetoAjax();
	datos = "ajax/home.php?" + url;
	ajax.open("GET", datos);
	ajax.onreadystatechange = function() {
		if (ajax.readyState == 4) { 
			//home_seccion_cont.innerHTML = ajax.responseText; 
			valor_home = ajax.responseText; 
			//
			pngfix_2(); 
			cargarGaleriaHome(url); 
		}
		if (ajax.readyState == 1) { /*cargando*/ }	
	}
	ajax.send(null)
}
function cargarGaleriaHome(url){
	fun_ajax();
	ajax = objetoAjax();
	datos = "ajax/galeria.php?" + url;
	ajax.open("GET", datos);
	ajax.onreadystatechange = function() {
		if (ajax.readyState == 4) { 
			home_galeria_cont.innerHTML = ajax.responseText;
			if(obtElemento('home_galeria_script')){
				eval(obtElemento('home_galeria_script').innerHTML);
				pngfix_2();
			}
			activarSlimbox();
			lineaAnimarHomeSalir();
			//animarEntradaHome();
		}
		if (ajax.readyState == 1) { /*cargando*/ }	
	}
	ajax.send(null)
}
/* AJAX */
/* ANIMACIONES */
function animarEntradaHome(){
	if(home_galeria_cont.innerHTML != "" ){ animarEntradaGaleria(); } 
	var myEffect = new Fx.Morph('home_seccion_cont', {duration: 'short', transition: Fx.Transitions.Sine.easeIn });
	myEffect.start({ 'opacity': 1 });
	home_seccion_div.className = '';	
	animarSalidaContenido();
	animarEntradaSubmenu();
}
function animarSalidaHome(titulo, url, i){
	if(trim(home_galeria_cont.innerHTML) != "" ){ animarSalidaGaleria(); }
	animarSalidaSubmenu();
	var myEffect = new Fx.Morph('home_seccion_cont', {duration: 'short', transition: Fx.Transitions.Sine.easeOut, onComplete: function() { lineaAnimarHomeEntrar(titulo, url, i); }});
	myEffect.start({ 'opacity': 0 });
	home_seccion_div.className = 'loading';	
}
function lineaAnimarHomeEntrar(titulo, url, i){
	var myEffect = new Fx.Morph('home_seccion_cont', {duration: 0, transition: Fx.Transitions.Sine.easeOut});
	myEffect.start({ 'opacity': 1 });
	
	var myEffect2 = new Fx.Morph('home_seccion_div', {duration: 450, transition: Fx.Transitions.Sine.easeOut, onComplete: function() { ajustarAltura(); }});
	
	myEffect2.start({ 'height': 394 });
	home_seccion_cont.innerHTML = '<div id="home_seccion_cont_flash"></div>';
	
	//swfobject.embedSWF("img/intro.swf?titulo="+titulo+"&url="+url+"&i="+i, "home_seccion_cont_flash", "890", "394", "9.0.0", "expressInstall.swf");
	
	var flashvars = {
		titulo: titulo,
  		url: url,
  		i: i
	};
	var params = {
		menu: "false"	
	};
	var attributes = {};
	
	swfobject.embedSWF("img/intro.swf", "home_seccion_cont_flash", "890", "394", "9.0.0","img/expressInstall.swf", flashvars, params, attributes);
	
	/*home_seccion_cont.innerHTML = '<div id="titulo_trans"><h1>' + titulo + '</h1></div>';
	var myEffect = new Fx.Morph('home_seccion_cont', {duration: 'long', transition: Fx.Transitions.Sine.easeOut, onComplete: function() { cargarPagina(url, i); }});
	myEffect.start({ 'opacity': 1 });*/
	
}
function lineaAnimarHomeSalir(){
	var myEffect = new Fx.Morph('home_seccion_cont', {duration:0, transition: Fx.Transitions.Sine.easeOut, onComplete: function() { home_seccion_cont.innerHTML = valor_home; cambiarTitulo();  animarEntradaHome(); }});
	myEffect.start({ 'opacity': 0 });
	
}
function animarEntradaContenido(){
	var myEffect = new Fx.Morph('home_seccion_div', {duration: 'short', transition: Fx.Transitions.Sine.easeOut, onComplete: function() { ajustarAltura(); } });
	myEffect.start({ 'height': home_seccion_cont.offsetHeight });
}
function animarSalidaContenido(){
	/*var posM = -800;//(menu_actual < menu_animacion )?-800:1600;
	var myEffect2 = new Fx.Morph('home_seccion_cont', {duration:750, transition: Fx.Transitions.Sine.easeOut});
	myEffect2.start({ 'margin-left':[posM, 0] });*/
	var myEffect = new Fx.Morph('home_seccion_div', {duration: 450, transition: Fx.Transitions.Sine.easeOut, onComplete: function() { ajustarAltura(); }});
	myEffect.start({ 'height': home_seccion_cont.offsetHeight });
}
function animarSalidaSeccion(){
	if( home_galeria_cont.offsetHeight == 219 ){ animarSalidaGaleria(); }
	//home_seccion_cont.innerHTML = '';
	var myEffect = new Fx.Morph('home_seccion_cont', {duration: 'short', transition: Fx.Transitions.Sine.easeOut});
	myEffect.start({ 'opacity': 0 });
	home_seccion_div.className = 'loading';	
}
function animarEntradaSeccion(){
	animarEntradaContenido();
	var myEffect = new Fx.Morph('home_seccion_cont', {duration: 'short', transition: Fx.Transitions.Sine.easeIn, onComplete: function() { ajustarAltura(); } });
	myEffect.start({ 'opacity': 1 });
	home_seccion_div.className = '';	
}
function animarEntradaSubmenu(){
	var myEffect = new Fx.Morph('home_submenu_cont', {duration:750, transition: Fx.Transitions.Sine.easeIn});
	myEffect.start({ 'opacity': 1 });
}
function animarSalidaSubmenu(){
	var myEffect = new Fx.Morph('home_submenu_cont', {duration: 'short', transition: Fx.Transitions.Sine.easeOut});
	myEffect.start({ 'opacity': 0 });
}
function animarEntradaLigaSubmenu(i){
	var myEffect = new Fx.Morph('submenu_cont_' + i, {duration:1000, transition: Fx.Transitions.Sine.easeOut});
	myEffect.start({ 'opacity': [0, 1] });
}
function animarSalidaLigaSubmenu(i){
	var myEffect = new Fx.Morph('submenu_cont_' + i, {duration:1000, transition: Fx.Transitions.Sine.easeIn});
	myEffect.start({ 'opacity':[0, 1] });
}
function animarEntradaGaleria(){
	var myEffect = new Fx.Morph('home_galeria_cont', {duration: 'short', transition: Fx.Transitions.Sine.easeIn, onComplete: function() { ajustarAltura(); }});
	myEffect.start({ 'opacity': 1, 'height': 219 });
}
function animarSalidaGaleria(){
	var myEffect = new Fx.Morph('home_galeria_cont', {duration: 'short', transition: Fx.Transitions.Sine.easeOut, onComplete: function() { ajustarAltura(); }});
	myEffect.start({ 'opacity': 0, 'height': 0 });
}
/* ANIMACIONES */ 
/* CONTROL DE ESTILOS */
function menu_opcion_final(evento, div){
	if(obtElemento('submenu_' + div ).className != 'submenu_activo'){
		obtElemento('submenu_izq_' + div ).className = (evento == 1)?'submenu_izq':'submenu_izq2';
		obtElemento('submenu_der_' + div ).className = (evento == 1)?'submenu_der':'submenu_der2';
	}
}
function menu_opcion_final2(evento, div){
	obtElemento('submenu_' + div ).className = (evento == 1)?'':'submenu_activo';
	obtElemento('submenu_izq_' + div ).className = (evento == 1)?'submenu_izq':'submenu_izq2';
	obtElemento('submenu_der_' + div ).className = (evento == 1)?'submenu_der':'submenu_der2';
}
function menu_opcion_final3(evento, div){
	if( obtElemento('menu_' + div ).className == 'menu_activo menu_' + div && evento == 1 ){ menu_animacion = div; }
	obtElemento('menu_' + div ).className = (evento == 1)?'menu_' + div:'menu_activo menu_' + div;
}
function menu_opcion_fdo_izq(evento){
	if(obtElemento('info_izq').className != 'info_izq_activo'){
		obtElemento('info_izq').className = (evento == 1)?'info_izq':'info_izq2';
	}
}
function menu_opcion_fdo_izq2(evento){
	obtElemento('info_izq').className = (evento == 1)?'info_izq':'info_izq_activo';
}
function pngfix_2(){ if(typeof(pngfix) !== 'undefined') { pngfix(); } }
function fun_ajax(){ if(typeof(ajax) == 'object')  {  ajax.abort(); } }
function activarSlimbox(){
	$$("a").filter(function(el) {
		return el.rel && el.rel.test(/^lightbox/i);
	}).slimbox({/* Put custom options here */}, null, function(el) {
		return (this == el) || ((this.rel.length > 8) && (this.rel == el.rel));
	});
}
/* CONTROL DE ESTILOS */
/* CONTACTO */
function limpiarContacto(ele){
	if( ele.value == 'NOMBRE' || ele.value == 'E-MAIL' || ele.value == 'MENSAJE' ){ ele.value = ''; }
}
function ponerContacto(ele){
	if( trim(ele.value) == ''){
		switch(ele.id){
			case 'contacto_nombre':
				ele.value = 'NOMBRE';
				break;
			case 'contacto_email':
				ele.value = 'E-MAIL';
				break;
			case 'contacto_comentario':
				ele.value = 'MENSAJE';
				break;
			default:
				break;
		}
	}
}
function enviarContacto(){
	var i=0;
	var v_correo =/^[^@\s]+@[^@\.\s]+(\.[^@\.\s]+)+$/;
	alerta = "";
	limpiarContacto(obtElemento('contacto_nombre'));
	limpiarContacto(obtElemento('contacto_email'));
	limpiarContacto(obtElemento('contacto_comentario'));
	if(!validarTexto('contacto_nombre')){ i=1; alerta += " - Nombre.\n"; } 
	if(!validarExpr('contacto_email', v_correo)){ i=1; alerta += " - E-mail válido.\n"; } 
	if(!validarTexto('contacto_comentario')){ i=1; alerta += " - Mensaje."; } 
	if(i==0){
		enviarDatosContacto(obtElemento('contacto_nombre').value, obtElemento('contacto_email').value, obtElemento('contacto_comentario').value);
	} else {
		alert("Por favor, ingrese lo siguiente:\n" + alerta);
		ponerContacto(obtElemento('contacto_nombre'));
		ponerContacto(obtElemento('contacto_email'));
		ponerContacto(obtElemento('contacto_comentario'));
	} 
}
function enviarDatosContacto(nombre, email, comentario){
	var ajax=objetoAjax();
	ajax.open("POST", "ajax/contacto.php", true);
	ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	ajax.send("nombre="+nombre+"&email="+email+"&comentario="+comentario);
	obtElemento('contacto_enviar').style.display = 'none';
	ajax.onreadystatechange=function(){
		if (ajax.readyState==4){ 
			if(ajax.responseText == 1){
				alert("Gracias por tu mensaje.");	
			} else { 
				alert("Lo sentimos, el mensaje no se envio.\nIntente de nuevo.");	
			}
			obtElemento('contacto_enviar').style.display = '';
		}
	}
}
/* CONTACTO */

