﻿
var j$ = jQuery;


// ----------------------------------
// 起動時
// ----------------------------------

// 初期表示タブを決定
switch (document.getElementById("UcSearchTab_hidActiveTabIndex").value) {
    case "0": { TabClick('tabKeyword'); break; }
    case "1": { TabClick('tabCatalog'); break; }
    case "2": { TabClick('tabGenre');　break; }
    default : { TabClick('tabKeyword'); break; }
}

// 初期表示処理
$(function() {	
	$('#UcSearchTab_TabContainer_TabPGenre_txtGenreKeyword').Watermark('ここにキーワードを入力できます');
});	

// 初期表示処理(IMEを設定のため)
rdoSearchKeyword();

//　ジャンル検索設定（ActiveXが利用できない場合の設定)
chkGanreAccodion();


// ----------------------------------
// 共通関数
// ----------------------------------

// タブ選択処理
function TabClick(selobj) {

    document.getElementById("tabKeywordOn").style.display = "none";
    document.getElementById("tabKeywordOff").style.display = "none";
    document.getElementById("tabCatalogOn").style.display = "none";
    document.getElementById("tabCatalogOff").style.display = "none";
    document.getElementById("tabGenreOn").style.display = "none";
    document.getElementById("tabGenreOff").style.display = "none";
    
    if (selobj == 'tabKeyword') {
        document.getElementById("tabKeywordOn").style.display = "inline";
        document.getElementById("tabCatalogOff").style.display = "inline";
        document.getElementById("tabGenreOff").style.display = "inline";
    }

    if (selobj == 'tabCatalog') {
        document.getElementById("tabKeywordOff").style.display = "inline";
        document.getElementById("tabCatalogOn").style.display = "inline";
        document.getElementById("tabGenreOff").style.display = "inline";
    }

    if (selobj == 'tabGenre') {
        document.getElementById("tabKeywordOff").style.display = "inline";
        document.getElementById("tabCatalogOff").style.display = "inline";
        document.getElementById("tabGenreOn").style.display = "inline";
    }
}


// ----------------------------------
// キーワードTAB
// ----------------------------------
// キーワードTAB：rdio選択時
function rdoSearchKeyword() {
    // 品番の時のみIMEoff
    if (document.getElementById("UcSearchTab_TabContainer_TabPKeyword_rdoSearchProdCd").checked == true) {
        document.getElementById("UcSearchTab_TabContainer_TabPKeyword_txtSearchKeyword").className = "input_searchword imeDisabled";
    }
    else {
        document.getElementById("UcSearchTab_TabContainer_TabPKeyword_txtSearchKeyword").className = "input_searchword imeActive";
    }
    // 全体の時のみ オプション可能
    if (document.getElementById("UcSearchTab_TabContainer_TabPKeyword_rdoSearchAll").checked == true) {
        document.getElementById("UcSearchTab_TabContainer_TabPKeyword_chkDetail").disabled = false;
    }
    else {
        document.getElementById("UcSearchTab_TabContainer_TabPKeyword_chkDetail").checked = false;
        document.getElementById("UcSearchTab_TabContainer_TabPKeyword_chkDetail").disabled = true;
    }
}

// キーワードTAB:Enter時
$("#UcSearchTab_TabContainer_TabPKeyword_txtSearchKeyword").keydown(function(e) {
    if (e.keyCode== 13) {
        theForm.onsubmit = function() {return false;};
        btnKeywordSearchClick();
    }
});

