function showPane(_holder, _tabsHolder, _paneID, _tab)
{
  var holder = document.getElementById(_holder);
  if (holder)
  {
    var panes = holder.getElementsByTagName('div');
    var i = panes.length;
    if (i > 0)
    {
      while (i--)
      {
        panes[i].style.display = (panes[i].id == _paneID) ? 'block' : 'none';
      }
    }
  }

  var tHolder = document.getElementById(_tabsHolder);
  if (tHolder)
  {
    var tabs = tHolder.getElementsByTagName('a');
    var j = tabs.length;
    if (j > 0)
    {
      while (j--)
      {
        tabs[j].className = 'tab-disabled';
      }
      _tab.className = 'tab-active';
    }
  }
}

function reduceFont(_block, _fontSize)
{
	if (document.getElementById(_block))
	{
		document.getElementById(_block).style.fontSize = _fontSize;
		var ps = document.getElementById(_block).getElementsByTagName('p');
		var cnt_ps = ps.length;
		while (cnt_ps--)
		{
      ps[cnt_ps].style.fontSize = _fontSize;
		}
	}
}

function showDescr(_selector)
{
  var descrDivs = document.getElementById('descr_holder').getElementsByTagName('div');
  var l = descrDivs.length;
  while (l--)
  {
    descrDivs[l].style.display = descrDivs[l].id == 'descr_' + _selector.value ? 'block' : 'none';
  }
}

function CharsLeft(derObj, countObj, _cntAllowedChars)
{
	var derObject = document.getElementById(derObj);
	var countObject = document.getElementById(countObj);
	if (derObject == null || countObject == null) return;

	iNum = _cntAllowedChars - derObject.value.length;
	countObject.innerHTML = 'Остават: ' + iNum.toString() + ' символа';

	if (iNum < 0)
	{
		derObject.value = derObject.value.substr(0, _cntAllowedChars);
		countObject.innerHTML = 'Остават: 0 символа';
	}
	countObject.style.display = 'block';
}

function hideCounter(countObj)
{
	if (document.getElementById(countObj))
	{
		document.getElementById(countObj).style.display = "none";
	}
}

function fixLisHeight(_container, _lisPerRow)
{
  var lis = document.getElementById(_container).getElementsByTagName('li');
  var maxH = 0;
  var cnt = lis.length

  var howRows = Math.round(cnt / _lisPerRow);
  for (var j = 0; j < howRows; j++)
  {
    var maxH = 0;

    var arrEls = new Array();
    for (var k = 0, l = _lisPerRow - 1; k <= l; k++)
    {
      arrEls[k] = j * _lisPerRow + k
    }

    for (var x = 0, y = _lisPerRow - 1; x <= y; x++)
    {
      if (lis[arrEls[x]] && lis[arrEls[x]].clientHeight > maxH)
      {
        maxH = lis[arrEls[x]].clientHeight;
      }
    }

    for (var x = 0, y = _lisPerRow - 1; x <= y; x++)
    {
      if (lis[arrEls[x]])
      {
        lis[arrEls[x]].style.height = maxH + 'px';
      }
    }
  }
}

function simpleToggle(_id)
{
  var el = document.getElementById(_id);
  if (el)
  {
    el.style.display = el.style.display != 'block' ? 'block' : 'none';
  }
}

function toggleQuestions(_display)
{
  var qs = document.getElementById('test_result_holder').getElementsByTagName('div');
  var l = qs.length;
  while (l--)
  {
    if (qs[l].id.indexOf('question') > -1)
    {
      qs[l].style.display = _display;
    }
  }
}

function validatePoll(_form)
{
  var rads = _form.getElementsByTagName('input');
  var l = rads.length;
  while (l--)
  {
    if (rads[l].type == 'radio' && rads[l].checked)
    {
      return true;
    }
  }
  alert('Моля, изберете отговор!');
  return false;
}

function manageFld(_triggerCtrl, _answerId)
{
  if (_triggerCtrl.type == 'checkbox')
  {
    $('answer_open_' + _answerId).disabled = !_triggerCtrl.checked;
    _triggerCtrl.checked ? $('answer_open_' + _answerId).focus() : $('answer_open_' + _answerId).value = '';
  }
  else
  {
    var others = $$('input.other_boxes');
    var l = others.length;
    while (l--)
    {
      if (_triggerCtrl.checked && others[l].id != 'answer_open_' + _answerId)
      {
        others[l].value = '';
        others[l].disabled = true;
      }
      else
      {
        others[l].disabled = false;
        others[l].focus();
      }
    }
  }
}
