var BtmImgOn = new Object();
var BtmImgOff = new Object();
var yetChgFlash = true;
var opa = 0;
var timerId = new String();
var pdTimerId = new String();
var nowPd = new Object();
var pdHeight = 0;
var stopSwap = new String();
var stopSwap2 = new String();

for (var i = 0 , len = BtmNames.length; i < len;i++){
    BtmImgOn['bottom_' + BtmNames[i]] = new Image();
    BtmImgOn['bottom_' + BtmNames[i]].src = ImgDir + '/bottom_' + BtmNames[i] + '_on.gif';
    BtmImgOff['bottom_' + BtmNames[i]] = new Image();
    BtmImgOff['bottom_' + BtmNames[i]].src = ImgDir + '/bottom_' + BtmNames[i] + '_off.gif';
 }

function init_headmenu(pagecode) {
    var id = 'bottom_' + pagecode;
    var nowbtObj = getRawObject(id);
    nowbtObj.src = BtmImgOn[id].src;
    stopSwap = id;
}

function init_contmenu(contcode,nowpage){
    if (contlist[contcode].imdir != ''){
        for (var i = 0 , len = contlist[contcode].list.length; i < len ; i++){
            var id = 'bottom_' + contcode + '_' +  contlist[contcode].list[i];
            BtmImgOn[id]
                = new Image();
            BtmImgOn[id].src
                = ImgDirCont + '/' + contlist[contcode].imdir + '/bottom_' + contlist[contcode].list[i] + '_on.gif';
            BtmImgOff[id]
                = new Image();
            BtmImgOff[id].src
                = ImgDirCont + '/' + contlist[contcode].imdir + '/bottom_' + contlist[contcode].list[i] + '_off.gif';
        }
        var nowid = 'bottom_' + contcode + '_' +  nowpage;
        var nowbtObj = getRawObject(nowid);
        nowbtObj.src = BtmImgOn[nowid].src;
        stopSwap2 = nowid;
    }
}

function preLoadImage(url) {
    var preImg = new Image();
    preImg.src = url;
}

function flashChg() {
    if (yetChgFlash){
        var flObj = getObject('flash-def');
        var noFlObj = getObject('flash-alt-image');
        var noFlImgObj = getObject('flash-alt-img');
        if (noFlImgObj.filter){
            noFlImgObj.filter = 'alpha(opacity=0)';
        }
        if (noFlImgObj.MozOpacity){
            noFlImgObj.MozOpacity = '0';
        }
        flObj.display = 'none';
        noFlObj.display = 'block';
        timerId =  setInterval("opacitychg()",10);
    }
    yetChgFlash = false;
}

function flashChgPgin() {
    if (yetChgFlash){
        var flObj = getObject('flash-def');
        var noFlObj = getObject('flash-alt-image');
        var noFlImgObj = getObject('flash-alt-img');
        flObj.display = 'none';
        noFlObj.display = 'block';
        yetChgFlash = false;
    }
    yetChgFlash = false;
}

function opacitychg() {
    var noFlImgObj = getObject('flash-alt-img');
    if (opa <= 100){
        opa = opa + 10;
        if (noFlImgObj.filter){
            noFlImgObj.filter = 'alpha(opacity=' + opa + ')';
        }
        if (noFlImgObj.MozOpacity){
            noFlImgObj.MozOpacity = opa/100;
        }
    }else{
        clearInterval(timerId);
    }
}

function setImage(evt) {
    if (document.images) {
        evt = (evt) ? evt : ((window.event) ? window.event : null);
        if (evt) {
            var elem = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
            if (elem && elem.className == "swappable") {
                if (elem.id  == stopSwap || elem.id  == stopSwap2){
                    return(1);
                }
                switch (evt.type) {
                case "mouseover":
                    elem.src = BtmImgOn[elem.id].src;
                    var pdBtMatch = /_pd_/;
                    var matchRes = elem.id.match(pdBtMatch);
                    if (nowPd.flag && matchRes == null){
                        getObject(nowPd.id + '_pd').visibility = 'hidden';
                        getObject(nowPd.id + '_pd').overflow = 'hidden';
                        nowPd.src = BtmImgOff[nowPd.id].src;
                        nowPd = elem;
                    }
                    break;
                case "mouseout":
                    elem.src = BtmImgOff[elem.id].src;
                    break;
                }
            }else if ((elem && elem.className == "pulldown")) {
                switch (evt.type) {
                case "mouseover":
                    if(getObject('flash-def')){
                        flashChg();
                    }
                    if ((nowPd.flag && nowPd.id != elem.id) || nowPd.flag == null){
                        elem.src = BtmImgOn[elem.id].src;
                        getObject('downmenuarea').display = 'block';
                        pdObj = getObject(elem.id + '_pd');
                        pdObj.height = 0 + 'px';
                        pdHeight = 0;
                        pdObj.visibility = 'visible';
			pdObj.overflow = 'visible';
                        pdTimerId =  setInterval("pullDown(pdObj)",10);
                    }
                    elem.flag = true;
                    if (nowPd.flag && elem.id != nowPd.id){
                        nowPd.src = BtmImgOff[nowPd.id].src;
                        getObject(nowPd.id + '_pd').visibility = 'hidden';
			getObject(nowPd.id + '_pd').overflow = 'hidden';
                    }
                    nowPd = elem;
                    break;
                }
            }else if (nowPd.flag){
                getObject(nowPd.id + '_pd').visibility = 'hidden';
                getObject(nowPd.id + '_pd').overflow = 'hidden';
                getObject('downmenuarea').display = 'none';
                nowPd.src = BtmImgOff[nowPd.id].src;
                nowPd.flag = null;
            }
        }
    }
}

function pullDown(obj){
    if (pdHeight <= maxPdHeight){
        pdHeight = pdHeight + 8;
        obj.height = pdHeight + 'px';
    }else{
        clearInterval(pdTimerId);
    }
}

document.onmouseover=setImage;
document.onmouseout=setImage;
