// JavaScript Document
/**
 * ロールオーバー系
 */
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

/**
 * URL分割
 * プロトコル・ドメイン・ＵＲＬ（ドメイン以下/配列）・パラメーター（連想配列/key:value）
 */
function splitURL(){
	function splited(){
		this.protocol;
		this.domain;
		this.urls = new Array();
		this.params = {};
	}
	
	var rs = new splited();
	rs.protocol = location.protocol;
	rs.domain = location.hostname;
	
	var head_url = rs.protocol+ '//' + rs.domain + '/';
	
	
	var href = location.href.substr(head_url.length).split("/");
	
	for(var h=0; h < href.length;h++){
		rs.urls.push(href[h]);
	}
	
	var params = location.search.substr(1).split("&");
	
	for(var p =0; p < params.length;p++){
		var ps = params[p].split("=");
		rs.params[ps[0]]=ps[1];
	}
	return rs;
}


/**
 * POPUPを中央寄せ
 */
jQuery.fn.showCenterPopup = function(params) {
	params = $.extend({
				btnClose:"",
				btnAdd:"",
				initfunc:function(){},
				addfunc:function(){}
			},params)
	
	
	
	this.each(function(){
		$("#si_overlay").remove();
		$(".sc_center_popup").hide();
		$(".sc_center_popup").each(function(){
			$(this).removeClass("sc_center_popup");
		})
		var tgt = $(this);
		if (params.btnClose != "") {
			$(params.btnClose).click(function(){
				_close();
			})
		}
		
		if(params.btnAdd !=""){
			$(params.btnAdd).die("click");
			$(params.btnAdd).live("click",function(){
				params.addfunc();
				_close();
			});
		}
		$(tgt).addClass("sc_center_popup");
		$(tgt).css("position","absolute");
	    $(tgt).css("top", ( $(window).height() - $(tgt).height() ) / 2+$(window).scrollTop() + "px");
	    $(tgt).css("left", ( $(window).width() - $(tgt).width() ) / 2+$(window).scrollLeft() + "px");
		
		if (typeof document.body.style.maxHeight === "undefined") {//if IE 6
			/*
			$("body","html").css({height: "100%", width: "100%"});
			$("html").css("overflow","hidden");
			*/
			$(this).before('<iframe id="si_overlay"></iframe>');
			$("#si_overlay").css("position","absolute");
			$("#si_overlay").width($(tgt).outerWidth());
			$("#si_overlay").height($(tgt).outerHeight());
			$("#si_overlay").css("top", ( $(window).height() - $(tgt).height() ) / 2+$(window).scrollTop() + "px");
			$("#si_overlay").css("left", ( $(window).width() - $(tgt).width() ) / 2+$(window).scrollLeft() + "px");
			$(tgt).css("z-index","10000");
			$("#si_overlay").css("z-index","9999");
			
			
		}
				
		$(tgt).show();
		params.initfunc();
		
		function _close(){
			if (typeof document.body.style.maxHeight == "undefined") {//if IE 6
				/*
				$("body", "html").css({
					height: "auto",
					width: "auto"
				});
				
				$("html").css("overflow", "");
				*/
				$("#si_overlay").remove();
				
			}
			$(tgt).removeClass("sc_center_popup");
			tgt.hide();
		}
		
		return true;
   });

};

function checkCareerForm(){
	var is_submittable = true;
	var err_msg = "";
	$("#si_career_jobs select[name$='[jc]']").each(function(){
		if($(this).children(':selected').val()!=""){
			var tgt_nm = $(this).attr("name");
			var tgt_jt = tgt_nm.substr(tgt_nm.lastIndexOf("[jc]")-2,1);
			var jt = $(this).closest("table.sc_career_inside").find("select[name$='"+tgt_jt+"][jt]']");
			if($(jt).children(':selected').val() == ""){
				$(jt).css('border','solid 2px #FF0000').css('color','#FF0000').focus();
				is_submittable = false;
				 err_msg += "第" + tgt_jt+ "経験職種の小カテゴリーが未入力です\n";
			}else{
				$(jt).css('border','1px solid #7F9DB9').css('color','#000000');
			};
		}
	})
	if(err_msg!=""){
		alert(err_msg);
	}
	return is_submittable;
}

