////////////////////////////////////////////////////////////////////////////////
//  
//  Закладки для объектов. Используется tab.css
//	Init HTML code:
//	
//	<table cellpadding="0" cellspacing="0" border="0" class="tabsTable">
//		<tr valign="bottom">
//			<td><div class="topTab" id="divTab02" tabid="divTab02Page">2</div></td>
//		</tr>
//	</table>
//	<div class="tabPage" id="divTab01Page">divTab01Page</div>
//
//	Запустить tabsInitialize()
//  
////////////////////////////////////////////////////////////////////////////////

var ie5 = (document.all && document.getElementById) ? true : false
var opera = (ie5 && !window.opera) ? true : false
var dom2 = (document.implementation && document.implementation.hasFeature('XML','2.0'))? true : false

function putElem(elemId) {
	document.getElementById(elemId).style.display = 'block'
}

function removeElem(elemId) {
	document.getElementById(elemId).style.display = 'none'
}

var currentTab = ''
var solidHeight;

function changeTab(e) {
	var actElem = (ie5)? event.srcElement : (dom2 || opera)? e.currentTarget : false
	if (actElem) {
		if (currentTab != '') {
			document.getElementById(currentTab).className = 'topTab'
			removeElem(document.getElementById(currentTab).getAttribute('tabid'))
		}
		putElem(actElem.getAttribute('tabid'))
		actElem.className = 'topTabActive'
		currentTab = actElem.id
		if(document.getElementById('current_tab')){
			document.getElementById('current_tab').value = actElem.id
		}
	}
}

function mOverTab(e) {
	var actElem = (ie5)? event.srcElement : (dom2 || opera)? e.currentTarget : false;
	if (actElem && currentTab != actElem.id) {
		actElem.className = 'topTabHilite';
	}
}

function mOutTab(e) {
	var actElem = (ie5)? event.srcElement : (dom2 || opera)? e.currentTarget : false;
	if (actElem && currentTab != actElem.id) {
		actElem.className = 'topTab';
	}
}

function saveCurrentTab() {
	document.forms[0].currentTab.value=currentTab
}

function tabsInitialize(selectedTab) {

	var firstTabId = ''
	var numTabs = 0
	var pageDivs = document.getElementsByTagName('div')

	var winHeight = (document.all) ? document.body.clientHeight : window.innerHeight
	
	var ieHeight = 90 - (5600/winHeight)
	var nnHeight = winHeight - 160
	for (var i = 0; i < pageDivs.length; i++) {
		if (pageDivs.item(i).className == 'topTab') {
			numTabs++;
			if (firstTabId == '') { firstTabId = pageDivs.item(i).id }
			var tabid = pageDivs.item(i).getAttribute('tabid')
			if ( tabid ) {
				if (ie5) {
					pageDivs.item(i).onmousedown = changeTab;
//					pageDivs.item(i).onmouseover = mOverTab;
					pageDivs.item(i).onmouseout = mOutTab;
				} else if (dom2 || opera) {
					pageDivs.item(i).addEventListener('mousedown', changeTab, false)
//					pageDivs.item(i).addEventListener('mouseover', mOverTab, false)
					pageDivs.item(i).addEventListener('mouseout', mOutTab, false)
				}
			}
			// var tabsrc = pageDivs.item(i).getAttribute('tabsrc')
			// alert(tabid)
		}
		if (pageDivs.item(i).className == 'tabPage' || pageDivs.item(i).getAttribute('class') == 'tabPage') {
				if (ie5) {
					if(solidHeight){
						pageDivs.item(i).style.height = solidHeight;
					} else {
						pageDivs.item(i).style.height = ieHeight+'%'
					}
				} else if (dom2 || opera) {
					if(solidHeight){
						pageDivs.item(i).style.height = solidHeight
					} else {
						pageDivs.item(i).style.height = nnHeight
					}
				}
		}
	}

	// Activating the first tab
	if(numTabs){
		if ( selectedTab && selectedTab != '') { currentTab = selectedTab } else { currentTab = firstTabId }
		var actElem = document.getElementById(currentTab)
		if( actElem ){
			putElem(actElem.getAttribute('tabid'))
			actElem.className = 'topTabActive'
		}
	}
}


