function updateHeaderState(state, givenName) {
    // Ensure that the headerLoggedInState and headerLoggedOutState have values
    if(headerLoggedInState == undefined
        || headerGuestLoggedInState == undefined
        || headerLoggedOutState == undefined
        || headerRemaining == undefined) {
        return;
    }
    
	// Get the containing div
	var accountControlsElement = document.getElementById('accountControls');
	
	var accountControlsElementInnerHTML = '<ul>';
	
	if(state == 'loggedIn') {
	    accountControlsElementInnerHTML += headerLoggedInState.replace('{$givenName}', givenName);
	} else if(state == 'guestLoggedIn') {
	    accountControlsElementInnerHTML += headerGuestLoggedInState;
	} else if(state == 'loggedOut') {
	    accountControlsElementInnerHTML += headerLoggedOutState;
	}
	
	accountControlsElementInnerHTML += headerRemaining;
	accountControlsElementInnerHTML += '</ul>';
	
	accountControlsElement.innerHTML = accountControlsElementInnerHTML;
}


function saveToCoffeeTable(magazineId) {
    // The URL to submit to 
    var url = 'index.php?do=saveToCoffeeTableAjax&id=' + magazineId;
    
    var dsSaveToCoffeeTableResult = new Spry.Utils.loadURL('GET', url, true, saveToCoffeeTableCallBack);
}

function saveToCoffeeTableCallBack(request) {
    // if the responseText starts with index.php then redirect to the response text;
    if(request.xhRequest.responseText.indexOf('index.php') == 0) {
        window.location = request.xhRequest.responseText
    } else {
        // Get the element in which to display the result
        var saveToCoffeeTableResultWrapperElement = document.getElementById('saveToCoffeeTableResultWrapper');
        
        var closeDivString = '<a href="#" onclick="javascript: closeSaveToCoffeeTableMessage(); return false;" id="coffeeCloseLink">x</a>';
        saveToCoffeeTableResultWrapperElement.innerHTML = closeDivString + request.xhRequest.responseText;
        
        saveToCoffeeTableResultWrapperElement.className = 'messagesWrapper';
    }
}

function closeSaveToCoffeeTableMessage() {
    // Get the element in which to display the result
    var saveToCoffeeTableResultWrapperElement = document.getElementById('saveToCoffeeTableResultWrapper');
    saveToCoffeeTableResultWrapperElement.className = 'messagesWrapperHidden';
    saveToCoffeeTableResultWrapperElement.innerHTML = '';
}
