function mapearClase(icono) {

	var clase = "";	

	switch(icono) {
		// Soleado
		case "sol.gif":
			clase = "soleado";
			break;		

		// Parcialmente nublado	
		case "parcial.gif":
		case "parcialalta2.gif":
		case "parcialalta.gif":
			clase = "parcialmente-nublado";
			break;		

		// Nublado	
		case "cubierto.gif":
		case "cubierto2.gif":
			clase = "nublado";
			break;	

		// Chubascos
		case "llovizna.gif":
		case "lluviaprobable.gif":
			clase = "chubascos";
			break;		

		// Lluvia
		case "lluvia.gif":
			clase = "lluvia";
			break;			

		// Lluvia con nieve
		case "lluvianieve.gif":
			clase = "lluvia-nieve";
			break;			

		// Nieve
		case "nieve.gif":
			clase = "nieve";
			break;			

		// Niebla
		case "niebla.gif":
			clase = "niebla";
			break;
	}	

	return clase;
}

function ocultarAds() {
		$("#google_ads_div_Esp_468x60_Superior_Geografico_ad_container").addClass("invisible");
		$("#gads").addClass("invisible");
}

function mostrarAds() {
		$("#google_ads_div_Esp_468x60_Superior_Geografico_ad_container").removeClass("invisible");
		$("#gads").removeClass("invisible");
}

function guardarObjeto(obj) {
	var date = new Date();        
	date.setTime(date.getTime() + (7 * 60 * 1000));	
	
	$.cookie("ciudad", obj.ciudad, {expires: date, path: "/"});
	$.cookie("maxima", obj.hoy.maxima, {expires: date, path: "/"});
	$.cookie("pronostico", obj.hoy.pronostico, {expires: date, path: "/"});
	$.cookie("fecha", obj.hoy.fecha, {expires: date, path: "/"});
	$.cookie("icono", obj.hoy.icono, {expires: date, path: "/"});
	$.cookie("t_actual", obj.hoy.t_actual, {expires: date, path: "/"});
	$.cookie("h_actual", obj.hoy.h_actual, {expires: date, path: "/"});
	
	for(i in obj.dias) {
		$.cookie("fecha"+i, obj.dias[i].fecha, {expires: date, path: "/"});
		$.cookie("icono"+i, obj.dias[i].icono, {expires: date, path: "/"});
		$.cookie("minima"+i, obj.dias[i].minima, {expires: date, path: "/"});
		$.cookie("maxima"+i, obj.dias[i].maxima, {expires: date, path: "/"});		
	}
}

function obtenerObjeto() {
	var obj = {};
	
	obj.ciudad = $.cookie("ciudad");
	
	// Los dias
	obj.hoy = {
		maxima : $.cookie("maxima"),
		pronostico : $.cookie("pronostico"),
		fecha : $.cookie("fecha"),
		icono : $.cookie("icono"),
		t_actual : $.cookie("t_actual"),
		h_actual : $.cookie("h_actual")
	};		
	
	obj.dias = new Array();

	for(i = 0; i < 5; ++i) {
		obj.dias[i] = {};			
		obj.dias[i].maxima = $.cookie("maxima"+i);			
		obj.dias[i].minima = $.cookie("minima"+i);				
		obj.dias[i].fecha = $.cookie("fecha"+i);
		obj.dias[i].icono = $.cookie("icono"+i);
	}
	
	return obj;
}