// キーワードTAB：検索ボタン押下時
function btnKeywordSearchClick() {

    // チェック処理
    var check = SearchChkKeyword();
    
    // 画面遷移
    if(check == true){
        
        var url = document.getElementById("UcSearchTab_nextUrlTab").value;
        var keyword = document.getElementById("UcSearchTab_TabContainer_TabPKeyword_txtSearchKeyword").value;
        
        // 全体の時
        if (document.getElementById("UcSearchTab_TabContainer_TabPKeyword_rdoSearchAll").checked == true) {
            url = url + "&stype=Keyword";
            url = url + "&keyword=" + escape(keyword);
            url = url + "&spec=" + escape(document.getElementById("UcSearchTab_TabContainer_TabPKeyword_chkDetail").checked);
            doPost("frmHeader", url);
        }
        
        // 商品名の時
        if (document.getElementById("UcSearchTab_TabContainer_TabPKeyword_rdoSearchProdName").checked == true) {
            url = url + "&stype=ProductName";
            url = url + "&name=" + escape(keyword);
            doPost("frmHeader", url);
        }
        
        // 商品コード(品番)の時
        if (document.getElementById("UcSearchTab_TabContainer_TabPKeyword_rdoSearchProdCd").checked == true) {
            url = url + "&stype=ProductOrderNo";
            url = url + "&porder=" + escape(keyword);
            doPost("frmHeader", url);
        }
        
        // 型番の時
        if (document.getElementById("UcSearchTab_TabContainer_TabPKeyword_rdoSearchModelNo").checked == true) {
            url = url + "&stype=ModelNo";
            url = url + "&model=" + escape(keyword);
            doPost("frmHeader", url);
        }
        
        return true;
    }
}

// キーワードTAB：検索ボタン押下時のチェック処理
function SearchChkKeyword() {

    var obj = document.getElementById("UcSearchTab_TabContainer_TabPKeyword_txtSearchKeyword");

    // キーワード入力チェック
    if (InputChkKeyword(obj) == false) {
        return false;
    }

    // キーワード入力チェック（最大桁数）
    if (checkMaxKeta(obj, 50) == false) {
        return false;
    }

    // 商品コード指定時
    if (document.getElementById("UcSearchTab_TabContainer_TabPKeyword_rdoSearchProdCd").checked == true) {
        // 半角英字チェック
        if (checkIsAlpha(obj.value) == false) {
            return false;
        }
        // 最小桁数チェック
        if (checkMinKeta(obj, 4) == false) {
            return false;
        }
    }
    
    // 型番指定時
    if (document.getElementById("UcSearchTab_TabContainer_TabPKeyword_rdoSearchModelNo").checked == true) {
        // 最小桁数チェック
        if (checkMinKetaModel(obj, 2) == false) {
            return false;
        }
    }
    
    return true;
}

// ----------------------------------
// カタログTAB
// ----------------------------------
// カタログTAB：rdio選択時
function rdoSearchCatalog() {
    // ページの時
    if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogPage").checked == true) {
        // キーワードをクリア
        document.getElementById("UcSearchTab_TabContainer_TabPCatalog_txtCatalogKeyword").value = "";
        // 掲載分類をクリア
        if(document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassL") != null){
            document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassL").selectedIndex = 0;
        }
        if(document.getElementById("selPubClassL") != null){
            document.getElementById("selPubClassL").selectedIndex = 0;
        }
        clearePubClassM();
    }
    // キーワードの時
    if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogKeyword").checked == true) {
        // ページをクリア
        document.getElementById("UcSearchTab_TabContainer_TabPCatalog_txtCatalogPage").value = "";
        // 掲載分類をクリア
        if(document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassL") != null){
            document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassL").selectedIndex = 0;
        }
        if(document.getElementById("selPubClassL") != null){
            document.getElementById("selPubClassL").selectedIndex = 0;
        }
        clearePubClassM();
    }
    // 掲載分類の時
    if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogPubClass").checked == true) {
        // ページをクリア
        document.getElementById("UcSearchTab_TabContainer_TabPCatalog_txtCatalogKeyword").value = "";
        // キーワードをクリア
        document.getElementById("UcSearchTab_TabContainer_TabPCatalog_txtCatalogPage").value = "";
    }
}

