// @uthor 	: Jaime Cifuentes P.
// Date		: Nov 2008
// Main Functions Javascript site bancoestado.cl 



function cambiar_links(classe){
	
	arreglo_link=document.links;
	if (document.location.protocol == "https:"){
		
		
		for (x=0;x<=(arreglo_link.length-1);x++){									
				if (arreglo_link[x].href.indexOf("https",0)!=-1){
					//alert (arreglo_link[x].href);
					arreglo_link[x].href=arreglo_link[x].href.replace("https","http");
				}

		}
		arreglo_noClass=document.getElementsByClassName(classe);
		for(x=0;x<=(arreglo_noClass.length-1);x++){
			if (arreglo_noClass[x].href.indexOf("https",0)==-1){
				arreglo_noClass[x].href=arreglo_noClass[x].href.replace("http","https");		
			}
		}
	}
	return true;
}
document.getElementsByClassName = function(cl) {
	var retnode = [];
	var myclass = new RegExp('\\b'+cl+'\\b');
	var elem = this.getElementsByTagName('*');
	for (var i = 0; i < elem.length; i++) {
		var classes = elem[i].className;
		if (myclass.test(classes)) retnode.push(elem[i]);
	}
	return retnode;
};


function reposicionamiento(){
	
	var tamanio_pantalla = document.getCoordinates().height;
	var screen_y = document.getScroll().y;	
	var caja_interior = $(this).getElements('ul');
	if(caja_interior[0])
		{
			
			caja_interior[0].style.top = '0px';
			
				posicion_caja_interior = caja_interior[0].getCoordinates().top;
				posicion_total = caja_interior[0].getCoordinates().bottom;
				
				if (posicion_total > tamanio_pantalla)
				{
				var posicion_final = posicion_total - tamanio_pantalla - screen_y + 5;
				//alert (posicion_total +"-"+ tamanio_pantalla +"-"+ screen_y);
				 if (posicion_final >0){
					
					 caja_interior[0].style.top = "-" + posicion_final + "px";
					 }
					else{
					
						caja_interior[0].style.top = "0px";
						}
				
				}
		}
}

var posicion_caja_inicial = new Array();

function seleccion_cajitas_grandes(){
		
	var cajitas = $$('#side li');
	

	
	for ( i = 0; i < cajitas.length; i++){
			
	if(cajitas[i].getElements('ul').length > 0)	{
		
		cajitas[i].addEvent('mouseover', reposicionamiento);
		
		}
		
	}
}



//******************************************************************//





// Acorta links de menu de migas que son demasiado grandes
function format_links() {
var migas = document.getElementById('migas');
var migas_width = migas.offsetWidth;
var link, link_orig_text, link_text, i = 0,total_width = 0, dif; 
var links = migas.getElementsByTagName('a');
var ultimo = links.length - 1;
//		alert(ultimo);

//while (link = links.item(i++)) {
while (i <= ultimo) {
		total_width += links[i].offsetWidth;
		links[i].title = links[i].innerHTML;
		i++;
	}
//	alert(total_width);
	total_width += 120;

	if (total_width > migas_width){
		link_orig_text = links[ultimo].innerHTML;		
		link_text = link_orig_text;	
		while (total_width >= migas_width) {
			width_orig = links[ultimo].offsetWidth;
			if ((link_text.length - 2) < 5 ){
				link_text = link_text.substring(0, link_text.length - 3);
				link_text = link_text.replace(/_+$/, '') + '...';
				links[ultimo].innerHTML=link_text;
				dif = width_orig - links[ultimo].offsetWidth;
				ultimo--; 
				link_orig_text = links[ultimo].innerHTML;
				link_text = links[ultimo].innerHTML;			
			}
			else{
				link_text = link_text.substring(0, link_text.length - 2);
				links[ultimo].innerHTML=link_text;
				dif = width_orig - links[ultimo].offsetWidth;
			}	
			total_width -= dif;
		}
		link_text = link_text.substring(0, link_text.length - 3);
		link_text = link_text.replace(/_+$/, '') + '...';
		links[ultimo].innerHTML=link_text;
	}
}



