function AddMonths(MonthsToAdd, VenueMode, CategoryMode)
{
	var CurrentMonthValue = parseInt(document.getElementById('CurrentMonth').value);
    var NewMonthValue = CurrentMonthValue + MonthsToAdd;
    
    var CurrentYearValue = parseInt(document.getElementById('CurrentYear').value);
    var NewYearValue = CurrentYearValue;
	
	var MemberMode = document.getElementById('MemberMode').value;
    
    var MonthsToDisplay = parseInt(document.getElementById('MonthsToDisplay').value);
    
    var CurrentVenue = 0;
    if (VenueMode == 'true')
		CurrentVenue = parseInt(document.getElementById('CurrentVenue').value);
		
	var CurrentCategoy = 0;
    if (CategoryMode == 'true')
		CurrentCategory = parseInt(document.getElementById('CurrentCategory').value);
		
    document.getElementById('CurrentFilter').value = 0;
    var FilterId = parseInt(document.getElementById('CurrentFilter').value);
    
	if (NewMonthValue > 12)
	{
		NewMonthValue = NewMonthValue - 12;
		NewYearValue = NewYearValue + 1;
	}
	
	if (NewMonthValue < 1)
	{
		NewMonthValue = NewMonthValue + 12;
		NewYearValue = NewYearValue - 1;
	}
	
	document.getElementById('CurrentMonth').value = NewMonthValue;
	document.getElementById('CurrentYear').value = NewYearValue;
	document.getElementById('CurrentPage').value = 1;
	var AllMode = document.getElementById('AllMode').value == 'false' ? false : true;	
		
	if (VenueMode == 'true')
	{
		document.getElementById('Calendars').innerHTML = MultiMonthVenue.LoadCalendars(NewMonthValue, NewYearValue, MonthsToDisplay, CurrentVenue, MemberMode, FilterId).value;
		document.getElementById('VenueTabs').innerHTML = MultiMonthVenue.GetVenueTabs(CurrentVenue).value;
	}
	if (CategoryMode == 'true')
	{
		document.getElementById('Calendars').innerHTML = MultiMonthCategory.LoadCalendars(NewMonthValue, NewYearValue, MonthsToDisplay, CurrentCategory, MemberMode, FilterId).value;
		document.getElementById('CategoryTabs').innerHTML = MultiMonthCategory.GetCategoryTabs(CurrentCategory).value;
	}
	if (VenueMode != 'true' && CategoryMode != 'true')
	{
		document.getElementById('Calendars').innerHTML = MultiMonth.LoadCalendars(NewMonthValue, NewYearValue, MonthsToDisplay, FilterId).value;
		document.getElementById('MonthTabs').innerHTML = MultiMonth.GetMonthTabs(NewMonthValue, NewYearValue, MonthsToDisplay, NewMonthValue, FilterId, AllMode).value;
	}

	SetCurrentMonth(NewMonthValue, VenueMode, CategoryMode);
}

function ShowDropDownList()
{
	document.getElementById('FilterList').style.display = "block";
	document.getElementById('FilterList').style.top = document.getElementById('FilterList').offsetTop;
	document.getElementById('FilterList').style.left = document.getElementById('FilterList').offsetLeft;
}

function HideDropDownList()
{
	document.getElementById('FilterList').style.display = "none";
}

function SetCurrentFilter(id, FilterName)
{
	var MonthId = parseInt(document.getElementById('CurrentMonth').value);
	if (document.getElementById('AllMode').value == 'true')
		MonthId = 0;
	var VenueMode = document.getElementById('VenueMode').value;
	var CategoryMode = document.getElementById('CategoryMode').value;
	var CurrentVenue = 0;
	if (VenueMode == 'true')
		CurrentVenue = document.getElementById('CurrentVenue').value;
	var CurrentCategory = 0;
	if (CategoryMode == 'true')
		CurrentCategory = document.getElementById('CurrentCategory').value;
		
	document.getElementById('CurrentFilter').value = id;
	
	if (VenueMode == 'true')
		SetCurrentVenue(CurrentVenue, 'false');
		
	if (CategoryMode == 'true')
		SetCurrentCategory(CurrentCategory, 'false');
	
	if (VenueMode == 'false' && CategoryMode == 'false')
		SetCurrentMonth(MonthId, VenueMode, CategoryMode, 'false');
	
	document.getElementById('FilterDropdown').innerHTML = FilterName;
}

