var infoHtml;
var infodes;

function gcsearch(b){
    var phrase = document.getElementById('searchbox').value;
    var url = "/tms/gc.php?b=" + b + "&q=" + phrase;
    
    delinfo();
    setIndicator();

    reqFile(function(obj){
        var xmlDoc = obj.responseXML;
        
        coordinatelen = xmlDoc.documentElement.getElementsByTagName("coordinate").length;
        blanklen = xmlDoc.documentElement.getElementsByTagName("blank").length;
        errorlen = xmlDoc.documentElement.getElementsByTagName("error").length;
        choicelen = xmlDoc.documentElement.getElementsByTagName("choice").length;
        delinfo();
        if(coordinatelen > 0){
            var lat = xmlDoc.documentElement.getElementsByTagName("lat")[0].firstChild.nodeValue;
            var lng = xmlDoc.documentElement.getElementsByTagName("lng")[0].firstChild.nodeValue;
            moveMaps(lat,lng,16);
        }
        else if(blanklen > 0){
            setInfoHtml('s');
            infodes = xmlDoc.documentElement.getElementsByTagName("description")[0].firstChild.nodeValue;
            infoHtml += '<div id="infodes">' + infodes + '<br></div>';
            setInfoHtml('e');
            document.getElementById('info').innerHTML = infoHtml;
            setdd('infocontainer');
            }
        else if(errorlen > 0){
            setInfoHtml('s');
            infoHtml += '<div id="infodes">[' + phrase + ']がありません･･･<br></div>';
            setInfoHtml('e');
            document.getElementById('info').innerHTML = infoHtml;
            setdd('infocontainer');
        }
        else if(choicelen > 0){
            setInfoHtml('s');
            infoHtml += '<div id="infodes">[' + phrase + ']の検索結果が' + choicelen + '件あります。<br>下記よりお選びください。<br><br>';

            var i;
            var phrese2;
            var choices = xmlDoc.documentElement.getElementsByTagName("choice");
            for(i = 0 ; i < choices.length ; i++){
                phrase2 = choices[i].firstChild.nodeValue;
                infoHtml += (i + 1) + '.<a href="javascript:choice(\'' + phrase2 + '\')">' + choices[i].firstChild.nodeValue + '</a><br>';
            }
            infoHtml += '<br></div>';
            setInfoHtml('e');
            document.getElementById('info').innerHTML = infoHtml;
            setdd('infocontainer');
        }
        else{
            setInfoHtml('s');
            infoHtml += '<div id="infodes">予期せぬエラーです･･･<br></div>';
            setInfoHtml('e');
            document.getElementById('info').innerHTML = infoHtml;
            setdd('infocontainer');
        }

    }
    ,"","GET",url,true);

    return false;
}

function choice(phrase){
    document.form1.searchbox.value = phrase;
    var url = "/tms/gc.php?q=" + phrase;
    reqFile(function(Obj){
        var xmlDoc = Obj.responseXML;

        coordinatelen = xmlDoc.documentElement.getElementsByTagName("coordinate").length;
        if(coordinatelen > 0){
            //delinfo();
            var lat = xmlDoc.documentElement.getElementsByTagName("lat")[0].firstChild.nodeValue;
            var lng = xmlDoc.documentElement.getElementsByTagName("lng")[0].firstChild.nodeValue;
            moveMaps(lat,lng,16);
        }
    }
    ,"","GET",url,true);
}

function setInfoHtml(str){
    if(str == "s"){
        infoHtml = '<div id="infocontainer"><div id="infobar"><a href="javascript:" onclick="delinfo();"><img src="./img/close.gif" alt="" border="0"></a></div>';
    }
    else if(str == "e"){
        infoHtml += '</div>';
    }
}

//------------------------------------------------
//info<div>削除
//------------------------------------------------
function delinfo(){
    document.getElementById('info').innerHTML = "";
}

//------------------------------------------------
//インジケータ表示
//------------------------------------------------
function setIndicator(){
    infoHtml = '<div id="infocontainer"><img src="./img/loader.gif" alt=""></div>';
    document.getElementById('info').innerHTML = infoHtml;
    
    var oInfo = document.getElementById('infocontainer');
    oInfo.style.left = "400px";
    oInfo.style.top = "200px";
    oInfo.style.border = "1px solid #FFFFFF";
}
