// locaties van ajax based files
var baseUrl="/shared/ajax/";
var baseTextUrl=baseUrl+"text/";
var baseXMLUrl=baseUrl+"xml/";

// vaste variabelen voor aanroep public maken:
var fetchUrlData='';

// publieke spreker variabele om in response function een call naar sprekerInfo te doen : 
var cachedSprekerId=0;

// div id's om data in weg te schrijven : 

var contentDiv='div_content_hoofdscherm';
var sprekerFotoDiv='div_content_sprekersinformatie_foto';
var sprekerNaamDiv='div_content_sprekersinformatie';
var sprekerInfoDiv='div_content_sprekersinformatie_tekst';


// vars om uitgebreid zoeken te begeleiden
var searchbase=1; // standaard beginnen bij resultaat 1
var searchrange=10; // resultatenlijst splitsen per 10 resultaten
var searchurl=''; // de url waarnaar gezocht wordt. Nodig ivm aanpasbaarheid van searchresults pagina's

// functie om vanuit pagina de vaste variabelen te zetten
function setFetchUrlData(data)
{
    fetchUrlData=data;
}

// functie die de div id's en enkele vars aanpast aan pro omgeving.
function setPro()
{
    baseTextUrl="/shared/pro/ajax/text/";
    contentDiv='mainScrollContent';
    //fixme:
    sprekerFotoDiv='div_content_sprekersinformatie_foto';
    sprekerNaamDiv='div_content_sprekersinformatie';
    sprekerInfoDiv='div_content_sprekersinformatie_tekst';
}

/* main content inladen (verslag per spreker) */
function loadVerslagPerSpreker()
{
    sendRequest(baseTextUrl+'compleet.text.php'+fetchUrlData+'type=perspreker',catchVerslagPerSpreker);
}
function catchVerslagPerSpreker(req)
{
    var text = req.responseText;
    //alert(document.getElementById('div_content_hoofdscherm').innerHTML);
    document.getElementById('div_content_hoofdscherm').innerHTML=text;
    //document.getElementById(contentDiv).innerHTML=text;

}

/* verslag per agendapunt inladen */
function loadVerslagPerAgendapunt()
{
    sendRequest(baseTextUrl+'compleet.text.php'+fetchUrlData+'type=peragendapunt',catchVerslagPerAgendapunt);
}
function catchVerslagPerAgendapunt(req)
{
    var text = req.responseText;
    document.getElementById(contentDiv).innerHTML=text;
}

/* enkel agendapunt inladen */
function loadAgendaPunt(agendaPunt)
{
    sendRequest(baseTextUrl+'compleet.text.php'+fetchUrlData+'type=agendapunt&agendapunt='+agendaPunt,catchAgendaPunt);
}

function catchAgendaPunt(req)
{
    var text= req.responseText;
    document.getElementById(contentDiv).innerHTML=text;
}

function loadStructuurAgenda(notulenID)
{
    //sendRequest(baseTextUrl+'structuur.text.php'+fetchUrlData+'notulenID='+notulenID,catchStructuurAgenda);
    sendRequest(baseTextUrl+'compleet.text.php'+fetchUrlData+'type=structuur&notulenID='+notulenID,catchAgendaPunt);
}

function catchStructuurAgenda(req)
{
    var text= req.responseText;
    document.getElementById(contentDiv).innerHTML=text;
}


function loadSearchResults(queryString)
{
    sendRequest(baseTextUrl+'zoeken.text.php'+fetchUrlData+'queryString='+queryString,catchSearchResults);
}

function catchSearchResults(req)
{
    var text = req.responseText;
    document.getElementById(contentDiv).innerHTML=text;
}


/* Schriftelijk verslag inladen */
function loadSchriftelijkVerslag()
{
    sendRequest(baseTextUrl+'docs.text.php'+fetchUrlData,catchSchriftelijkVerslag);
}
function catchSchriftelijkVerslag(req)
{
    var text = req.responseText;
    document.getElementById(contentDiv).innerHTML=text;
}