function SetCurrentVenue(id, ResetFilter)
{
	var MonthsToDisplay = parseInt(document.getElementById('MonthsToDisplay').value);
	var MonthValue = document.getElementById('CurrentMonth').value;
	var YearValue = document.getElementById('CurrentYear').value;
	document.getElementById('CurrentPage').value = "1";
	var CurrentPage = parseInt(document.getElementById('CurrentPage').value);
	var EventsPerPage = parseInt(document.getElementById('EventsPerPage').value);	
	document.getElementById('CurrentVenue').value = id;
	var CurrentVenue = parseInt(document.getElementById('CurrentVenue').value);
	var MemberMode = document.getElementById('MemberMode').value;
	var bMemberMode = false;
	if (ResetFilter == 'true')
		document.getElementById('CurrentFilter').value = 0;
	var FilterId = parseInt(document.getElementById('CurrentFilter').value);
	if (MemberMode == "true")
	{
		bMemberMode = true;
	}
	
	var AllMode = document.getElementById('AllMode').value == 'false' ? false : true;
	
	document.getElementById('Calendars').innerHTML = MultiMonthVenue.LoadCalendars(MonthValue, YearValue, MonthsToDisplay, CurrentVenue, MemberMode, FilterId).value;
	document.getElementById('CalendarData').innerHTML = MultiMonthVenue.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, CurrentVenue, false, bMemberMode, FilterId, AllMode).value;	
	document.getElementById('VenueTabs').innerHTML = MultiMonthVenue.GetVenueTabs(CurrentVenue).value;
	document.getElementById('Filter').innerHTML = MultiMonthVenue.GetFilterDropdown(FilterId).value;
	document.getElementById('FilterDropdown').innerHTML = document.getElementById('DropdownAllMessage').value;
}

function SetCurrentCategory(id, ResetFilter)
{
	var MonthsToDisplay = parseInt(document.getElementById('MonthsToDisplay').value);
	var MonthValue = document.getElementById('CurrentMonth').value;
	var YearValue = document.getElementById('CurrentYear').value;
	document.getElementById('CurrentPage').value = "1";
	var CurrentPage = parseInt(document.getElementById('CurrentPage').value);
	var EventsPerPage = parseInt(document.getElementById('EventsPerPage').value);	
	document.getElementById('CurrentCategory').value = id;
	var CurrentCategory = parseInt(document.getElementById('CurrentCategory').value);
	var MemberMode = document.getElementById('MemberMode').value;
	var bMemberMode = false;
	if (ResetFilter == 'true')
		document.getElementById('CurrentFilter').value = 0;
	var FilterId = parseInt(document.getElementById('CurrentFilter').value);
	if (MemberMode == "true")
	{
		bMemberMode = true;
	}
	
	var AllMode = document.getElementById('AllMode').value == 'false' ? false : true;	
	
	document.getElementById('Calendars').innerHTML = MultiMonthCategory.LoadCalendars(MonthValue, YearValue, MonthsToDisplay, CurrentCategory, MemberMode, FilterId).value;
	document.getElementById('CalendarData').innerHTML = MultiMonthCategory.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, CurrentCategory, false, bMemberMode, FilterId, AllMode).value;	
	document.getElementById('CategoryTabs').innerHTML = MultiMonthCategory.GetCategoryTabs(CurrentCategory).value;
	document.getElementById('Filter').innerHTML = MultiMonthCategory.GetFilterDropdown(FilterId).value;
	document.getElementById('FilterDropdown').innerHTML = document.getElementById('DropdownAllMessage').value;
}

