function getElementStyle(elemID, IEStyleProp, CSSStyleProp) { // определяем правильно стиль из CSSа
        var el=document.getElementById(elemID);
        if (el.currentStyle) {
                return el.currentStyle[IEStyleProp];
        }
        else if (window.getComputedStyle) {
                var compStyle=window.getComputedStyle(el, null);
                return compStyle.getPropertyValue(CSSStyleProp);
        }
        return "";
}

function initMenu(main) { // запоминаем первоначальные позиции, классы и картинки заголовков каждого слоя

        // выясняем ID постоянно-активного слоя (с классом tmenu_r)
        for(i=1; i<5; i++) {
                if(document.getElementById('tmenu'+i).className=='tmenu_r') {
                        elemActive=document.getElementById('tmenu'+i);
                }
        }

        tT1=document.getElementById('tmenu1');
        tT2=document.getElementById('tmenu2');
        tT3=document.getElementById('tmenu3');
        tT4=document.getElementById('tmenu4');
        
        tPos1=getElementStyle('tmenu1', 'left', 'left');
        tPos2=getElementStyle('tmenu2', 'left', 'left');
        tPos3=getElementStyle('tmenu3', 'left', 'left');
        tPos4=getElementStyle('tmenu4', 'left', 'left');

        tClass1=tT1.className;
        tClass2=tT2.className;
        tClass3=tT3.className;
        tClass4=tT4.className;

        tSrc1=tT1.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src;
        tSrc2=tT2.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src;
        tSrc3=tT3.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src;
        tSrc4=tT4.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src;

        if (main){
        
        pr1=document.getElementById('proj1');
        pr2=document.getElementById('proj2');
        pr3=document.getElementById('proj3');
        pr4=document.getElementById('proj4');        
        
        prPos1=getElementStyle('proj1', 'left', 'left');
        prPos2=getElementStyle('proj2', 'left', 'left');
        prPos3=getElementStyle('proj3', 'left', 'left');
        prPos4=getElementStyle('proj4', 'left', 'left');

        prSrc1=getElementStyle('proj1', 'backgroundImage', 'background-image');
        prSrc2=getElementStyle('proj2', 'backgroundImage', 'background-image');
        prSrc3=getElementStyle('proj3', 'backgroundImage', 'background-image');
        prSrc4=getElementStyle('proj4', 'backgroundImage', 'background-image');
        }
        // чтоб не править каждый раз CSS, переопределяем позицию и файл заголовка для активного слоя, отличного от "tmenu1"
        
        switch(elemActive.id) {
                case "tmenu2":
                        tPos2=tT2.style.left="56px";
                break;                
                case "tmenu3":
                        tPos2=tT2.style.left="56px";
                        tPos3=tT3.style.left="112px";
                break;                
                case "tmenu4":
                        tPos2=tT2.style.left="56px";
                        tPos3=tT3.style.left="112px";
                        tPos4=tT4.style.left="168px";
                break;                
        }
}

function resetmenu() { // возвращаем всё на места по onmouseout
        tT1.className=tClass1;
        tT2.className=tClass2;
        tT3.className=tClass3;
        tT4.className=tClass4;
        tT1.style.left=tPos1;
        tT2.style.left=tPos2;
        tT3.style.left=tPos3;
        tT4.style.left=tPos4;
        tT1.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src=tSrc1;
        tT2.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src=tSrc2;
        tT3.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src=tSrc3;
        tT4.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src=tSrc4;
}

function setactive(elem) {
        if(elem.id!=elemActive.id) {
                elemActive.className='tmenu_g';
                elem.className="tmenu_r";
                headSrcActive=elemActive.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src;
                headSrcActive=headSrcActive.substring(0,headSrcActive.length-6)+'.gif';
                elemActive.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src=headSrcActive;                
                headSrc=elem.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src;
                headSrc=headSrc.substring(0,headSrc.length-4)+'_r.gif';
                elem.getElementsByTagName('h1')[0].getElementsByTagName('img')[0].src=headSrc;
                hoverId=elem.id.charAt(elem.id.length-1); // номер ID слоя, на который наводимся
                switch(elemActive.id) {
                        case "tmenu1":
                                for (i=1; i<hoverId; i++) {
                                        y=i+1;
                                        elem=document.getElementById("tmenu"+y);
                                        posL=parseInt(getElementStyle(elem.id, "left", "left"), 10);
                                        elem.style.left=posL-110+'px';
                                }
                        break;
                        case "tmenu2":
                                if(hoverId==1) {
                                        elemNext=document.getElementById("tmenu2");
                                        posL=parseInt(getElementStyle(elemNext.id, "left", "left"), 10);
                                        elemNext.style.left=(posL+110)+'px';
                                }
                                else if(hoverId>2) {
                                        for (i=3; i<Number(hoverId)+1; i++) {
                                                elem=document.getElementById("tmenu"+i);
                                                posL=parseInt(getElementStyle(elem.id, "left", "left"), 10);
                                                elem.style.left=posL-110+'px';
                                        }
                                }
                        break;
                        case "tmenu3":
                                if(hoverId<3) {
                                        for(i=Number(hoverId)+1; i<4; i++) {
                                                        elemNext=document.getElementById("tmenu"+i);
                                                        posL=parseInt(getElementStyle(elemNext.id, "left", "left"), 10);
                                                        elemNext.style.left=(posL+110)+'px';
                                        }
                                }
                                else if(hoverId==4) {
                                        elem=document.getElementById("tmenu4");
                                        posL=parseInt(getElementStyle(elem.id, "left", "left"), 10);
                                        elem.style.left=posL-110+'px';
                                }
                        break;
                        case "tmenu4":
                                for(i=Number(hoverId)+1; i<5; i++) {
                                                elemNext=document.getElementById("tmenu"+i);
                                                posL=parseInt(getElementStyle(elemNext.id, "left", "left"), 10);
                                                elemNext.style.left=(posL+110)+'px';
                                }                                        
                        break;
                }
        }
}

function setactiveproj(elem) {
        if (elem.id!='proj1') {
                
                // Мозилла выдает урл бекграунда без кавычек, а ИЕ и Опера - с кавычками, проверяем.
                
                if(prSrc1.indexOf('"')!=-1) {
                        bgrLength=1;
                        quote='"';
                }
                else {
                        bgrLength=0;
                        quote='';
                }
                
                pr1.style.backgroundImage=prSrc1.substring(0,prSrc1.length-(5+bgrLength))+'.jpg'+quote+')';
                projBgr=getElementStyle(elem.id, "backgroundImage", "background-image");
                projBgr=projBgr.substring(0,projBgr.length-(5+bgrLength))+'.jpg'+quote+')';
                elem.style.backgroundImage=projBgr;
                hoverId=elem.id.charAt(elem.id.length-1); // номер ID слоя, на который наводимся
                for (i=1; i<hoverId; i++) {
                        y=i+1;
                        elem=document.getElementById("proj"+y);
                        posL=parseInt(getElementStyle(elem.id, "left", "left"), 10);
                        elem.style.left=posL-366+'px';
                }
        }
}

function resetprojects() {
        pr1.style.left=prPos1;
        pr2.style.left=prPos2;
        pr3.style.left=prPos3;
        pr4.style.left=prPos4;
        pr1.style.backgroundImage=prSrc1;
        pr2.style.backgroundImage=prSrc2;
        pr3.style.backgroundImage=prSrc3;
        pr4.style.backgroundImage=prSrc4;
}

