	var curTabView = "";
	
	var textPadding = 3; // Padding at the left of tab text - bigger value gives you wider tabs
	var strictDocType = true; 
	var tabView_maxNumberOfTabs = 10;	// Maximum number of tabs
	
	/* Don't change anything below here */
	var tabObj = new Array();
	var activeTabIndex = new Array();
	var MSIE = navigator.userAgent.indexOf('MSIE')>=0?true:false;
	var navigatorVersion = navigator.appVersion.replace(/.*?MSIE (\d\.\d).*/g,'$1')/1;
	var ajaxObjects = new Array();
	var tabView_countTabs = new Array();
	var tabViewHeight = new Array();
	var tabDivCounter = 0;
	// Thierry
	//var tabTitleFiles = new Array();
	//var tabTitleIds = new Array();

	// Thierry
	/*
	function cleanfilename($str) {
		//$str = strtolower(ereg_replace("( )|(/)|(:)|(')|(&)|(!)|(\?)", "", $str));
		$str = ereg_replace("( )|(/)|(:)|(')|(&)|(!)|(\?)", "", $str);
		$str = strtr(utf8_decode($str),
			"\xe1\xc1\xe0\xc0\xe2\xc2\xe4\xc4\xe3\xc3\xe5\xc5".
			"\xaa\xe7\xc7\xe9\xc9\xe8\xc8\xea\xca\xeb\xcb\xed".
			"\xcd\xec\xcc\xee\xce\xef\xcf\xf1\xd1\xf3\xd3\xf2".
			"\xd2\xf4\xd4\xf6\xd6\xf5\xd5\x8\xd8\xba\xf0\xfa".
			"\xda\xf9\xd9\xfb\xdb\xfc\xdc\xfd\xdd\xff\xe6\xc6\xdf",
			"aAaAaAaAaAaAacCeEeEeEeEiIiIiIiInNoOoOoOoOoOoOoouUuUuUuUyYyaAs");
		return $str;
	}
	*/
	function setPadding(obj,padding) {
		var span = obj.getElementsByTagName('SPAN')[0];
		span.style.paddingLeft = padding + 'px';	
		span.style.paddingRight = padding + 'px';	
	}

	function showTab(parentId,tabIndex) {
		curTabView = parentId;
		
		//var id = tabTitleIds[tabIndex];
		//var label = tabTitleFiles[tabIndex].toLowerCase();
		/*
		if (parentId == "tabView") {
			if (tabIndex == "0") {
				loadNewTab('/acogit/views/default_view/htdocs/hebergement/form_HOT.php', '0');
			} else if (tabIndex == "1") {
				loadNewTab('/acogit/views/default_view/htdocs/hebergement/form_HPA.php', '1');
			} else if (tabIndex == "2") {
				loadNewTab('/acogit/views/default_view/htdocs/hebergement/form_HLO.php', '2');
			} else if (tabIndex == "3") {
				loadNewTab('/acogit/views/default_view/htdocs/hebergement/form_VIL.php', '3');
			}
		}
		*/
		var parentId_div = parentId + "_";
		if (!document.getElementById('tabView' + parentId_div + tabIndex)) return;

		if (activeTabIndex[parentId]>=0) {
			if (activeTabIndex[parentId]==tabIndex) return;

			var obj = document.getElementById('tabTab'+parentId_div + activeTabIndex[parentId]);
			obj.className='tabInactive';
			var img = obj.getElementsByTagName('IMG')[0];
			img.src = '/admin/img/tabs/tab_right_inactive.gif';
			document.getElementById('tabView' + parentId_div + activeTabIndex[parentId]).style.display='none';
		}
		
		var thisObj = document.getElementById('tabTab'+ parentId_div +tabIndex);	
			
		thisObj.className='tabActive';
		var img = thisObj.getElementsByTagName('IMG')[0];
		img.src = '/admin/img/tabs/tab_right_active.gif';
		
		document.getElementById('tabView' + parentId_div + tabIndex).style.display='block';
		activeTabIndex[parentId] = tabIndex;
		
		var parentObj = thisObj.parentNode;
		var aTab = parentObj.getElementsByTagName('DIV')[0];
		countObjects = 0;
		var startPos = 2;
		var previousObjectActive = false;
		while(aTab) {
			if (aTab.tagName=='DIV') {
				if(previousObjectActive) {
					previousObjectActive = false;
					startPos-=2;
				}
				if (aTab==thisObj) {
					startPos-=2;
					previousObjectActive=true;
					setPadding(aTab,textPadding+1);
				} else {
					setPadding(aTab,textPadding);
				}
				aTab.style.left = startPos + 'px';
				countObjects++;
				startPos+=2;
			}			
			aTab = aTab.nextSibling;
		}
		return;
	}
	
	function tabClick() {
		var idArray = this.id.split('_');		
		showTab(this.parentNode.parentNode.id,idArray[idArray.length-1].replace(/[^0-9]/gi,''));
	}
	
	function rolloverTab() {
		if (this.className.indexOf('tabInactive')>=0) {
			this.className='inactiveTabOver';
			var img = this.getElementsByTagName('IMG')[0];
			img.src = '/admin/img/tabs/tab_right_over.gif';
		}
	}
	
	function rolloutTab() {
		if (this.className ==  'inactiveTabOver') {
			this.className='tabInactive';
			var img = this.getElementsByTagName('IMG')[0];
			img.src = '/admin/img/tabs/tab_right_inactive.gif';
		}
	}
	
	function initTabs(mainContainerID,tabTitles,tabFiles,tabIds,activeTab,width,height,additionalTab) {
		if (!additionalTab || additionalTab=='undefined') {			
			tabObj[mainContainerID] = document.getElementById(mainContainerID);
			width = width + '';
			if(width.length>0){
				if(width.indexOf('%')<0)width= width + 'px';
				tabObj[mainContainerID].style.width = width;
				//tabObj[mainContainerID].style.width = "99%";
			}
			height = height + '';
			if(height.length>0){
				if(height.indexOf('%')<0)height= height + 'px';
				//tabObj[mainContainerID].style.height = height;
				tabObj[mainContainerID].style.height = "98%";
			}

			//tabViewHeight[mainContainerID] = height;
			tabViewHeight[mainContainerID] = "98%";
			
			var tabDiv = document.createElement('DIV');		
			var firstDiv = tabObj[mainContainerID].getElementsByTagName('DIV')[0];	
			
			tabObj[mainContainerID].insertBefore(tabDiv,firstDiv);	
			tabDiv.className = 'tabPane';			
			tabView_countTabs[mainContainerID] = 0;
		} else {
			var tabDiv = tabObj[mainContainerID].getElementsByTagName('DIV')[0];
			var firstDiv = tabObj[mainContainerID].getElementsByTagName('DIV')[1];
			height = tabViewHeight[mainContainerID];
			activeTab = tabView_countTabs[mainContainerID];		
		}
		
		for(var no=0;no<tabTitles.length;no++) {
			var aTab = document.createElement('DIV');
			aTab.id = 'tabTab' + mainContainerID + "_" +  (no + tabView_countTabs[mainContainerID]);
			aTab.onmouseover = rolloverTab;
			aTab.onmouseout = rolloutTab;
			aTab.onclick = tabClick;
			aTab.className='tabInactive';
			tabDiv.appendChild(aTab);
			var span = document.createElement('SPAN');
			span.innerHTML = tabTitles[no];
			// Thierry
			//tabTitleFiles[no] = tabFiles[no];
			//tabTitleIds[no] = tabIds[no];
			
			aTab.appendChild(span);
			
			var img = document.createElement('IMG');
			img.valign = 'bottom';
			img.src = '/admin/img/tabs/tab_right_inactive.gif';
			// IE5.X FIX
			if ((navigatorVersion && navigatorVersion<6) || (MSIE && !strictDocType)) {
				img.style.styleFloat = 'none';
				img.style.position = 'relative';	
				img.style.top = '4px'
				span.style.paddingTop = '4px';
				aTab.style.cursor = 'hand';
			}	// End IE5.x FIX
			aTab.appendChild(img);
		}

		var tabs = tabObj[mainContainerID].getElementsByTagName('DIV');
		var divCounter = 0;
		for(var no=0;no<tabs.length;no++) {
			if(tabs[no].className=='aTab') {
				//if (height.length>0) tabs[no].style.height = height;
				if (height.length>0) tabs[no].style.height = "98%";
				tabs[no].style.display='none';
				tabs[no].id = 'tabView' + mainContainerID + "_" + divCounter;
				divCounter++;
			}			
		}	
		tabView_countTabs[mainContainerID] = tabView_countTabs[mainContainerID] + tabTitles.length;	
		showTab(mainContainerID,activeTab);
		return activeTab;
	}	
	
	function showAjaxTabContent(ajaxIndex,parentId,tabId) {
		var obj = document.getElementById('tabView'+parentId + '_' + tabId);
		obj.innerHTML = ajaxObjects[ajaxIndex].response;
		
		if (parentId == "tabViewMain") {
			resizeFrames();
		}
	}

	function loadNewForm(ContentUrl, tabId) {
		var obj = document.getElementById('tabViewtabView' + '_' + tabId);
		obj.innerHTML = '<iframe name="testcontentframe1" id="testcontentframe1" frameborder="0" width="100%" height="800" src="'+ContentUrl+'"></iframe>'	
	}
	
	function resetTabIds(parentId) {
		var tabTitleCounter = 0;
		var tabContentCounter = 0;
		
		var divs = tabObj[parentId].getElementsByTagName('DIV');
		
		for(var no=0;no<divs.length;no++) {
			if (divs[no].className=='aTab') {
				divs[no].id = 'tabView' + parentId + '_' + tabTitleCounter;
				tabTitleCounter++;
			}
			if (divs[no].id.indexOf('tabTab')>=0) {
				divs[no].id = 'tabTab' + parentId + '_' + tabContentCounter;	
				tabContentCounter++;
			}	
		}
		tabView_countTabs[parentId] = tabContentCounter;
	}
	
	function loadNewTab(tabContentUrl,id) {
		var ajaxIndex = ajaxObjects.length;
		ajaxObjects[ajaxIndex] = new sack();
		ajaxObjects[ajaxIndex].requestFile = tabContentUrl;	// Specifying which file to get
		if (curTabView == "tabView") {
			ajaxObjects[ajaxIndex].onCompletion = function(){ showAjaxTabContent(ajaxIndex,'tabView',id); };
		} else {
			ajaxObjects[ajaxIndex].onCompletion = function(){ showAjaxTabContent(ajaxIndex,'tabViewMain',id); };
		}
		ajaxObjects[ajaxIndex].runAJAX();		// Execute AJAX function	
	}
	
	function createNewTab(parentId,tabTitle,tabContent,tabContentUrl) {
		if (tabView_countTabs[parentId]>=tabView_maxNumberOfTabs) return;	// Maximum number of tabs reached - return
		var div = document.createElement('DIV');
		div.className = 'aTab';
		tabObj[parentId].appendChild(div);		
		var tabId = initTabs(parentId,Array(tabTitle),0,'','',true);
		if (tabContent) div.innerHTML = tabContent;
		if (tabContentUrl) {		
			var ajaxIndex = ajaxObjects.length;
			ajaxObjects[ajaxIndex] = new sack();
			ajaxObjects[ajaxIndex].requestFile = tabContentUrl;	// Specifying which file to get
			ajaxObjects[ajaxIndex].onCompletion = function(){ showAjaxTabContent(ajaxIndex,parentId,tabId); };	// Specify function that will be executed after file has been found
			ajaxObjects[ajaxIndex].runAJAX();		// Execute AJAX function	
		}
	}
	 
	function getTabIndexByTitle(tabTitle) {
		for(var prop in tabObj) {
			var divs = tabObj[prop].getElementsByTagName('DIV');
			for(var no=0;no<divs.length;no++) {
				if (divs[no].id.indexOf('tabTab')>=0) {
					var span = divs[no].getElementsByTagName('SPAN')[0];
					if (span.innerHTML == tabTitle) {
						var tmpId = divs[no].id.split('_');
						return Array(prop,tmpId[tmpId.length-1].replace(/[^0-9]/g,'')/1);
					}		
				}
			}
		}
		return -1;
	}
	
	
	function deleteTab(tabLabel,tabIndex,parentId) 	{
		if (tabLabel) {
			var index = getTabIndexByTitle(tabLabel);
			if (index!=-1) {
				deleteTab(false,index[1],index[0]);
			}
		} else if(tabIndex>=0) {
			if (document.getElementById('tabTab' + parentId + '_' + tabIndex)) {
				var obj = document.getElementById('tabTab' + parentId + '_' + tabIndex);
				var id = obj.parentNode.parentNode.id;
				obj.parentNode.removeChild(obj);
				var obj2 = document.getElementById('tabView' + parentId + '_' + tabIndex);
				obj2.parentNode.removeChild(obj2);
				resetTabIds(parentId);
				activeTabIndex[parentId]=-1;
				showTab(parentId,'0');
			}			
		}
	}
	
	