﻿var lstWeatherPlaces = [];
var curIndex = 0;
var lastMeteoId = 0;
var moduleLoaded = false;
//var moduleUnite	= 'C'; // Celsius par défaut
//var moduleLanguage =  "fr";
var PLACE_DISPLAY_DELAY = 2000;
var WEATHER_PLACES_URL = "/meteo/commun/dynamiques/listeVilleModule.ashx";


function setModuleLanguage(language) {
	moduleLanguage = language;
}

function displayWeatherPlace()
{
	if(curIndex < lstWeatherPlaces.length) {
		document.getElementById("meteo-module-ville").innerHTML = lstWeatherPlaces[curIndex][0];
		document.getElementById("meteo-module-temp").innerHTML = formatTemperature(lstWeatherPlaces[curIndex][2],moduleUnite);
		if (lastMeteoId != lstWeatherPlaces[curIndex][1]) {
			document.getElementById("meteo-module-image").src = "/meteo/commun/img/pictos/"+lstWeatherPlaces[curIndex][1]+"_70.png";
			lastMeteoId = lstWeatherPlaces[curIndex][1];
		}
		
		if(curIndex == lstWeatherPlaces.length-1) {
			curIndex =0;
		} else {
			curIndex++;
		}
		setTimeout(displayWeatherPlace, PLACE_DISPLAY_DELAY);
	}
}

function loadWeatherPlacesListEx(language) {	
moduleLanguage = language;
loadWeatherPlacesList();
}

function loadWeatherPlacesList() {		
	if(moduleLoaded)
		return;
		
	//setLog("Module loading...");
	function success(data){			
		lstWeatherPlaces = parseData(data);
		displayWeatherPlace();			
	}

	// Lancement de la requête
	try {
		moduleLoaded = true;
		document.getElementById("meteo-module").style.display = 'block';
				
		$.get(WEATHER_PLACES_URL + getDateParam() + "&langue=" + moduleLanguage, success);
	}
	catch (e) {
		// Levée de l'erreur
		 //throw(e);
		 moduleLoaded = false;
	}		
}

function parseData(data) {
		if (!data) return null;
		var parsed = [];
		var rows = data.split("\n");
		for (var i=0; i < rows.length; i++) {
			var row = $.trim(rows[i]);
			if (row) {
				parsed[parsed.length] = row.split("|");
			}
		}
		return parsed;
}

function getDateParam () {	
	var d = new Date();
	var sParam = "?date=" + d.getFullYear() + d.getMonth() + d.getDay() + d.getHours();
	return sParam;
}

//if(document.getElementById("meteo-module"))
	$(document).ready(loadWeatherPlacesList);