function formatEventDate(eventDate) {
    var convertedDate = new Date(eventDate);
    var returnString = "";

    var dateYear = convertedDate.getFullYear();
    var dateMonth = convertedDate.getMonth() + 1;
    if (dateMonth < 10) { dateMonth = "0" + dateMonth; }
    var dateDay = convertedDate.getDate();
    if (dateDay < 10) { dateDay = "0" + dateDay; }
    var dateHours = convertedDate.getHours();
    if (dateHours < 10) { dateHours = "0" + dateHours; }
    var dateMinutes = convertedDate.getMinutes();
    if (dateMinutes < 10) { dateMinutes = "0" + dateMinutes; }
    var dateSeconds = convertedDate.getSeconds();
    if (dateSeconds < 10) { dateSeconds = "0" + dateSeconds; }
    
    returnString += dateYear + "-" + dateMonth + "-" + dateDay + "%20" + dateHours + ":" + dateMinutes + ":" + dateSeconds;
    return returnString;
}

function loadSearchResults(ignoredData, httpRequest) {
    var eventData = eval(httpRequest.responseText);
    var searchResultsTable = document.getElementById("searchresults");
    var loadingMessageElement = document.getElementById("loadingmessage");

    if (searchResultsTable) {
        var searchResultsTBody = document.getElementById("searchresultstbody");
        while (searchResultsTBody.childNodes.length > 0) {
            searchResultsTBody.removeChild(searchResultsTBody.lastChild);
        }
        
        if (eventData.length) {
            for (var i = 0; i < eventData.length; i++) {
                var tableRowElement = document.createElement("tr");
                var tableCellElement = null;

                if (i % 2 == 1) {
                    tableRowElement.className = "alternating";
                }

                tableCellElement = document.createElement("td");
                if (eventData[i].moreinfo_url.length > 0) {
                    tableCellElement.innerHTML = "<a href=\"" + eventData[i].moreinfo_url + "\">" + eventData[i].shortdescription + "</a>";
                } else {                    
                    tableCellElement.innerHTML = eventData[i].shortdescription;
                }
                tableRowElement.appendChild(tableCellElement);

                tableCellElement = document.createElement("td");
                tableCellElement.innerHTML = eventData[i].location;
                tableRowElement.appendChild(tableCellElement);

                tableCellElement = document.createElement("td");
                tableCellElement.innerHTML = eventData[i].startdate;
                tableRowElement.appendChild(tableCellElement);

                tableCellElement = document.createElement("td");
                tableCellElement.innerHTML = eventData[i].enddate;
                tableRowElement.appendChild(tableCellElement);

                tableCellElement = document.createElement("td");
                tableCellElement.innerHTML = "<a href=\"tools/ical.cfm?startTime={ts%20%27" + formatEventDate(eventData[i].startdate) + "%27}&endTime={ts%20%27" + formatEventDate(eventData[i].enddate) + "%27}&subject=" + eventData[i].shortdescription + "\" class=\"eventoutlooklink\">Add to Outlook Calendar</a>";
                tableRowElement.appendChild(tableCellElement);

                tableCellElement = document.createElement("td");
                tableCellElement.innerHTML = eventData[i].eventtype;
                tableRowElement.appendChild(tableCellElement);

                searchResultsTBody.appendChild(tableRowElement);
            }
        }
        loadingMessageElement.style.display = "none";
        searchResultsTable.style.display = "block";
    }
}

function eventSearchFormSubmit() {
    var formElement = document.getElementById("eventsearchform");
    var searchResultsTable = document.getElementById("searchresults");
    var loadingMessageElement = document.getElementById("loadingmessage");
    if (formElement) {
        searchResultsTable.style.display = "none";
        loadingMessageElement.style.display = "block";
        startAjaxPOSTRequestUsingForm("eventsearch", "eventsearchresults.cfm", formElement, null, loadSearchResults);
    }
}
