var baseUrl = '/search/';

var adsList = {
	ads_intrain: {
		title: "電車広告（車内広告）",
		path: "train/ads_intrain/intrain_{LINE}.html",
		line: ["jr", "tokyometro", "toei", "tokyu", "odakyu", "keio", "seibu", "keikyu", "tobu", "keisei_hokuso", "sotetsu"]
	},
	ads_reserving: {
		title: "電車広告（広告貸切）",
		path: "train/ads_reserving/reserving_{LINE}.html",
		line: ["jr", "tokyometro", "toei", "tokyu", "odakyu", "keio", "seibu", "keikyu", "keisei", "tobu", "sotetsu"]
	},
	ads_bodytrain: {
		title: "電車広告（車体広告）",
		path: "train/ads_bodytrain/bodytrain_{LINE}.html",
		line: ["jr", "tokyometro", "toei", "tokyu", "seibu", "tobu", "sotetsu", "keisei"]
	},
	poster: {
		title: "駅広告（駅貼りポスター）",
		path: "station/poster/poster_{LINE}.html",
		line: ["jr", "tokyometro", "toei", "tokyu", "odakyu", "keio", "seibu", "keikyu", "tobu", "keisei_hokuso", "sotetsu"]
	},
	sp_media: {
		title: "駅広告（ＳＰメディア）",
		path: "station/sp_media/sp_media_{LINE}.html",
		line: ["jr", "tokyometro", "toei", "tokyu", "odakyu", "keio", "seibu", "keikyu", "tobu", "keisei", "sotetsu"]
	},
	bus: {
		title: "バスその他広告（バス広告）",
		path: "bus_taxi/bus/{LINE}.html",
		line: ["tokyubus", "toeibus", "seibubus", "keiobus", "odakyubus", "kokusaikogyobus", "kantobus", "tachikawabus", "nishitokyobus", "tobubus", "keiseibus", "shinkeiseibus", "keikyubus", "otherbus"]
	},
	taxi: {
		title: "バスその他広告（タクシー広告）",
		path: "bus_taxi/taxi/taxi.html",
		line: ["taxi"]
	}
}

var lineList = {
	"jr": "JR",
	"tokyometro": "東京メトロ",
	"toei": "都営地下鉄",
	"tokyu": "東急",
	"odakyu": "小田急",
	"keio": "京王",
	"seibu": "西武",
	"keikyu": "京急",
	"tobu": "東武",
	"keisei_hokuso": "京成・北総",
	"sotetsu": "相鉄",
	"keisei": "京成",
	"tokyubus": "東急バス",
	"toeibus": "都営バス",
	"seibubus": "西武バス",
	"keiobus": "京王バス",
	"odakyubus": "小田急バス",
	"kokusaikogyobus": "国際興業バス",
	"kantobus": "関東バス",
	"tachikawabus": "立川バス",
	"nishitokyobus": "西東京バス",
	"tobubus": "東武バス",
	"keiseibus": "京成バス",
	"shinkeiseibus": "新京成バス",
	"keikyubus": "京急バス",
	"otherbus": "その他バス会社",
	"taxi": "各種タクシー会社"
};

$(function(){
	var $sAds = $('#selectAds');
	var $sLine = $('#selectLine');
	var $bSearch = $('#searchButton')

	if ($sAds.length && $sLine.length && $bSearch.length) {
		// 初期化
		$sLine.attr('disabled', 'disabled');
		buttonSwitch($sAds, $sLine, $bSearch);
		var ads = new Object();
		$.each(adsList, function (adsKey) {
				ads[adsKey] = this.title;
				var lines = this.line;
				this.line = new Object();
				for (var i = 0; line = lines[i]; i++) {
					this['line'][line] = lineList[line];
				}
		});
		// 広告タイプ変更時の処理
		$sAds.addOption(ads, false).change(function () {
			// 路線セット
			$sLine.removeOption(/.+/).attr('disabled', 'disabled');
			if ($(this).val().length) {
				// 路線をenableにする
				$sLine.addOption(adsList[$(this).val()].line, false).removeAttr('disabled');
			}
			buttonSwitch($sAds, $sLine, $bSearch);
		});
		// 路線タイプ変更時の処理
		$sLine.change(function () {
			buttonSwitch($sAds, $sLine, $bSearch);
		});
		// 送信
		$bSearch.click(function () {
			var adsValue = $sAds.val();
			var lineValue = $sLine.val();
			if (adsValue.length && lineValue.length) {
				// 目的のページへ移動
				location.href = baseUrl + adsList[adsValue].path.replace(/\{LINE\}/g, lineValue) + '?p=search';
			}
		});
		// デフォルトの広告タイプをセット
		if (location.hash.length) {
			default_ads = location.hash.replace('#', '');
			$sAds.val(default_ads).change();
		}
	}
});

// 検索ボタンの有効無効を切り替える
function buttonSwitch($line, $ads, $search)
{
	if ($line.val() && $ads.val() && $line.val().length && $ads.val().length) {
		$search.removeAttr('disabled').removeClass('disabled').attr('src', 'images/bu_search.gif');
	} else {
		$search.attr('disabled', 'disabled').addClass('disabled').attr('src', 'images/bu_search_off.gif');
	}
}