var currentPage = 1;
var gmaxItems = 0;
var gnumItems = 0;
var gmaxPages = 0;

function setSearchPage( maxItems, numItems, maxPages)
{
  gmaxItems = maxItems;
  gnumItems = numItems;
  gmaxPages = maxPages;
}

function showSearchPageUpper( itemId )
{
  showSearchPage(itemId, gmaxItems, gnumItems, gmaxPages)
}

function showSearchSubPageUpper( itemId )
{
  showSearchSubPage(itemId, gmaxItems, gnumItems, gmaxPages)
}

function showSearchPage(itemId, maxItems, numItems, maxPages)
{
    gmaxItems = maxItems;
    gnumItems = numItems;
    gmaxPages = maxPages;
    
    if (numItems>0)
    {
    var nextSearch = document.getElementById("nextSearch");
    var prevSearch = document.getElementById("prevSearch");
    var i = 0;

    for (i; i<maxPages; ++i)
    {
     var listx = document.getElementById("list"+ (i+1) );
     if (listx) { listx.style.display='none'; }
     var pagex = document.getElementById("linkpage"+ (i+1) );
     if (pagex) { pagex.style.fontWeight='normal'; }
    }
    
    if (itemId=='next') { itemId = parseInt(currentPage) + 1; }
    if (itemId=='prev') { itemId = parseInt(currentPage) - 1; }
    
    var linkpageprev = document.getElementById("linkpageprev" );
    var linkpagenext = document.getElementById("linkpagenext" );
    if (linkpageprev && linkpageprev)
    {
    if (linkpageprev) {linkpageprev.style.fontWeight='normal';}
    document.getElementById('listHeaderPrev').style.visibility='visible';
    document.getElementById('listHeaderNext').style.visibility='visible';
    
    // Previous clicked ?
    if (itemId<1) 
      { 
      if (prevSearch)
       { 
       var printit = document.getElementById("printit");
       printit.style.visibility = 'hidden';
       location.replace( prevSearch.href ); 
       }
      else
       { itemId=1; }
      }
    else
    {
    if (parseInt(itemId)>parseInt(maxPages)) 
     { 
     if (nextSearch)
      { 
       var printit = document.getElementById("printit");
       printit.style.visibility = 'hidden';
      location.replace( nextSearch.href ); 
      }
     else
      {itemId=maxItems; }
     }
    else
    {	
    document.getElementById("list"+itemId).style.display='block';
    document.getElementById("linkpage"+ itemId ).style.fontWeight='bold';
    getSearchResultsForPage( "list"+itemId );
    if (itemId=='1') 
      {
      if (prevSearch)
       {
       linkpageprev.style.fontWeight='bold';
       linkpageprev.style.visibility='visible';
       }
      else
       { 
       linkpageprev.style.visibility='hidden';
       document.getElementById('listHeaderPrev').style.visibility='hidden';
       }
      }
    else
      {linkpageprev.style.visibility='visible';}
    
    if (linkpagenext) {linkpagenext.style.fontWeight='normal'; }
    
    if (linkpagenext)
     {
     if (itemId==maxPages) 
      {
      // check for more results
      if (nextSearch)
       {
       linkpagenext.style.fontWeight='bold';
       }
      else
       { 
       linkpagenext.style.visibility='hidden'; 
       document.getElementById('listHeaderNext').style.visibility='hidden';
       }
      }
     else
      {linkpagenext.style.visibility='visible';}
     }
    currentPage = itemId;
    pagenumber = document.getElementById("linkpage1").innerHTML.replace("&nbsp;", "");
    pagenumber = pagenumber.replace("&nbsp;", "");
    var linkpage1 = new Number( currentPage );
    var maxPagesNum = new Number( maxPages ) ;
    document.getElementById("currentpagenumber" ).innerHTML = linkpage1;
    document.getElementById("maxpagenumber" ).innerHTML = maxPagesNum;
    //document.getElementById("actualPageNumber" ).innerHTML = linkpage1 + "&nbsp;/&nbsp;" + maxPagesNum;
    var itemCount = document.getElementById("itemCount" );
    if (itemCount) {itemCount.innerHTML = numItems;}
    
    resizeWindow();
    }
    }
    } // var exist
  } // numitems 
}

// hide the result div numer itemId
function hideSearchresultDiv( itemId )
{
	document.getElementById( itemId ).style.display='none';
}

