
//===========================================================
// HandleTabClick
//===========================================================
function HandleTabClick( controlID, tabID, tabType, tabIndex ) {
	try {
		var form = document.forms[0];
		var tabsElement = document.getElementById( controlID + "tabs" );
		if (tabsElement == null) alert( "Tabs Element not found: " + controlID );
		if (form == null) alert( "Form not found!" );
		if (form[controlID+"_ct"] == null) alert( "Current Tab field not found: " + controlID + "_ct" );
		form[controlID+"_ct"].value = tabID;
		switch (tabType) {
			case "PostbackTab":
				form.style.cursor = "wait";
				form.submit();
				// Must be called in separte thread otherwise submit is canceled
				// by status change.
				window.setTimeout( "document.forms[0].disabled = true;", 100 );
				break;
			case "NonPostbackPanel":
				for (var item=0; item<tabsElement.children.length; item++) {
					var tab = tabsElement.children[item];
					var tabPanel = document.getElementById( tab.id.replace(/Tab/,"") );
					var isSelected = (tabIndex == item);
					tab.className = "tab" + (isSelected  ? "Selected" : "");
					tabPanel.className = "tabPage" + (isSelected  ? "Selected" : "");
					}
		        // 10APR2008 RFM - Added to renable page
		        if (typeof EnablePage == "function") EnablePage();
				break;
			case "NonPostbackIFrame":
				for (var item=0; item<tabsElement.children.length; item++) {
					var tab = tabsElement.children[item];
					var isSelected = (tabIndex == item);
					tab.className = "tab" + (isSelected  ? "Selected" : "");
					}
				if (document.getElementById( controlID + "IFrame" ) == null) alert( "IFrame Element not found: " + controlID );
		        // 17OCT2006 RFM - added suppport for passing functions
		        if (tabID.indexOf("javascript:") == 0) {
		            eval( tabID.replace( "javascript:", "") );
		            }
		        else {
		            document.getElementById( controlID + "IFrame" ).src = tabID;    
		            }
		        // 04APR2008 RFM - Added to renable page
		        if (typeof EnablePage == "function") EnablePage();
				break;
			}
		}
	catch ( error) {
		window.status = ( "HandleTabClick: " + error.description );
		}
	}
