﻿// set initial active tab
var activeTab = 1;

function openTab(tabId) {
	// reset old tab and content
	document.getElementById("tabLink"+activeTab).className = "tabLink";
	document.getElementById("tabContent"+activeTab).className = "tabContent";
	// set new tab and content
	document.getElementById("tabLink"+tabId).className = "tabLinkActive";
	document.getElementById("tabContent"+tabId).className = "tabContentActive";
	activeTab = tabId;
}

// toggle panel (for issues)
function toggle(x) {
	if(document.getElementById(x).style.display == "none") {
		document.getElementById(x).style.display = "block";
	}
	else if(document.getElementById(x).style.display == "block") {
		document.getElementById(x).style.display = "none";
	}
}

function PrintTab(tab)
{
	var url = location.href;
	var questionMark = url.indexOf('?');
	if (questionMark == -1) { }
	else
	{
		url = url.substring(0, questionMark);
	}
	window.open('/_layouts/RILAWebParts/PrintTab.aspx?url=' + url + '&tab=' + tab, 'printTab');
}

function PrintTabContent(tab)
{
	var url = location.href;
	var questionMark = url.indexOf('?');
	if (questionMark == -1) { }
	else
	{
		url = url.substring(0, questionMark);
	}
	window.open('/_layouts/RILAWebParts/PrintTab.aspx?url=' + url + '&tabcontent=' + tab, 'printTab');
}

/*

TAB_DATA_ID:
If the event details page layout has been updated, you may need to update
the following variable.  This variable should equal the ID of the "TabData"
input field, which is only available when an event detail page is in edit
mode view.

*/
var TAB_DATA_ID = "ctl00_PlaceHolderMain_ctl11_ctl00_TextField";

// check for edit mode
function IsEditMode()
{
	if(document.getElementById(TAB_DATA_ID) != null)
	{
		return true;
	}
	else
	{
		return false;
	}
}

// read the tab data site column
function LoadSavedTabData()
{
	var inputData = "";
	if(IsEditMode() == true)
	{
		inputData = document.getElementById(TAB_DATA_ID).value;
	}
	else
	{
		inputData = document.getElementById("activeTabData").innerHTML.replace(/&nbsp;/,"");
	}
	var inactiveTabs = new Array();
	inactiveTabs = inputData.split(",");
	return inactiveTabs;
}

// udpate the tab data site column text box value
function UpdateTabDataField()
{
	var tabCheckboxes = document.getElementById("activeTabsPanel").getElementsByTagName("input");
	var inactiveTabs = new Array();
	for(var i = 0; i < tabCheckboxes.length; i++)
	{
		if(tabCheckboxes[i].checked == false)
		{
			inactiveTabs[inactiveTabs.length] = i + 1;
		}
	}
	document.getElementById(TAB_DATA_ID).value = inactiveTabs.join(",");
}

// hide tabs, render admin panel in edit mode
function WriteTabAdministrationPanel()
{
	var inactiveTabs = LoadSavedTabData();
	for(var i = 0; i < inactiveTabs.length; i++)
	{
		if(document.getElementById("tabLink" + inactiveTabs[i]) != null)
		{
			document.getElementById("tabLink" + inactiveTabs[i]).style.display = "none";
		}
	}
	
	if(IsEditMode() == true)
	{
		var writer = "<fieldset class=\"editMode\" id=\"activeTabsPanel\"><legend>Active Tabs:</legend>";
		var tabLinks = new Array();
		var tabTitles = new Array();
		var tabContents = new Array();
		// maximum of 100 tabs
		for(var i = 0; i < 100; i++)
		{
			if(document.getElementById("tabLink" + (i + 1)) != null && document.getElementById("tabContent" + (i + 1)) != null)
			{
				tabLinks[i] = document.getElementById("tabLink" + (i + 1));
				tabTitles[i] = tabLinks[i].innerHTML;
				tabContents[i] = document.getElementById("tabContent" + (i + 1));
				writer += "<div><input type=\"checkbox\" onclick=\"UpdateTabDataField();\" id=\"activateTab" + (i + 1) + "\"";
				var inactiveTab = false;
				for(var j = 0; j < inactiveTabs.length; j++)
				{
					if(inactiveTabs[j] == (i + 1))
					{
						inactiveTab = true;
					}
				}
				if(inactiveTab == false)
				{
					writer += " checked=\"checked\"";
				}
				if(i == 0)
				{
					writer += " disabled=\"disabled\"";
				}
				writer += " /> <label for=\"activateTab" + (i + 1) + "\">" + tabTitles[i] + "</label></div>";
			}
			else
			{
				break;
			}
		}
		writer += "</fieldset>";
		document.write(writer);
	}
}