/* SprekerVerslag inladen (alle opmerkingen van 1 spreker) */
function loadSprekerVerslag(sprekerId)
{
    cachedSprekerId=sprekerId;
    sendRequest(baseTextUrl+'sprekerVerslag.text.php'+fetchUrlData+'Spreker='+sprekerId,catchSprekerVerslag);
}
function catchSprekerVerslag(req)
{
    var text = req.responseText;
    document.getElementById(contentDiv).innerHTML=text;
    
    // roep sprekerInfo aan : 
    loadSprekerInfo(cachedSprekerId);
}

/* SprekerInfo in sprekerInfo scherm inladen */
function loadSprekerInfo(sprekerId)
{
    sendRequest(baseXMLUrl+'sprekerInfo.xml.php'+fetchUrlData+'Spreker='+sprekerId,catchSprekerInfo);
}
function catchSprekerInfo(req)
{
    var returnXML = req.responseXML;
    if(!returnXML) return;

    // vars uit xml lezen : 
    curNaam=returnXML.getElementsByTagName('naam')[0].firstChild.nodeValue;
	
    if(returnXML.getElementsByTagName('email').length>0 &&
	returnXML.getElementsByTagName('email')[0].firstChild)
        curEmail=returnXML.getElementsByTagName('email')[0].firstChild.nodeValue;
    else curEmail='';
    
	if(returnXML.getElementsByTagName('meerinfo').length>0  &&
	returnXML.getElementsByTagName('meerinfo')[0].firstChild)
	curMeerInfo=returnXML.getElementsByTagName('meerinfo')[0].firstChild.nodeValue;
    else curMeerInfo='';
    
	if(returnXML.getElementsByTagName('foto').length>0 &&
	returnXML.getElementsByTagName('foto')[0].firstChild)
	curFoto=returnXML.getElementsByTagName('foto')[0].firstChild.nodeValue;
    else curFoto='';
    
    // sprekerDivs bijwerken:
    document.getElementById(sprekerNaamDiv).innerHTML=curNaam;
    if(curFoto!='')
	document.getElementById(sprekerFotoDiv).innerHTML='<img src="/pasfoto/'+curFoto+'" height="74"/>';
    else
	document.getElementById(sprekerFotoDiv).innerHTML='';
	    
    // infoDiv vullen
    curInfo='';
    if(curEmail!='')
	curInfo = '<a href="mailto:'+curEmail+'">verzend email</a>';
    if(curMeerInfo!='')
    {
	if(curInfo!='') curInfo+=' | ';
	curInfo += '<a href="'+curMeerInfo+'" target="_blank">meer info</a>'
    }
	
    if(curInfo!='')
	document.getElementById(sprekerInfoDiv).innerHTML=curInfo;
    else
	document.getElementById(sprekerInfoDiv).innerHTML='';

}