function getElement(id){
	return (document.createElement && document.getElementById)?document.getElementById(id):document.all[id];
}
var DivAnterior = "";
var LiAnterior = "";

//verifica si existen los objetos necesario para construir un menu de fichas
function verifica(){
	if(getElement("nav")==null||getElement("sc0")==null){
		return false;
	}else if(getElement("nav").getElementsByTagName("a").length<1){
		return false;
	}
	else{
		return true;
	}
}

//Oculta o muestra un item del menu de fichas
function muestra(objLi){
	if(!verifica()){return;}
	
	if(LiAnterior != null){
		LiAnterior.className= "";
	}
	if(DivAnterior != null){
		DivAnterior.style.display = "none";
		DivAnterior.className = "";
		//alert(DivAnterior.className);
	}


	var pageToShow = getElement(objLi.rel);
	if(pageToShow != null){
		objLi.className = "selected"
		pageToShow.style.display = "block";
		pageToShow.className = "selected";
		DivAnterior = pageToShow;
		LiAnterior = objLi;
	}
	return;
}


function menuFichas(){
	if(!verifica()){return;}
	var LiInit = getElement("nav").getElementsByTagName("a")[0];
	var pageInit = getElement(getElement("nav").getElementsByTagName("a")[0].rel);
		if(LiInit != null){
		LiInit.className= "selected";
		LiAnterior = LiInit;
	}
	if(pageInit){
		pageInit.style.display = "block";
		pageInit.className = "selected";
		DivAnterior = pageInit;
	}
return;
}

/**********************************************
Programacion para la eliminacion, 
consulta y agregación de cookies
**********************************************/
function getCookie(name) {
	var prefix = name + '=';
	var c = document.cookie;
	var nullstring = '';
	var cookieStartIndex = c.indexOf(prefix);
	if (cookieStartIndex == -1) return nullstring;
	var cookieEndIndex = c.indexOf(";", cookieStartIndex + prefix.length);
	if (cookieEndIndex == -1) cookieEndIndex = c.length; return unescape(c.substring(cookieStartIndex + prefix.length, cookieEndIndex));
}

function deleteCookie(name) { 
	var exp = new Date(); 
	exp.setTime (exp.getTime() - 1); 
	var cval = getCookie(name); 
	document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}

function setCookie(name, value, validez, path, domain, secure){
	//var validez = 30;
	if (isNaN(validez)) validez = 30;
	var expires = new Date(); 
	expires.setTime(expires.getTime() + (validez*24*60*60*1000)); 
	document.cookie = name+"="+escape(value)+((expires)?";expires="+expires.toGMTString():"")+((path)?";path="+path:"")+((domain)?";domain="+domain:"")+((secure)?";secure":"");
}
/**********************************************
Programacion para la eliminacion, 
consulta y agregación de cookies
**********************************************/

function redirectHome(url){
	if($('opc_si').checked == true)
		setCookie('CookieRedirect', url);
	else
		deleteCookie('CookieRedirect');
	location.href = url;
}

function actionsInHome(){
	var URI = document.location.toString();
	

	var URI_home = URI.indexOf("C09DE1BFA2114CCD9E6638438687BDCD.asp");
	var param_h = (URI.split("?")[1] == undefined)?false:URI.split("?")[1].split("=")[0] == "h" && URI.split("?")[1].split("=")[1] == "ref";
	
	if(URI_home > 10){
		// No viene de pagina interna, por lo que puede redireccionar
		if(!param_h){
			var datoCookie = getCookie('CookieRedirect');
			if(datoCookie  != "")
				location.href = datoCookie;
		}
		
		// Poner action cookie en elementos de menu
		$$('#menuprincipal a').each(function(link){
			temp_url = link.getProperty('href');
			link.setProperty('href','javascript:redirectHome("'+temp_url+'");');
		});
	}
	
}