function mostrarObjeto(obj) {
	var claseExt = mapearClase(obj.hoy.icono);	
	var tmpHoy = obj.hoy.maxima;
	var fechaHoy = obj.hoy.fecha;
	var pronosticoHoy = obj.hoy.pronostico;
	
	$("#weatherBox .weatherBox_main > a").addClass(claseExt);
	$("#weatherBox .weatherBox_main > a h2").html(tmpHoy);
	$("#weatherBox .weatherBox_main > a span li").html("<span>Max:</span>" + tmpHoy);

	$(".wtc_left .weatherInfo").each(function(i, v) {
		var claseInt = mapearClase(obj.dias[i].icono);
		var fecha = obj.dias[i].fecha;
		var tmpMin = obj.dias[i].minima;
		var tmpMax = obj.dias[i].maxima;
	
		$(v).addClass(claseInt);
		$(v).find("h6").html(fecha);				
		$(v).find("ul li:first-child").html("<span>Min:</span>" + tmpMin);
		$(v).find("ul li:last-child").html("<span>Max:</span>" + tmpMax);
		$(v).find("h2").html(tmpMax);
		
		if(i == 0) {
			$(v).find("ul li:first-child").html("");
		}
	})		

	$(".wtc_right h6").html(fechaHoy);
	$(".wtc_right .weatherInfo").addClass(claseExt);
	$(".wtc_right .weatherInfo h2").html(tmpHoy);
	$(".wtc_right .dayInfo").html(pronosticoHoy);
	
	if(obj.hoy.t_actual) {
		$(".wtc_right h2, .wtc_left div:first h2, .weatherBox_main > a > h2").html(obj.hoy.t_actual);
		$(".wtc_right .weatherInfo span li:first-child").html("<span>Max:</span> " + tmpHoy);
		$(".wtc_right .weatherInfo span li:last-child").html("<span>Hum:</span> " + obj.hoy.h_actual);
		$(".weatherBox_main > a > p").html("");
	}
	
}

