/**
 * SAXONLINEページ
 * @author 2009/12/18 Kirisawa.T
 */
$(function(){
	// グロナビの表示
	var url = document.URL;
	var hostname = location.hostname;
	var regexp = new RegExp(hostname + '\(|/also)/index*');

	// 画像が存在しない場合非表示
	$("img").error(function(){
		$(this).hide();
		return true;
	});

	// イベント一覧用
	$(".event_list_table").click(function(){
	  $(this).parent("a")[0].click();
	  return false;
	});
	// アーティスト一覧用
	$(".font_name2").hover(
		function(){
			$(this).prev().find("a").css("color", "#aa9bbf");
			return false;
		},
		function(){
			$(this).prev().find("a").css("color", "#999999");
			return false;
		}
	);
	$(".font_name").hover(
		function(){
			$(this).find("a").css("color", "#aa9bbf");
			return false;
		},
		function(){
			$(this).find("a").css("color", "#999999");
			return false;
		}
	);

	// TOPページの以外の処理
	if (url.match(regexp) == null)
	{
		rolloverNavi();
		switchArticleLabel();

	    // ページごとにナビ切り替え。。
	    switch (true) {
	    	case /magazine*/.test(url):
	    		boldNavi('magazine')
	    		break;
	    	case /music*/.test(url):
				boldNavi('music')
	    		break;
	    	case /artist*/.test(url):
	    		boldNavi('artists')
	    		break;
	    	case /event*/.test(url):
				boldNavi('event')
				getMonthString($("#m").val());
	    		break;
	    	case /lesson*/.test(url):
				boldNavi('lesson')
	    		break;
	    	case /gear*/.test(url):
				boldNavi('gear')
	    		break;
	    	case /shop*/.test(url):
				boldNavi('shop')
	    		break;
	    	case /saxclub*/.test(url):
	    		boldNavi('saxclub')
	    		break;
	    	default:
	    }
	}

	// デフォルト
	var searchType = $("#searchType").val();
	$("#" + searchType).css("font-weight","bold");
	$("#" + searchType).attr("key", "bold");
	var category_sub = $("#category_sub").val();
	$("#navi_" + category_sub).css("text-decoration", "underline");

	// 検索！
    $("#searchsubmit").click(function() {
    	//var searchType = $("label[style='font-weight: bold;']").attr("id");
    	var searchType = $("label[key='bold']").attr("id");
    	var postnm = $("input.search").attr("name");
    	searchAssist(postnm, $("#category").val(), $("#search").attr("id"), searchType);
    });

    // 条件変更
    $("label:not([key])").hover(
        function() {
        	switch ($(this).attr("id")) {
        	case 'nsearch':$(this).css("font-weight", "bold");
        	case 'esearch':$(this).css("font-weight", "bold");
        	case 'asearch':$(this).css("font-weight", "bold");
        	case 'csearch':$(this).css("font-weight", "bold");
        	case 'gsearch':$(this).css("font-weight", "bold");
        	case 'gksearch':$(this).css("font-weight", "bold");
        	case 'lsearch':$(this).css("font-weight", "bold");
        	default:
        	}
        },
        function() {
        	switch ($(this).attr("id")) {
        	case 'nsearch':$(this).css("font-weight", "");
        	case 'esearch':$(this).css("font-weight", "");
        	case 'asearch':$(this).css("font-weight", "");
        	case 'csearch':$(this).css("font-weight", "");
        	case 'gsearch':$(this).css("font-weight", "");
        	case 'gksearch':$(this).css("font-weight", "");
        	case 'lsearch':$(this).css("font-weight", "");
        	default:
        	}
        }
    );

    // 条件変更
    $("label").click(function() {
    	var isFunction = false;

        //遷移先ページに応じて分岐
        switch ($(this).attr("id")) {
        	case 'nsearch':
        		$("input.search")
        			.attr("id", "title")
        			.attr("name", "title");
        		isFunction = true;
        		break;
        	case 'esearch':
        		$("input.search")
    				.attr("id", "title")
    				.attr("name", "title");
        		isFunction = true;
        		break;
        	case 'asearch':
        		$("input.search")
    				.attr("id", "artistnm")
    				.attr("name", "artistnm");
        		isFunction = true;
        		break;
        	case 'gsearch':
        		$("input.search")
					.attr("id", "title")
					.attr("name", "title");
        		isFunction = true;
        		break;
        	case 'gksearch':
        		$("input.search")
					.attr("id", "hinnm")
					.attr("name", "hinnm");
        		isFunction = true;
        		break;
        	case 'csearch':
        		$("input.search")
					.attr("id", "hinnm")
					.attr("name", "hinnm");
        		isFunction = true;
        		break;
        	case 'lsearch':
        		$("input.search")
					.attr("id", "keyword")
					.attr("name", "keyword");
        		isFunction = true;
        		break;
        	/* case 'rsearch':
        		$("input.search")
					.attr("id", "artistnm")
					.attr("name", "artistnm");
        		break;
        	*/
        	/* case 'lsearch':
        		$("input.search")
					.attr("id", "artistnm")
					.attr("name", "artistnm");
        		break;
        	*/
        	default:

        }
        if (isFunction)
        {
        	$("label").css("font-weight", "");
            $(this).css("font-weight", "bold");
            $("label").removeAttr("key");
            $(this).attr("key", "bold");
        }
        $("label").unbind("mouseenter").unbind("mouseleave");
        // 条件変更
        $("label:not([key])").hover(
            function() {
            	switch ($(this).attr("id")) {
            	case 'nsearch':$(this).css("font-weight", "bold");
            	case 'esearch':$(this).css("font-weight", "bold");
            	case 'asearch':$(this).css("font-weight", "bold");
            	case 'csearch':$(this).css("font-weight", "bold");
            	case 'gsearch':$(this).css("font-weight", "bold");
            	case 'gksearch':$(this).css("font-weight", "bold");
            	case 'lsearch':$(this).css("font-weight", "bold");
            	default:
            	}
            },
            function() {
            	switch ($(this).attr("id")) {
            	case 'nsearch':$(this).css("font-weight", "");
            	case 'esearch':$(this).css("font-weight", "");
            	case 'asearch':$(this).css("font-weight", "");
            	case 'csearch':$(this).css("font-weight", "");
            	case 'gsearch':$(this).css("font-weight", "");
            	case 'gksearch':$(this).css("font-weight", "");
            	case 'lsearch':$(this).css("font-weight", "");
            	default:
            	}
            }
        );
    });
});


