function showLoading(placeElement) {
	dataDiv = jQuery(placeElement);
	loadingDiv = jQuery('#loading_logo');
	newDiv = jQuery(document.createElement('div'));
	
	//dataDiv.css('opacity',0.4);
	var left = (dataDiv.width() / 2) - (loadingDiv.width() / 2);
	loadingDiv.css({zIndex: 1, textAlign: 'center', left: left});
	loadingDiv.show();
}
function hideLoading(placeElement) {
	jQuery('#loading_logo').hide();
	jQuery(placeElement).show();
	//jQuery(placeElement).css('opacity',1);
}
function getEvents() {
	var req_data = arguments[0];
	var placeElement = arguments[1];
	showLoading(placeElement);
	jQuery.get('/atbs_ajax/events', req_data, function(data) {
		hideLoading(placeElement);
		placeData(data, placeElement);
		overridePaging(placeElement);
		//alert(data.indexOf("No upcoming events found."));
		if(data.indexOf("No upcoming events found.")==-1)
		{		
			//$("#event_list").css('margin-top',"-50px");
		}
	});
}
function getTickets(req_data, placeElement) {
	showLoading(placeElement);
	jQuery.get('/atbs_ajax/tix', req_data, function(data) {
		hideLoading(placeElement);
		placeData(data, placeElement);
		setupBuyLinks(placeElement);
		jQuery(placeElement + ' .header').click(function() {
			req_data.sort = gup(this.href, 'sort');
			req_data.dir = gup(this.href, 'dir');
			getTickets(req_data, placeElement);
			return false;
		});
		if (document.getElementById('ticket_list').offsetHeight < 700) document.getElementById('ticket_list').style.height = '700px';
		Float("seatingChart", "ticketsContainer").doFloat();
	});
}
function placeData(data, placeElement) {
	jQuery(placeElement).html(data);
}
function overridePaging(placeElement) {
	jQuery(placeElement+" .paginator a").click(function() {
		getURL(jQuery(this).attr('href'), placeElement);
		return false;
	});
	jQuery(placeElement+" .list_view a").click(function() {
		$('#event_listings').show();
		$('#calendar').hide();
		return false;
	});
	jQuery(placeElement+" .calendar_view a").click(function() {
		$('#event_listings').hide();
		$('#calendar').show();
		getURL(jQuery(this).attr('href'), '#calendar');
		return false;
	});
	jQuery(placeElement+" .cal_link").click(function() {
		getURL(jQuery(this).attr('href'), '#calendar');
		return false;
	});
}
function getURL(url, placeElement) {
	showLoading(placeElement);
	jQuery.get(url, function(data) {
		hideLoading(placeElement);
		placeData(data, placeElement);
		overridePaging(placeElement);
	});
}
function setupBuyLinks(placeElement) {
	var details = jQuery(placeElement + " .details");
	jQuery(placeElement + ' .buyLink').click(function() {
			var brokerid = details.attr('brokerid');
			var sitenumber = details.attr('sitenumber');
			var evtID = details.attr('evtID');
			var tgid = jQuery(this).attr('tg');
			var price = jQuery(this).attr('pc');
			var treq = jQuery("#s" + tgid).val();
			var sessionId = details.attr('session');
			jQuery(this).attr('href', "https://tickettransaction2.com/Checkout.aspx?brokerid="+brokerid+"&sitenumber="+sitenumber+"&tgid="+tgid+"&treq="+treq+"&evtID="+evtID+"&price="+price+"&SessionId="+sessionId);
	});
}
function calendarChange(url) {
	getURL(url + '&Month='+$('#cal_month').val()+'&Year='+$('#cal_year').val(), '#calendar');
}
function gup(url, name) {
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( url );
  if( results == null )
    return "";
  else
    return results[1];
}