// カタログTAB:Enter時（ページ）
$("#UcSearchTab_TabContainer_TabPCatalog_txtCatalogPage").keydown(function(e) {
    if (e.keyCode== 13) {
        theForm.onsubmit = function() {return false;};
        btnCatalogSearchClick();
    }
});
// カタログTAB:Enter時（キーワード）
$("#UcSearchTab_TabContainer_TabPCatalog_txtCatalogKeyword").keydown(function(e) {
    if (e.keyCode== 13) {
        theForm.onsubmit = function() {return false;};
        btnCatalogSearchClick();
    }
});
// カタログTAB：Enter処理(コンボ：IEonly)
function enterTextboxCatalog() {
    if (event.keyCode == 13) {
        theForm.onsubmit = function() {return false;};
        btnCatalogSearchClick();
    }
}

// カタログTAB：入力項目が選択されたら、rdioも選択する
function setCatalogRdio(val){
    // ページの時
    if (val == "0") {
        document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogPage").checked = true;
        rdoSearchCatalog();
    }
    // キーワードの時
    if (val == "1") {
        document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogKeyword").checked = true;
        rdoSearchCatalog();
    }
    // 掲載分類の時
    if (val == "2") {
        document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogPubClass").checked = true;
        rdoSearchCatalog();
    }
}

// カタログTAB：カタログ選択時→掲載大分類をセット
function changeCatalog(){
    // 選択されたカタログIDを取得
    var catalogId = document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selCatalog").value;

//// 
    //　選択された大分類
    var selectData = document.getElementById("l_" + catalogId + "_list").value;
    //　選択された画像
    var imgData = document.getElementById("img_" + catalogId + "_list").value;

    // カタログIDを条件に掲載大分類をセット 
    $("#UcSearchTab_TabContainer_TabPCatalog_imgCatalog").attr("src", imgData);
    $("#divPubL").html(selectData);
    /*
    // カタログIDを条件に掲載大分類をセット
    $.get("GetCatalog.aspx"
            , { id: catalogId, format: "searchL" }
            , function(data){
                $("#UcSearchTab_TabContainer_TabPCatalog_imgCatalog").attr("src", $("#searchImg", data).html());
                $("#divPubL").html($("#searchl", data).html());
                alert($("#searchl", data).html());
              }
          );
          */
////          
    // 掲載中分類をクリア
    clearePubClassM();
    // 掲載分類の隠し項目をクリア
    document.getElementById("UcSearchTab_TabContainer_TabPCatalog_hidPubClassL").value = ""; 
    document.getElementById("UcSearchTab_TabContainer_TabPCatalog_hidPubClassM").value = ""; 
}

// カタログTAB：掲載大分類選択時→掲載中分類をセット
function changePubClassL(){
    
    // 選択されたカタログIDと掲載大分類を取得
    var catalogId = document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selCatalog").value;
    var pubClassL = document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassL").value;
    
    // カタログIDと掲載大分類を条件に掲載中分類をセット
    if(pubClassL == null || pubClassL == ""){
        clearePubClassM();
    }else{
    
        //// 
        //　選択された大分類
        var selectData = document.getElementById("m_" + catalogId + "_" + pubClassL +"_list").value;

        // カタログIDを条件に掲載大分類をセット 
        $("#divPubM").html(selectData);

        /*
        $.get("GetCatalog.aspx"
                , { id: catalogId, nameL: pubClassL, format: "searchM" }
                , function(data){
                   $("#divPubM").html($("#searchm", data).html());
                  }
              );
        */
              
    } 
    
    // 選択内容を隠し項目にセット
    document.getElementById("UcSearchTab_TabContainer_TabPCatalog_hidPubClassL").value = pubClassL; 
    document.getElementById("UcSearchTab_TabContainer_TabPCatalog_hidPubClassM").value = ""; 
}

// カタログTAB：掲載中分類クリア
function clearePubClassM(){
    var selectTag = "<select id=\"UcSearchTab_TabContainer_TabPCatalog_selPubClassM\" ";
    selectTag += "class=\"select_search_genre\" ";
    selectTag += "onchange=\"javascript:changePubClassM();\" ";
    selectTag += "onclick=\"javascript:setCatalogRdio('2');\" ";
    selectTag += "onkeydown=\"javascript:enterTextboxCatalog();\"> ";
    selectTag += "<option value=''> </option></select>";
    $("#divPubM").html(selectTag);
}

