
function upResult(searchterm, current)
{
  var sts = getElementsByClassName("searchterms");
  if(current == 0) 
  {
    window.scrollTo(findPosX(sts[sts.length-1]),findPosY(sts[sts.length-1]));
  } else {
    window.scrollTo(findPosX(sts[current-1]),findPosY(sts[current-1]));
  }
}

function downResult(searchterm, current)
{
  var sts = getElementsByClassName("searchterms");
  if(current >= (sts.length-1)) 
  {
    window.scrollTo(findPosX(sts[0]),findPosY(sts[0]));
  } else {
    window.scrollTo(findPosX(sts[current+1]),findPosY(sts[current+1]));
  }
}




function setCaretPosition(ctrl, pos)
{

	if(ctrl.setSelectionRange)
	{
		ctrl.focus();
		ctrl.setSelectionRange(pos,pos);
	}
	else if (ctrl.createTextRange) {
		var range = ctrl.createTextRange();
		range.collapse(true);
		range.moveEnd('character', pos);
		range.moveStart('character', pos);
		range.select();
	}
}



function findPosX(obj)
{
  var curleft = 0;
  if(obj.offsetParent)
      while(1) 
      {
        curleft += obj.offsetLeft;
        if(!obj.offsetParent)
          break;
        obj = obj.offsetParent;
      }
  else if(obj.x)
      curleft += obj.x;
  return curleft;
}

function findPosY(obj)
{
  var curtop = 0;
  if(obj.offsetParent)
      while(1)
      {
        curtop += obj.offsetTop;
        if(!obj.offsetParent)
          break;
        obj = obj.offsetParent;
      }
  else if(obj.y)
      curtop += obj.y;
  return curtop;
}

