//----- glossary functions ------





/* Sets/ Resets the text of input field

 */

function setInputText(input, defaultText)

{

	if(input.value == defaultText)

	{

		input.value="";

	}

	else if(input.value == "")

	{

		input.value = defaultText;

	}

}



// holds the most recently selected letter

var previuoslySelected;



/* highlights index entry and abc-nav-element of selected letter

 * letter: selected letter

 * clearSelected: clear/ de-highlight most recent selection

 */

function highlightLetter(letter, clearSelected) 

{

	letter = letter.toUpperCase();

	// assign highlighting css-styles

	document.getElementById('glossary_letter_headline_'+letter).className = "glossary_letter_headline_hi";

	document.getElementById('glossary_letter_contents_'+letter).className = "glossary_letter_contents_hi";

	document.getElementById('glossary_letter_head_'+letter).className = "glossary_letter_head_hi";	

	document.getElementById('glossary_abc_letter_'+letter).className = "glossary_abc_letter_hi";	

	document.getElementById('glossary_abc_link_'+letter).className = "glossary_abc_link_hi";

	

	

	// undo highlighting of previously selected entry

	if(previuoslySelected&&clearSelected&&previuoslySelected!=letter)

	{

		dehighlightLetter(previuoslySelected);

	}

	if(clearSelected)

	{

		previuoslySelected = letter;

	}

}



/* de-highlights index entry and abc-nav-element of selected letter

 */

function dehighlightLetter(letter)

{	

	letter = letter.toUpperCase();

	// assign non-highlighted css-styles

	document.getElementById('glossary_letter_headline_'+letter).className = "glossary_letter_headline";

	document.getElementById('glossary_letter_contents_'+letter).className = "glossary_letter_contents";

	document.getElementById('glossary_letter_head_'+letter).className = "glossary_letter_head";

	document.getElementById('glossary_abc_letter_'+letter).className = "glossary_abc_letter";

	document.getElementById('glossary_abc_link_'+letter).className = "glossary_abc_link";

}



/* limit displayed select entries according to input

 */

function limitEntries(selectForm, currentInput){

	var limitedEntries;

	var option;

	var title;

	var match;

	var lengthLimited;



	lengthLimited = 0;

	

	// compute length of limited Array	

	for(i = 0; i < entries.length; i++)

	{

		title = entries[i][0];

		match = title.toLowerCase().search(new RegExp(currentInput.toLowerCase()));	

		if(match != -1)

		{

			lengthLimited++;						

		}		

	}

	

	limitedEntries = new Array(lengthLimited);	

	



	// fill limited array

	for(i = 0; i < entries.length; i++)

	{

		title = entries[i][0];

		match = title.toLowerCase().search(new RegExp(currentInput.toLowerCase()));

				

		if(match != -1)

		{			

			limitedEntries.push(entries[i]);			

		}		

	}		

			

	// fill select box with options out of limitedEntries

	

	clearSelect(selectForm);		

	for(i = 0; i < limitedEntries.length; i++)

	{

		if(limitedEntries[i] != null)

		{

			option = new Option(limitedEntries[i][0], limitedEntries[i][1], false, false);

			selectForm.options[selectForm.options.length] = option;	

		}

	}

}



// switches window.location to currently selected select-option

function switchTo(currentSel){	

	window.location.href = currentSel.options[currentSel.selectedIndex].value;

}



// Clears the selectbox

function clearSelect(selectForm) {  

   var length;

   //length = document.glossaryForm.glossarySearchSelect.options.length;

   length = selectForm.options.length;

   if(length>0)

   {

	   for (i = length; i >= 0; i--) {	   

	      document.glossaryForm.glossarySearchSelect.options[i] = null;

	   }

   }

     

}



//--------------END glossary functions------------------