// カタログTAB：掲載中分類選択時
function changePubClassM(){
    // 選択された掲載中分類を取得
    var pubClassM = document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassM").value;
    // 選択内容を隠し項目にセット
    document.getElementById("UcSearchTab_TabContainer_TabPCatalog_hidPubClassM").value = pubClassM; 
}

// カタログTAB：検索ボタン押下時
function btnCatalogSearchClick() {

    // チェック処理
    var check = SearchChkCatalog();
    
    // 画面遷移
    if(check == true){
        
        var url = document.getElementById("UcSearchTab_nextUrlTab").value;
        var catalog = document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selCatalog").value;
        
        // ページの時
        if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogPage").checked == true) {
            url = url + "&stype=PageNo";
            url = url + "&catalog=" + escape(catalog);
            url = url + "&page=" + escape(document.getElementById("UcSearchTab_TabContainer_TabPCatalog_txtCatalogPage").value);
            doPost("frmHeader", url);
        }
        
        // キーワードの時
        if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogKeyword").checked == true) {
            url = url + "&stype=Catalog";
            url = url + "&catalog=" + escape(catalog);
            url = url + "&keyword=" + escape(document.getElementById("UcSearchTab_TabContainer_TabPCatalog_txtCatalogKeyword").value);
            doPost("frmHeader", url);
        }
        
        // 掲載分類の時
        if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogPubClass").checked == true) {
            url = url + "&stype=PublishName";
            url = url + "&catalog=" + escape(catalog);
            url = url + "&large=" + escape(document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassL").value);
            url = url + "&middle=" + escape(document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassM").value);
            doPost("frmHeader", url);
        }
        
        return true;
    }
}

// カタログTAB：検索ボタン押下時のチェック処理
function SearchChkCatalog() {

    // カタログ選択チェック
    if (CatalogInputChk(document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selCatalog")) == false) {
        return false;
    }

    // ページの時
    if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogPage").checked == true) {
        if (InputChkPage(document.getElementById("UcSearchTab_TabContainer_TabPCatalog_txtCatalogPage")) == false) {
            return false;
        }
    }
    // キーワードの時
    if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogKeyword").checked == true) {
        if (InputChkKeyword(document.getElementById("UcSearchTab_TabContainer_TabPCatalog_txtCatalogKeyword")) == false) {
            return false;
        }
        // キーワード入力チェック（最大桁数）
        if (checkMaxKeta(document.getElementById("UcSearchTab_TabContainer_TabPCatalog_txtCatalogKeyword"), 50) == false) {
            return false;
        }
    }
    // 掲載分類の時
    if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_rdoCatalogPubClass").checked == true) {
        // 大分類が設定されていない場合
        if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassL").selectedIndex < 1 ||
            document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassL").value == "") {
            alert("大分類を指定してください。");
            document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassL").focus();
            return false;
        }
        // 中分類が存在する場合で、中分類が設定されていない場合 
        if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassM").length > 1 ){
            if (document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassM").selectedIndex < 1 ||
                document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassM").value == "") {
                alert("中分類を指定してください。");
                document.getElementById("UcSearchTab_TabContainer_TabPCatalog_selPubClassM").focus();
                return false;
            }
        }
    }
    
    return true;
}

// ----------------------------------
// ジャンルTAB
// ----------------------------------
// ジャンルTAB：Enter処理(キーワード)
$("#UcSearchTab_TabContainer_TabPGenre_txtGenreKeyword").keydown(function(e) {
    if (e.keyCode== 13) {
        theForm.onsubmit = function() {return false;};
        btnGenreSearchClick();
    }
});

