// common

var xmlHttp;
var callbackFncname;
var workform;

function createXMLHttp(){
    if(document.all){
        try{
            return new ActiveXObject("Msxml2.XMLHTTP");
        }catch(e){
            return new ActiveXObject("Microsoft.XMLHTTP");
        }
    }else{
        return new XMLHttpRequest();
    }
}

function createJsonObject(){
    if(xmlHttp.readyState == 4){
        setAsyncStat(2);
        if(xmlHttp.status == 200){
            eval("var oJson = " + xmlHttp.responseText);
            eval(callbackFncname + "(oJson)");
        }else{
            alert("Server Error [" + xmlHttp.status + "]");
            xmlHttp.onreadystatechage = null;
        }
    }
}

function execAsyncJson(url, fncname){
    callbackFncname = fncname;
    if(url != null){
        try{
            xmlHttp = createXMLHttp();
            if(xmlHttp){
                xmlHttp.onreadystatechange = createJsonObject;
                xmlHttp.open("GET", url);
                xmlHttp.send("");
            }else{
                alert("cannot create xmlHttp.");
            }
        }catch(e){
            alert("exception at using xmlHttp." + e.getMessage);
        }
    }
}

function setAsyncStat(stat){
    var elem = document.getElementById("asyncstat");
    if(elem){
        if(stat == 1){
        	elem.innerHTML = "自動検索中..";
        }else if(stat == 2){
            elem.innerHTML = "";
        }
    }
}

// zip search
var offset = 1;
function getZipAddr(frm, findNext){
    workform = frm;
    var zipcd = frm.ZIP_CD1.value + frm.ZIP_CD2.value;
    if(findNext){
        offset++;
    }else{
        offset = 1;
    }
    if(zipcd != null && zipcd.length == 7){
        setAsyncStat(1);
        execAsyncJson("../common/CSfZipSearch_J.jsp?zipcd=" + zipcd + "&offset=" + offset, "getZipAddr_callback");
    }
}

function getZipAddr_callback(oJson){
    var frm = workform;
    var elem = document.getElementById("nextaddr");
    if(oJson.hasMoreAddr){
        if(elem){
            elem.style.display = "inline";
        }
    }else{
        if(elem){
            elem.style.display = "none";
        }
    }
    var addr1 = oJson.ADDR1;
    var addr2 = oJson.ADDR2;
    var addr3 = oJson.ADDR3;
    var addr4 = oJson.DTL_ADDR;

    frm.ADDR1.value = addr1;
    frm.ADDR2.value = addr2;
    frm.ADDR3.value = addr3;
    frm.ADDR4.value = addr4;

}

// binder
function addFavDisp(dispNo){
    execAsyncJson("../disp/CSfAddFavDisp_J.jsp?DISP_NO=" + dispNo, "addFavDisp_callback");
    return false;
}
function addFavDisp_callback(oJson){
    alert(oJson.MSG);
}

function addFavGoods(goodsNo){
    execAsyncJson("../disp/CSfAddFavGoods_J.jsp?GOODS_NO=" + goodsNo, "addFavGoods_callback");
    return false;
}
function addFavGoods_callback(oJson){
    alert(oJson.MSG);
}

function removeFavItem(rsvNo, rsvSeq){
    execAsyncJson("../disp/CSfRemoveFavItem_J.jsp?RSV_NO=" + rsvNo + "&RSV_SEQ=" + rsvSeq, "removeFavItem_callback");
    return false;
}
function removeFavItem_callback(oJson){
    alert(oJson.MSG);
    location.reload(true);
}

