var xmlHTTPObject = null;
  
var cache = [];
var shownJobId = -1;

function addToCache(jobId, jobLink, title, description, company, companyLink, province, provinceLink, experience, experienceLink, fulltime, fulltimeLink)
{
  var job = new Object();
  job.jobId = jobId;
  job.jobLink = jobLink;
  job.title = title;
  job.description = description;
  job.company = company;
  job.companyLink = companyLink;
  job.province = province;
  job.provinceLink = provinceLink;
  job.experience = experience;
  job.experienceLink = experienceLink;
  job.fulltime = fulltime;
  job.fulltimeLink = fulltimeLink;
  cache[jobId] = job;
}

function reloadHoverBoxContent(jobId, x)
{
  if(!cache[jobId] || cache[jobId]=='undefined')
  {
    xmlHTTPObject = createHTTPHandler();
    xmlHTTPObject.open('GET', 'http://juridica.nl/hover-box-ajax/'+jobId, true);
    xmlHTTPObject.onreadystatechange=function() {
        if (xmlHTTPObject.readyState==4) {
            var response = xmlHTTPObject.responseXML;
            var root = response.documentElement;
            var jobs = root.getElementsByTagName('job_opening');
            
            var title = '';
            var description = '';
            var company = '';
            var province = '';
            var experience = '';
            var fulltime = '';
            
            var hover_information = '';
            
            for(i = 0; i < jobs.length; i++)
            {
                jobLink = getNodeValue(jobs.item(i), 'job_link');
                title = getNodeValue(jobs.item(i), 'title');
                description = getNodeValue(jobs.item(i), 'description');
                company = getNodeValue(jobs.item(i), 'company');
                companyLink = getNodeValue(jobs.item(i), 'company_link');
                province = getNodeValue(jobs.item(i), 'province');
                provinceLink = getNodeValue(jobs.item(i), 'province_link');
                experience = getNodeValue(jobs.item(i), 'experience');
                experienceLink = getNodeValue(jobs.item(i), 'experience_link');
                fulltime = getNodeValue(jobs.item(i), 'contract');
                fulltimeLink = getNodeValue(jobs.item(i), 'contract_link');
                addToCache(jobId, jobLink, title, description, company, companyLink, province, provinceLink, experience, experienceLink, fulltime, fulltimeLink);
                
                if(company!='')
                {
                  company = '<a href="'+companyLink+'">'+company+'</a>';
                }
                
                if(province!='')
                {
                  province = '<a href="'+provinceLink+'">'+province+'</a>';
                }
                
                if(experience!='')
                {
                  experience = '<a href="'+experienceLink+'">'+experience+'</a>';
                }
                
                if(fulltime!='')
                {
                  fulltime = '<a href="'+fulltimeLink+'">'+fulltime+'</a>';
                }
                
                hover_information = '<h2>'+title+'</h2><span><a href="javascript:hideHoverBox(\'block_hoverinformation\');"><img src="/images/button_hoverinformation_cross.gif" onmouseover="this.src=\'/images/button_hoverinformation_cross_h.gif\';" onmouseout="this.src=\'/images/button_hoverinformation_cross.gif\';" /></a></span>';
                hover_information += '<p>'+description+' <a href="'+jobLink+'">lees meer &raquo;</a></p>';
                hover_information += '<ul>';
                
                hover_information += '<li>- '+company+'</li>';
                hover_information += '<li>- '+province+'</li>';
                if(experience!='Niet nader bepaald')
                  hover_information += '<li>- '+experience+'</li>';
                if(fulltime!='Niet nader bepaald')
                  hover_information += '<li>- '+fulltime+'</li>';
                hover_information += '</ul>';
                
                document.getElementById('hover_information_content').innerHTML=hover_information;
            }
        }
    }
    xmlHTTPObject.send(null);
  }
  else
  {
    job = cache[jobId];
    jobLink = job.jobLink;
    title = job.title;
    description = job.description;
    company = job.company;
    companyLink = job.companyLink;
    province = job.province;
    provinceLink = job.provinceLink;
    experience = job.experience;
    experienceLink = job.experienceLink;
    fulltime = job.fulltime;
    fulltimeLink = job.fulltimeLink;
    
    if(company!='')
    {
      company = '<a href="'+companyLink+'">'+company+'</a>';
    }
    
    if(province!='')
    {
      province = '<a href="'+provinceLink+'">'+province+'</a>';
    }
    
    if(experience!='')
    {
      experience = '<a href="'+experienceLink+'">'+experience+'</a>';
    }
    
    if(fulltime!='')
    {
      fulltime = '<a href="'+fulltimeLink+'">'+fulltime+'</a>';
    }
    
    hover_information = '<h2>'+title+'</h2><span><a href="javascript:hideHoverBox(\'block_hoverinformation\');"><img src="/images/button_hoverinformation_cross.gif" onmouseover="this.src=\'/images/button_hoverinformation_cross_h.gif\';" onmouseout="this.src=\'/images/button_hoverinformation_cross.gif\';" /></a></span>';
    hover_information += '<p>'+description+' <a href="'+jobLink+'">lees meer &raquo;</a></p>';
    hover_information += '<ul>';
    hover_information += '<li>- '+company+'</li>';
    hover_information += '<li>- '+province+'</li>';
    if(experience!='Niet nader bepaald')
      hover_information += '<li>- '+experience+'</li>';
    if(fulltime!='Niet nader bepaald')
      hover_information += '<li>- '+fulltime+'</li>';
    hover_information += '</ul>';
    
    document.getElementById('hover_information_content').innerHTML=hover_information;
  }
  
  //if(shownJobId!=jobId)
  {
    positionHoverBox('block_hoverinformation',x,posY);
  }
  
  shownJobId=jobId;
  document.getElementById('block_hoverinformation').className='';
}