// ジャンルTAB：品目大分類選択時→品目中分類をセット
function changeGenreL(){
    // 選択された品目大分類を取得
    var classL = document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreL").value;
    
    // 品目大分類を条件に品目中分類をセット
    if(classL == null || classL == ""){
        cleareGenreM();
    }else{
        $.get("GetGenre.aspx"
                , { lclass: classL, format: "classM" }
                , function(data){
                    $("#divGenreM").html($("#search", data).html());
                  }
              );
    }
    
    //  品目小分類をクリア
    cleareGenreS();
    // 選択内容を隠し項目にセット
    document.getElementById("UcSearchTab_TabContainer_TabPGenre_hidGenreL").value = classL; 
    document.getElementById("UcSearchTab_TabContainer_TabPGenre_hidGenreM").value = ""; 
    document.getElementById("UcSearchTab_TabContainer_TabPGenre_hidGenreS").value = ""; 
}

// ジャンルTAB：品目中分類をクリア
function cleareGenreM(){
    var selectTag = "<select id=\"UcSearchTab_TabContainer_TabPGenre_selGenreM\" ";
    selectTag += "class=\"select_searchgenre\" ";
    selectTag += "onchange=\"javascript:changeGenreM();\" ";
    selectTag += "onclick=\"javascript:changeGenreM();\"> ";
    selectTag += "<option value=''> </option></select>";
    $("#divGenreM").html(selectTag);
}

// ジャンルTAB：品目小分類をクリア
function cleareGenreS(){
    var selectTag = "<select id=\"UcSearchTab_TabContainer_TabPGenre_selGenreS\" ";
    selectTag += "class=\"select_searchgenre\" ";
    selectTag += "onchange=\"javascript:changeGenreS();\" ";
    selectTag += "onclick=\"javascript:changeGenreS();\"> ";
    selectTag += "<option value=''> </option></select>";
    $("#divGenreS").html(selectTag);
}

// ジャンルTAB：品目中分類選択時→品目小分類をセット
function changeGenreM(){
    // 選択された品目大分類と品目中分類を取得
    var classL = document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreL").value;
    var classM = document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreM").value;
    
    // 品目大分類と品目中分類を条件に品目小分類をセット
    if(classL == null || classL == "" || classM == null || classM == ""){
        cleareGenreS();
    }else{
        $.get("GetGenre.aspx"
                , { lclass: classL, mclass: classM, format: "classS" }
                , function(data){
                    $("#divGenreS").html($("#search", data).html());
                  }
              );
    }
    // 選択内容を隠し項目にセット
    document.getElementById("UcSearchTab_TabContainer_TabPGenre_hidGenreM").value = classM; 
    document.getElementById("UcSearchTab_TabContainer_TabPGenre_hidGenreS").value = ""; 
}

// ジャンルTAB：品目小分類選択時
function changeGenreS(){
    // 選択された品目小分類を取得
    var classS = document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreS").value;
    // 選択内容を隠し項目にセット
    document.getElementById("UcSearchTab_TabContainer_TabPGenre_hidGenreS").value = classS; 
}

