/*
 *	お天気ページ
 *	天気、気温、降水確率などのデータを処理する
 *
 */
 
 var DataManager = function(){
 	 
 	if (this.data != undefined){
 		return;
 	}
 	var largeAreaName = ["hokkaido", "tohoku" ,"kanto", "koushin", "tokai", "kinki", "chugoku", "shikoku", "kyushu"];
 	
 	this.Data;
 	this.csvData;
 	this.areaData;
 	this.largeAreaData;
 	
 	//	天気データを読み込む
 	var data;
 	$.ajax({type: "get",
 	     url: "/js/weather/data/top.json",
 	     beforeSend : function(req){
			// 独自リクエストヘッダーをセット
			var nowDateTime = new Date();
			req.setRequestHeader("If-Modified-Since", nowDateTime.toString());
									},
 	     async: false,
 		 success: function(json){ data = eval("(" + json + ")");}
 		 });
 	this.data = data;
 	
 	var csvData = {};
 	//	女の子の画像の対応表を読み込む
// 	$.ajax({type: "post",
// 	     url: "/js/weather/data/weather2girl.csv",
// 	     async: false,
// 		 success: function(csv){
// 		 	
// 		 	var lines = csv.split("\r\n");
// 		 	
// 		 	for (var i = 0;i < lines.length;i++){
// 		 		var arr = lines[i].split(",");
// 		 		data[arr[0]] = arr[1].replace(/\r|\r\n|/,""); 
// 		 	}
// 		 }
// 		});
 	this.csvData = csvData;
 	
 	//	詳細地域のリストを読み込む
 	var areaData = [];
 	var largeAreaData = [];
 	$.ajax({type: "get",
 	    url: "/js/weather/data/smallArea.csv",
 	    async: false,
 		success: function(csv){
 		 	
 		 	var lines = csv.split("\r\n");
 		 	
 		 	for (var i = 0;i < lines.length;i++){
 		 		var arr = lines[i].split(",");
 		 		areaData[arr[0]] = arr[1];
 		 		largeAreaData[arr[0]] = largeAreaName[parseInt(arr[2]) - 1];;		 		
 		 	}
 		 }
 		});
	this.areaData = areaData;
	this.largeAreaData = largeAreaData;
}
 //
 //	明後日のデータがあるかどうかを返す
 //
 DataManager.prototype.isBefore07 = function(){
 	if(this.data[2]["Weather"].length < 11){
 		return false
 	}
 	return true;
 }
 //
 //	お天気を取得
 //
 DataManager.prototype.getWeather = function(day, num){
 	
 	return this.data[day]["Weather"][num];
 		
 }
 //
 //	気温を取得
 //	
 DataManager.prototype.getTemp = function(day, num){
 	var temp = "";
//console.debug('(%o)', typeof this.data[day]["Temp"][num]); 	
 	if (typeof this.data[day]["Temp"][num] == "object" ){
 		temp = "最高気温"+ this.data[day]["Temp"][num][0] + "℃/最低気温" + this.data[day]["Temp"][num][1] + "℃"; 
 	}else{
 		temp = "最高気温"+ this.data[day]["Temp"][num] + "℃";
 	}
 	return temp;
 }
 //
 //	降水確率を取得
 //
 DataManager.prototype.getRain = function(day, num){
 	var rain = "";
 	
 	if (this.data[day]["Rain"][num]){
 		rain = "降水確率" + this.data[day]["Rain"][num] + "％";
 	}
 	
 	return rain;
 	
 }
 //
 //	詳細地域の配列を返す
 //
 DataManager.prototype.getSmallArea = function(){
 	return this.areaData;	
 }
 
 //
 //	更新日時を取得
 //
 DataManager.prototype.getRecordTime = function(){
 		
 	return  this.data[3]["DateTime"];
 	
 }
 
 //
 //	ジャンプ先のURLを生成
 //
 DataManager.prototype.getLinkURL = function(id){
 	var url = "/" + this.largeAreaData[id] + "/" + this.largeAreaData[id] + id + ".html";
 	
 	return url;
 	
 }
 