$(document).ready(function () {
	$("object").append("<param name='wmode' value='opaque'>");
	$("embed").attr("wmode", "opaque");
	
    var key = $.cookie("key") ? $.cookie("key") : "Concepción";
	var codRegion = $.cookie("codRegion") ? $.cookie("codRegion") : "reg08";
	var indexCiudad = $.cookie("indexCiudad") ? $.cookie("indexCiudad") : "Concepci&oacute;n";

	$(".weatherBox_nav > select").val(key);
	$(".weatherBox_nav > input").val(key);		

	$(".weatherBox_nav > input").autocomplete({
		source: [
				"Algarrobo",
				"Ancud",
				"Angol",
				"Antofagasta",
				"Archipiélago Juan Fernández",
				"Arica",
				"Balmaceda",
				"Calama",
				"Caldera",
				"Caleta Tortel",
				"Cartagena",
				"Casablanca",
				"Castro",
				"Cauquenes",
				"Chaitén",
				"Chañaral",
				"Chile Chico",
				"Chillán",
				"Cochamó",
				"Cochrane",
				"Colina",
				"Combarbalá",
				"Concepción",
				"Constitución",
				"Copiapó",
				"Coquimbo",
				"Coyhaique",
				"Curicó",
				"El Salvador",
				"Futaleufú",
				"Huasco",
				"Illapel",
				"Iquique",
				"Isla de Pascua",
				"La Calera",
				"La Ligua",
				"La Serena",
				"La Unión",
				"Lago Ranco",
				"Lago Verde",
				"Lebu",
				"Linares",
				"Los Andes",
				"Los Angeles",
				"Los Vilos",
				"Melinka",
				"Melipilla",
				"Molina",
				"Ollagüe",
				"Olmué",
				"Osorno",
				"Ovalle",
				"Panguipulli" ,
				"Papudo",
				"Parral",
				"Península Antártica",
				"Pica",
				"Pichilemu",
				"Porvenir",
				"Pucón",
				"Puerto Aysén",
				"Puerto Cisnes",
				"Puerto Ingeniero Ibáñez",
				"Puerto Montt",
				"Puerto Natales",
				"Puerto Saavedra",
				"Puerto Williams",
				"Punta Arenas",
				"Putre",
				"Quellón",
				"Quillota",
				"Quilpué",
				"Rancagua",
				"Rengo",
				"Río Bueno",
				"San Antonio",
				"San Felipe",
				"San Fernando",
				"San José de Maipo",
				"San Pedro",
				"Santa Cruz",
				"Santiago",
				"Santiago Sector Norte",
				"Santiago Sector Oriente",
				"Santiago Sector Poniente",
				"Santiago Sector Sur",
				"Talca",
				"Taltal",
				"Temuco",
				"Tocopilla",
				"Valdivia",
				"Vallenar",
				"Valparaíso",
				"Vicuña",
				"Villa Alemana",
				"Villa O'Higgins",
				"Villarrica",
				"Viña del Mar",
				"Zapallar"
		],

		select: function(event, ui) {
				var value = ui.item.value;
				$.cookie("indexCiudad", city_info[value].indexCiudad, {expires: 365, path: "/"});
				$.cookie("codRegion", city_info[value].codRegion, {expires: 365, path: "/"});
				$.cookie("key", value, {expires: 365, path: "/"});
				location.href = document.location;
		}
	})

	if( !$.cookie("ciudad") || $.cookie("ciudad") != key ) {
		var time_stamp = (new Date()).getTime();
		$.getScript("/est/" + codRegion + ".js?v=" + time_stamp, function(data, textStatus) {
			var clima = {};
	
			// La ciudad
			var ciudad = indexCiudad;	
	
			clima.ciudad = key;			
			clima.hoy = {
				maxima : temperaturas[ciudad].split("|")[0].split("/")[1] + "º",
				pronostico : pronosticos[ciudad].split("|")[0],
				fecha : fechas[ciudad].split("|")[0],
				icono : iconos[ciudad].split("|")[0],
				t_actual : city_info[key].extraInfo ? extra_info[key].temperatura : null,
				h_actual : city_info[key].extraInfo ? extra_info[key].humedad : null
			};		
			
			clima.dias = new Array();
	
			for(i = 0; i < 5; ++i) {
				clima.dias[i] = {};			
				clima.dias[i].maxima = temperaturas[ciudad].split("|")[i].split("/")[1] + "º";			
				clima.dias[i].minima = temperaturas[ciudad].split("|")[i].split("/")[0] + "º";				
				clima.dias[i].fecha = fechas[ciudad].split("|")[i];
				clima.dias[i].icono = iconos[ciudad].split("|")[i];
				
				if(i == 0) {
					clima.dias[i].maxima = clima.hoy.maxima;
					clima.dias[i].minima = "";
					clima.dias[i].fecha = clima.hoy.fecha;
					clima.dias[i].icono = clima.hoy.icono;
				}
			}
	
			mostrarObjeto(clima);
			guardarObjeto(clima);
			$('#weatherBox').removeClass('loading');
		})
	}
	else
	{
		var obj = obtenerObjeto()
		mostrarObjeto(obj);
		$('#weatherBox').removeClass('loading');
	}
	
	$(".weatherBox_nav > select").click(function() {
		$(".weatherBox_nav").addClass("select-focus");
		$(".weatherBox_nav > input").val(key);
	})
	
	$(".weatherBox_nav > select").mouseleave(function() {
		$(".weatherBox_nav").removeClass("select-focus");
		$(".weatherBox_nav > input").val(key);
		//$(".weatherBox_nav > input").focus();
	})
	
	$(".weatherBox_nav > select").change(function() {
		var value = $(this).find("option:selected").text();
		$.cookie("indexCiudad", city_info[value].indexCiudad, {expires: 365, path: "/"});
		$.cookie("codRegion", city_info[value].codRegion, {expires: 365, path: "/"});
		$.cookie("key", value, {expires: 365, path: "/"});
   		location.href = document.location;
	})

	$(".weatherBox_nav > input").focus(function() {
		if($(this).val() == "Escribe una ciudad ..." || $(this).val() == key)
			$(this).val("");

	}).focusout(function() {
		if($(this).val() == "")
			$(this).val(key);
			
	}).mouseover(function() {
		if($(this).val() == key)
			$(this).val("Escribe una ciudad ...");
			
	}).mouseleave(function() {
		if($(this).val() == "Escribe una ciudad ...")
			$(this).val(key);
	})
	
	$(".weatherBox_nav").mouseover(function(event) {
		event.stopPropagation();
	})

	$("#weatherBox").mouseover(function () {
   		$("#weatherBox .weather_tooltip_main").show();
		$(".weatherBox_nav > select, .ui-autocomplete").hide();
		ocultarAds();

   	}).mouseleave(function () {
   		$("#weatherBox .weather_tooltip_main").hide();
		$(".weatherBox_nav > select").show();
		mostrarAds();
   	})

	$(".weatherBox_nav > select").msDropDown({visibleRows : 8})
})  	