function SetCurrentMonth(id, VenueMode, CategoryMode, FilterId, ResetFilter)
{
	var MonthsToDisplay = parseInt(document.getElementById('MonthsToDisplay').value);
	var MonthValue = document.getElementById('CurrentMonth').value;
	var YearValue = document.getElementById('CurrentYear').value;
	var CurrentPage = 1;
	document.getElementById('CurrentPage').value = '1';
	var EventsPerPage = parseInt(document.getElementById('EventsPerPage').value);
	
	if (id > 0)
	{
		document.getElementById('CurrentMonth').value = id;
		document.getElementById('AllMode').value = 'false';
	}
	else
		document.getElementById('AllMode').value = 'true';
	
	var CurrentVenue = 0;
    if (VenueMode == 'true')
		CurrentVenue = parseInt(document.getElementById('CurrentVenue').value);
		
	var CurrentCategory = 0;
    if (CategoryMode == 'true')
		CurrentCategory = parseInt(document.getElementById('CurrentCategory').value);
	
	if (ResetFilter == 'true')
		document.getElementById('CurrentFilter').value = 0;
	
	var CurrentFilterId = 0;
	CurrentFilterId = parseInt(document.getElementById('CurrentFilter').value);
		
	var MemberMode = document.getElementById('MemberMode').value;
	var bMemberMode = false;
	if (MemberMode == 'true')
		bMemberMode = true;
	
	var AllMode = document.getElementById('AllMode').value == 'false' ? false : true;	
		
	if (VenueMode == 'true')
	{
		var Month = parseInt(id) == 0 ? parseInt(MonthValue) : parseInt(id);
		document.getElementById('VenueTabs').innerHTML = MultiMonthVenue.GetVenueTabs(CurrentVenue).value;
		document.getElementById('CalendarData').innerHTML = MultiMonthVenue.GetEventsForMonth(Month, YearValue, 0, CurrentPage, EventsPerPage, CurrentVenue, false, bMemberMode, CurrentFilterId, AllMode).value;
		document.getElementById('Filter').innerHTML = MultiMonthVenue.GetFilterDropdown(CurrentFilterId).value;
	}
	if (CategoryMode == 'true')
	{
		var Month = parseInt(id) == 0 ? parseInt(MonthValue) : parseInt(id);
		document.getElementById('CategoryTabs').innerHTML = MultiMonthCategory.GetCategoryTabs(CurrentCategory).value;
		document.getElementById('CalendarData').innerHTML = MultiMonthCategory.GetEventsForMonth(Month, YearValue, 0, CurrentPage, EventsPerPage, CurrentCategory, false, bMemberMode, CurrentFilterId, AllMode).value;
		document.getElementById('Filter').innerHTML = MultiMonthCategory.GetFilterDropdown(CurrentFilterId).value;
	}
	if (VenueMode != 'true' && CategoryMode != 'true')
	{
		var Month = parseInt(id) == 0 ? parseInt(MonthValue) : parseInt(id);
		document.getElementById('MonthTabs').innerHTML = MultiMonth.GetMonthTabs(Month, YearValue, MonthsToDisplay, parseInt(id), CurrentFilterId, AllMode).value;
		document.getElementById('CalendarData').innerHTML = MultiMonth.GetEventsForMonth(Month, YearValue, 0, CurrentPage, EventsPerPage, false, bMemberMode, CurrentFilterId, AllMode).value;
		document.getElementById('Calendars').innerHTML = MultiMonth.LoadCalendars(Month, YearValue, MonthsToDisplay, CurrentFilterId).value;		
		document.getElementById('Filter').innerHTML = MultiMonth.GetFilterDropdown(CurrentFilterId).value;
	}
	
	if (id == "0")
		document.getElementById('AllMode').value = "true";
	else
		document.getElementById('AllMode').value = "false";
	
	document.getElementById('FilterDropdown').innerHTML = document.getElementById('DropdownAllMessage').value;
}

