// ============================================================
// フォーム関連
// 
// %update / 09.11.04
// 
// %use / jquery1.2.6
// ============================================================

// ------------------------------------------------------------
// ▼
// ------------------------------------------------------------
// prototype.js と jquery の共存
if(! $jQ) { var $jQ = jQuery.noConflict(); }

var AREA_ID_ARR = new Array('Hokkaido', 'Tohoku', 'Kanto', 'Koshinetsu', 'Tokai',  'Kansai', 'Chugoku', 'Shikoku', 'Kyushu');
var TOP_INFO = new Array();
var TIMER_CL = '';

function strimwidth(value) {
	len = 30;
	value = '' + value;
	return (value.length > len ? value.substring(0, len) + '...' : value);
}

function getAreaIdNum(areaId){
	var areaIdNum = 0;
	if(areaId != null){
		areaIdNum = AREA_ID_ARR[areaId - 1]
	}
	
	return areaIdNum;
}

function setAreaIdNum(areaId){
	var areaIdNum = 0;
	
	if(areaId != null && areaId != ""){
		for(var i = 0; i < AREA_ID_ARR.length; i++){
			if(AREA_ID_ARR[i] == areaId){
				areaIdNum = i + 1;
				break;
			}
		}
	}
	
	return areaIdNum;
}

function viewInfo(num){
	
	$jQ('#evtInfo').empty();
	
	var count = num + 2;
	
	if(TOP_INFO.length <= count){
		count = TOP_INFO.length;
	}
	
	for(var i = num; i < count; i++){
		$jQ(TOP_INFO[i]).appendTo('#evtInfo');
	}
	
	if(TOP_INFO.length <= count){
		count = 0;
	}
	
	TIMER_CL = setTimeout(function() { viewInfo(count) }, 8000);
}

function setInfoStatic(data, eventHtmlArr){
	var viewEventArr = $jQ(data).find("view_event");
	for(var i = 0; i < viewEventArr.length; i++){
		var strHtml = '';
		
		strHtml += '<li class="link01">';
		strHtml += '<a href="';
		strHtml += $jQ(viewEventArr[i]).find("link_url").text();
		strHtml += '">';
		strHtml += strimwidth($jQ(viewEventArr[i]).find("title").text());
		strHtml += '</a>';
		strHtml += '</li>';
		
		//eventHtmlArr.push(strHtml);
		eventHtmlArr.unshift(strHtml);
	}
	
	TOP_INFO = eventHtmlArr;
	viewInfo(0);
}

function setInfo(data, staticInfoPath){
	
	var viewEventArr = $jQ(data).find("view_event");
	var eventHtmlArr = new Array();
	
	for(var i = 0; i < viewEventArr.length; i++){
		var strHtml = '';
		
		strHtml += '<li class="link01">';
		strHtml += '<a href="/shop/event/detail.html?event_id=';
		strHtml += $jQ(viewEventArr[i]).find("event_id").text();
		strHtml += '&shop_id=';
		strHtml += $jQ(viewEventArr[i]).find("shop_id").text();
		strHtml += '">';
		strHtml += strimwidth('【' + $jQ(viewEventArr[i]).find("prefecture_name").text() + '】' + $jQ(viewEventArr[i]).find("title").text());
		strHtml += '</a>';
		strHtml += '</li>';
		
		eventHtmlArr.push(strHtml);
	}
	
	
	$jQ(function(){
		result=$jQ.ajax({
			type:"get",
			url:staticInfoPath,
			cache: false,
			success:function(data){
				setInfoStatic(data, eventHtmlArr);
			}
		});
	});
}

function createInfo(areaIdNum){
	//var dynamicInfoPath = '/library/top/test.xml?kind=0&limit=8&status=6';
	var dynamicInfoPath = '/ajaxProxy.php?api_name=/shop-event/shop-event-top-list&kind=0&limit=8&status=6&toppage=1';
	var staticInfoPath = '/library/top/static.xml';
	
	if(areaIdNum != null && areaIdNum != 0 && areaIdNum != ''){
		dynamicInfoPath = dynamicInfoPath + '&district_name_id=' + areaIdNum;
	}
	
	$jQ(function(){
		result=$jQ.ajax({
			type:"get",
			url:dynamicInfoPath,
			cache: false,
			success:function(data){
				setInfo(data, staticInfoPath);
			}
		});
	});
	
}