function initTopSearcher(){
	//キャリアフォームの切り替え
	$("#si_careerform_extend").click(function(){
		$("#si_careerform1").hide();
		$("#si_careerform2").show();
	});
	
	$("#si_add_careerjob").click(function(){
		switch($("#si_career_jobs .jsl_hidden").length){
			case 2:
				$("#si_career_jobs .sc_career_job:eq(1)").removeClass("jsl_hidden");
				break;
			case 1:
				$("#si_career_jobs .sc_career_job:eq(2)").removeClass("jsl_hidden");
				$("#si_add_careerjob").remove();
				break;
			case 3:
				alert("登録できるキャリアは３件までとなります");
				$("#si_add_careerjob").remove();
				break;
			default:
				break;
		}
	});
	
	$("#si_submit_career").click(function(){
		$("#si_career_form").submit();
	});
	
	//キャリアフォーム初期と拡張の連動
	$("#si_career_form2 select").each(function(){
		$(this).change(function(){
			$("#si_career_form select[name='" + $(this).attr('name')+ "']").val($(this).val());
			if($(this).attr('name')=='data[cm][job][1][jc]'){
				changeCareerJobType($("#si_career_form select[name='data[cm][job][1][jc]']"));
				$("#si_skillbox_1").empty().append('スキル・資格を設定してください');
			}
			if($(this).attr('name')=='data[cm][edu]'){
				if($(this).val() == ""){
					$("#si_career_form select[name$='[gra]']").attr("disabled","disabled").val("");
				}else{
					$("#si_career_form select[name$='[gra]']").removeAttr("disabled");
				}
			}
		});
	});
	
	$("#si_career_form").submit(function(){
		return checkCareerForm();
	});
	initSearcher();
	
	function getSearchLink(link){
		var strlen = link.length;
		if(link.lastIndexOf("/")==strlen-1){
			link = link.substr(0,strlen-1);
			strlen = strlen -1;
		}
		return link.substr(link.lastIndexOf("/")+1);
	}
	
	$(".sc_top_cond_aa").click(function(){
		$("#si_conditional_reset").click();
		var link = getSearchLink($(this).attr("href"));
		$("select[name='data[jkm][aa]']").val(link);
		$("#si_conditional_form").submit();
		return false;
	})
	
	$(".sc_top_cond_jc").click(function(){
		$("#si_conditional_reset").click();
		var link = getSearchLink($(this).attr("href"));
		$("select[name='data[jkm][jc]']").val(link);
		$("#si_conditional_form").submit();
		return false;
	})
	
}

function initSearcher(){
	$("#si_career_reset").click(function(){
		var tgt = $("#si_career_form,#si_career_form2");
		$("input,select",tgt).val("");
		$("#si_languagebox").empty().append("語学力を設定してください");
		$("div[id^='si_skillbox_']").empty().append("スキル・資格を設定してください");
		$("select[name$='[jt]']",tgt).attr('disabled','disabled');
		$("select[name$='[gra]']").attr("disabled","disabled").val("");
		//以下言語ボックスのクリア
		var lang_popup = $("#si_popup_lang");
		//設定値の初期化
		$("select",lang_popup).each(function(){
			$(this).val("");
		});
		$("tr",lang_popup).each(function(){
			$(":radio:first",this).attr('checked','checked');
		})
	});
	
	$("#si_conditional_reset").click(function(){
		var tgt = $("#si_conditional_form");
		$("input,select",tgt).val("");
		$("select[name$='[jt]']",tgt).attr('disabled','disabled');
	});
	
	//学歴検索ボックス連動
	$("select[name$='[edu]']").each(function(){
		if($(this).children(':selected').val()==""){
			$(this).closest("form").find("select[name$='[gra]']").attr("disabled","disabled").val("");
		}
		$(this).change(function(){
			if($(this).children(':selected').val()==""){
				$(this).closest("form").find("select[name$='[gra]']").attr("disabled","disabled").val("");
			}else{
				$(this).closest("form").find("select[name$='[gra]']").removeAttr("disabled");
			}
		})
	});
}

