
var UrlGetShopCatalog        = '/shop/?act=js_get_shop_list_catalog'        ;
var UrlGetShopMenu           = '/shop/?act=js_get_shop_list_menu'           ;
var UrlGetShopStaticMap      = '/shop/?act=js_get_shop_static_map'          ;
var UrlGetShopMovie          = '/shop/?act=js_get_shop_list_movie'          ;


/* 店舗付加情報DOM IDリスト */
var ShopAddInfoMovieID   = 'shop_movie_';
var ShopAddInfoCatalogID = 'shop_catalog_';
var ShopAddInfoCouponID  = 'shop_coupon_';
var ShopAddInfoMenuID    = 'shop_menu_';
var ShopAddInfoMapID     = 'shop_map_';
var ShopAddInfoIDList = [ShopAddInfoMovieID, ShopAddInfoCatalogID, ShopAddInfoCouponID, ShopAddInfoMenuID, ShopAddInfoMapID];

/**
* 店舗クーポン出力
***/
function GetShopCoupon(shopSeq)
{
    DisplayuShopAddInfo(shopSeq, ShopAddInfoCouponID);
}

/***
* 店舗マップ出力
***/
function GetShopMap(shopSeq, url_base)
{
    var _resultAreaID = ShopAddInfoMapID + shopSeq;
    var inhtml = $(_resultAreaID).innerHTML;
    if(inhtml == ''){
        var _parms = 'seq=' + shopSeq;
        var _ajax = new Ajax.Updater(
                        {success: _resultAreaID}, 
                        url_base + UrlGetShopStaticMap,
                        {
                            method      : 'get',
                            parameters  : _parms,
                            evalScripts : true,
                            onFailure   : ReportError
                        }
                    );
    }
    DisplayuShopAddInfo(shopSeq, ShopAddInfoMapID);
}

/***
* 店舗メニュー出力
***/
function GetShopMenu(shopSeq, url_base)
{
    var _resultAreaID = ShopAddInfoMenuID + shopSeq;
    var inhtml = $(_resultAreaID).innerHTML;
    if(inhtml == ''){
        var _parms = 'seq=' + shopSeq;
        var _ajax = new Ajax.Updater(
                        {success: _resultAreaID}, 
                        url_base + UrlGetShopMenu,
                        {
                            method      : 'get',
                            parameters  : _parms,
                            evalScripts : true,
                            onFailure   : ReportError
                        }
                    );
    }
    DisplayuShopAddInfo(shopSeq, ShopAddInfoMenuID);
}

/***
* 店舗カタログ取得
***/
function GetShopCatalog(shopSeq, url_base, return_key)
{
    var _resultAreaID = ShopAddInfoCatalogID + shopSeq;
    var inhtml = $(_resultAreaID).innerHTML;
    if(inhtml == ''){
        var _parms = 'seq=' + shopSeq;
        var _ajax = new Ajax.Updater(
                        {success: _resultAreaID}, 
                        url_base + UrlGetShopCatalog + '&return_key=' + return_key,
                        {
                            method      : 'get',
                            parameters  : _parms,
                            evalScripts : true,
                            onFailure   : ReportError
                        }
                    );
    }
    DisplayuShopAddInfo(shopSeq, ShopAddInfoCatalogID);
}

/***
* 店舗内全画像、動画出力
***/
function GetShopMovie(shopSeq, url_base)
{
    var _resultAreaID = ShopAddInfoMovieID + shopSeq;
    var inhtml = $(_resultAreaID).innerHTML;
    if(inhtml == ''){
        var _parms = 'seq=' + shopSeq;
        var _ajax = new Ajax.Updater(
                        {success: _resultAreaID}, 
                        url_base + UrlGetShopMovie,
                        {
                            method      : 'get',
                            parameters  : _parms,
                            evalScripts : true,
                            onFailure   : ReportError
                        }
                    );
    }
    DisplayuShopAddInfo(shopSeq, ShopAddInfoMovieID);
}

/***
* 店舗付加情報出力制御
***/
function DisplayuShopAddInfo(shopSeq, displayID)
{
    $('shop_add_info_' + shopSeq).style.display = 'block';
    for(_idx = 0; _idx < ShopAddInfoIDList.length; _idx++){
        $(ShopAddInfoIDList[_idx] + shopSeq).style.display = 
            (ShopAddInfoIDList[_idx] == displayID) ? 'block' : 'none';
    }
}



/***
* 店舗検索エラー処理
***/
function ReportError(request)
{
    alert('情報の取得に失敗しました。');
}


/***
* ShadowBoxを開く
***/
function OpenMovieShadowBox(boxTitle, targetContent)
{
    Shadowbox.open({player:'flv', title:boxTitle, content:targetContent, width:656, height:480});
}
function OpenImageShadowBox(boxTitle, targetContent)
{
    Shadowbox.open({player:'img', title:boxTitle, content:targetContent});
}