function HighlightDay(dayToHighlight, VenueMode, CategoryMode)
{
	var month = dayToHighlight.substring(0,2);
	var day = parseInt(dayToHighlight.substring(3,5));
	var year = parseInt(dayToHighlight.substring(6,10));
	var currentMonth = document.getElementById('CurrentMonth').value;
	var MonthsToDisplay = parseInt(document.getElementById('MonthsToDisplay').value);
	var CurrentPage = parseInt(document.getElementById('CurrentPage').value);
	var EventsPerPage = parseInt(document.getElementById('EventsPerPage').value);
	
	var CurrentVenue = 0;
    if (VenueMode == 'true')
		CurrentVenue = parseInt(document.getElementById('CurrentVenue').value);
		
	var CurrentCategory = 0;
    if (CategoryMode == 'true')
		CurrentCategory = parseInt(document.getElementById('CurrentCategory').value);
		
	var MemberMode = document.getElementById('MemberMode').value;
	var bMemberMode = false;
	if (MemberMode == 'true')
		bMemberMode = true;
		
	var FilterId = 0;
	FilterId = parseInt(document.getElementById('CurrentFilter').value);
	
	var MonthHtml = "";
	
	var AllMode = document.getElementById('AllMode').value == 'false' ? false : true;
		
	if (VenueMode == 'true')
	{
		MonthHtml = MultiMonthVenue.GetEventsForMonth(month, year, day, CurrentPage, EventsPerPage, CurrentVenue, true, bMemberMode, FilterId, AllMode).value;
		document.getElementById('VenueTabs').innerHTML = MultiMonthVenue.GetVenueTabs(CurrentVenue).value;
	}
	if (CategoryMode == 'true')
	{
		MonthHtml = MultiMonthCategory.GetEventsForMonth(month, year, day, CurrentPage, EventsPerPage, CurrentCategory, true, bMemberMode, FilterId, AllMode).value;
		document.getElementById('CategoryTabs').innerHTML = MultiMonthCategory.GetCategoryTabs(CurrentCategory).value;
	}
	if (VenueMode != 'true' && CategoryMode != 'true')
	{
		document.getElementById('MonthTabs').innerHTML = MultiMonth.GetMonthTabs(currentMonth, year, MonthsToDisplay, month, FilterId, AllMode).value;
		MonthHtml = MultiMonth.GetEventsForMonth(month, year, day, CurrentPage, EventsPerPage, true, bMemberMode, FilterId, AllMode).value;
	}
	
	document.getElementById('CurrentPage').value = parseInt(MonthHtml.substring(0,MonthHtml.indexOf('|')));
	var start = MonthHtml.indexOf('|') + 1;
	MonthHtml = MonthHtml.substring(start, MonthHtml.length - start);
	document.getElementById('CurrentMonth').value = parseInt(MonthHtml.substring(0,MonthHtml.indexOf('|')));
	start = MonthHtml.indexOf('|') + 1;
	MonthHtml = MonthHtml.substring(start, MonthHtml.length - start);
	document.getElementById('CurrentYear').value = parseInt(MonthHtml.substring(0,MonthHtml.indexOf('|')));
	start = MonthHtml.indexOf('|') + 1;
	MonthHtml = MonthHtml.substring(start, MonthHtml.length - start);
	
	document.getElementById('CalendarData').innerHTML = MonthHtml;
	var fix = document.getElementById('CalendarData').innerHTML;
	fix = new String(fix);
	fix = fix.replace('&lt;/tab', '');
	document.getElementById('CalendarData').innerHTML = fix;
}

function PreviousPage(VenueMode, CategoryMode)
{
	var CurrentPage = parseInt(document.getElementById('CurrentPage').value) - 1;
	document.getElementById('CurrentPage').value = CurrentPage;
	var EventsPerPage = parseInt(document.getElementById('EventsPerPage').value);
	var MonthsToDisplay = parseInt(document.getElementById('MonthsToDisplay').value);
	var MonthValue = document.getElementById('CurrentMonth').value;
	var YearValue = document.getElementById('CurrentYear').value;
	
	var CurrentVenue = 0;
    if (VenueMode == 'true')
		CurrentVenue = parseInt(document.getElementById('CurrentVenue').value);
	
	var CurrentCategory = 0;
    if (CategoryMode == 'true')
		CurrentCategory = parseInt(document.getElementById('CurrentCategory').value);
		
	var MemberMode = document.getElementById('MemberMode').value;
	var bMemberMode = false;
	if (MemberMode == 'true')
		bMemberMode = true;
	
	var FilterId = FilterId = parseInt(document.getElementById('CurrentFilter').value);
	
	var AllMode = document.getElementById('AllMode').value == 'false' ? false : true;
	
	if (VenueMode == 'true')
	{
		document.getElementById('VenueTabs').innerHTML = MultiMonthVenue.GetVenueTabs(CurrentVenue).value;
		document.getElementById('CalendarData').innerHTML = MultiMonthVenue.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, CurrentVenue, false, bMemberMode, FilterId, AllMode).value;
	}
	if (CategoryMode == 'true')
	{
		document.getElementById('CategoryTabs').innerHTML = MultiMonthCategory.GetCategoryTabs(CurrentCategory).value;
		document.getElementById('CalendarData').innerHTML = MultiMonthCategory.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, CurrentCategory, false, bMemberMode, FilterId, AllMode).value;
	}
	if (CategoryMode != 'true' && VenueMode != 'true')
	{
		if (document.getElementById('AllMode').value == 'false')
		{
			document.getElementById('MonthTabs').innerHTML = MultiMonth.GetMonthTabs(MonthValue, YearValue, MonthsToDisplay, MonthValue, FilterId, false, AllMode).value;
			document.getElementById('CalendarData').innerHTML = MultiMonth.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, false, bMemberMode, FilterId, AllMode).value;
		}
		else
		{
			var AllMode = document.getElementById('AllMode').value == 'false' ? false : true;
			document.getElementById('CalendarData').innerHTML = MultiMonth.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, false, bMemberMode, FilterId, AllMode).value;
		}
	}
}

