
/** -----------------------------------------------------------------------------------
  県内の店舗住所１を取得し、コンボボックスにセットする
*/

function setAddress(pref) {

    var xhrObj = getXhrObj();
    xhrObj.open("post", "../../php/search/shopsearch.sub.php");
    xhrObj.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    xhrObj.onreadystatechange = function(){
        if(xhrObj.readyState == 4){
            if(xhrObj.status == 200){
                var list = xhrObj.responseText;
                $("address_in_pref").innerHTML = list;
                //setListener($("address"), "change" , addressSearch);
                $("address").value = address;
            }
        }
    }
    var query="mode=shops_in_pref&pref=" + pref;
    xhrObj.send(query);
}

function PrefChanged() {
    var pref = $("pref").value;
    setAddress(pref);
}

/** -----------------------------------------------------------------------------------
  属性取得
*/

function getAttribute() {
    var xhrObj = getXhrObj();
    xhrObj.open("post", "../../php/search/shopsearch.sub.php");
    xhrObj.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    xhrObj.onreadystatechange = function(){
        if(xhrObj.readyState == 4){
            if(xhrObj.status == 200){
                var list = xhrObj.responseText;
                $("shop_attributes").innerHTML = list;
                setListenr();
            }
        }
    }
    xhrObj.send("mode=shop_attributes");
}

/** -----------------------------------------------------------------------------------
  属性リセット
*/

function resetAttributes() {
    $$("input").each(function(ele){
       if(ele.id != "carpark" && ele.id != "pharmacy")
           ele.checked = false;
    });
}

/** -----------------------------------------------------------------------------------
  ボックスリセット
*/

function resetBox() {

    $("pref").value = "";
    $("address").value = "";
    $("shopname").value = "";
    $("telephone").value = "";
    $("drugstore_weekday_open").selectedIndex = 0;
    $("drugstore_weekday_close").selectedIndex = 0;
    $("carpark").checked = false;
    $("pharmacy").checked = false;

    $$("input").each(function(ele){
       if(ele.id != "carpark" && ele.id != "pharmacy")
           ele.checked = false;
    });

}

/** -----------------------------------------------------------------------------------
  キーワードリセット
*/

function resetKeyword() {
    $("keywords").value = "";
}

/** -----------------------------------------------------------------------------------
  コンディションリセット
*/

function resetCondition() {

    $("pref").value = "";
    $("address").value = "";
    $("shopname").value = "";
    $("telephone").value = "";
    $("drugstore_weekday_open").selectedIndex = 0;
    $("drugstore_weekday_close").selectedIndex = 0;
    $("carpark").checked = false;
    $("pharmacy").checked = false;
}

/** -----------------------------------------------------------------------------------
  店舗表示
*/
/*
function setShop(shop_id) {

    var xhrObj = getXhrObj();
    xhrObj.open("post", "../../php/search/shopsearch.sub.php");
    xhrObj.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    xhrObj.onreadystatechange = function(){
        if(xhrObj.readyState == 4){
            if(xhrObj.status == 200){
                var list = xhrObj.responseText;
                $("main_contents_form").innerHTML = list;
            }
        }
    }
    var query="mode=shops_display&shop_id=" + shop_id;
    xhrObj.send(query);

}
*/

/** -----------------------------------------------------------------------------------
  マップ検索
*/

function mapSearch(pref) {

    resetAttributes();
    resetKeyword();
    resetCondition();

    $("mode").value = "by_map_search";
    $("pref").value = pref;
    $("address").value = "";
    $("form_search_box").submit();
}


/** -----------------------------------------------------------------------------------
  住所検索
*/
/*
function addressSearch() {
    $("mode").value = "by_address_search";
    $("form_search_box").submit();
}
*/

/** -----------------------------------------------------------------------------------
  属性検索
*/

function attributeSearch() {

    //resetAttributes();
    resetKeyword();
    resetCondition();

    $("mode").value = "by_attribute_search";
    $("address").value = "";
    $("form_search_box").submit();
}

/** -----------------------------------------------------------------------------------
  ボックス検索
*/

function boxSearch() {

    resetKeyword();

    $("mode").value = "by_box_search";
    $("form_search_box").submit();

}

/** -----------------------------------------------------------------------------------
  キーワード検索
*/

function keywordSearch() {

    resetAttributes();
    //resetKeyword();
    resetCondition();

    $("mode").value = "by_keyword_search";
    $("address").value = "";
    $("form_search_box").submit();
}

/** -----------------------------------------------------------------------------------
  条件による検索
*/

function conditionSearch() {

    resetAttributes();
    resetKeyword();
    //resetCondition();

    $("mode").value = "by_condition_search";
    $("form_search_box").submit();
}

/** -----------------------------------------------------------------------------------
  前回の検索条件をフォームにセットする
*/

function dataRestore() {

    $("pref").value = pref_id;
    $("address").value = address;
    $("shopname").value = shopname;
    $("telephone").value = telephone;
    $("drugstore_weekday_open").value = drugstore_weekday_open;
    $("drugstore_weekday_close").value = drugstore_weekday_close;
    $("carpark").checked = carpark;
    $("pharmacy").checked = pharmacy;
    $("keywords").value = keywords;

    len = attributes.length;
    for(i=0;i<len;i++)
    {
      if(attributes[i] != 0)
        $("att_" + attributes[i]).checked = true;
    }
}

/** -----------------------------------------------------------------------------------
  バナークリック
*/

function bannerclick(item) {

    resetAttributes();
    $("att_" + item).checked = true;
    attributeSearch();

}

/** -----------------------------------------------------------------------------------
  イベントハンドラー
*/

function setListenr() {

    setListener($("pref"), "change", PrefChanged);

    setListener($("resetBoxButton"), "click" , resetBox);
    setListener($("resetKeywordButton"), "click" , resetKeyword);

    setListener($("search_by_box"), "click" , boxSearch);
    setListener($("search_by_keyword"), "click" , keywordSearch);

    dataRestore();

}

function initOnLoad() {

    setAddress(pref_id);
    getAttribute();

}

setListener(window, "load", initOnLoad);