function showSearchSubPage(itemId, maxItems, numItems, maxPages)
{
    gmaxItems = maxItems;
    gnumItems = numItems;
    gmaxPages = maxPages;
    if (numItems>0)
    {
    var i = 0;
    for (i; i<maxPages; ++i)
    {
     var listx = document.getElementById("list"+ (i+1) );
     if (listx) { listx.style.display='none'; }
     var pagex = document.getElementById("linkpage"+ (i+1) );
     if (pagex) { pagex.style.fontWeight='normal'; }
    }
    if (itemId=='next') { itemId = parseInt(currentPage) + 1; }
    if (itemId=='prev') { itemId = parseInt(currentPage) - 1; }
    if (itemId<1) { itemId=1; }
    if (parseInt(itemId)>parseInt(maxItems)) { itemId=maxItems; }
	
    document.getElementById("list"+itemId).style.display='block';
    document.getElementById("linkpage"+ itemId ).style.fontWeight='bold';
    if (itemId=='1') 
      {document.getElementById("linkpageprev" ).style.visibility='hidden';}
    else
      {document.getElementById("linkpageprev" ).style.visibility='visible';}
    var nextPage = document.getElementById("linkpagenext" );
    if (nextPage)
     {
     if (itemId==maxPages) 
      {document.getElementById("linkpagenext" ).style.visibility='hidden';}
     else
      {document.getElementById("linkpagenext" ).style.visibility='visible';}
     }
    currentPage = itemId;
    // check if already filled
    var subpageKey = document.getElementById("subpage"+currentPage);
    if ( subpageKey )
     {
     var subTab = document.getElementById("searchTab"+currentPage);
     if (subTab && subTab.innerHTML.length<10)
     {
     searchUrl = "/search/?view=searchTab&pageNo="+ currentPage + "&ses=" + document.getElementById("sessionId").innerHTML +
       "&site=" + document.getElementById("siteKey").innerHTML + "&user=" + document.getElementById("userKey").innerHTML;
     getSearchSubpage( searchUrl, "searchTab"+currentPage )
     }
     }
    
    document.getElementById("currentpagenumber" ).innerHTML = currentPage;
    document.getElementById("maxpagenumber" ).innerHTML = maxPages;
    var itemCount = document.getElementById("itemCount" );
    if (itemCount) {itemCount.innerHTML = numItems;}
    
    resizeWindow();
    
    }
}

function getSearchResultsForPage( divName )

{
$("ul#"+divName+" li.result").each(function(i) 
 { 
 try
 {
 id = $(this).attr("id").replace("K", "");
 
 $.ajax({
  url: '/search/?view=List&id='+id,
  context: document.getElementById("K"+id),
  success: function(data) { 
    if (data.length>0)
     {
     $(this).html(data);
     $(this).removeClass("result");
     }
    else
     {
     $(this).addClass("hidden");
     }	
    resizeWindow();
  },
  error: function(data) { 
    $(this).addClass("hidden");
  }
  }); 
 }
 catch (e)
 {}
 
 });   
}

function setTempCookie(c_name,value)
{
document.cookie=c_name+ "=" +escape(value)+ "; path=/";
}

function setPageNum(ths)
{
// remember my subpage
num = $(ths).parent().parent().attr("id");
setTempCookie("zoekPagina", num );
}

function getPageNum()
{
// remember my subpage
num = getCookie("zoekPagina");
var blockName = 'ul#list';
if (num.indexOf('searchTab')>-1) { blockName = 'div#searchTab'; }
//alert("getcookie:"+num);
if (!num) 
  { num="1"; }
else
  { 
  num = num.replace('list','');
  num = num.replace('searchTab','');
  $(blockName+'1').css('display','none'); 
  $('a#linkpage1').css('fontWeight','normal');
  }
$(blockName+num).css('display','block');
$('a#linkpage'+num).css('fontWeight','bold');
$('span#currentpagenumber').html(num);
getSearchResultsForPage( 'list'+num );
//alert('set page:'+num);
deleteCookie("zoekPagina");
currentPage = num;
}

function getSearchSubpage( searchUrl, divName )