////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////
//
// 	エリア１が選択されたときに呼び出される関数
//
function selectSearchAreaBox1(obj)
{
    var targetSelectBox = document.FormSearchArea.elements['SearchAreaBox2'];
    var targetSelectBox3 = document.FormSearchArea.elements['SearchAreaBox3'];
    
    if (SearchArea2Value[obj.value]) {
        // 選択肢を動的に生成
        setSelectBoxOptions(targetSelectBox, "-指定無し-", 
                SearchArea2Value[obj.value], SearchArea2Name[obj.value]);
        
        setSelectBoxOptions(targetSelectBox3, "-指定無し-", new Array(), new Array());
        targetSelectBox3.disabled = true;
        
    } else {
        
        setSelectBoxOptions(targetSelectBox, "-指定無し-", new Array(), new Array());
        targetSelectBox.disabled = true;
        
        setSelectBoxOptions(targetSelectBox3, "-指定無し-", new Array(), new Array());
        targetSelectBox.disabled = true;
    }
}
///////////////////////////////////////////////////
//
// 	エリア２が選択されたときに呼び出される関数
//
function selectSearchAreaBox2(obj)
{
    var targetSelectBox = document.FormSearchArea.elements['SearchAreaBox3'];
    if (SearchArea3Value[obj.value]) {
        if (SearchArea3Value[obj.value].length > 0) {
            // 選択肢を動的に生成
            setSelectBoxOptions(targetSelectBox, "-指定無し-", 
                    SearchArea3Value[obj.value], SearchArea3Name[obj.value]);
            targetSelectBox.disabled = false;
            
        } else {
            setSelectBoxOptions(targetSelectBox, "-指定無し-", new Array(), new Array());
            targetSelectBox.disabled = true;
            
        }
    } else {
        setSelectBoxOptions(targetSelectBox, "-指定無し-", new Array(), new Array());
        targetSelectBox.disabled = true;
    }
}
/////////////////////////////////////////////////
// エリア検索submit前の処理
function setSearchAreaPostData(strBaseUrl){ 
    var a = document.FormSearchArea.elements['SearchAreaBox1'].value;   // 分類1
    var b = document.FormSearchArea.elements['SearchAreaBox2'].value;   // 分類2
    var c = document.FormSearchArea.elements['SearchAreaBox3'].value;   // 分類3
    
    if (b != '') {
        document.FormSearchArea.action = strBaseUrl + b + c;
    } else {
        document.FormSearchArea.action = strBaseUrl + a + '/';
    }
}


////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////
//
// 	路線エリアが選択されたときに呼び出される関数
//
function selectSearchRailwayBox1(obj)
{
    var targetSelectBox = document.FormSearchRailway.elements['SearchRailwayBox2'];
    
    if (SearchRailway2Value[obj.value]) {
        // 選択肢を動的に生成
        setSelectBoxOptions(targetSelectBox, "", 
                SearchRailway2Value[obj.value], SearchRailway2Name[obj.value]);
        
        selectSearchRailwayBox2(targetSelectBox);
    }
}
///////////////////////////////////////////////////
//
// 	路線が選択されたときに呼び出される関数
//
function selectSearchRailwayBox2(obj)
{
    var targetSelectBox = document.FormSearchRailway.elements['SearchRailwayBox3'];
    if (SearchRailway3Value[obj.value]) {
        if (SearchRailway3Value[obj.value].length > 0) {
            // 選択肢を動的に生成
            setSelectBoxOptions(targetSelectBox, "-選択してください-", 
                    SearchRailway3Value[obj.value], SearchRailway3Name[obj.value]);
        } else {
            setSelectBoxOptions(targetSelectBox, "-選択してください-", new Array(), new Array());
        }
    } else {
        setSelectBoxOptions(targetSelectBox, "-選択してください-", new Array(), new Array());
    }
    selectSearchRailwayBox3(targetSelectBox);
}
///////////////////////////////////////////////////
//
// 	駅が選択されたときに呼び出される関数
//
function selectSearchRailwayBox3(obj)
{
    if (obj.value=='') {
        $('jsSearchRailwayInputButton').style.display = 'none';
        $('jsSearchRailwayInputButtonDisabled').style.display = 'block';
    } else {
        $('jsSearchRailwayInputButton').style.display = 'block';
        $('jsSearchRailwayInputButtonDisabled').style.display = 'none';
    }
}

/////////////////////////////////////////////////
// 路線検索submit前の処理
function setSearchRailwayPostData(strBaseUrl){ 
    var a = document.FormSearchRailway.elements['SearchRailwayBox1'].value;   // 分類1
    var c = document.FormSearchRailway.elements['SearchRailwayBox3'].value;   // 分類3

    document.FormSearchRailway.action = strBaseUrl + a + '/' + c + '/';
}


/////////////////////////////////////////////////
// 路線検索submit前の処理
function setSearchKeywordPostData(strDefault){ 
    if (strDefault == document.FormSearchKeyword.elements['keyword'].value) {
        document.FormSearchKeyword.elements['keyword'].value = '';
    }
}



