/**
 * FileName:viewNews.js
 * @author
 */

/**********************************************************
* xxxxxxxxxx:トップ新着求人情報エリア
*/

$(document).ready(function()
{
	//変数宣言
	
	var apLists = $("div.ap-list-02").find("ul.ul-A").find("li");
	var cookName = "areaName" ;//cookieの名前
	var cookTerm = 365;
	var xmlErrorComment = '<p class="leadError">お仕事データを正確に取得出来ませんでした。</p>';//XML読み込み失敗時の出力内容
	var maxViewNum = 6;//XML箇所表示件数
	var haken = '<span class="span-A"><img src="ap-common/images/icn-haken-01.gif" alt="派遣" width="48" height="15" /></span>';//派遣の場合のアイコン設定
	var shokai = '<span class="span-A"><img src="ap-common/images/icn-haken-02.gif" alt="紹介予定" width="48" height="15" /></span>';//紹介予定の場合のアイコン設定
	var noJobs = '現在、お仕事情報を掲載することができません。<br />お電話またはお問い合わせフォームよりご連絡ください。';//表示データが0件の場合
	var tokyoMin = 1;//東京エリア最小数
	var tokyoMax = 40;//東京エリア最大数
	var osakaNum = 41;//大阪エリア

	// todo systemproceed add 2010.10.05 start
	// 勤務地のプルダウン内容
    var optionHtml = {"0":["東京周辺","東京","新宿 - 池袋","銀座 - 丸の内","渋谷 - 恵比寿","上野 - 御茶ノ水","品川 - 横浜","その他東京都","千葉方面","神奈川方面","埼玉方面"],"1":["大阪周辺","大阪","関西・その他"]};
    var optionValue = {"0":["kantou","tokyo","shinjuku_ikebukuro_area","ginza_marunouchi_area","sibuya_ebisu_area","ueno_ochanomizu_area","shinagawa_yokohama_area","tokyo02","chiba_area","kanagawa_area","saitama_area"],"1":["kansai","osaka","kansai_other_area"]};
	// todo systemproceed add 2010.10.05 end
	
	//タブのclassと画像切り替え
	function changeTabs(currentVal){

		//カレント表示のclass切り替え
		apLists.each(function(){
			currentVal.className = "";
		});
		currentVal.className = "cur";
		//タブ画像の切り替え
		apLists.find("img").each(function(){
			if($(this).attr("src").indexOf("-cur","") !== -1){
				var thisApListsImgSrc = $(this).attr("src").replace("-cur","");
				$(this).attr("src",thisApListsImgSrc);
			}else{
				var thisApListsImgSrc = $(this).attr("src").replace("-ovr","");
				$(this).attr("src",thisApListsImgSrc);
			}
			$(this).attr("class","rollover");
		});
		var thisApListsImgSrc = currentVal.find("img").attr("src").replace(".gif","-cur.gif");
		currentVal.find("img").attr("src",thisApListsImgSrc);
		currentVal.find("img").attr("class","");
	}
	
	// todo systemproceed add 2010.10.05 start
	// 動的に勤務地のプルダウン表示
	function setAreaOptions(index){
		if(index==2){
			return false;
		}else{
	//		var optionObj = this.form1.area_array;
			var optionObj = document.forms[0].area_array;
			len = optionObj.options.length;
			for (i=len-1; i>=0; --i) {
				optionObj.options[i] = null;
			}
			for (i=0; i<optionHtml[index].length; i++) {
				optionObj.options[i] = new Option(optionHtml[index][i], optionValue[index][i]);
			}
		}
	}
	// todo systemproceed add 2010.10.05 end

	//cookieがあれば正しいタブを表示
	if($.cookie(cookName)){
		apLists.each(function (i){
			if($.cookie(cookName) == apLists.index(this)){
				changeTabs($(this));
				// todo systemproceed add 2010.10.07 start
				setAreaOptions(apLists.index(this));
				// todo systemproceed add 2010.10.07 end
			}
		});
	}

	//XML読み込み
	function loadJobData(){
		$.ajax({
			type: "GET",
			url: "ap-common/xml/jobdata.xml",//XMLパス（HTMLからの相対）
			dataType: "xml",
			cashe: false,
			success: xmlParser,
			error: xmlError
		});

		//XML読み込みに失敗した場合
		function xmlError(){
			$(".ap-list-02").append(xmlErrorComment);
		}

		//XML読み込みに成功した場合
		function xmlParser(xml) {

			if(parseInt($.cookie(cookName)) == 2){
				$(".ap-list-02").find("ul.ul-A ~ *").remove();
				$(".ap-block-03").css("display","none");
				$(".ap-block-19").css("display","block");
				$(".ap-block-20").css("display","block");
			}else{

				$(".ap-block-03").css("display","block");
				$(".ap-block-19").css("display","none");
				$(".ap-block-20").css("display","none");

				//最終更新日の表示
				var lastUpDate = $(xml).find("Date").text();
				if($(".ap-list-02").find("p.p-A").index()<0){
				$(".ap-list-02").find("ul.ul-A").after('<p class="p-A">' + lastUpDate + '</p>');
				}
				//現在開いているエリアを取得
				switch (parseInt($.cookie(cookName))) {
					case 0:
						var jobArea = "tokyo";
						break;
				case 1:
					var jobArea = "osaka";
					break;
				case 2:
					var jobArea = "tenshoku";
					break;
				default:
					var jobArea = "tokyo";
					break;
				}
				//Job内容の表示
				if($(".ap-list-02").find("ul.ul-B").index()<0){
					$(".ap-list-02").append('<ul class="ul-B"></ul>');
				}
				var i = 0;
				$(".ap-list-02").find("ul.ul-B").empty();
				$(xml).find("Job").each(function () {
					if($(this).find("Style").text()==0){var icn = haken;}
					if($(this).find("Style").text()==1){var icn = shokai;}
					//jobAreaの値が東京の場合
					if(jobArea == "tokyo"){
						if(tokyoMin<= parseInt($(this).find("Area").text()) && tokyoMax >= parseInt($(this).find("Area").text())){
							$(".ap-list-02").find("ul.ul-B").append('<li>' + icn + '<span class="span-B"><a href="http://www.arkpower.co.jp/haken/detail.php?id=' + $(this).find("Id").text() + '" title="' + $(this).find("Title").text() + 'へ">' + $(this).find("Title").text() + '</a></span>' + '</li>');
							i++;
							if(i>maxViewNum-1){return false;}
						}
					}
					//jobAreaの値が大阪の場合
					if(jobArea == "osaka"){
						if(parseInt($(this).find("Area").text()) == osakaNum){
							$(".ap-list-02").find("ul.ul-B").append('<li>' + icn + '<span class="span-B"><a href="http://www.arkpower.co.jp/haken/detail.php?id=' + $(this).find("Id").text() + '" title="' + $(this).find("Title").text() + 'へ">' + $(this).find("Title").text() + '</a></span>' + '</li>');
							i++;
							if(i>maxViewNum-1){return false;}
						}
					}
				});
				//表示出来る件数が0件の場合
				if(i==0){$(".ap-list-02").find("ul.ul-B").append('<li>' + noJobs + '</li>')};
			}
		}
	}

	loadJobData();//初回ロード


	//タブをクリックした場合の挙動
	apLists.click(function(){
		var index = apLists.index(this);
		//クリックしたタブのcookieを保存
		$.cookie(cookName,index,{expires:cookTerm});
		loadJobData();
		changeTabs($(this));
		// todo systemproceed add 2010.10.05 start
		setAreaOptions(index);
		// todo systemproceed add 2010.10.05 end
	});
	

});

