var tb = 't'; // top or bottom (t or b)
var headbg = '#cccccc';  // table heading background colour
var todaybg = '#cccccc'; // current selected date background colour
var homebg = '#bfd3ec'; // current selected date background colour
var awaybg = '#facf8c'; // current selected date background colour
var textclr = '#666666'; // text colour
var linkclr = '#000000'; // link text colour
var MonthsHeader = '#cccccc';
var noMessage =  'No event messages to display for today'; // message to display when no entry in array
var eventcell = 0;
var dA = new Array(); var x = 0;
var Venue = new Array(); var xVenue = 0;
var SelectedVenue = 'All';
var ImagePath="http://www.vividseats.com/v2/newimages/findseats.jpg";
var ImageLink="http://www.vividseats.com/shop/viewTickets.shtml?productionId=";
var TableColor = "";
var ArrowTextColor = " ReadmoreBlue";
var DupArray=new Array();
function lstdata(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8)
{
	var Link=ImageLink+arg6;
	var NewArray=new Array(["<span class=\"boldtext\">"+ arg1+"</span>","<b>"+arg2+"</b><br>"+arg3,"<strong>"+arg4+"</strong><br>"+arg5,"<a href=\""+Link+"\"><img src=\""+ImagePath+"\" border=0></a>",arg7,arg8]);
	DupArray=DupArray.concat(NewArray);
	return DupArray;
}

function Calendar(arg1,arg2,arg3,arg4,arg5)
{
	var Link=ImageLink+arg3;
	var NewCalVar=arg1+"<span class=\"eventtime\"><br>"+ arg2+"</span><br><span class=\"tevent\"><a href=\""+Link+"\">"+arg4+"</a></span>|"+arg5;
	return (NewCalVar);
}

var pageLoaded = 0; window.onload = function() {pageLoaded = 1;}
function loaded(i,f) {
	if (document.getElementById && document.getElementById(i) != null) f(); else if (!pageLoaded) setTimeout('loaded(\''+i+'\','+f+')',100);
}
function monthlength(month,year) {
	var dd = new Date(year, month, 0);
	return dd.getDate();
	}
