var ss_memory = null;

function getAbsolutePosition(element) {
    var r = { x: element.offsetLeft, y: element.offsetTop };
    if (element.offsetParent) {
      var tmp = getAbsolutePosition(element.offsetParent);
      r.x += tmp.x;
      r.y += tmp.y;
    }
    return r;
};

function click_li( li ) {
  if (li.childNodes[0] && (a = li.childNodes[0]).nodeName == "A") {
    window.location.href = a.getAttribute("href");
  }
}

function set_searchsuggest( request ) {
  var result = request.responseText;
  var a,c,s = '<div style="color:red;font-weight:bold;margin:3px;">Нет результатов</div>';
  var sg = document.getElementById("searchsuggest");
  if (request.status != 200) {
    result = "";
  }
  a = result.split("|");
  a.pop(); // remove last empty element
  c = parseInt( a.shift() ); // get the first element - count of entries
  if (c > 0) {
    s = '<ul>';
    for (var i in a) {
      s += '<li onclick="click_li(this);">' + a[i] + '</li>';
    }
    s += '</ul>';
  }
  if (c < 20) {
//  sg.style.height = (c * 24) + "px";
    sg.style.height = "auto";
  } else {
    sg.style.height = "474px";
  }
  sg.innerHTML = s;
}

function SearchCall(){
    var newdiv = document.getElementById("searchsuggest");
    if (!newdiv) {
        var newdiv = document.createElement("div");
        newdiv.id = "searchsuggest";
        var searchdiv = document.getElementById("search");
        searchdiv.appendChild(newdiv);
    }
    var x = document.getElementById("searchInput").value;
    if (x == ss_memory) {
        return;
    }
    ss_memory = x;
    document.getElementById("searchsuggest").style.display = 'none';
    if (x.length < 30 && x.length > 1 && x.value != "") {
        sajax_do_call("wfAjaxSearchSuggest", [x], set_searchsuggest);
//		document.getElementById('searchsuggest').style.top=getAbsolutePosition(document.getElementById('searchInput')).y+'px';
//		document.getElementById('searchsuggest').style.left=getAbsolutePosition(document.getElementById('searchInput')).x+'px';
      document.getElementById("searchsuggest").style.display = 'block';
    }
}
 
function ss_ajax_onload(){
    var x = document.getElementById('searchInput');
    x.onkeyup = function(){
        SearchCall();
    };
    x.onclick = function(){
        if (document.getElementById("searchsuggest")) document.getElementById("searchsuggest").style.display = 'none';
    };
    document.getElementById('all').onclick = function(){
        if (document.getElementById("searchsuggest")) document.getElementById("searchsuggest").style.display = 'none';
    };
}