﻿	
	var WithEventList = false;
	
	function setSearchKeyUI(witheventlist)
	{
		otherkey = $F('otherkey');
		othervalue = $F('othervalue');
		
		WithEventList = witheventlist;
		
		var districtnames = "";
		
		var types = new Array();
		var keys = new Array();
		var name1 = "";
		var name2 = "";
		var no = 1;
		
		for (i=0; i<11; i++) {
			name1 = 'st' + no;
			name2 = 'sk' + no;
			if ($(name1) && $F(name1) != null && $F(name1) != "") {
				types[i] = $F(name1);
				keys[i] = $F(name2);
				if ($F(name1) == "district") {
					if (districtnames != "")
						districtnames += ", ";
					districtnames += $F(name2);
				}
			} else {
				break;
			}
			no++;
		}
		
		if (keys.length == 0 && (otherkey == null || otherkey == "")) {
			//デフォルト設定
			keysDefault();
			return;
		}
		
		//場所名描画
		setDistrictNames(districtnames);
		
		limit = $F('limit');
		offset = $F('offset');
		sort = $F('sort');
		
		requestEventsSearch(types, keys, otherkey, othervalue, limit, offset, sort);
	}
	
	/******************************************************
	 * イベントリストを検索する
	 */
	function requestEventsSearch(types, keys, otherkey, othervalue, limit, offset, sort) {
		var params = "";
		var no = 1;
		for (var i=0; i<types.length; i++) {
			params += "&st" + no + "=" + types[i] + "&sk" + no + "=" + keys[i];
			no++;
		}
		var url = LS_LIB_DBJSON_URL + 'getEventsBySearchKeys.php';
		var pars = 'selectdates=' + $('selectdates').value + '&sort=' + sort + '&limit=' + limit + '&offset=' + offset + '&otherkey=' + otherkey + '&othervalue=' + othervalue + '&includepast=' + $F('includepast') + params + "&currenttime=" + new Date().getTime();
		var myAjax = new Ajax.Request(
			url, 
			{
				method: 'get', 
				parameters: pars,
				onComplete: responseEventsSearch
			});
	}
	
	/**
	 * 検索したイベントリストをHTMLとして追記する
	 */
	function responseEventsSearch(req) {
		var text = req.responseText;
		text = text.substring(2, text.length -2);
		eval(text);
		
	//	console.log(data[1]);
	//	console.log(data[2]);
	//	console.log(data[3]);
	//	console.log(data[4]);
		
		if (WithEventList) {
			//イベントリスト描画
			var html = '<div id="topviewpages"></div>';
			html += createEventInfoHTMLForUI(data[0]);
			html += '<div id="bottomviewpages"></div>';
			
			var d = $('todayevents');
			d.innerHTML = html;
			
			setEventInfoWidth(1);
		}
		
		//タグリスト描画
		setTags(data[1]);
		
		//イメージの見栄え修正Javascript
		addEffect();
		
		if (WithEventList) {
			createPageCount(data[3]);
		}
		
		//ミニカレンダー描画
		if ($('calendar')) {
			getTodayWithDates(new Date(), data[2]);
		}
		
	//	//場所描画
	//	if (data[4].length == 0) {
	//		pi = $('placeinfo');
	//		pi.innerHTML = "-- 場所情報なし --";
	//	}
		
	//	checkCount();
	}
	
	
	/**
	 * ページ移動リンク描画
	 */
	function createPageCount(data) {
		var html = createEventPageCountHTMLForUI(data, "goTagPageByOffset")
		
		if (data[0].eventcount > 5) {
			//下のページ表示
			var d = $('bottomviewpages');
			d.innerHTML = html;
		}
		
		var addhtml = '<div id="tagtitle">';
		//上のページ表示
		if ($F('st1') == null || $F('st1') == "") {
			if ($F('otherkey') != null && $F('otherkey') != "") {
				if ($F('otherkey') == "action") {
					if ($F('othervalue') == "watch") {
						addhtml += 'ウォッチしているイベント';
					}
				} else if ($F('otherkey') == "owner") {
					if (sessionid == $F('othervalue')) {
						addhtml += '' + sessionusername + 'さんが投稿したイベント';
					} else {
						
					}
				}
				if ($F('includepast') == null || $F('includepast') == "")
					addhtml += '&nbsp;&nbsp;&nbsp;&nbsp;<a class="pastlink" href="javascript:SearchKeyIncludePast()">過去のイベントを含めて検索</a>';
				else
					addhtml += '&nbsp;&nbsp;&nbsp;&nbsp;<a class="pastlink" href="javascript:SearchKeyNotIncludePast()">過去のイベントを含めないで検索</a>';
			}
		}
		addhtml += '</div>';
		
		if ($F('sort') == "date") {
			addhtml += '<div id="sorttype">ソート順 日付、<a href="javascript:setSort(\'rank\')">アクセス数</a>、<a href="javascript:setSort(\'comment\')">コメント数</a>、<a href="javascript:setSort(\'\')">なし</a></div>';
		} else if ($F('sort') == "rank") {
			addhtml += '<div id="sorttype">ソート順 <a href="javascript:setSort(\'date\')">日付</a>、アクセス数、<a href="javascript:setSort(\'comment\')">コメント数</a>、<a href="javascript:setSort(\'\')">なし</a></div>';
		} else if ($F('sort') == "comment") {
			addhtml += '<div id="sorttype">ソート順 <a href="javascript:setSort(\'date\')">日付</a>、<a href="javascript:setSort(\'rank\')">アクセス数</a>、コメント数、<a href="javascript:setSort(\'\')">なし</a></div>';
		} else {
			addhtml += '<div id="sorttype">ソート順 <a href="javascript:setSort(\'date\')">日付</a>、<a href="javascript:setSort(\'rank\')">アクセス数</a>、<a href="javascript:setSort(\'comment\')">コメント数</a>、なし</div>';
		}
		
		d = $('topviewpages');
		d.innerHTML = addhtml + html;
		
		checkCount();
	}
	
	function requestNewMonthDate(yy, mm) {
		var types = new Array();
		var keys = new Array();
		var name1 = "";
		var name2 = "";
		var no = 1;
		for (i=0; i<11; i++) {
			name1 = 'st' + no;
			name2 = 'sk' + no;
			if ($(name1) && $F(name1) != null && $F(name1) != "") {
				types[i] = $F(name1);
				keys[i] = $F(name2);
			} else {
				break;
			}
			no++;
		}
		
		var params = "calmonth=" + mm + "&calyear=" + yy;
		var no = 1;
		for (var i=0; i<types.length; i++) {
			params += "&st" + no + "=" + types[i] + "&sk" + no + "=" + keys[i];
			no++;
		}
		var url = LS_LIB_DBJSON_URL + 'getEventsBySearchKeys.php';
		var pars = params + "&currenttime=" + new Date().getTime();
		var myAjax = new Ajax.Request(
			url, 
			{
				method: 'get', 
				parameters: pars,
				onComplete: responseNewMonthDate
			});
	}
	
	function responseNewMonthDate(req) {
		var text = req.responseText;
		text = text.substring(2, text.length -2);
		eval(text);
		
		//ミニカレンダー描画
		responseMonthData(data[2]);
	}
	
	function setDistrictNames(names)
	{
		//場所
		var d = $('placeinfo');
		if (d) {
			var html = '<font class="districtnames">' + names + '</font>';
			html += '&nbsp;&nbsp;<a class="placechange" href="javascript:districtSelect(\'\')">[場所の選択]</a>';
			d.innerHTML = html;
		}
	}