/**********************************************
FAQ
**********************************************/
function generarFAQ()
{
	if($('sc4'))
	{
		
	if($ES('ul p.nivel2','sc4').length > 1){
		
		if ($ES('li','sc4').length > 0) {
			
			$ES('li','sc4').each(function(item) {

				var pregunta = item.getChildren('p.nivel2')[0];
				
				if(pregunta)
				{
					var respuesta = item.getChildren('ul.nivel2')[0];
					var textoPregunta = pregunta.getText();
					
					pregunta.setText("");
					
					var link = new Element('a', {'href':'javascript:void(0)'}).appendText(textoPregunta);
					link.injectInside(pregunta);
					
					link.addEvent('click', function(e){
						
						$$('p.nivel2 a').each(function(subItem) {
							subItem.removeClass("preguntaSeleccionada");
						});
						
						$$('ul.nivel2').each(function(subItem) {
								//alert(subItem);
								subItem.removeClass("faq_respuesta_visible");
							});
						respuesta.addClass("faq_respuesta_visible");
						this.addClass("preguntaSeleccionada");
					});
				}
			
			});
			
		}
		
		}
		else{
			
			respuesta = $ES('ul.nivel2','sc4')[0];
			respuesta.addClass("faq_respuesta_visible");
			
			
			
			
			}
		
	}
}

/**********************************************
TARIFAS
**********************************************/
function generarTarifas()
{
	if($('generar_tarifas'))
	{
		new Ajax('/bancoestado/inteditorformularios/genera.asp?datos=147', {
			method: 'get',
			encoding: 'iso-8859-1',
			update: $('generar_tarifas')
		}).request();
		//http://www.bancoestado.cl/bancoestado/inteditorformularios/genera.asp?datos=147
	}
}

/*		Función para abrir en una ventana nueva con tamaños definidos		*/
function popup(url){
	window.open(url, width='800',height='600');
}
function TarifasyRequisitos(pagina,nombre_pop,ancho,alto,izq,der)
{
	var config = "";
	config = "width=" + ancho + ",height=" + alto + ",screenX=" + izq + ",screenY=" + der + ",scrollbars=yes,status=no" ;
	window.open(pagina,nombre_pop,config);
}



window.addEvent('domready', function(){
	var herramientas = "<div id='herramientas'><span class='imprimir'><a href='javascript:print();'>Imprimir</a></span></div>";
	if (verifica()){
		contenido = document.getElementById('content');
		contenido.innerHTML = contenido.innerHTML + herramientas;
	}
	
	
	cambiar_links('ss')
	menuFichas();
	actionsInHome();
	generarFAQ();
	generarTarifas();

//	var elements = document.getElementsByTagName("ul");  		// Elementos a reposicionar
	
	//reposicionamiento();
	 seleccion_cajitas_grandes();


	if ($('migas'))
	{
		format_links(); //Corta los links demasiado largos.

		primera_miga_home = $ES('li','migas')[0].getChildren('a')[0];// para que no salte por la cookie
		primera_miga_home_url = primera_miga_home.getProperty('href'); // traigo el link actual
		primera_miga_home.setProperty('href', primera_miga_home_url+'?h=ref'); // y le agrego ?h=ref para que no salte el home por el portal. JCIPFA
		
		ultimamiga = $('migas').getLast('li'); // para sacar el link del ultimo elemento del menu de migas.
		ultimamiga.addClass("sinBullet");
/*		ultimo_titulo = ultimamiga.get('text');
		ultimamiga.empty();
		ultimamiga.set('text', ultimo_titulo);
*/		
	}
	

});
window.addEvent('load', function() 
							{
								 if($("indicadores")){
									$("indicadores").style.display='block';
									 }
							 });