/**
 * リンクを制御します。
 * @author 2010/2/25 Subaur.W
*/
searchAssist = function (post, category, formId, searchType)
{
	formId = "#" + formId;
	//遷移先ページに応じて分岐
    switch (searchType) {
    	case 'nsearch':
    		var url = StarmineHelper.combineBaseUrl('sax/magazine/list.html');
    		$(formId).attr('action', url).submit();
    		break;
    	case 'esearch':
    		var url = StarmineHelper.combineBaseUrl('event/index.html');
    		$(formId).attr('action', url).submit();
    		break;
    	case 'asearch':
    		var url = StarmineHelper.combineBaseUrl('sax/artist/index.html');
    		$(formId).attr('action', url).submit();
    		break;
    	case 'csearch':
    		var url = StarmineHelper.combineBaseUrl('sax/music/cd/index.html');
    		$(formId).attr('action', url).submit();
    		break;
    	case 'gsearch':
    		var url = StarmineHelper.combineBaseUrl('sax/music/sorce/index.html');
    		$(formId).attr('action', url).submit();
    		break;
    	case 'gksearch':
    		var url = StarmineHelper.combineBaseUrl('sax/gear/index.html');
    		$(formId).attr('action', url).submit();
    		break;
    	case 'rsearch':
    		var url = StarmineHelper.combineBaseUrl('sax/artist/index.html');
    		$(formId).attr('action', url).submit();
    		break;
    	case 'lsearch':
    		var url = StarmineHelper.combineBaseUrl('sax/lesson/index.html');
    		$(formId).attr('action', url).submit();
    		break;
    	default:
    		var url = StarmineHelper.combineBaseUrl('sax/artist/index.html');
			$(formId).attr('action', url).submit();
    }
};

