/**********************************************************************
Reacties tonen die bij een marker of nieuwsbericht horen
sType = news / markers
iId = id van het nieuwsbericht of de marker
**********************************************************************/
function showReactions(iId){
        
    // De inhoud van de newsReactions/markersReactions div alleen bijwerken als er een iId is opgegeven
    if(iId){
    
        // Via een AJAX request de reacties ophalen uit de database    
        reactionsXML = makeRequest(sBaseUrl + 'ajax/reactions.xml.php?id=' + iId);
        
        // Controleren of er reacties zijn, als dat niet zo is staat er in de XML output een tag met de naam 'fout'
        if(checkForTag(reactionsXML.getElementsByTagName('fout')[0])){
            text     = reactionsXML.getElementsByTagName('fout')[0].firstChild.data;

            // Als er geen reacties zijn wordt er gewoon niks weergegeven
            document.getElementById('reactions').innerHTML = '<h2><img class="png" src="images/bol_bg_fefefe.png"/>Reageer</h2>';
        // Als er wel reacties zijn
        } else {
            
            aResults     = reactionsXML.getElementsByTagName('reaction');
            
            sResults = '';
            
            for (i=0; i<aResults.length; i++) {
                naam    = aResults[i].getElementsByTagName('naam')[0].firstChild.data;
                email    = aResults[i].getElementsByTagName('email')[0].firstChild.data;
                plaats    = aResults[i].getElementsByTagName('plaats')[0].firstChild.data;
                tijdstip= aResults[i].getElementsByTagName('tijdstip')[0].firstChild.data;
                reactie    = aResults[i].getElementsByTagName('reactie')[0].firstChild.data;
                
                // de content voor deze reactie formatten
                sResults += '<div class="reaction">';
                sResults += '<span class="number">[' + (i+1) + ']</span> ' + reactie + '<br/>';
                sResults += '<span class="small">Geplaatst: ' + tijdstip + '</span><span class="streepje">|</span>';
                sResults += '<span class="small">Door: ' + naam + '</span><span class="streepje">|</span>';
                sResults += '<span class="small">Uit: ' + plaats + '</span>';
                sResults += '</div>';
            }
            
            // De reacties formatten
            sContent = '<h2><img class="png" src="images/bol_bg_fefefe.png"/>Reacties</h2>';
            sContent += sResults;
            
            // De reacties in de newsReactions/markersReactions div zetten
            document.getElementById('reactions').innerHTML = sContent;
            
        }
    } // if iId
}


/**********************************************************************
Een reactie op een nieuwsbericht/marker opslaan
sType = news/markers
**********************************************************************/
function postReaction(oForm){
    
    // Alle velden op het formulier die gecheckt moeten worden
    var reactie  = document.getElementById('reactie');
    var naam  = document.getElementById('naam');
    var email = document.getElementById('email');
    var plaats  = document.getElementById('plaats');
    
    var iError = 0;
    
    // Alle "errors uitzetten"
    reactie.className = '';
    naam.className = '';
    email.className = '';
    plaats.className = '';
    
    // Reactie
    if (reactie.value == ''){
        reactie.className = 'error';
        if (iError == 0) reactie.focus();
        iError++;
    }

    // Naam
    if (naam.value == ''){
        naam.className = 'error';
        if (iError == 0) naam.focus();
        iError++;
    }
    
    // E-mail (er moet een punt en een apestaartje inzitten)
    if ((email.value.indexOf(".") == -1) || (email.value.indexOf("@") == -1)){
        email.className = 'error';
        if (iError == 0) email.focus();
        iError++;
    }
    
    // Plaats
    if (plaats.value == ''){
        plaats.className = 'error';
        if (iError == 0) plaats.focus();
        iError++;
    }

    // Als alles in orde is
    if (iError == 0){

        // De schizzel opslaan
        var oRequest = new cRequest();
        sResponse = oRequest.sendForm(oForm).responseText;
        if(sResponse != 'Opgeslagen'){
            alert(sResponse);
        } else {
            // Het formulier leeg maken, zodat de volgende reactie ingevuld kan worden
            reactie.value = '';
            naam.value = '';
            email.value = '';
            plaats.value = '';
        }
        
        // De reacties opnieuw inladen
        var iMarkersId = parseInt(document.getElementById('marker_id').value);
        showReactions(iMarkersId);
        
    } else {
        alert('Vul a.u.b. alle velden in.');
    }
}
