
var showShop = new Object({
	tsvfile:"./db/shop.tsv",
	objName:"showShop",
	prefList:"北海道,青森県,岩手県,宮城県,秋田県,山形県,福島県,茨城県,栃木県,群馬県,埼玉県,千葉県,東京都,神奈川県,新潟県,富山県,石川県,福井県,山梨県,長野県,岐阜県,静岡県,愛知県,三重県,滋賀県,京都府,大阪府,兵庫県,奈良県,和歌山県,鳥取県,島根県,岡山県,広島県,山口県,徳島県,香川県,愛媛県,高知県,福岡県,佐賀県,長崎県,熊本県,大分県,宮崎県,鹿児島県,沖縄県",
	reader:null,
	init:function(){
		var ajax = new Ajax.Request(this.tsvfile,{
			method:"get",
			onComplete:this.exec
		});
	},
	exec:function(req){
		root = showShop;
		root.reader = new readTSV(req);
		areaList = root.prefList.split(",");
		//areaList = root.reader.selectColsList("area");
		selectObj = document.getElementsByClassName("PrefSelect")[0];
		for(i=0;i<areaList.length;i++){
			opt = document.createElement("option");
			opt.value = areaList[i];
			opt.innerHTML = areaList[i];
			selectObj.appendChild(opt);
		}
		Event.observe(selectObj,"change",root.selectList);
		$("Control").style.visibility = "true";
	},
	flush:function(ele,html){
		root = showShop;
		ele.innerHTMl = "";
		//new Effect.Fade(ele,{from:0,to:100,duration:3});
		ele.innerHTML = html;
	},
	selectList:function(){
		root = showShop;
		area = this[this.selectedIndex].value;
		if(area=="Default") return false;
		root.showList(area);
	},
	showList:function(area){
		root = showShop;
		var shopList = root.reader.selectRows("area",area);
		list = "<h3>"+area+"ショップ一覧</h3>";
		list+= "<table>";
		list+= "<thead><tr><th>ショップ名</th><th>アクセス</th></tr></thead>";
		list+= "<tbody>"
		var listTemplate = new Template('<tr><td><a href="#" onclick="showShop.showDetail(#{id});return false;">#{name}</a></td><td>#{koutuu}</td></tr>');

		for(i=0;i<shopList.length;i++){
			list += listTemplate.evaluate({
				id:shopList[i]["id"],
				name:shopList[i]["name"],
				koutuu:shopList[i]["koutuu"]
			});
		}
		list += "</tbody>";
		list += "</table>";
		if(!shopList.length) list = "<p>エントリーがありません</p>";
		root.flush($("Content"),list);
	},
	showDetail:function(id){
		root = showShop;
		var detailRow = root.reader.selectRows("id",id,false)[0];
		comment = detailRow["comment"].replace(/\%n/ig,"<br>");
		email = String('<a href="mailto:%email%">%email%</a>').replace(/%email%/ig,detailRow["email"]);
		url = String('<a href="%url%" target="_blank">%url%</a>').replace(/%url%/ig,detailRow["url"]);
		var template = new Template( $("DetailTemplate").innerHTML );
		var content = template.evaluate({
			area:detailRow["area"],
			name:detailRow["name"],
			tel:detailRow["tel"],
			post1:detailRow["post1"],
			post2:detailRow["post2"],
			address1:detailRow["address1"],
			address2:detailRow["address2"],
			koutuu:detailRow["koutuu"],
			hours:detailRow["hours"],
			holiday:detailRow["holiday"],
			email:email,
			url:url,
			comment:comment
			
		});
		//$("Content").innerHTML = content;
		root.flush($("Content"),content);
	}
});


Event.observe(window,"load",function(){
	showShop.init();
});