function expand(x)
{
if (document.getElementById(x).style.display == 'none')
   {
   document.getElementById(x).style.display = ''
   }
else if (document.getElementById(x).style.display == '')
   {
   document.getElementById(x).style.display = 'none';
   }
}
 
function show(x)
{
//alert("Calling show("+x+")");
if (document.getElementById(x).style.display == 'none')
   {
   document.getElementById(x).style.display = ''
   return false;
   }
return false;
}
 
function hide(x)
{
//alert("Calling hide("+x+")");
if (document.getElementById(x).style.display == '')
   {
   document.getElementById(x).style.display = 'none';
   return false;
   }
}
 
function show_zvents_events()
{
show('zvents_events');
hide('zvents_movies');
hide('zvents_venues');
hide('zvents_dining');
hide('zvents_performers');
}
 
function show_zvents_movies()
{
hide('zvents_events');
show('zvents_movies');
hide('zvents_venues');
hide('zvents_dining');
hide('zvents_performers');
}
 
function show_zvents_venues()
{
hide('zvents_events');
hide('zvents_movies');
show('zvents_venues');
hide('zvents_dining');
hide('zvents_performers');
}
 
function show_zvents_dining()
{
hide('zvents_events');
hide('zvents_movies');
hide('zvents_venues');
show('zvents_dining');
hide('zvents_performers');
}
 
function show_zvents_performers()
{
hide('zvents_events');
hide('zvents_movies');
hide('zvents_venues');
hide('zvents_dining');
show('zvents_performers');
}

function ZventsSTLNotLoaded() {
	document.write('<div><img src="http://images.stltoday.com/icons/broken.gif">&nbsp;ZventsMini not loaded.</div>');
}

function ZventsSTLStyles(styles) {
	var id="stlcaldriverwidget";
	if (styles==null) {
		styles = [
			"{width:100%;}",
            ".float_right {float:right;}",
            ".float_left {float:left;}",
			".zvents_invertednav {padding: 0;width: 100%;background-color:#FFF;}",
			".zvents_invertednav ul {margin:0;margin-left: 1px;padding: 0;list-style: none;}",
			".zvents_invertednav li {display: inline;margin: 0 2px 0 0;padding: 0;}",
			".zvents_invertednav a {float: left;display: block;font: normal 11px Arial;color: black;text-decoration: none;margin: 0 1px 0 0;padding: 3px 5px;background-color: #a8a8a8; color: #fff;}",
			".zvents_invertednav a:hover {background-color: #fff;padding-top: 5px;padding: 3px 5px;color: #003459;}",
			".zvents_invertednav .current a {background-color: #fff;padding-top: 5px;padding: 3px 5px; color: #003459;}",
            ".zvents_event_block {padding:5px}",
            ".zvents_submit_link a {color:#900;}",
            ".zvents_event_block input > text {width:180px;}",
            ".zvents_calendar {margin-top:5px;padding-bottom:10px;}",
            "a.ZventsEventName {color:#000;}",
            "a.ZventsEventName:hover {color:#900;}",
            ".zvents_movie_block {padding:5px}",
            ".zvents_venues_block {padding:5px}",
            ".zvents_dining_block {padding:5px}",
		];
	}
	ss1 = document.createElement('style');
	ss1.setAttribute("id",id+"_styles");
	ss1.setAttribute("type", "text/css");
	var css_id ='#'+id+' ';
    var st =css_id+styles.join('\n'+css_id);
	if (ss1.styleSheet) { // I.E.
		ss1.styleSheet.cssText = st;
	} else { // everybody else.
		var tt1 = document.createTextNode(st);
		ss1.appendChild(tt1);
	}
	var hh1 = document.getElementsByTagName('head')[0];
	hh1.appendChild(ss1);
}

