﻿        function changeTrack(trackID)
        {
            //year = $("#ctl00_mainContent_hdnStartYear").val();
            //month = $("#ctl00_mainContent_hdnStartMonth").val();
            //day = $("#ctl00_mainContent_hdnStartDate").val();
            
            year = $("#ctl00_mainContent_hdnTodayYear").val();
            month = $("#ctl00_mainContent_hdnTodayMonth").val();
            day = $("#ctl00_mainContent_hdnTodayDay").val();
            
            dateString = year + "-" + month + "-" + day;
            $(".timetable_row").each(function(){
                $(this).css("display", "none");
            });
            
            $(".timetable_loader").css("display", "");
            hideButtons();
            
            $("#ctl00_mainContent_hdnTrackID").val(trackID);
            
            removeLinkClasses();
            if (trackID == "1")
            {
                $("#ctl00_mainContent_hypNationalFull").addClass("selected");
                $("#ctl00_mainContent_pnlArrow").attr("class", "event-selector-arrow c-national-full");
            }
            else if (trackID == "2")
            {
                $("#ctl00_mainContent_hypClub").addClass("selected");
                $("#ctl00_mainContent_pnlArrow").attr("class", "event-selector-arrow c-club");
            }
            
            $.get("AJAX/Timetable.xml.aspx", {s: dateString, t: trackID}, dateDataReceived);
            
        }
        
        function removeLinkClasses()
        {
            $("#ctl00_mainContent_hypNationalFull").removeClass("selected");
            $("#ctl00_mainContent_hypClub").removeClass("selected");
            $("#ctl00_mainContent_pnlArrow").attr("class", "");
        }
        
        
        function getNextWeek()
        {            
            //year = $("#ctl00_mainContent_hdnStartYear").val();
            //month = $("#ctl00_mainContent_hdnStartMonth").val();
            //day = $("#ctl00_mainContent_hdnStartDate").val();
            
            //nextDate = new Date( year, month, day );
            //nextDate.setDate(nextDate.getDate() + 7);
            
            //dateString = nextDate.getFullYear() + "-" + nextDate.getMonth() + "-" + nextDate.getDate();
            dateString = $("#ctl00_mainContent_hdnNextWeek").val();
            
            $(".timetable_row").each(function(){
                    $(this).css("display", "none");
            });
            $(".timetable_loader").css("display", "");
            hideButtons();
            
            trackID = $("#ctl00_mainContent_hdnTrackID").val();
            
            //alert("Requesting data from: " + dateString + "\n\nTrack: " + trackID);
            
            $.get("AJAX/Timetable.xml.aspx", { s: dateString, t: trackID}, dateDataReceived);
        }
        
        
        function getPrevWeek()
        {
            //year = $("#ctl00_mainContent_hdnStartYear").val();
            //month = $("#ctl00_mainContent_hdnStartMonth").val();
            //day = $("#ctl00_mainContent_hdnStartDate").val();
            
            //prevDate = new Date( year, month, day );
            //prevDate.setDate(prevDate.getDate() - 7);
            
            //dateString = prevDate.getFullYear() + "-" + prevDate.getMonth() + "-" + prevDate.getDate();
            dateString = $("#ctl00_mainContent_hdnPrevWeek").val();
            
            $(".timetable_row").each(function(){
                    $(this).css("display", "none");
            });
            $(".timetable_loader").css("display", "");
            hideButtons();
            
            trackID = $("#ctl00_mainContent_hdnTrackID").val();
            
            //alert("Requesting data from: " + dateString + "\n\nTrack: " + trackID);
            
            $.get("AJAX/Timetable.xml.aspx", { s: dateString, t: trackID }, dateDataReceived);
        }
        
        function hideButtons()
        {
            $("#ctl00_mainContent_prevButton").css("display", "none");
            $("#ctl00_mainContent_nextButton").css("display", "none");
            $("#ctl00_mainContent_pnlNoData").css("display", "none");
        }
        
        function dateDataReceived(xml)
        {            
            if ($(xml).filter('error').length > 0)
            {
                // Error
                alert("Error");
            }
            else
            {
               
                
                if ($(xml).find('day').length == 0)
                {
                    // No data.
                    $("#ctl00_mainContent_pnlNoData").css("display", "block");
                }
                else
                {
                    $("#ctl00_mainContent_pnlNoData").css("display", "none");
                }
                
                $(xml).find('day').each(function(){
                    
                    var index = $(this).attr("index");
                    var date = $(this).attr("dayOfMonth");
                    var month = $(this).attr("month");
                    var day = $(this).attr("dayOfWeek");
                    var today = $(this).attr("today");
                    
                    $("#tr_day" + index).css("display", "");
                    
                    $("#day" + index + "_date").removeClass();
                    $("#day" + index + "_date").addClass("date d-" + date);
                    
                    $("#day" + index + "_day").removeClass();
                    $("#day" + index + "_day").addClass("day d-" + day);
                    
                    $("#day" + index + "_month").removeClass();
                    $("#day" + index + "_month").addClass("month m-" + month);
                    
                    $("#datebox_" + index).removeClass("today");
                    
                    if (today == "true")
                    {
                        $("#datebox_" + index).addClass("today");
                    }
                    
                    
                    // Morning
                    var css = $(this).find('morning').find('cssClass').text();
                    var name = $(this).find('morning').find('name').text();
                    var url = $(this).find('morning').find('url').text();
                    var fullName = $(this).find('morning').find('fullName').text();
                    var spaces = $(this).find('morning').find('spaceString').text();
                    
                    var div = $("#td_day" + index + "_morning");
                    
                    div.removeClass();
                    div.addClass("contentcell " + css);
                    //div.html("<p class='eventtitle'><a href=\""+ url + "\">" + name + "</a></p>" +
                    //    "<p class='eventspaces'>" + spaces + "</p>");
                    div.html("<p class='eventtitle'>" + fullName + "</p>" +
                        "<p class='eventspaces'>" + spaces + "</p>");
                        
                        
                    // Afternoon
                    css = $(this).find('afternoon').find('cssClass').text();
                    name = $(this).find('afternoon').find('name').text();
                    url = $(this).find('afternoon').find('url').text();
                    fullName = $(this).find('afternoon').find('fullName').text();
                    spaces = $(this).find('afternoon').find('spaceString').text();
                    
                    div = $("#td_day" + index + "_afternoon");
                    
                    div.removeClass();
                    div.addClass("contentcell " + css);
                    //div.html("<p class='eventtitle'><a href=\""+ url + "\">" + name + "</a></p>" +
                    //    "<p class='eventspaces'>" + spaces + "</p>");
                    div.html("<p class='eventtitle'>" + fullName + "</p>" +
                        "<p class='eventspaces'>" + spaces + "</p>");
                        
                        
                        
                    // Evening
                    css = $(this).find('evening').find('cssClass').text();
                    name = $(this).find('evening').find('name').text();
                    url = $(this).find('evening').find('url').text();
                    fullName = $(this).find('evening').find('fullName').text();
                    spaces = $(this).find('evening').find('spaceString').text();
                    
                    div = $("#td_day" + index + "_evening");
                    
                    div.removeClass();
                    div.addClass("contentcell " + css);
                    //div.html("<p class='eventtitle'><a href=\""+ url + "\">" + name + "</a></p>" +
                    //    "<p class='eventspaces'>" + spaces + "</p>");
                    div.html("<p class='eventtitle'>" + fullName + "</p>" +
                        "<p class='eventspaces'>" + spaces + "</p>");

                });
                
                
                $("#ctl00_mainContent_hdnStartYear").val($(xml).find('thisWeek').attr('year'));
                $("#ctl00_mainContent_hdnStartMonth").val($(xml).find('thisWeek').attr('month'));
                $("#ctl00_mainContent_hdnStartDate").val($(xml).find('thisWeek').attr('date'));
                
                trackID = $("#ctl00_mainContent_hdnTrackID").val();
                
                // Next week.
                if ($(xml).find('nextWeek').attr('valid') == "no")
                {
                    // No next week!
                    // Don't re-enable the links.
                    $("#ctl00_mainContent_nextButton").css("display", "none");
                }
                else
                {
                    // next week!
                    var nextWeek = $(xml).find('nextWeek').attr('year') + "-" +
                                $(xml).find('nextWeek').attr('month') + "-" +
                                $(xml).find('nextWeek').attr('date');
                                
                    $("#ctl00_mainContent_nextButton").attr('href', "Whats-On.aspx?start=" + nextWeek +
                                "&track=" + trackID);
                    $("#ctl00_mainContent_hdnNextWeek").val(nextWeek);
                    
                    
                    // And re-enable the link.
                    $("#buttons").css("display", "");
                    $("#ctl00_mainContent_nextButton").css("display", "");
                    
                }
                
                
                // Last week.
                if ($(xml).find('lastWeek').attr('valid') == "no")
                {
                    // No last week.
                    $("#ctl00_mainContent_prevButton").css("display", "none");
                }
                else
                {
                    
                    // We can go back a week.
                    var lastWeek = $(xml).find('lastWeek').attr('year') + "-" +
                        $(xml).find('lastWeek').attr('month') + "-" +
                        $(xml).find('lastWeek').attr('date');
                        
                    $("#ctl00_mainContent_prevButton").attr('href', "Whats-On.aspx?start=" + lastWeek +
                                "&track=" + trackID);
                    $("#ctl00_mainContent_hdnPrevWeek").val(lastWeek);
                    $("#buttons").css("display", "");
                    $("#ctl00_mainContent_prevButton").css("display", "");
                    
                }
                
                
                // Finaly hide the loader.
                 $(".timetable_loader").css("display", "none");
            }
        }
        
        
        $(document).ready(function() {
            // Document ready code.
            $("#ctl00_mainContent_nextButton").click(function(event) {
                getNextWeek();
                event.preventDefault();
            });
            $("#ctl00_mainContent_prevButton").click(function(event) {
                getPrevWeek();
                event.preventDefault();
            });
            $("#ctl00_mainContent_hypNationalFull").click(function(event) {
                changeTrack("1");
                event.preventDefault();
            });
            $("#ctl00_mainContent_hypClub").click(function(event) {
                changeTrack("2");
                event.preventDefault();
            });
        
        });