// eltabs1 v0.1b

function eltabs1(eId)
{
    this.menuContId = eId;
    if (!(this.arts=getElement(eId)))
        return false;
    this.tabs = new Array();
    
    this.tabcount = 0;
    for (var i=0; i<this.arts.childNodes.length; i++)
    {
        if (typeof(this.arts.childNodes[i].className)!='undefined' && this.arts.childNodes[i].className.match(/tabart/))
        {
            this.tabs[this.tabcount] = this.arts.childNodes[i];
            this.tabs[this.tabcount].style.position = 'absolute';
            this.tabs[this.tabcount].style.left = 0;
            this.tabs[this.tabcount].style.top = 0;
            this.tabs[this.tabcount].id = 'eltab'+this.tabcount.toString();
            this.tabcount++;
        }
    }
    if (!this.tabs.length)
        return false;
    this.index = 0;
    for (i=0; i<this.tabs.length; i++)
    {
        this.tabs[i].style.zIndex = (this.tabs.length-i);
        this.tabs[i].style.display = 'block';
        this.tabs[i].style.visibility = 'visible';
    }
    this.toggle = function() {
        //getElement('ooo').innerHTML = '<br>';
        for (i=0; i<this.tabs.length; i++)
        {
            this.tabs[i].style.zIndex++;// = (this.tabs.length-i);
            //getElement('ooo').innerHTML += 'tab'+i+' z-index:'+this.tabs[i].style.zIndex+' | ';
        }
        elblends.go(this.tabs, this.index, 'blend');
        this.index++;
        if (this.index>this.tabs.length)
            this.index = 0;
    }
}

elblends = {

    go : function(tabs, index, mode, speed) {
        if (typeof(tabs)!='object' || typeof(tabs[index])=='undefined')
            return false;
        
        if (!speed)
            speed = 2.0; // sekund
        switch (mode)
        {
            case 'blend':
                /*if (navigator.appVersion.match(/MSIE/))
                    this.blend_e2e_ie(imgTo, imgFrom, speed);
                else*/
                    this.blend_e2e(tabs, index, speed);
                break;
            default:
        }
    },
    
    blend_e2e : function(tabs, index, speed) {
        var timer = 0;
        var speed = Math.round(((speed)?(speed*1000):2000) / 100);
        for(i=100; i>=0; i--)
        {
            setTimeout("elblends.changeOpacity('" + tabs[index].id + "', " + i + ")",(timer * speed));
            timer++;
        }
        setTimeout("elblends.resetTab('" + tabs[index].id + "')",(timer * speed));
    },
    blend_e2e_ie : function(imgTo, imgFrom, speed) {
        if (!document.images)
            return;
        imgFrom.onload = function() {}
        imgFrom.style.filter = "blendTrans(duration="+speed+")";
        try {
            imgFrom.filters.blendTrans(duration=1.0).Apply();
            imgFrom.filters.blendTrans(duration=1.0).Play();
            imgFrom.src = imgTo.src;
        } catch(e) {
            imgFrom.src = imgTo.src;
        }
    },
    
    resetTab : function(eId) {
        if (e=getElement(eId))
        {
            e.style.zIndex = 0;
            e.style.visibility = 'visible';
            elblends.changeOpacity(e, 100);
        }
    },
    
    changeOpacity : function(element, opacity) {
        var object = (typeof(element)=='string') ? document.getElementById(element).style : element.style;
        if (opacity>0)
            object.visibility = 'visible';
        else
            object.visibility = 'hidden';
        object.opacity = (opacity / 100);
        object.MozOpacity = (opacity / 100);
        object.KhtmlOpacity = (opacity / 100);
        object.filter = "alpha(opacity=" + opacity + ")";
    },
    
    src2bg : function src2bg(src, id) {
    if ((img=getElement(src)) && (cont=getElement(id)))
        cont.style.backgroundImage = "url("+img.src+")";
    }

}