function initMainSearcher(){
	//フォーム送信処理
	$("#si_conditional_form").submit(function(){
		var tgt = $(this);
		var fm = $("#si_search_form");
		$("input",tgt).each(function(){
			var inp = '<input type="hidden" name="'+$(this).attr("name")+ '" value="'+$(this).val()+'" />';
			fm.append(inp);
		})
		$("select",tgt).each(function(){
			var inp = '<input type="hidden" name="'+$(this).attr("name")+ '" value="'+$(this).find(":selected").val()+'" />';
			fm.append(inp);
		})
		fm.attr("action",tgt.attr("action"));
		fm.submit();
		return false;
	})
	
	$("#si_career_form").submit(function(){
		if(!checkCareerForm()){
			return false;
		}
		var tgt = $(this);
		var fm = $("#si_search_form");
		$("input",tgt).each(function(){
			var inp = '<input type="hidden" name="'+$(this).attr("name")+ '" value="'+$(this).val()+'" />';
			fm.append(inp);
		})
		$("select",tgt).each(function(){
			var inp = '<input type="hidden" name="'+$(this).attr("name")+ '" value="'+$(this).find(":selected").val()+'" />';
			fm.append(inp);
		})
		fm.attr("action",tgt.attr("action"));
		fm.submit();
		return false;
	})
	
	//タグ切替でフォーム送信
	$("#si_submit_career").click(function(){
		$("#si_career_form").submit();
		return false;
	});
	
	$("#si_submit_conditional").click(function(){
		$("#si_conditional_form").submit();
		return false;
	});
	
	//条件を設定クリック
	$(".sc_setform_conditional").click(function(){
		$(".sc_career_tab").hide();
		$(".sc_conditional_tab").show();
	})
	
	//条件を設定クリック
	$(".sc_setform_career").click(function(){
		$(".sc_conditional_tab").hide();
		$(".sc_career_tab").show();
	})
	
	initSearcher();
}

/**
 * キープボタンイベント処理設定
 * @param {Object} page_type
 */
function initKeeper(page_type){
	$(".sc_keep").live('click',function(){
		var tgt = $(this);
		$.ajax({
			type:"GET",
			url:$(tgt).attr('href'),
			success:function(data,dataType){
				data = eval(data);
				if(data[0] == false){
					alert("保存できる案件は20件までです。\nキープ案件一覧から削除してください");
					return false;
				}
				$(tgt).attr('href',$(tgt).attr('href').replace("set","delete"));
				$(tgt).text("削除する");
				if(page_type == 'jobs'){
					$(".sc_keep").each(function(){
						$(this).removeClass("jsl_keep sc_keep").addClass("jsl_keep_del sc_keep_del");
					})
				}
				else if($(tgt).parent("div.jsl_search_main").length ||$(tgt).parents("div.jsl_head_box").length ||$(tgt).parents("div.jsl_btns").length){
					$(tgt).removeClass();
					$(tgt).addClass("jsl_keep_del sc_keep_del");
				}else{
					$(tgt).removeClass();
					$(tgt).addClass("jsl_del sc_keep_del");
				}
			},
			error:function(XMLHttpRequest, textStatus, errorThrown){
				alert('何らかの原因で通信に失敗しました。再度時間をおいてからお試しください');
			}
		})
		return false;
	});
	
	$(".sc_keep_del").live('click',function(){
		var tgt = $(this);
		$.ajax({
			type:"GET",
			url:$(tgt).attr('href'),
			success:function(data,dataType){
				if (page_type == 'keep') {
					if ($(tgt).parent("div.jsl_search_main").length) {
						if ($("div.jsl_search_unit").length <= 1) {
							window.location.href = "/search";
						}
						else {
							$(tgt).closest("div.jsl_search_unit").remove();
						}

					}
					else {
						if ($("div.jsl_search_unit_list tr").length <= 2) {
							window.location.href = "/search";
						}
						else {
							$(tgt).closest("tr").remove();
						}
					}
				}
				else if(page_type == 'jobs'){
					$(".sc_keep_del").each(function(){
						$(this).attr('href', $(this).attr('href').replace("delete", "set"));
						$(this).text("キープする");
						$(this).removeClass("jsl_keep_del sc_keep_del").addClass("jsl_keep sc_keep");
					})
				}
				else {
					$(tgt).attr('href', $(tgt).attr('href').replace("delete", "set"));
					$(tgt).text("キープする");
					$(tgt).removeClass().addClass("jsl_keep sc_keep");
				}
			},
			error:function(XMLHttpRequest, textStatus, errorThrown){
				alert('何らかの原因で通信に失敗しました。再度時間をおいてからお試しください');
			}
		})
		return false;
	})
}