function NextPage(VenueMode, CategoryMode)
{
	var CurrentPage = parseInt(document.getElementById('CurrentPage').value) + 1;
	document.getElementById('CurrentPage').value = CurrentPage;
	var EventsPerPage = parseInt(document.getElementById('EventsPerPage').value);
	var MonthsToDisplay = parseInt(document.getElementById('MonthsToDisplay').value);
	var MonthValue = document.getElementById('CurrentMonth').value;
	var YearValue = document.getElementById('CurrentYear').value;
	
	var CurrentVenue = 0;
    if (VenueMode == 'true')
		CurrentVenue = parseInt(document.getElementById('CurrentVenue').value);
	
	var CurrentCategory = 0;
    if (CategoryMode == 'true')
		CurrentCategory = parseInt(document.getElementById('CurrentCategory').value);
		
	var MemberMode = document.getElementById('MemberMode').value;
	var bMemberMode = false;
	if (MemberMode == 'true')
		bMemberMode = true;
	
	var FilterId = FilterId = parseInt(document.getElementById('CurrentFilter').value);
	
	var AllMode = document.getElementById('AllMode').value == 'false' ? false : true;
	
	if (VenueMode == 'true')
	{
		document.getElementById('VenueTabs').innerHTML = MultiMonthVenue.GetVenueTabs(CurrentVenue).value;
		document.getElementById('CalendarData').innerHTML = MultiMonthVenue.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, CurrentVenue, false, bMemberMode, FilterId, AllMode).value;
	}
	if (CategoryMode == 'true')
	{
		document.getElementById('CategoryTabs').innerHTML = MultiMonthCategory.GetCategoryTabs(CurrentCategory).value;
		document.getElementById('CalendarData').innerHTML = MultiMonthCategory.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, CurrentCategory, false, bMemberMode, FilterId, AllMode).value;
	}
	if (CategoryMode != 'true' && VenueMode != 'true')
	{
		if (AllMode == false)
		{
			document.getElementById('MonthTabs').innerHTML = MultiMonth.GetMonthTabs(MonthValue, YearValue, MonthsToDisplay, MonthValue, FilterId, AllMode).value;	
			document.getElementById('CalendarData').innerHTML = MultiMonth.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, false, bMemberMode, FilterId, AllMode).value;
		}
		else
		{
			document.getElementById('CalendarData').innerHTML = MultiMonth.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, false, bMemberMode, FilterId, AllMode).value;
		}
	}
}

function GoToPage(page, CategoryMode, VenueMode)
{
	document.getElementById('CurrentPage').value = page;
	var CurrentPage = parseInt(page);
	var EventsPerPage = parseInt(document.getElementById('EventsPerPage').value);
	var MonthsToDisplay = parseInt(document.getElementById('MonthsToDisplay').value);
	var MonthValue = document.getElementById('CurrentMonth').value;
	var YearValue = document.getElementById('CurrentYear').value;
	
	var CurrentVenue = 0;
    if (VenueMode == 'true')
		CurrentVenue = parseInt(document.getElementById('CurrentVenue').value);
		
	var CurrentCategory = 0;
    if (CategoryMode == 'true')
		CurrentCategory = parseInt(document.getElementById('CurrentCategory').value);
		
	var MemberMode = document.getElementById('MemberMode').value;
	var bMemberMode = false;
	if (MemberMode == 'true')
		bMemberMode = true;
		
	var FilterId = FilterId = parseInt(document.getElementById('CurrentFilter').value);
	
	var AllMode = document.getElementById('AllMode').value == 'false' ? false : true;
	
	if (VenueMode == 'true')
	{
		document.getElementById('VenueTabs').innerHTML = MultiMonthVenue.GetVenueTabs(CurrentVenue).value;
		document.getElementById('CalendarData').innerHTML = MultiMonthVenue.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, CurrentVenue, false, bMemberMode, AllMode).value;
	}
	else
	{
		document.getElementById('MonthTabs').innerHTML = MultiMonth.GetMonthTabs(MonthValue, YearValue, MonthsToDisplay, MonthValue, FilterId, AllMode).value;
		document.getElementById('CalendarData').innerHTML = MultiMonth.GetEventsForMonth(MonthValue, YearValue, 0, CurrentPage, EventsPerPage, false, bMemberMode, AllMode).value;
	}
}