{
var xmlHttp;
try
  {  // Firefox, Opera 8.0+, Safari  
     xmlHttp=new XMLHttpRequest();  }
catch (e)
  {  // Internet Explorer  
    try
    {    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");    }
  catch (e)
    {    
      try
      {      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");      }
    catch (e)
      {      alert("Your browser does not support AJAX!");      
             return false;      }    }  }
             
  xmlHttp.onreadystatechange=function()
    {
    if(xmlHttp.readyState==4)
      {
      try
      {
      var x= document.getElementById ( divName );
      if (x)
       {
       userStr = xmlHttp.responseText;
       x.style.display='block';
       x.innerHTML = userStr;
       var s = document.getElementById ( "search-started" + divName.substring(divName.length-1) );
       if (s) { s.style.display ='none'; }
       }
      }
      catch (e)
      {}
      }
    }
    
  xmlHttp.open("GET", searchUrl,true);
  xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");                  
  xmlHttp.send( null );  
}

function suggest( searchKey )
{
 setCookie('zoektermHint', searchKey, 2);
 return true;
}

  function checkForm(form)
  {
    // validation fails if the input is blank
    if(form.freesearch.value.length<2) {
      var x =document.getElementById("textcontent");
      x.style.visibility = "visible";
      form.freesearch.focus();
      return false;
    }
  }
   
  function checkContent()
  {
  var f = document.getElementById("advancedSearch");
  if (f.contenttype.selectedIndex > 1)
   {
   f.documenttype.selectedIndex = 1;
   }
  if (f.contenttype.selectedIndex == 0)
   {
   f.documenttype.selectedIndex = 0;
   }
  return true;
  }
  
  function checkDocument()
  {
  var f = document.getElementById("advancedSearch");
  if (f.documenttype.selectedIndex > 1)
   {
   f.contenttype.selectedIndex = 1;
   }
  if (f.documenttype.selectedIndex == 0)
   {
   f.contenttype.selectedIndex = 0;
   }
  return true;
  }

function getLastSearchRequestsx()
{
	api.getContentPane().load(
		'/search/?view=Search_results',
		function()
		{
		api.reinitialise();
		}
	);
}
var api = null;
  
function getLastSearchRequests()
{
var xmlHttpls;
try
  {  // Firefox, Opera 8.0+, Safari  
     xmlHttpls=new XMLHttpRequest();  }
catch (e)
  {  // Internet Explorer  
    try
    {    xmlHttpls=new ActiveXObject("Msxml2.XMLHTTP");    }
  catch (e)
    {    
      try
      {      xmlHttpls=new ActiveXObject("Microsoft.XMLHTTP");      }
    catch (e)
      {      alert("Your browser does not support AJAX!");      
             return false;      }    }  }
             
  xmlHttpls.onreadystatechange=function()
    {
    if(xmlHttpls.readyState==4)
      {
      if (xmlHttpls.status == 200)	
      {
      try
      {
      userStr = xmlHttpls.responseText;
      var x= document.getElementById("searchToppers");
      if (x) 
        {
	x.innerHTML = userStr;
	x.style.display ='block';
	resizeWindow();
        }
      
      }
      catch (e)
      {}
      }
     }
    }
requestUrl = "/search/?view=Search_results";    
xmlHttpls.open("GET", requestUrl,true);
xmlHttpls.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");   
xmlHttpls.send( null );  
}

function getSuggestions( divName, keyWord )
{
$.ajax({
  url: '/search/?view=Verrijkt&freesearch='+keyWord,
  success: function(data) {
    $('#suggestions').html(data);
    if (data.indexOf("<li")>0)
     { 
     $('#suggestions').parent().slideDown("normal"); 
     $('#zoektip').hide(); 
     }
  }
});}

var highlightTermsIn = function(jQueryElements, terms) 

{
var wrapper = ">$1<span style='font-weight:bold;background-color:#E4F2FD'>$2</span>$3<";
for (var i = 0; i < terms.length; i++) 
      		  {
      		  j=6;
      		  var regexmatch = new RegExp("\\?");
		  while (terms[i].match(regexmatch)!=null && j>0)
		   {  
      		   terms[i] = terms[i].replace("\?" ,"");
      		   --j;
      		   }
      		  if (terms[i].length>0)
      		  {
      		  var regex = new RegExp(">([^<]*)?("+terms[i]+")([^>]*)?<","ig");  
      		  jQueryElements.each(function(i) 
        	   {  
        	   $(this).html($(this).html().replace(regex, wrapper));  
        	   });   
      		   };
      		  }  
		 }

