
function TabHandler(id,isAjaxEnabled) {
	this.id =id;
	this.isAjax = isAjaxEnabled;
	this.oldpage = 1;
	this.pager = null;
	this.tabs = new Array();
	this.pages = new Array();
	this.urls = new Array();
	this.tabInit = tabInit;
	this.switchContent = switchContent;
	this.showTab = showTab;
	this.showPage = showPage;
	this.fetchPageFromServer = fetchPageFromServer;
	this.refreshPage = refreshPage;
	this.refreshError = refreshError;
}

function tabInit(){
	var tabView = document.getElementById(this.id);
	var browserName=navigator.appName; 
	
	if (browserName=="Netscape"){ 
		var tabber = tabView.childNodes[1].childNodes[1]; //tabok
		this.pager = tabView.childNodes[3]; // tartalmak
		if(this.isAjax){
			var urller = tabView.childNodes[5]; // urlek
		}
	} else if (browserName=="Microsoft Internet Explorer"){
		var tabber = tabView.childNodes[0].childNodes[0]; 
		this.pager = tabView.childNodes[1]; 
		if(this.isAjax){
			var urller = tabView.childNodes[2];
		}
	}
	
	var tabsIdx = 0; // tabok referenciai
	for(i=0;i < tabber.childNodes.length;i++){
		if(tabber.childNodes[i].className == "aktiv" || tabber.childNodes[i].className == "passiv"){
			this.tabs[tabsIdx] = tabber.childNodes[i];
			this.tabs.length = tabsIdx+1;
			tabsIdx++;
		}
	}
	if(this.isAjax){
		var urlsIdx =0; // urlek referenciai
		for(i=0;i < urller.childNodes.length;i++){
			if(urller.childNodes[i].className == "url"){
				this.urls[urlsIdx] = urller.childNodes[i].firstChild.nodeValue;
				this.urls.length = urlsIdx+1;
				urlsIdx++;
			}
		}
	} else  {
		var pagesIdx =0; // tartalmak referenciai
		for(i=0;i < this.pager.childNodes.length;i++){
			if(this.pager.childNodes[i].className == "content" || this.pager.childNodes[i].className == "content_aktiv" ){
				this.pages[pagesIdx] = this.pager.childNodes[i];
				this.pages.length = pagesIdx+1;
				pagesIdx++;
			}
		}
	}
	if(this.isAjax) this.fetchPageFromServer(1);
}

function switchContent(page){  

	if(page != this.oldpage){
		
		if(this.isAjax){
			this.fetchPageFromServer(page);
		} else {
			this.showPage(this.oldpage, false);
			this.showPage(page, true);
		}
		this.showTab(this.oldpage, false);
		this.showTab(page, true);
		this.oldpage = page;
	}
}

function showTab(tabNumber, show){
    tabNumber = tabNumber-1;
	this.tabs[tabNumber].className= show ? "aktiv":"passiv";
}

function showPage(pageNumber, show){
	pageNumber = pageNumber-1;
	this.pages[pageNumber].className= show ? "content_aktiv":"content";
}

function fetchPageFromServer(page){
	page = page-1;
	var pageUrl = this.urls[page];
	var ajaxOptions = {url: pageUrl, type: "GET",onSuccess: refreshPage(this.pager), onError: refreshError(this.pager) };
	ajax(ajaxOptions);
}

function refreshPage(target){  
	return function(html) {
        target.innerHTML = html;
	}
}

function refreshError(target){
	return function() {
        target.innerHTML = "<span style='color: #EE9175; font-weight: bold; font-size: 11px;'>[ HIBA LÉPETT FEL A TARTALOM LEKÉRÉSE SORÁN! ]</span>";
	}
}



