/**
 * @author katsuma
 */

/**
 * LOAD時の処理
 */
var before_txtSchool = "";

function jsOnload_search(){

     //学校名を入力したときの動作
     Event.observe($('txtSchool'), 'keyup', function() { input_txtSchool();}, false);

     //学校を選択したときの動作
     Event.observe($('sSchool[]'), 'change', function() { click_sSchool();}, false);

     //検索ヘッダーを押したときに折りたたむ処理
     Event.observe($('search_title'), 'click', function() { Effect.toggle('search_condition','slide',{duration:0.3}); }, false);

     //絞込検索画面ボタンを押下したときの処理
     Event.observe($('bOpenWin'), 'click', function() { open_Win();  }, false);

     //家賃（最低）の設定を選択したときの処理
     Event.observe($('sRent_Min'), 'change', function() {
		get_json_text();		//リストの書き換えを行う。
     }, false);

     //家賃（最高）の設定を選択したときの処理
     Event.observe($('sRent_Max'), 'change', function() {
		get_json_text();		//リストの書き換えを行う。
     }, false);

     //間取りを押下したときの処理
     Event.observe($('cRoomtype_1'), 'click', function() {
		get_json_text();		//リストの書き換えを行う。
     }, false);
     Event.observe($('cRoomtype_2'), 'click', function() {
		get_json_text();		//リストの書き換えを行う。
     }, false);
     Event.observe($('cRoomtype_3'), 'click', function() {
		get_json_text();		//リストの書き換えを行う。
     }, false);
	
	//alert($("tab_start_flg").value);
	
	//学校名が未入力に場合は検索しない
	if($("tab_start_flg").value != ''){
	 	click_sSchool();
	}
	if($("txtSchool").value == ""){
		//初期表示は学校全件
		$("txtSchool").style.display = "none";
		$("txtSchool").value = "%";
		input_txtSchool();
		$("txtSchool").value = "";	
		$("txtSchool").style.display = "";
	}
}

/**
 * Loadingの表示・非表示
 */
Ajax.Responders.register({
	onCreate: function() {
        Element.show($('loading'));
     },
     onComplete: function() {
        Element.hide($('loading'));
     }
});


/**
 * 学校を入力したときの動作
 */
function input_txtSchool() {
          //学校名が未入力に場合は検索しない
          if($("txtSchool").value != ""){
               	$("action").value = "searchschool";
               	$("reqpage").value = "1";
               	$("select_sid").value = "";
               	read_School();
          }else{
               var ret = null;
               resOj = new chgJSONtoSELECT(ret,$('sSchool[]'));
	    	   resOj.delOptionsWithoutIndex($('sSchool[]'),0);
          }
}

/**
 * 学校の読み込み
 */
function read_School() {
	//var params = 'action=station';
	$('action').value = "searchschool";
	$("reqpage").value = "1";
	$("select_sid").value = "";
	$("select_roomid").value = "";
	
	new Ajax.Request (
		cJURL_LIST,
		{
			method: 'POST',
			parameters: Form.serialize("fSearch"),
			onComplete: show_School
		}
	);
}

/**
 * 学校の読み込みの戻り処理
 */
function show_School(req, json) {
	var resOj = null;
	eval("var ret = " + req.responseText);
	resOj = new chgJSONtoSELECT(ret,$('sSchool[]'));
	resOj.addOptions();
	//リストの書き換えを行う。
	//get_json_text();
	//マップの書き換えを行う。
	//setMap();

}

/**
 * リスト用JSONデータを取得する。
 */
function get_json_text() {
	$("action").value = "left";
	$("reqpage").value = "1";
	$("select_sid").value = "";
	$("select_roomid").value = "";
	DefaultContents();		//詳細表示をデフォルトへ。
	new Ajax.Request (
		cJURL_LIST,
		{
		  method: 'POST',
		  parameters: Form.serialize("fSearch"),
		  onComplete: ListLoadMap
	});
}

/**
 * セレクトメニュー操作クラス
 */
function chgJSONtoSELECT(ret,oj){
     return{
	       //オプションを生成します。(区分：STATIONの場合、全オプションを選択状態にします。)
	       addOptions : function (kbn){
	            //オプションを削除します
	            this.delAllOptions(oj);
				if(ret == ""){
					return;
				}
				//JSONデータを出力します
				for( i = 0 ; i < ret.list.length ; i++ ){
					var text  = ret.list[i].Name;
					var value = ret.list[i].ID;
					oj.options[oj.length]=new Option(text,value);
				}
	       },
	       //indexで指定した以外のオプションをすべて削除します
	       delOptionsWithoutIndex : function (oj,index){
	            var optionIndex = oj.options.length;
	            for ( i=optionIndex ; i >= 0  ; i-- ){
	                 if(index!=i)oj.options[i]=null;
	            }
	       },
	       //すべてのオプションを削除します
	       delAllOptions : function (oj){
	            oj.options.length = 0;
	       }
     }
}

/**
 * 選択項目をクリックしたときの動作
 */
function click_sSchool() {
	$("action").value = "searchlist";
	
	//リストの書き換えを行う。
	get_json_text();
	
	//マップの書き換えを行う。
	//setMap();
}

/**
 * 検索処理
 */
function show_Msg(msg) {
     $('message').innerHTML = msg;
}

