// --------------------------------------------------
// Map action script
// Version: 7 Oct 2008
// --------------------------------------------------
// Query String から配列を返す
function getParameter(str){
	var dec = decodeURIComponent;
	var par = new Array, itm;
	if(typeof(str) == 'undefined') return par;
	if(str.indexOf('?', 0) > -1) str = str.split('?')[1];
	str = str.split('&');
	for(var i = 0; str.length > i; i++){
		itm = str[i].split("=");
		if(itm[0] != ''){
			par[itm[0]] = typeof(itm[1]) == 'undefined' ? true : dec(itm[1]);
		}
	}
	return par;
}

// 配列から Query String を返す
function setParameter(par){
	var enc = encodeURIComponent;
	var str = '', amp = '';
	if(!par) return '';
	for(var i in par){
		str = str + amp + i + "=" + enc(par[i]);
		amp = '&'
	}
	return str;
}

// --------------------------------------------------
// Members shuffle script
// --------------------------------------------------
// 配列をシャッフルする
function arrayShuffle(obj){
	var len = obj.length;
	var ary = obj.concat();
	var res = [];
	while(len) res.push(ary.splice(Math.floor(Math.random()*len--),1));
	return res
}

// Div item shuffle
function divItemShuffle(accessKey){
	var hotel_array = [];
	if(!accessKey){
		// alert('none!');
		$('#hotels-entry div.hotel').map(function(i){
			hotel_array[i] = $(this).attr('id');
		});
	}else{
		// alert('accesskey: '+accessKey);
		$('#hotels-entry div.hotel.'+accessKey).map(function(i){
			hotel_array[i] = $(this).attr('id');
		});
	}
	var hotel_array_shuffle = arrayShuffle(hotel_array);
	$('#hotels-list').fadeTo(100,0,function(){
		$('#hotels-list').empty();
		$(hotel_array_shuffle).map(function(i){
			$('#hotels-list').append($('#'+hotel_array_shuffle[i]).html());
		});
		$('#hotels-list').fadeTo(100,1);
	});
}
// Div item clear
function divItemClear(){
	$('#hotels-list').empty();
}
// Hotel tab class set
function hotelsTabClassSet(targetKey){
	$('#hotels-tab a').map(function(i){
		$(this).removeClass('tab-current');
	});
	if(targetKey){
		$('#tab-'+targetKey).addClass('tab-current');
	}else{
		$('#tab-all').addClass('tab-current');
	}
}

// --------------------------------------------------
// Map action script
// --------------------------------------------------
function osakaTrainMap(targetName){
	if(!targetName){
		$('#mapareaaction').attr({src:yourDomain+'/img/common/train_map.gif'});
	}else{
		$('#mapareaaction').attr({src:yourDomain+'/img/common/train_map_'+targetName+'.gif'});
	}
}

// On load script
$(function(){
	if(location.search){
		var strQuary = getParameter(location.search);
		targetKey = strQuary['area'];
		if(targetKey){
			$('#mapareaaction').attr({src:yourDomain+'/img/common/train_map_'+targetKey+'.gif'});
			hotelsTabClassSet(targetKey);
			divItemShuffle(targetKey);
		}
	}else{
		hotelsTabClassSet();
		divItemShuffle();
	}
});

// Side Map
document.write('<div id="maps">');
document.write('<div id="maps-inner">');
document.write('<p><img id="mapareaaction" src="'+yourDomain+'/img/common/train_map.gif" alt="路線図" usemap="#train_map_Map" />');
document.write('<map name="train_map_Map">');
document.write('<area shape="poly" coords="29,65,60,0,205,0,205,13,192,26,146,26,146,53,103,73,48,73" href="'+yourDomain+'/hotelguide/?area=kita" onmouseover="osakaTrainMap(\'kita\');" onmouseout="osakaTrainMap();" alt="キタエリア" />');
document.write('<area shape="poly" coords="0,65,29,65,48,73,103,73,146,53,146,26,192,26,205,13,219,13,240,31,240,110,186,110,165,99,32,99,28,103,28,132,64,154,64,190,0,190" href="'+yourDomain+'/hotelguide/?area=naka" onmouseover="osakaTrainMap(\'naka\');" onmouseout="osakaTrainMap();" alt="ナカエリア" />');
document.write('<area shape="poly" coords="64,190,64,154,28,132,28,103,32,99,165,99,186,110,240,110,240,190" href="'+yourDomain+'/hotelguide/?area=minami" onmouseover="osakaTrainMap(\'minami\');" onmouseout="osakaTrainMap();" alt="ミナミエリア" />');
// document.write('<area shape="poly" coords="29,65,60,0,205,0,205,13,192,26,146,26,146,53,103,73,48,73" href="javascript:divItemShuffle(\'kita\');" onmouseover="osakaTrainMap(\'kita\');" onmouseout="osakaTrainMap();" alt="キタエリア" />');
// document.write('<area shape="poly" coords="0,65,29,65,48,73,103,73,146,53,146,26,192,26,205,13,219,13,240,31,240,110,186,110,165,99,32,99,28,103,28,132,64,154,64,190,0,190" href="javascript:divItemShuffle(\'naka\');" onmouseover="osakaTrainMap(\'naka\');" onmouseout="osakaTrainMap();" alt="ナカエリア" />');
// document.write('<area shape="poly" coords="64,190,64,154,28,132,28,103,32,99,165,99,186,110,240,110,240,190" href="javascript:divItemShuffle(\'minami\');" onmouseover="osakaTrainMap(\'minami\');" onmouseout="osakaTrainMap();" alt="ミナミエリア" />');
document.write('</map>');
document.write('</div>');
document.write('<p>地図からエリアを選択できます。</p>');
document.write('</div>');