var moy = ['January','February','March','April','May','June','July','August','September','October','November','December'];
var today = new Date();
var selDate = today.getFullYear()+getmmdd(today.getMonth()+1,today.getDate());
function dispCal(yy,mm) {
	//the following jumps to the month of the first event
	var lowMonth=9999999;
	var lowYear =0;
	for (var i = 0; i < dA.length; i++) {
		if(SelectedVenue == Venue[i].split("|")[0] || SelectedVenue == "All")
		{
			var cm = Venue[i].split("|")[1];
			
			if (parseInt(cm) < parseInt(lowMonth)) {
				lowMonth = cm;
				lowYear =Venue[i].split("|")[2];
			}
		}
	}
	
	if (mm < lowMonth && (yy >= lowYear || yy==0)) {
		mm=lowMonth;
		yy = lowYear;
	}
	//end jump

	if (mm < 0 || mm > 12) {
		alert('month must be between 1 and 12'); return false;
	} 
	if (yy != 0 && (yy < 1901 || yy > 2100)) {
		alert('year must be after 1900 and before 2101'); 
		return false;
	} 


	var dow = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday']; 
	var calendar = new Date();  
	var today = calendar.getDate(); 
	calendar.setDate(1); if (yy > 1900) calendar.setFullYear(yy); 
	if (mm > 0) calendar.setMonth(mm - 1); 
	var yy = year = calendar.getFullYear(); 
	var month = calendar.getMonth(); 
	calendar.setDate(today); 
	var weekday = calendar.getDay(); 
	var daysInMonth = monthlength(month+1,year); 
	var hilite_start = '<td style="background:' + todaybg + '" align="right" valign="top" class="days">'; 
	var home_start = '<td style="background:' + homebg + '" align="right" valign="top" class="days">';
	var away_start = '<td style="background:' + awaybg + '" align="right" valign="top" class="days">';
	
	var td_start = '<td align="right" style="height:100px; width:14%;background:#ffffff;" class="days" valign="top">';   
	var td_start2 = '<td align="center" style="height:20px; width:14%;background:' + MonthsHeader + '" class="daysheader">'; 
	var cal = '<div id="cal">';


	strTable_calview = '';

	strTable_calview += '<table border="0" cellpadding="0" cellspacing="0" width="100%" class="tabbg"><tr><Td>';
	
	if(TabActive)
	{
		strTable_calview += '<table border="0" cellpadding="0" cellspacing="0" width="100%">';
		strTable_calview += '<tr><td height=22 colspan=7></td><td rowspan=2 align="left" valign="top" class="boldtext"><input type="radio" onclick="javascript:showList()" name="viewcheck"> List View <br><input type="radio" name="viewcheck" checked> Calendar View&nbsp;</td></tr>';
		strTable_calview += '<tr>';
		strTable_calview += '';
		if(HOmeAwayAll_calview == '1')
		{
			strTable_calview += '<td width="120" height="23" align="center" class="seltab'+TableColor+'"><a href="javascript:void(0);" onclick="javascript:SelectedTab_calview(\'1\', ' + mm +', ' + yy +');" class="seltab'+TableColor+'">HOME GAMES</a></td>';
			strTable_calview += '<td width="5" align="center" class="tabbg">&nbsp;</td>';
			strTable_calview += '<td width="120" align="center" class="tab'+TableColor+'"><a href="javascript:void(0);" onclick="javascript:SelectedTab_calview(\'2\', ' + mm +', ' + yy +');" class="tab'+TableColor+'">AWAY GAMES</a></td>';
			strTable_calview += '<td width="5" align="center" class="tabbg">&nbsp;</td>';
			strTable_calview += '<td width="120" align="center" class="tab'+TableColor+'"><a href="javascript:void(0);" onclick="javascript:SelectedTab_calview(\'0\', ' + mm +', ' + yy +');" class="tab'+TableColor+'">ALL GAMES</a></td>';
			strTable_calview += '<td align="center" class="tabbg">&nbsp;</td>';
		}
		else if(HOmeAwayAll_calview == '2')
		{
			strTable_calview += '<td width="120" height="23" align="center" class="tab'+TableColor+'"><a href="javascript:void(0);" onclick="javascript:SelectedTab_calview(\'1\', ' + mm +', ' + yy +');" class="tab'+TableColor+'">HOME GAMES</a></td>';
			strTable_calview += '<td width="5" align="center" class="tabbg">&nbsp;</td>';
			strTable_calview += '<td width="120" align="center" class="seltab'+TableColor+'"><a href="javascript:void(0);" onclick="javascript:SelectedTab_calview(\'2\', ' + mm +', ' + yy +');" class="seltab'+TableColor+'">AWAY GAMES</a></td>';
			strTable_calview += '<td width="5" align="center" class="tabbg">&nbsp;</td>';
			strTable_calview += '<td width="120" align="center" class="tab'+TableColor+'"><a href="javascript:void(0);" onclick="javascript:SelectedTab_calview(\'0\', ' + mm +', ' + yy +');" class="tab'+TableColor+'">ALL GAMES</a></td>';
			strTable_calview += '<td align="center" class="tabbg">&nbsp;</td>';
		}
		else if(HOmeAwayAll_calview == '0')
		{
			strTable_calview += '<td width="120" height="23" align="center" class="tab'+TableColor+'"><a href="javascript:void(0);" onclick="javascript:SelectedTab_calview(\'1\', ' + mm +', ' + yy +');" class="tab'+TableColor+'">HOME GAMES</a></td>';
			strTable_calview += '<td width="5" align="center" class="tabbg">&nbsp;</td>';
			strTable_calview += '<td width="120" align="center" class="tab'+TableColor+'"><a href="javascript:void(0);" onclick="javascript:SelectedTab_calview(\'2\', ' + mm +', ' + yy +');" class="tab'+TableColor+'">AWAY GAMES</a></td>';
			strTable_calview += '<td width="5" align="center" class="tabbg">&nbsp;</td>';
			strTable_calview += '<td width="120" align="center" class="seltab'+TableColor+'"><a href="javascript:void(0);" onclick="javascript:SelectedTab_calview(\'0\', ' + mm +', ' + yy +');" class="seltab'+TableColor+'">ALL GAMES</a></td>';
			strTable_calview += '<td align="center" class="tabbg">&nbsp;</td>';
		}
		strTable_calview += '<td width="32%"></td>';
		strTable_calview += '</tr><tr><td colspan=8 height=5 style="BORDER-BOTTOM:#333333 1px dotted; overflow: hidden; font-size:1px;">&nbsp;</td></tr><tr><td height=10></td></tr>';
		strTable_calview += '</table>';	
	}
	
	else // if tab is inactive
	{
		strTable_calview += '<table border="0" cellpadding="0" cellspacing="0" width="100%" >';
		strTable_calview += '<tr valign=top>';
		strTable_calview += '<td height=40 align="right" class="boldtext"><input type="radio" onclick="javascript:showList()" name="viewcheck"> List View <input type="radio" name="viewcheck" checked> Calendar View&nbsp;</td>';
		strTable_calview += '</tr>';
		strTable_calview += '</table>';	
	}

	cal += strTable_calview;

	if (document.getElementById) {
		var mmb = month;  mm = month + 1; 
		var yya = yyb = yy; 
		if (mmb <1) {mmb += 12; yyb--;
	} 
	var mma = month + 2; 
	if (mma > 12) {mma -= 12; yya++;} 
	var yb = yy -1; 
	var ya = yy +1; 

	var idxVenue = 0;

	VenueDropDown = VenueDropDown.replace(" selected","");
	VenueDropDown_calview =	VenueDropDown.replace("doVenueFilter();","SelectedTab_calview(HOmeAwayAll_calview,"+mm+","+yy+");");
	VenueDropDown_calview = VenueDropDown_calview.replace("FilterByVenue","FilterByVenue_calview");

	VenueDropDown_calview = VenueDropDown_calview.replace('<option value="' + SelectedVenue + '">', '<option value="' + SelectedVenue + '" Selected>')

	cal += '<table border="0" cellspacing="0" cellpadding="2" width="100%" class="seltab'+TableColor+'"><tr><td align="left" class="MonthYearHeading"><span style="font-size:11px; color: #ffffff;">&nbsp;&nbsp;&nbsp;FILTER BY VENUE&nbsp;&nbsp; xxxxxxxxx</span></td><td align=\"left\" class="MonthYearHeading"><a href="#" onclick="if (cala = dispCal('+yyb+','+mmb+')) {document.getElementById(\'calendar\').innerHTML = cala; return false;}" class="nextprevcalview"><img src="http://www.vividseats.com/v2/newimages/prev_page_white.gif" width="10" height="10" border="0" />&nbsp;&nbsp;&nbsp;</a> ' + moy[month] + ' <a href="#" onclick="if (cala = dispCal('+yya+','+mma+')) {document.getElementById(\'calendar\').innerHTML = cala; return false;}" class="nextprevcalview">&nbsp;&nbsp;&nbsp;<img src="http://www.vividseats.com/v2/newimages/next_page_white.gif" width="10" height="10" border="0" /></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="#" onclick="if (cala = dispCal('+yb+','+mm+')) {document.getElementById(\'calendar\').innerHTML = cala; return false;}" class="nextprevcalview">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="http://www.vividseats.com/v2/newimages/prev_page_white.gif" width="10" height="10" border="0" />&nbsp;&nbsp;&nbsp;</a> ' + year + ' <a href="#" onclick="if (cala = dispCal('+ya+','+mm+')) {document.getElementById(\'calendar\').innerHTML = cala; return false;}" class="nextprevcalview">&nbsp;&nbsp;&nbsp;<img src="http://www.vividseats.com/v2/newimages/next_page_white.gif" width="10" height="10" border="0" /></a></td>kkkkkkkkk</tr></table>';} else {cal += '<div> </div>';}

	cal = cal.replace("xxxxxxxxx",VenueDropDown_calview);

	if (TabActive) {
		cal = cal.replace('kkkkkkkkk','<td style="text-align:left;font-size:10px;" class="MonthYearHeading"><div style="text-align:center;display:block;margin-bottom:3px; color: #111111; background:' + homebg + '">Home Game</div><div style="text-align:center;display:block; color: #111111; background:' + awaybg + '">Away Game</div></td>');
	} else {
		cal = cal.replace('kkkkkkkkk','');
	}
//	cal += '<div style="height:1px;"></div>';
	cal += '<table border="0" cellspacing="1" cellpadding="1" align="center" style="margin-top: 5px; border:0px solid #cccccc;width:100%;background:' + MonthsHeader + '"><tr style="background:' + MonthsHeader + '">'; 
	for(dex=0; dex < 7; dex++) {
		cal += td_start2 + dow[dex] + '</td>';
	} 
	cal += '<\/tr><tr>'; 
	var day2 = today; 
	for (dex = today; dex > 6; dex -=7) day2 = dex; weekday -= day2 - 1; 
	while (weekday < 0) weekday += 7; 
	for(dex=0; dex < weekday; dex++) cal += td_start + ' <\/td>'; 
	for(dex=1; dex <= daysInMonth; dex++) {
		if(weekday == 7) {
			cal += '</tr><tr>'; 
			weekday = 0;
		}
		var cdsrc = clickDate(dex,month,year);

		if(selDate==year+getmmdd(month+1,dex)) cal += hilite_start +  dex; else if (eventcell ==0) cal += td_start + dex; else if (homevent)  cal += home_start + dex; else  cal += away_start + dex;
		if(eventcell == 1){
			cal+='<br>'+isDate(dex, month, year);
			eventcell=0;
		}
		cal+= '<br><br><\/td>'; 
		weekday += 1;
	} 
	for(dex=weekday; dex < 7; dex++) cal += td_start + ' <\/td>'; 

	cal += '<\/tr><\/table><\/td><\/tr><tr><td height=40><\/td><\/tr><\/table><\/div>';
//	document.getElementById('lstviewEvent').innerHTML = "";
	//return cal + '<textarea>' + cal + '</textarea>';
		return cal;
	
}