function initResultSize(){
	if($("#jsl_search").height() < 700){
		var h = 1000 - $("#jsl_search").height();
		$("#jsl_information2").prepend('<div id="si_spacer" style="height:' + h + 'px"></div>');
	}
}

function initSearchBox(){
	$(".sc_searcher_change").click(function(){
		$(".sc_conditional_tab,.sc_career_tab").toggle();
		/*
		if($(".sc_rating_career:visible").length > 0){
			$(".sc_rating_career:visible").hide();
		}else{
			$(".sc_rating_career:hidden").show();
		}
		if($(".sc_rating_conditional:visible").length > 0){
			$(".sc_rating_conditional:visible").hide();
		}else{
			$(".sc_rating_conditional:hidden").show();
		}
		*/
		
		
	})
}
function initConditionBox(){
	
	function initJobTypes(tgt_jc){
		var cate = $("a",tgt_jc).attr("href");
		var counter =1;
		var list_jobtype = '<ul class="jsl_narrow3">';
		for(var i = 0; i < cate_s.length; i++){
			if(cate_s[i].code == cate){
				if(counter == 1){
					list_jobtype += '<li class="sc_cond_jt jsl_first"><a href="' + cate_s[i].sub_code + '">' + cate_s[i].name + '</a></li>';
				}else{
					list_jobtype += '<li class="sc_cond_jt"><a href="' + cate_s[i].sub_code + '">' + cate_s[i].name + '</a></li>';
				}
				counter = counter + 1;
			}
		}
		list_jobtype += '</ul>';
		$(tgt_jc).append(list_jobtype);
	}
	
	function initPrefs(tgt_a){
		var cate = $("a",tgt_a).attr("href");
		var counter =1;
		var list_prefs = '<ul class="jsl_narrow3">';
		for(var i = 0; i < pref.length; i++){
			if(pref[i].a_code == cate){
				if(counter == 1){
					list_prefs += '<li class="sc_cond_pref jsl_first"><a href="' + pref[i].p_code + '">' + pref[i].name + '</a></li>';
				}else{
					list_prefs += '<li class="sc_cond_pref"><a href="' + pref[i].p_code + '">' + pref[i].name + '</a></li>';
				}
				counter = counter + 1;
			}
		}
		list_prefs += '</ul>';
		$(tgt_a).append(list_prefs);
	}
	
	function setSearchCond(tgt,save){
		var data = $("a:first",tgt).attr("href");
		if(!$.support.hrefNormalized){
			data = data.substr(data.lastIndexOf("/")+1);
		}
		
		if($(tgt).hasClass("sc_cond_jc")){
			if (save) {
				$("#jobcate").val(data);
				$("#jobtype").val("");
			}else{
				$("#jobcate").val("")
				$("#jobtype").val("");
			}
		}
		if($(tgt).hasClass("sc_cond_area")){
			if (save) {
				$("#area").val(data);
			}else{
				$("#area").val("");
			}
		}
		if($(tgt).hasClass("sc_cond_salary")){
			if (save) {
				$("#salary").val(data);
			}else{
				$("#salary").val("");
			}
		}
		if($(tgt).hasClass("sc_cond_kodawari")){
			$("#kodawari"+data).removeAttr("checked");
		}
		
		//第２分類
		if($(tgt).hasClass("sc_cond_jt")){
			if (save) {
				var parent_data = $(tgt).parents("li.sc_cond_jc").children("a:first").attr("href");
				if (!$.support.hrefNormalized) {
					parent_data = parent_data.substr(data.lastIndexOf("/") + 1);
				}
				$("#jobcate").val(parent_data);
				$("#jobtype").val(data);
			}else{
				$("#jobcate").val("");
				$("#jobtype").val("");
			}
		}
		if($(tgt).hasClass("sc_cond_pref")){
			if (save) {
				$("#area").val(data);
			}else{
				$("#area").val("");
			}
		}
	}
	
	//マウスアウト時の処理
	/*
	$(".jsl_hover").live("mouseout",function(){
		$(".jsl_narrow2,.jsl_narrow3",this).hide();
		$(this).removeClass("jsl_hover jsl_hover2");
		$(".sc_ie_layer2").remove();
		$(".sc_ie_layer1").remove();
	})
	*/
	
	/*
	$(".jsl_hover2").live("mouseout",function(){
		$(".jsl_narrow3",this).hide();
		$(this).removeClass("jsl_hover2");
		$(".sc_ie_layer2").remove();
		$(".sc_ie_layer1").remove();
	})
	*/
	
	//オーバー時の処理
	$("ul.jsl_narrow > li").each(function(){
		$(this).hover(
			function(){
			
				$(this).addClass("jsl_hover");
				$(".jsl_hover").hover(function(){
				}, function(){
					$(".jsl_narrow3", this).hide();
					$(".jsl_narrow2", this).hide();
					$(this).removeClass("jsl_hover2");
					$(this).removeClass("jsl_hover");
					$(".sc_ie_layer2").remove();
					$(".sc_ie_layer1").remove();
				});
				
				$("ul.jsl_narrow2", this).show();
				
				//IEならの分岐を追加
				if (typeof document.body.style.maxHeight == "undefined" && $(this).attr('id') != 'si_cond_kodawari' && !$(this).hasClass('jsl_keywords')) {
					var tgt = $("ul.jsl_narrow2", this);
					var ie_layer = '<iframe class="sc_ie_layer1"></iframe>';
					
					$(tgt).before(ie_layer);
					$(".sc_ie_layer1").css("position", "absolute");
					$(".sc_ie_layer1").width($(tgt).outerWidth());
					$(".sc_ie_layer1").height($(tgt).outerHeight());
					var pos = $(tgt).position();
					$(".sc_ie_layer1").css("top", pos.top);
					$(".sc_ie_layer1").css("left", pos.left);
				}
			},
			function(){}
			
		);
		if($(this).attr("id")=="si_cond_kodawari"){
			$(this).click(function(){
				var popup = $("#si_pop_kodawari");
				popup.css("margin","0");
				popup.showCenterPopup({
					btnClose:"#si_pop_close",
					initfunc: function(){
						var topOffset =  ( $(window).height() - $(popup).height() ) / 2+$(window).scrollTop();
						var condOffset = $("#jsl_customize .jsl_box").offset();
						if(topOffset < condOffset.top){
							$(popup).css("top", condOffset.top + "px");
							$("#si_overlay").css("top",condOffset.top + "px");
						}
						
					}
				});
				//$("#si_pop_kodawari > *").show();
			});
		}
	});
	
	//こだわり条件の初期表示設定
	$("#si_pop_kodawari  li.sc_cond_kodawari").each(function(){
		function setKodawari(sel){
			var tgt = $("#si_cond_kodawari");
			$(tgt).after('<li class="jsl_point ' + $(sel).attr("class") + '">' + $("label", sel).text() + '<a href="' + $("input:checkbox", sel).val() + '"><img src="/media/searchlab/img/search/jsl_ico_close.png" alt="条件を解除" /></a></li>');
		}
		if($("input:checkbox",this).attr("checked")){
			setKodawari($(this));
		}
		$("input:checkbox",this).click(function(){
			if (!$(this).attr("checked")) {
				$("li.jsl_point.sc_cond_kodawari a[href='" + $(this).val() + "']").closest("li").remove();
			}else{
				setKodawari($(this).parents("li.sc_cond_kodawari"));
			}
		})
	});
	
	//キーワードの設定
	$("#si_condition_keyword").each(function(){
		$(this).blur(function(){
			$("#keyword").val($(this).val());
		})
	})
	
	function setSelectedItem(sel){
		var tgt = $(sel).parents("li.sc_cond_root");
		setSearchCond($(sel),true);
		if($(tgt).next("li.jsl_point").length) $(tgt).next("li.jsl_point").remove();
		$(tgt).after('<li class="jsl_point '+ $(sel).attr("class")+ '">'+$("a:first",sel).text()+'<a href="'+$("a:first",sel).attr('href')+'"><img src="/media/searchlab/img/search/jsl_ico_close.png" alt="条件を解除" /></a></li>');
		
		$(".sc_ie_layer2",tgt).remove();
		$(".sc_ie_layer1",tgt).remove();
		$(".jsl_narrow3",tgt).hide();
		$(".jsl_narrow2",tgt).hide();
		$(".jsl_hover,.jsl_hover2",tgt).removeClass("jsl_hover2 jsl_hover");
		
		return false;
	}
	
	function setInitialVal(sel){
		var data = $("a:first",sel).attr("href");
		if (!$.support.hrefNormalized) {
			data = data.substr(data.lastIndexOf("/") + 1);
		}
		var jc = $("#jobcate").val();
		var jt = $("#jobtype").val();
		if ($(sel).hasClass("sc_cond_jc") && jt=="") {
			if(data == $("#jobcate").val()){
				$(sel).click();
			}
		}
		if ($(sel).hasClass("sc_cond_area")||$(sel).hasClass("sc_cond_pref")) {
			if(data == $("#area").val()){
				$(sel).click();
			}
		}
		if ($(sel).hasClass("sc_cond_salary")) {
			if(data == $("#salary").val()){
				$(sel).click();
			}
		}
		if ($(sel).hasClass("sc_cond_jt")) {
			
			var jcdata = $(sel).closest("li.sc_cond_jc").find("a:first").attr("href");
			if (!$.support.hrefNormalized) {
				jcdata = jcdata.substr(data.lastIndexOf("/") + 1);
			}
			
			if(data == jt && jcdata ==jc){
				$(sel).click();
			}
		}
	}
	/**
	 * 第１階層
	 */
	$("ul.jsl_narrow2 > li").each(function(){
		if ($(this).hasClass("sc_cond_jc")) initJobTypes($(this));
		if ($(this).hasClass("sc_cond_area")) initPrefs($(this));
		$(this).hover(
			function(){
				$(this).addClass("jsl_hover2");
				
				$(".jsl_hover2").hover(
					function(){},
					function(){
						$(".jsl_narrow3",this).hide();
						$(this).removeClass("jsl_hover2");
						$(".sc_ie_layer2").remove();
					}
				);
				
				if ($(this).hasClass("sc_cond_jc") || $(this).hasClass("sc_cond_area")) {
					$("ul.jsl_narrow3", this).show();
					//IEならの分岐を追加
					if (typeof document.body.style.maxHeight == "undefined" && $("ul.jsl_narrow3:first", this).length > 0) {
						var tgt = $("ul.jsl_narrow3", this);
						var ie_layer = '<iframe class="sc_ie_layer2"></iframe>';
						
						$(tgt).before(ie_layer);
						
						$(".sc_ie_layer2").css("position", "absolute");
						$(".sc_ie_layer2").width($(tgt).outerWidth());
						$(".sc_ie_layer2").height($(tgt).outerHeight());
						var pos = $(tgt).position();
						$(".sc_ie_layer2").css("top", pos.top);
						$(".sc_ie_layer2").css("left", pos.left);
					}
				}
			},
			function(){}
		);
		$(this).click(function(){
			setSelectedItem($(this));return false;
		})
		setInitialVal($(this));

	});
	/**
	 * 第２階層
	 */	
	$("ul.jsl_narrow3 > li").each(function(){
		$(this).click(function(){
			setSelectedItem($(this));return false;
		})
		setInitialVal($(this));
	})
	
	//選択解除処理
	$("li.jsl_point > a").live("click",function(){
		setSearchCond($(this).closest("li"),false);
		$(this).closest("li").remove();
		return false;
	})
	
	
	//絞り込み検索実行
	$("#si_search_submit").click(function(){
		var tgt = $("form:visible[id!='si_search_form']");
		if($(tgt).attr('id')=='si_career_form' && !checkCareerForm()) return false;
		var fm = $("#si_search_form");
		$("input",tgt).each(function(){
			var inp = '<input type="hidden" name="'+$(this).attr("name")+ '" value="'+$(this).val()+'" />';
			fm.append(inp);
		})
		$("select",tgt).each(function(){
			var inp = '<input type="hidden" name="'+$(this).attr("name")+ '" value="'+$(this).find(":selected").val()+'" />';
			fm.append(inp);
		})
		
		//絞り込み検索フラグの追加
		var inp = '<input type="hidden" name="data[narrowdown]" value="1" />';
		fm.append(inp);
		
		fm.attr("action",tgt.attr("action"));
		fm.submit();
		return false;
	});
	
	
	$("#si_criteria_box_title").click(function(){
		$("#si_criteria_box").toggle();
	});
	$("#si_criteria_box_title").each(function(){
		$("#si_criteria_box").hide();
	});
	
}