// ジャンルTAB：検索ボタン押下時
function btnGenreSearchClick() {

    // チェック処理
    var check = SearchChkGenre();
    
    // 画面遷移
    if(check == true){
        var url = document.getElementById("UcSearchTab_nextUrlTab").value;
        url = url + "&stype=HostClassCode";
        url = url + "&large=" + escape(document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreL").value);
        url = url + "&middle=" + escape(document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreM").value);
        url = url + "&small=" + escape(document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreS").value);
        url = url + "&keyword=" + escape(document.getElementById("UcSearchTab_TabContainer_TabPGenre_txtGenreKeyword").value);
        doPost("frmHeader", url);
    }
        
}

// ジャンルTAB：検索ボタン押下時のチェック処理
function SearchChkGenre() {
    $.Watermark.HideAll();

    // 大分類もしくは中分類が設定されていない場合
    if (document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreL").selectedIndex < 1 ||
        document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreM").selectedIndex < 1 ||
        document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreS").selectedIndex < 1) {
            alert("大分類、中分類、小分類を指定してください。");

        if (document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreL").selectedIndex < 1) {
            document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreL").focus();
            return false;
        }
        if (document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreM").selectedIndex < 1) {
            document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreM").focus();
            return false;
        }
        if (document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreS").selectedIndex < 1) {
            document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreS").focus();
            return false;
        }
    }

    // このカテゴリでが選択されている場合
    if (document.getElementById("UcSearchTab_TabContainer_TabPGenre_txtGenreKeyword").value != "") {
        // キーワード入力チェック（最大桁数）
        if (checkMaxKeta(document.getElementById("UcSearchTab_TabContainer_TabPGenre_txtGenreKeyword"), 50) == false) {
            return false;
        }
    }
    
    return true;
}


// ----------------------------------
// チェック処理
// ----------------------------------

// 品番 - 半角英数チェック
function checkIsAlpha(selObj) {
    var rexp = new RegExp(/[^ !\$'\(\)\+,\-;=@\[\]\^_`0-9A-Za-z]+/g);
    if (rexp.test(selObj)) {
        alert("商品コード（品番）検索は半角英数記号のみ指定してください。");
        return false;
    }
}
// 品番 - 最小桁数チェック
function checkMinKeta(selObj, maxLnegth) {
    if (selObj.value.length < maxLnegth) {
        alert("商品コード（品番）検索は" + maxLnegth + "桁以上で指定してください。");
        selObj.focus();
        return false
    }
}
// 型番 - 最小桁数チェック
function checkMinKetaModel(selObj, maxLnegth) {
    if (selObj.value.length < maxLnegth) {
        alert("型番検索は" + maxLnegth + "桁以上で指定してください。");
        selObj.focus();
        return false
    }
}

// カタログ - 必須チェック
function CatalogInputChk(selObj) {
    if (selObj.selectedIndex < 0) {
        alert("カタログを指定してください。");
        selObj.focus();
        return false;
    }
}
// ページ - チェック
function InputChkPage(selObj) {
    if (selObj.value == "") {
        alert("掲載ページが入力されていません。");
        selObj.focus();
        return false;
    } 

    if (isNaN(selObj.value) == true) {
        alert("掲載ページは、数値で入力してください。");
        selObj.focus();
        return false;
    }
    if (checkMaxKeta(selObj,4) == false) {
        return false;
    }
}

// キーワード入力チェック
function InputChkKeyword(selObj) {
    if (selObj.value == "") {
        alert("キーワードを入力してください。");
        selObj.focus();
        return false;
    }
}
// 最大桁数チェック
function checkMaxKeta(selObj, maxLnegth) {
    if (selObj.value.length > maxLnegth) {
        alert("" + maxLnegth + "桁以内で指定してください。");
        selObj.focus();
        return false
    }
}

// ----------------------------------
// タブ復元処理
// ----------------------------------

// タブの要素を表します。
var fields = {
	activeTabIndex: '#UcSearchTab_hidActiveTabIndex',
	catalog: {
		image: '#UcSearchTab_TabContainer_TabPCatalog_imgCatalog',
		id: '#UcSearchTab_TabContainer_TabPCatalog_selCatalog',
		type: 'input[name="UcSearchTab$TabContainer$TabPCatalog$"]',
		page: '#UcSearchTab_TabContainer_TabPCatalog_txtCatalogPage',
		keyword: '#UcSearchTab_TabContainer_TabPCatalog_txtCatalogKeyword',
		division: '#UcSearchTab_TabContainer_TabPCatalog_selPubClassL',
		subdivision: '#UcSearchTab_TabContainer_TabPCatalog_selPubClassM'
	},
	filter: '#UcSearchLimit_txtSeachLimit',
	genre: {
		superdivision: '#UcSearchTab_TabContainer_TabPGenre_selGenreL',
		division: '#UcSearchTab_TabContainer_TabPGenre_selGenreM',
		subdivision: '#UcSearchTab_TabContainer_TabPGenre_selGenreS',
		keyword: '#UcSearchTab_TabContainer_TabPGenre_txtGenreKeyword'
	},
	keyword: {
		type: 'input[name="UcSearchTab$TabContainer$TabPKeyword$"]',
		keyword: '#UcSearchTab_TabContainer_TabPKeyword_txtSearchKeyword',
		detail: '#UcSearchTab_TabContainer_TabPKeyword_chkDetail'
	},
	tabState: '#hidTabState'
};

// 区切り文字を表します。
var delimiters = {
	field: '&',
	nameValue: '='
};

// タブを表します。
var tabs = {
	0: 'tabKeyword',
	1: 'tabCatalog',
	2: 'tabGenre'
};

// すべてのスクリプトが読み込まれ、
// アプリケーション内のすべてのオブジェクトが
// 作成および初期化された後に発生するイベントを処理します。
Sys.Application.add_load(function ()
{
	if (0 < $(fields.tabState).val().length)
	{
		initializeTabState();

		var source = deserialize($(fields.tabState).val());

		restoreTabState(source);
	}
	else
	{
		var target = $(fields.activeTabIndex).val();

		saveTabState(target);
	}

	function deserialize(source)
	{
		var state = {};

		var items = source.split(delimiters.field);

		for (var i = 0; i < items.length; i ++)
		{
			var nameValue = items[i].split(delimiters.nameValue);

			state[nameValue[0]] = nameValue[1];
		}

		return state;
	}
});

// タブの状態を初期化します。
function initializeTabState()
{
	$(fields.keyword.type).val(['rdoSearchAll']);
	$(fields.keyword.keyword).val('');
	$(fields.keyword.detail).removeAttr('checked');
	$(fields.keyword.detail).removeAttr('disabled');
	$(fields.catalog.type).val(['rdoCatalogPage']);
	$(fields.catalog.id).val('');
	$(fields.catalog.page).val('');
	$(fields.catalog.keyword).val('');
	$(fields.catalog.division).val('');
	$(fields.catalog.subdivision).val('');
	$(fields.genre.superdivision).val('');
	$(fields.genre.division).val('');
	$(fields.genre.subdivision).val('');
	$(fields.genre.keyword).val('');
	$(fields.filter).val('');
}

// タブの状態を復元します。
function restoreTabState(source)
{
	var d = decodeURIComponent;

	$(fields.keyword.type).val([d(source.rdoSearch)]);
	$(fields.keyword.keyword).val(d(source.txtSearchKeyword));

	if (source.chkDetailChecked != 'undefined')
	{
		$(fields.keyword.detail).attr('checked', 'checked');
	}
	else if (source.chkDetailDisabled != 'undefined')
	{
		$(fields.keyword.detail).attr('disabled', 'disabled');
	}

	$(fields.catalog.image).attr('src', d(source.imgCatalog));
	$(fields.catalog.id).val(d(source.selCatalog));
	$(fields.catalog.type).val([d(source.rdoCatalog)]);
	$(fields.catalog.page).val(d(source.txtCatalogPage));
	$(fields.catalog.keyword).val(d(source.txtCatalogKeyword));
	$(fields.catalog.division).html(d(source.selPubClassL));
	$(fields.catalog.subdivision).html(d(source.selPubClassM));
	$(fields.genre.superdivision).val(d(source.selGenreL));
	$(fields.genre.division).html(d(source.selGenreM));
	$(fields.genre.subdivision).html(d(source.selGenreS));
	$(fields.genre.keyword).val(d(source.txtGenreKeyword));
	$(fields.filter).val(d(source.txtLimit));

	TabClick(source.activeTab);
}

// タブの状態を保存します。
function saveTabState(target)
{
	var e = encodeURIComponent;

	var state = {
		activeTab: tabs[target],
		rdoSearch: $(fields.keyword.type + ':checked').val(),
		txtSearchKeyword: $(fields.keyword.keyword).val(),
		chkDetailChecked: $(fields.keyword.detail + ':checked').val(),
		chkDetailDisabled: $(fields.keyword.detail + ':disabled').val(),
		imgCatalog: $(fields.catalog.image).attr('src'),
		selCatalog: $(fields.catalog.id).val(),
		rdoCatalog: $(fields.catalog.type + ':checked').val(),
		txtCatalogPage: $(fields.catalog.page).val(),
		txtCatalogKeyword: $(fields.catalog.keyword).val(),
		selPubClassL: $(fields.catalog.division).html(),
		selPubClassM: $(fields.catalog.subdivision).html(),
		selGenreL: $(fields.genre.superdivision).val(),
		selGenreM: $(fields.genre.division).html(),
		selGenreS: $(fields.genre.subdivision).html(),
		txtGenreKeyword: $(fields.genre.keyword).val(),
		txtLimit: $(fields.filter).val()
	};

	$(fields.tabState).val(serialize(state));

	function serialize(source)
	{
		var state = [];

		for (var item in source)
		{
			state.push(item + delimiters.nameValue + e(source[item]));
		}

		return state.join(delimiters.field);
	}
}

// ----------------------------------
// ActiveX利用可否判断 Start
// ----------------------------------

function chkGanreAccodion() {
    // ActiveXが利用できるかの確認
    var xhr = chkActiveX();

    if(xhr == null)
    {
        //ActiveXが利用できない場合のメッセージ
        $("#msgActivXOff").html("ActiveXが無効のため、ジャンル検索を行うことができません。");

        //ジャンル検索の場合、TOPで選択された大分類>中分類>小分類を表示する。
        var classLValue = document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreL").value;
        var classLText = getOptionInnerTextName("UcSearchTab_TabContainer_TabPGenre_selGenreL", classLValue);

        var classMValue = document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreM").value;   
        var classMText = getOptionInnerTextName("UcSearchTab_TabContainer_TabPGenre_selGenreM", classMValue);
        
        var classSValue = document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreS").value;
        var classSText = getOptionInnerTextName("UcSearchTab_TabContainer_TabPGenre_selGenreS", classSValue); 
        
        if(classLText != "" && classMText != "" && classSText != "")
        {
            $("#msgActivXOffGanre").html(classLText + ">>" + classMText + ">>" + classSText);
            document.getElementById("msgActivXOffGanre").visble = true;
        }
        else
        {
            //TOPでジャンル検索以外の場合
            document.getElementById("msgActivXOffGanre").visble = false;
        }
        
        // ドロップダウンリスト/検索するボタン非表示
        document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreL").style.display = "none";
        document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreM").style.display = "none";
        document.getElementById("UcSearchTab_TabContainer_TabPGenre_selGenreS").style.display = "none";
        document.getElementById("UcSearchTab_TabContainer_TabPGenre_txtGenreKeyword").style.display = "none";
        document.getElementById("ancGenreSearch").style.display = "none";
    }
}
    
// AxcivXチェック
function chkActiveX()
{
    var xhr;
    try
    {
        var navi = "";
        navi = navigator.userAgent.toLowerCase();

        if (navi.indexOf("msie") != -1)
        { 
            //　IEの場合
            if (typeof document.body.style.maxHeight != "undefined") {
            　　// IE 7以上
                try
                {               
                    xhr = new XMLHttpRequest();
                }
                catch(ex1)
                { 
                    xhr = new ActiveXObject('Microsoft.XMLHTTP');
                } 
            }else {
                // IE 6.0の場合
                //  ※ActiveXを切った状態でXMLHttpRequest()を利用しても、取得できてしまうため
                //    XMLHttpRequest()を省いています。
                xhr = new ActiveXObject('Microsoft.XMLHTTP');
            }
        }else
        {
            // IE以外
            try
            {               
                xhr = new XMLHttpRequest();
            }
            catch(ex1)
            { 
                xhr = new ActiveXObject('Microsoft.XMLHTTP');
            } 
        }
    }
    catch(ex2)
    { 
        xhr = null;
    }
    return xhr;
}

// 選択された分類名を取得する
function getOptionInnerTextName(selectName, textClass)
{
    // ドロップダウンリストに存在する分類の中から、
    // 選択された分類名を取得する
    var classText;
    //　ドロップダウンリストの件数分Loop
    for (var i=0;i<document.getElementById(selectName).options.length;i++) 
    {   
         var value = document.getElementById(selectName).options[i].value; 
         if(textClass == value)
         {
              classText = document.getElementById(selectName).options[i].innerText; 
              return classText;
         }
     }
}
// ----------------------------------
// ActiveX利用可否判断 End
// ----------------------------------