function reloadHoverBoxContentMirror(jobId, x)
{
  if(!cache[jobId] || cache[jobId]=='undefined')
  {
    xmlHTTPObject = createHTTPHandler();
    xmlHTTPObject.open('GET', 'http://juridica.nl/hover-box-ajax/'+jobId, true);
    xmlHTTPObject.onreadystatechange=function() {
        if (xmlHTTPObject.readyState==4) {
            var response = xmlHTTPObject.responseXML;
            var root = response.documentElement;
            var jobs = root.getElementsByTagName('job_opening');
            
            var title = '';
            var description = '';
            var company = '';
            var province = '';
            var experience = '';
            var fulltime = '';
            
            var hover_information = '';
            
            for(i = 0; i < jobs.length; i++)
            {
                jobLink = getNodeValue(jobs.item(i), 'job_link');
                title = getNodeValue(jobs.item(i), 'title');
                description = getNodeValue(jobs.item(i), 'description');
                company = getNodeValue(jobs.item(i), 'company');
                companyLink = getNodeValue(jobs.item(i), 'company_link');
                province = getNodeValue(jobs.item(i), 'province');
                provinceLink = getNodeValue(jobs.item(i), 'province_link');
                experience = getNodeValue(jobs.item(i), 'experience');
                experienceLink = getNodeValue(jobs.item(i), 'experience_link');
                fulltime = getNodeValue(jobs.item(i), 'contract');
                fulltimeLink = getNodeValue(jobs.item(i), 'contract_link');
                addToCache(jobId, jobLink, title, description, company, companyLink, province, provinceLink, experience, experienceLink, fulltime, fulltimeLink);
                
                if(company!='')
                {
                  company = '<a href="'+companyLink+'">'+company+'</a>';
                }
                
                if(province!='')
                {
                  province = '<a href="'+provinceLink+'">'+province+'</a>';
                }
                
                if(experience!='')
                {
                  experience = '<a href="'+experienceLink+'">'+experience+'</a>';
                }
                
                if(fulltime!='')
                {
                  fulltime = '<a href="'+fulltimeLink+'">'+fulltime+'</a>';
                }
                
                hover_information = '<h2>'+title+'</h2><span><a href="javascript:hideHoverBox(\'block_hoverinformation\');"><img src="/images/button_hoverinformation_cross.gif" onmouseover="this.src=\'/images/button_hoverinformation_cross_h.gif\';" onmouseout="this.src=\'/images/button_hoverinformation_cross.gif\';" /></a></span>';
                hover_information += '<p>'+description+' <a href="'+jobLink+'">lees meer &raquo;</a></p>';
                hover_information += '<ul>';
                hover_information += '<li>- '+company+'</li>';
                hover_information += '<li>- '+province+'</li>';
                if(experience!='Niet nader bepaald')
                  hover_information += '<li>- '+experience+'</li>';
                if(fulltime!='Niet nader bepaald')
                  hover_information += '<li>- '+fulltime+'</li>';
                hover_information += '</ul>';
                
                document.getElementById('hover_information_content').innerHTML=hover_information;
            }
        }
    }
    xmlHTTPObject.send(null);
  }
  else
  {
    job = cache[jobId];
    jobLink = job.jobLink;
    title = job.title;
    description = job.description;
    company = job.company;
    companyLink = job.companyLink;
    province = job.province;
    provinceLink = job.provinceLink;
    experience = job.experience;
    experienceLink = job.experienceLink;
    fulltime = job.fulltime;
    fulltimeLink = job.fulltimeLink;
    
    if(company!='')
    {
      company = '<a href="'+companyLink+'">'+company+'</a>';
    }
    
    if(province!='')
    {
      province = '<a href="'+provinceLink+'">'+province+'</a>';
    }
    
    if(experience!='')
    {
      experience = '<a href="'+experienceLink+'">'+experience+'</a>';
    }
    
    if(fulltime!='')
    {
      fulltime = '<a href="'+fulltimeLink+'">'+fulltime+'</a>';
    }
    
    hover_information = '<h2>'+title+'</h2><span><a href="javascript:hideHoverBox(\'block_hoverinformation\');"><img src="/images/button_hoverinformation_cross.gif" onmouseover="this.src=\'/images/button_hoverinformation_cross_h.gif\';" onmouseout="this.src=\'/images/button_hoverinformation_cross.gif\';" /></a></span>';
    hover_information += '<p>'+description+' <a href="'+jobLink+'">lees meer &raquo;</a></p>';
    hover_information += '<ul>';
    hover_information += '<li>- '+company+'</li>';
    hover_information += '<li>- '+province+'</li>';
    if(experience!='Niet nader bepaald')
      hover_information += '<li>- '+experience+'</li>';
    if(fulltime!='Niet nader bepaald')
      hover_information += '<li>- '+fulltime+'</li>';
    hover_information += '</ul>';
    
    document.getElementById('hover_information_content').innerHTML=hover_information;
  }
  
  //if(shownJobId!=jobId)
  {
    positionHoverBox('block_hoverinformation',x,posY);
  }
  
  shownJobId=jobId;
  document.getElementById('block_hoverinformation').className='mirror';
}

// used for positioning hoverbox
document.onmousemove = getMousePosition;
var posX = 0;
var pasY = 0;