function initCareerPopup(){
	$("#si_popup_skills,#si_popup_lang").each(function(){
		$(this).clone(true).appendTo("body");
		$(this).remove();
	})
	$("#si_career_jobs select[name$='[jc]'],#si_career_jobs select[name$='[jt]']").change(function(){
		var tgt_nm = $(this).attr("name");
		var tgt_jt = tgt_nm.substr(14,1);
		if (JELAB.url_splited.urls[0] != '') {
			$("div[id^='si_skillbox_" + tgt_jt + "']").empty().append("スキル・資格を設定してください");
		}else{
			$("div[id^='si_skillbox_" + tgt_jt + "']").empty();
		}
	})
	/**
	 * 言語追加ボタンクリック
	 */
	$("#si_set_langs").click(function(){
		var popup = $("#si_popup_lang");
		popup.showCenterPopup({
			btnClose:".sc_popup_close",
			btnAdd:"#si_add_langs",
			addfunc:function(){
				//ターゲットの選定
				var tgt_lang = (JELAB.url_splited.urls[0] == '')?'#si_languagebox':".jsl_top_language_career";
				$(tgt_lang).empty();
				$("select",popup).each(function(){
					if($(this).children(':selected').val() != ""){
						var lang_txt= "<span>" + $(this).closest("tr").children("th").text()+ ":" + $(this).children(':selected').text();"</span><br />";
						$(tgt_lang).append(lang_txt);
						$(tgt_lang).append('<input type="hidden" name="data[cm][lang][]" value="'+$(this).children(':selected').val()+'" />');
					}
				})
				
				$("input[type='radio']:checked",popup).each(function(){
					if ($(this).val() != "") {
						var lang_td = $(this).closest("tr").children("td.jsl_specific");
						var lang_txt = "<span>" + $(":hidden", lang_td).val() + $(lang_td).text() + ":" + $(this).closest("td").text() + "</span><br />";
						$(tgt_lang).append(lang_txt);
						$(tgt_lang).append('<input type="hidden" name="data[cm][lang][]" value="'+$(this).val()+'" />');
					}
				})
				
			}
		});
	})
	
	/**
	 * スキル追加ボタンクリック
	 */
	$("a[id^='si_set_skill_']").click(function(){
		var popup = $("#si_popup_skills");
		var sl_job = $(this).attr("id");
		sl_job = sl_job.substr(sl_job.lastIndexOf("_")+1);
		if($("#si_career_jobs select[name='data[cm][job]["+ sl_job +"][jt]']").children(':selected') == "undefined" || $("#si_career_jobs select[name='data[cm][job]["+ sl_job +"][jt]']").children(':selected').val() == ""){
			alert("職種を選択してください"); return false;
		}
		popup.showCenterPopup({
			btnClose:".sc_popup_close",
			initfunc:function(){
				$("h3",popup).empty().append($("#si_career_jobs select[name='data[cm][job]["+ sl_job +"][jt]']").children(':selected').text() + "のスキル設定")
				$("#si_skill_list").empty().append('<div class="jsl_skill_unit"><img src="/media/searchlab/img/js/loading.gif"></div>');
				$.ajax({
					type:"GET",
					url:"/skills/" + sl_job + "/" + $("#si_career_jobs select[name='data[cm][job]["+ sl_job +"][jc]']").children(':selected').val() + "/" + $("#si_career_jobs select[name='data[cm][job]["+ sl_job +"][jt]']").children(':selected').val(),
					dataType:"html",
					success:function(data,dataType){
						$("#si_skill_list").empty().append(data);
						//データのチェック付け
						var box = $("#si_skillbox_" + sl_job);
						$("input",box).each(function(){
							$("input[value='"+$(this).val()+"']",popup).attr("checked","checked");
						})
					},
					error:function(XMLHttpRequest, textStatus, errorThrown){
						alert("スキル取得に失敗しました");
					}
				})
			},
			btnAdd:"#si_add_skills",
			addfunc:function(){
				var tgt = $("#si_skillbox_" + sl_job);
				tgt.empty();
				$(":checked",popup).each(function(){
					tgt.append('<input type="hidden" name="'+$(this).attr('name')+ '" value="' + $(this).val() + '"><span>【' + $(this).closest("ul").prev().text() +'】<br />' + $(this).closest("li").text() + '</span><br />');
				})
				
			}
		});
	});
	
	var lang_popup = $("#si_popup_lang");
	//設定値の初期化
	if ($("input[name='data[cm][lang][]']").length >= 1) {
		//ターゲットの選定
		var tgt_lang = (JELAB.url_splited.urls[0] == '')?'#si_languagebox':".jsl_top_language_career"
		
		$("input[name='data[cm][lang][]']").each(function(){
			var v = $(this).val();
			if($("option[value='" + v + "']",lang_popup) != undefined && $("option[value='" + v + "']",lang_popup).val() != undefined){
				tgt = $("option[value='" + v + "']", lang_popup);
				$(tgt).attr("selected", "selected");
				var tgt_p = $(tgt).closest("select");
				var lang_txt= "<span>" + $(tgt_p).closest("tr").children("th").text()+ ":" + $(tgt_p).children(':selected').text();"</span><br />";
				$(tgt_lang).append(lang_txt);
			}
			else if ($("input[value='" + v + "']",lang_popup) != undefined && $("input[value='" + v + "']",lang_popup).val() != undefined) {
				var tgt = $("input[value='" + v + "']", lang_popup);
				$(tgt).attr("checked", "checked");
				var lang_td = $(tgt).closest("tr").children("td.jsl_specific");
				var lang_txt = "<span>" + $(":hidden", lang_td).val() + $(lang_td).text() + ":" + $(tgt).closest("td").text() + "</span><br />";
				$(tgt_lang).append(lang_txt);
			}
		})
	}
}

/*
 * JELABオブジェクト生成
 */
if(typeof(JELAB) == 'undefined'){
	var JELAB = new Object();
}
JELAB.url_splited = splitURL();
$(function(){
	//処理振り分け
	switch(JELAB.url_splited.urls[0]){
		case 'special':
			initKeeper('special');
			break;
		case 'newjob':
			initKeeper('newjob');
			break;
		case 'search':
			initSearchBox();
			initResultSize();
			initKeeper('search');
			initConditionBox();
			initCareerPopup();
			initMainSearcher();
			break;
		case 'keep':
			initKeeper('keep');
			break;
		case 'jobs':
			initKeeper('jobs');
			break;
		case 'rank':
			initKeeper('search');
		case '':
			initTopSearcher();
			initCareerPopup();
			break;
		default:
			break;
	};
})