function loadExtendedSearchResults(queryString)
{
    searchbase=1;
    setSearchBusy(true);
    
    Fsearchterm=document.getElementById('keyword').value;
    searchcomObj=document.getElementById('comm');
    Fsearchcom=searchcomObj.options[searchcomObj.selectedIndex].value;
    
    Fbegindag=document.getElementById('begindag').options[document.getElementById('begindag').selectedIndex].value;
    Fbeginmaand=document.getElementById('beginmaand').options[document.getElementById('beginmaand').selectedIndex].value;
    Fbeginjaar=document.getElementById('beginjaar').options[document.getElementById('beginjaar').selectedIndex].value;
	    
    Feinddag=document.getElementById('einddag').options[document.getElementById('einddag').selectedIndex].value;
    Feindmaand=document.getElementById('eindmaand').options[document.getElementById('eindmaand').selectedIndex].value;
    Feindjaar=document.getElementById('eindjaar').options[document.getElementById('eindjaar').selectedIndex].value;
	    
    FCommissie=document.getElementById('Commissie').value;
    FVergadering=document.getElementById('Vergadering').value;

    // sorttype achterhalen 
    sortr=document.getElementById('sortrelevance').checked;
    sortd=document.getElementById('sortdate').checked;
    if(sortr)
	sortstr='relevance';
    else if(sortd)
	sortstr='date';
	

    if(Fsearchterm.length==0)
    {
    	alert('geef eerst een zoekterm op');
	setSearchBusy(false); 
    }
    else
    {
	queryString='?q='+Fsearchterm+'&comm='+Fsearchcom+'&begindag='+Fbegindag+'&beginmaand='+Fbeginmaand+'&beginjaar='+Fbeginjaar;
	queryString+='&einddag='+Feinddag+'&eindmaand='+Feindmaand+'&eindjaar='+Feindjaar;
	queryString+='&sort='+sortstr;
	queryString+='&Commissie='+FCommissie+'&Vergadering='+FVergadering;
	searchurl=queryString;
	queryString+='&searchbase='+searchbase+'&searchrange='+searchrange;
	sendRequest(baseTextUrl+'uitgebreidzoeken.text.php'+queryString,catchExtendedSearchResults);
	//alert(queryString);
    }
    
    return false;
}

function catchExtendedSearchResults(req)
{
    var text = req.responseText;
    document.getElementById('search_results').innerHTML=text;
    
    setSearchBusy(false);
    showSearchResults(true);
}

// uitgebreid zoeken helper functions : 
function setSearchBusy(sType)
{
    sbElm=document.getElementById('search_busy');
	sbElm2=document.getElementById('container_start2');
	
    if(sType)
    {
	// search is busy
	// disable results div : 
	showSearchResults(false);
	sbElm.style.visibility='visible';
	sbElm.style.display='block';
	sbElm2.style.visibility='visible';
	sbElm2.style.display='block';
	//document.getElementById('zoekbtn').disabled=true;
    }
    else
    {
	// search is finished
	sbElm.style.visibility='hidden';
	sbElm.style.display='none';
	sbElm2.style.visibility='hidden';
	sbElm2.style.display='none';
	document.getElementById('zoekbtn').disabled=false;
    }
    
}
function showSearchResults(sType)
{
    sElm=document.getElementById('search_results');
	sElm2=document.getElementById('container_start2');
    if(sType)
    {
	sElm.style.visibility='visible';
	sElm.style.display='block';
	
	sElm2.style.visibility='visible';
	sElm2.style.display='block';
    }
    else
    {
	sElm.style.visibility='hidden';
	sElm.style.display='none';
	
	sElm2.style.visibility='hidden';
	sElm2.style.display='none';
    }
}
function parseNextPage()
{
    setSearchBusy(true);
    searchbase+=searchrange;
    queryString=searchurl;
    queryString+='&searchbase='+searchbase+'&searchrange='+searchrange;
    sendRequest(baseTextUrl+'uitgebreidzoeken.text.php'+queryString,catchExtendedSearchResults);
}
function parsePreviousPage()
{
    setSearchBusy(true);
    searchbase-=searchrange;
    queryString=searchurl;
    queryString+='&searchbase='+searchbase+'&searchrange='+searchrange;
    sendRequest(baseTextUrl+'uitgebreidzoeken.text.php'+queryString,catchExtendedSearchResults);
}

function sendTaf(fname,fmail,tname,tmail,msg,apId,descr){
    queryString=fetchUrlData+'fname='+fname+'&fmail='+fmail+'&tname='+tname+'&tmail='+tmail+'&msg='+escape(msg)+'&apId='+escape(apId)+'&descr='+descr;
    cached=false;
    sendRequest(baseTextUrl+'tellafriend.php'+queryString,catchSendTaf);
}

function catchSendTaf(req)
{
    cached=true;
    var returnText = req.responseText;
    if(!returnText) return;
    
    alert(returnText);
    closeTaF();
    
    
}