function start() {
	var x = ''; 
	var y = ''; 
	if (tb == 't') y = x + dispCal(0,0); else y = dispCal(0,0) + x; document.getElementById('calendar').innerHTML = y; ev();
}
function showCalendar() {
	document.getElementById('lstviewEvent').innerHTML ='';
	document.getElementById('lstviewEvent').style.display = "none";
	HOmeAwayAll_calview="1";
	if (TabActive == false) HOmeAwayAll_calview="0";
	start();
}
function showList() {
	document.getElementById('calendar').innerHTML ='';
	document.getElementById('lstviewEvent').style.display = "block";
	CrateTable();
}

function clickDate(day, month, year) {
	var ct = nextDate(year + getmmdd(month+1,day));
	if (ct == '') ct = nextDate('0000' + getmmdd(month+1,day));
	if (ct == '') { 
		return 'style="color:'+textclr+'"'; 
	} else {
		eventcell=1;
		return '';
	}
}

function isDate(dayVal,monthVal,yearVal) {
	var ct = nextDate(yearVal + getmmdd(monthVal+1,dayVal));
	if (ct == '') ct = nextDate('0000' + getmmdd(monthVal+1,dayVal));
	if (ct == '') ct = noMessage; 
	return ct;
	}

var homevent =true;
function nextDate(yymmdd) {
	homevent=true;
	var x = dA.length;
	for (var i = 0; i < x; i++) {
		if (dA[i].substr(0,8) == yymmdd)
		{
			if(HOmeAwayAll_calview != '0')
			{
				if('2' == dA[i].substr(dA[i].length - 1)) homevent=false
				if(HOmeAwayAll_calview == dA[i].substr(dA[i].length - 1)) 
				{
					if(SelectedVenue != 'All')
					{
						if(SelectedVenue == Venue[i].split("|")[0])
						{
							return dA[i].substr(8,(dA[i].length-10));
						}
					}
					else
					{
						return dA[i].substr(8,(dA[i].length-10));
					}
				}
			} 
			else
			{
				if('2' == dA[i].substr(dA[i].length - 1)) homevent=false
				if(SelectedVenue != 'All')
				{
					if(SelectedVenue == Venue[i].split("|")[0])
					{
						return dA[i].substr(8,(dA[i].length-10));
					}
				}
				else
				{
					return dA[i].substr(8,(dA[i].length-10));
				}
			}
		}
	}
	return '';
}

function getmmdd(mm,dd) {
	return (mm > 9 ? '' + mm : '0' + mm) + (dd > 9 ? dd : '0' + dd);
	}
function ev() {
	var ct = nextDate(selDate);
	var ct = nextDate(selDate);
	if (ct == '') ct = nextDate('0000' + selDate.substr(4));if (ct == '') ct = noMessage;
}


function SelectedTab_calview(strSelTab, selMonth, selYear)
{
	HOmeAwayAll_calview = strSelTab;
	SelectedVenue = document.getElementById('FilterByVenue_calview').value;
	if (SelectedVenue !="All") {
		HOmeAwayAll_calview=0;
		selMonth=0;
		selYear=0;
	}
	if (cala = dispCal(selYear, selMonth)) 
	{document.getElementById('calendar').innerHTML = cala;}
}