function ZventsSTLFiveDay(ZventSearchWhat) {
	(function() {
		// EDIT HERE: partner calendar base URL, search URL template,
		// number of days to display
		var partner = 'http://events.stltoday.com/';
		var searchUrl = partner + 'search?swhen={day}&amp;st='+ZventSearchWhat;
		var nDays = 5;
		var dayNames = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
		var monthNames = ['January', 'February', 'March', 'April', 'May', 'June','July', 'August', 'September', 'October', 'November', 'December'];
		var todayClass = ' ZventsDayButtonToday';
		var today = new Date( (new Date).setHours( 0, 0, 0, 0 ) );
		for( var i = 1;  i <= nDays;  ++i ) {
			var year = today.getFullYear();
			var month = monthNames[ today.getMonth() ];
			var date = today.getDate();
			var day = today.getDay();
			var weekend = ( day == 0  ||  day == 6 );
			var weekendClass = weekend ? ' ZventsDayButtonWeekend' : '';
			var dayName = dayNames[ today.getDay() ];
			var search = searchUrl.replace( /{day}/, i == 1 ? 'Today' : i == 2 ? 'Tomorrow' : dayName );
			button( date, dayName.slice(0,3), search,
			dayName + ', ' + month + ' ' + date + ', ' + year );
			todayClass = '';
			today.setDate( date + 1 );
		}
		weekendClass = ' ZventsDayButtonAll';
        switch(ZventSearchWhat)
        {
            case 'movie':
		        button( 'All', 'Movies', partner+'movies/', 'any day' );
                break;

            default:
		        button( 'All', 'Events', partner, 'any day' );
                break;
        }
		function button( date, day, url, title, clas ) {
			switch(date)
			{
				case 'All':
					document.write( [
					'<div style="float:left;width:48px;"><a href="', url, '" ',
					'class="ZventsDayButton', todayClass, weekendClass, '" ',
					'title="View events for ', title, '" ',
					'>',
					'<span class="ZventsDayButtonDate">', date, '</span>',
					'<span class="ZventsDayButtonDay">', day, '</span>',
					'</a></div>',
					].join('') );
					break;

				default:
					document.write( [
					'<div style="float:left;width:34px;margin-right:2px;"><a href="', url, '" ',
					'class="ZventsDayButton', todayClass, weekendClass, '" ',
					'title="View events for ', title, '" ',
					'>',
					'<span class="ZventsDayButtonDate">', date, '</span>',
					'<span class="ZventsDayButtonDay">', day, '</span>',
					'</a></div>',
					].join('') );
					break;
			}
		}
	})();
}

function ZventsSTLTonight() {
	if (typeof ZventsMini == 'undefined') {ZventsSTLNotLoaded();return false;}
	(function( Z ) {

		Z.widget.eventList({
			// Data to load
			load: {
				p: Z.Partner,
				limit: 6,
				srss: 6,
				when: 'Tonight',
				cat: '7',
				search: true,
				st:'event'
			},
			// Maximum length of event title
			maxTitle: 40,
			// Include images
			images: false,
			// Example custom render function for event list
			events: function( events ) {
			return [
				'<div class="zvents_ZventsEventList">',
				events.map(this.event,this).join(''),
				'</div>'
			].join('');
		}
		});
	})( ZventsMini );
}

function ZventsSTLTonightHomePage() {
	if (typeof ZventsMini == 'undefined') {ZventsSTLNotLoaded();return false;}
	(function( Z ) {

		Z.widget.eventList({
			// Data to load
			load: {
				p: Z.Partner,
				limit: 10,
				srss: 6,
				when: 'Tonight',
				cat: '7',
				search: true,
				st:'event'
			},
			// Maximum length of event title
			maxTitle: 40,
			// Include images
			images: false,
			// Example custom render function for event list
			events: function( events ) {
			return [
				'<div class="zvents_ZventsEventList">',
				events.map(this.event,this).join(''),
				'</div>'
			].join('');
		}
		});
	})( ZventsMini );
}

function ZventsSTLEvents(args) {
	if (typeof ZventsMini == 'undefined') {ZventsSTLNotLoaded();return false;}
	(function( Z ) {
	    if(typeof args == 'undefined') args={};
		if(typeof args.p == 'undefined')args.p=Z.partner;
		if(typeof args.limit == 'undefined')args.limit=6;
		if(typeof args.when == 'undefined')args.when='Tonight';

		Z.widget.eventList({
			// Data to load
			load: args,
			// Maximum length of event title
			maxTitle: 40,
			// Include images
			images: false,
			// Example custom render function for event list
			events: function( events ) {
			return [
				'<div class="zvents_ZventsEventList">',
				events.map(this.event,this).join(''),
				'</div>'
			].join('');
		}
		});
	})( ZventsMini );
}

function ZventsSTLSearch(args) {
	if (typeof ZventsMini == 'undefined') {ZventsSTLNotLoaded();return false;}
	(function(Z) {
		if(typeof args == 'undefined')args={};
		if(typeof args.search == 'undefined')args.search=true;
		if(typeof args.st == 'undefined')args.st='event';
		if(typeof args.limit == 'undefined')args.limit=5;
		if(typeof args.srss == 'undefined')args.srss=args.limit;
		if(typeof args.fields == 'undefined')args.fields='id,name,zurl,starttime';
		if(typeof args.has_editors_pick != 'undefined') args.has_editors_pick=Z.partner;
		if(typeof args.p != 'undefined') args.p=Z.partner;
		if(typeof args.ppe != 'undefined') args.ppe=Z.partner;
		if(typeof args.pucc != 'undefined') args.pucc=Z.partner;
		Z.widget.eventList({
			load: args,
			maxtitle: 40,
			images: false,
			events: function(events) {
				return [
					'<div class="zvents_ZventsEventList">',
					events.map(this.event,this).join(''),
					'</div>'
				].join('');
			}
		});
	})(ZventsMini);
}