$jQ(document).ready( function() {

	// ------------------
	// 制御変数
	// ------------------
  var mapOn = 0;
  var mapSelectIDNum = $jQ.cookie('district_id');
  var mapSelectID = getAreaIdNum(mapSelectIDNum);
  
  mapInit();

	// ------------------
	// 【初期化】
	// ------------------
  function mapInit(){
    //$jQ(".evtText").addClass("hide");
    $jQ(".crtMapImage").addClass("hide");
    $jQ("#map" + mapSelectID).removeClass("hide");
    
    clearTimeout(TIMER_CL);
    
    createInfo(mapSelectIDNum);
    
    
    //$jQ("#evt" + mapSelectID).removeClass("hide");
    
    //if (mapSelectID == "" || mapSelectID == null){
    //  $jQ("#evtZenkoku").removeClass("hide");
    //}
  }
  
	// ------------------
	// 【フラグ更新】
	// ------------------
	$jQ('#mapMain').mouseover( function() {
		mapOn = 1;
	} );  // mouseover()
	$jQ('#mapMain').mouseout( function() {
		mapOn = 0;
	} );  // mouseover()

	// ------------------
	// 【マップレイヤー表示】
	// ------------------
	$jQ('#evtBtnMap').click( function() {
		//初期化
    mapInit();
    
		//表示
		$jQ('#MapArea').height($jQ(document).height());
		$jQ('#MapArea').width($jQ(document).width());
		$jQ('#MapArea').removeClass('hide');
	} );  // click()

	// ------------------
	// 【マップレイヤーリサイズ】
	// ------------------
	$jQ(window).resize( function() {
    //エリア幅取得
		$jQ('#MapArea').height($jQ(document).height());
		$jQ('#MapArea').width($jQ(document).width());
  } );

	// ------------------
	// 【マップレイヤー非表示】
	// ------------------
	$jQ('#MapArea').click( function() {
		if (mapOn){ return; }
    mapInit();
		$jQ('#MapArea').addClass('hide');
	} );  // click()
  $jQ('#mapClose').click(function() {
    mapInit();
		$jQ('#MapArea').addClass('hide');
	} );  // click()

	// ------------------
	// 【マップカレント制御】
	// ------------------
	$jQ('#MapArea .lnkMapTrigger').mouseover( function() {
		//初期化
    $jQ(".crtMapImage").addClass("hide");

		//選択状態カレント
    $jQ("#map" + mapSelectID).removeClass("hide");
		
		//自身カレント
		var myId = $jQ(this).get(0).id.replace("lnk", "map");
    $jQ("#" + myId).removeClass("hide");
	} );  // mouseover()

	// ------------------
	// 【地域選択制御】
	// ------------------
	$jQ('#MapArea .lnkMapTrigger').click( function() {
		//ID取得
		var myId = $jQ(this).get(0).id.replace("lnk", "");

    //クッキー書き込み
    $jQ.cookie('district_id', setAreaIdNum(myId), { expires: 365 });

    //グローバル変数更新
    mapSelectID = myId;
    mapSelectIDNum = setAreaIdNum(myId);
    
		//初期化
    mapInit();
    
    //閉じる
		$jQ('#MapArea').addClass('hide');
	} );  // click()

	// ------------------
	// 【選択解除】
	// ------------------
	$jQ('#MapArea #mapReset').click( function() {
    //クッキー書き込み
    $jQ.cookie('district_id', "", { expires: 365 });

    //グローバル変数更新
    mapSelectID = "";
    mapSelectIDNum = "";
    
		//初期化
    mapInit();
    
    //閉じる
		$jQ('#MapArea').addClass('hide');
	} );  // click()
  
} );  // ready()



