document.getElementsByClass = function (needle) {
  var my_array = document.getElementsByTagName("*");
  var retvalue = new Array();
  var i = 0;
  var j = 0;
  for (i = 0, j= 0; i < my_array.length; i++) {
    var c = " " + my_array[i].className + " ";
    if (c.indexOf(" " + needle + " ") != -1) retvalue[j++] = my_array[i];
  }
  return retvalue;
}

function toggleFaqList(id,linkclass) {

	faqBox = document.getElementById(id);
	// get all open boxes
	faqBoxes = document.getElementsByClass('content');
	// close all open boxes except first one which contains the faq overview links 
	for (i=1;i<faqBoxes.length;i++) {
		faqBoxes[i].style.display = 'none';
	}
	// get all faqlinks (li)
	faqli = document.getElementsByClass('contentTextFaq')[0].getElementsByTagName('a');
	// change all faqlink classes to ''
	for (i=0;i<faqli.length;i++) {
		faqli[i].className='';
	}
	
	if (faqBox.style.display == 'none') {
		faqBox.style.display = 'block';
		linkclass.className='hiFAQ';
	} else {
		faqBox.style.display = 'none';
		linkclass.className='';
	}
	return false;
}

function openFirst(theID) {
	if (theID == null || theID == '') {		
		// get all boxes
		FAQBoxes = document.getElementsByClass('content');
		// get all faqlinks (li)
		FAQli = document.getElementsByClass('contentTextFaq')[0].getElementsByTagName('a');
		// open first faq
		if (FAQBoxes[1]) {
			FAQBoxes[1].style.display = 'block';
			FAQli[0].className='hiFAQ'
		}
	} else {
		var count = 0;
		FAQBoxes = document.getElementsByClass('content');
		FAQBox = document.getElementById(theID);
		// calculate which link belongs to this faqbox
		for (i=1;i<FAQBoxes.length;i++) {
			if (FAQBoxes[i].id == FAQBox.id) count = i-1;
		}
		// get all faqlinks (li)
		FAQli = document.getElementsByClass('contentTextFaq')[0].getElementsByTagName('a');
		FAQli[count].className='hiFAQ';
		FAQBox.style.display = 'block';
	}
}