/**
 * 記事グループごとのラベルを切り替えます。
 * @author 2010/2/25 Subaur.W
*/
switchArticleLabel = function ()
{
	$('.category_label').each(function(){
        var img = $(this);
        var alt = img.attr('alt');
        var src;
        switch (alt) {
	    	case 'NEWS':
	    		src = StarmineHelper.combineBaseUrl('images/user_news.gif');
	    		break;
	    	case 'EVENT':
	    		src = StarmineHelper.combineBaseUrl('images/user_event.gif');
	    		break;
	    	case 'ARTIST':
	    		src = StarmineHelper.combineBaseUrl('images/user_artist.gif');
	    		break;
	    	case 'GEAR':
	    		src = StarmineHelper.combineBaseUrl('images/user_gear.gif');
	    		break;
	    	case 'REVIEW':
	    		src = StarmineHelper.combineBaseUrl('images/user_review.gif');
	    		break;
	    	case 'LESSON':
	    		src = StarmineHelper.combineBaseUrl('images/user_lesson.gif');
	    		break;
	    	default:
	    		src = StarmineHelper.combineBaseUrl('images/user_news.gif');
	    }
        img.attr('src', src);
	});
};

/**
 * オンマウス時のロールオーバーの処理です。
 * @author 2009/12/18 Kirisawa.T
*/
rolloverNavi = function ()
{
	$('.over').each(function(){
		var postfix = "";
        var img = $(this);
        var src = img.attr('src');
        var src_on = src.substr(0, src.lastIndexOf('.gif') -1)
                   + postfix
                   + src.substring(src.lastIndexOf('.gif'));
        $('<img>').attr('src', src_on);
        img.hover(
            function() {
                img.attr('src', src_on);
            },
            function() {
            	img.attr('src', src);
            }
        );
	});
};

/**
 * ナビを切り替える処理です。
 * @author 2009/12/18 Kirisawa.T
*/
boldNavi = function (targetAlt)
{
	var img = $("img[alt='" + targetAlt + "']");
    var src = img.attr('src');
    var src_on = src.substr(0, src.lastIndexOf('.gif') -1)
               + src.substring(src.lastIndexOf('.gif'));
    img.attr('src', src_on);
    img.hover(
            function() {
                img.attr('src', src_on);
            },
            function() {
            	img.attr('src', src_on);
            }
        );
}

/**
 * 月のフォーマットを切り替える処理です。
*/
getMonthString = function (m)
{
	if (!m)
	{
		return;
	}
	// 月を取得
	var year = m.substr(0, 4);
	var month = m.substr(5, 2);
	if (year == false || month == false)
	{
		return;
	}
	var monthStr;
	switch (month) {
		case '01':
			monthStr = 'JANUARY';
			break;
		case '02':
			monthStr = 'FEBRUARY';
			break;
		case '03':
			monthStr = 'MARCH';
			break;
		case '04':
			monthStr = 'APRIL';
			break;
		case '05':
			monthStr = 'MAY';
			break;
		case '06':
			monthStr = 'JUNE';
			break;
		case '07':
			monthStr = 'JANUARY';
			break;
		case '08':
			monthStr = 'AUGUST';
			break;
		case '09':
			monthStr = 'SEPTEMBER';
			break;
		case '10':
			monthStr = 'OCTOBER';
			break;
		case '11':
			monthStr = 'NOVEMBER';
			break;
		case '12':
			monthStr = 'DECEMBER';
			break;
		default:
			monthStr = '';
	}

	$("#event_month").html(year + "_" + monthStr);
}
