
/* Plugin version: 0.3a */
var t1;
function loadSimileTimeline() {
	
	if(document.getElementById("stl-timeline")){	
		
		// ### create custom theme
		var mytheme = Timeline.ClassicTheme.create();
		// ### style events
		mytheme.event.label.width = 200;
		mytheme.event.bubble.width = 320;
		mytheme.event.bubble.height = 160;
		
		mytheme.event.label.insideColor = '#fff';
		mytheme.event.label.outsideColor = '#000';
		mytheme.event.instant.icon = Timeline.urlPrefix + "images/gray-circle.png";
		// ### style ethers (bands)
		mytheme.ether.backgroundColors = ['#eee',
						'#ddd',
						'#ccc',
						'#aaa'
										];
		mytheme.ether.interval.line.color = '#aaa';

		// ### duplicate theme and apply to lower band
		var mytheme_second = Timeline.ClassicTheme.create();
		mytheme_second = mytheme;
		mytheme_second.ether.interval.line.color = '#aaa';
		mytheme_second.event.label.insideColor = '#fff';
		mytheme_second.event.label.outsideColor = '#000';
		
		
		var eventSource = new Timeline.DefaultEventSource();
		
		var bandInfos = [
		Timeline.createHotZoneBandInfo({
			zones: [{
						start:	"Jul 09 2007 00:45:02 GMT-0700",
						end:	"Jul 02 2008 19:38:30 GMT-0700",
						unit: Timeline.DateTime.MONTH, 
						magnify: 1
					}],
			locale: 'en',
			showEventText:	true,
			eventSource:    eventSource,
			date:           "Feb 05 2012 06:07:36 GMT-0700",
			width:          "70%",
			intervalUnit:   Timeline.DateTime.MONTH,
			intervalPixels: 100,
			theme:	mytheme
		}),
		Timeline.createHotZoneBandInfo({
			zones: [{
						start:	"Jul 09 2007 00:45:02 GMT-0700",
						end:	"Jul 02 2008 19:38:30 GMT-0700",
						unit: Timeline.DateTime.YEAR, 
						magnify: 1
					}],
			locale: 'en',
			showEventText:	false,
			trackHeight:	0.5,
			trackGap:	0.3,
			eventSource:    eventSource,
			date:           "Feb 05 2012 06:07:36 GMT-0700",
			width:          "30%",
			intervalUnit:   Timeline.DateTime.YEAR,
			intervalPixels: 200,
			theme:	mytheme
		})	  ];

		bandInfos[1].syncWith = 0;
		bandInfos[1].highlight = true;
		bandInfos[1].eventPainter.setLayout(bandInfos[0].eventPainter.getLayout());

		tl = Timeline.create(document.getElementById("stl-timeline"), bandInfos, 0);
		tl.loadXML("/listings/wp-content/plugins/simile-timeline/timeline.xml.php?cat=1",
			function(xml, url) {
				eventSource.loadXML(xml, url);
		});
  
  }else{ /* empty - do nothing when no timeline-frame is found */ }
}

var resizeTimerID = null;
function resizeSimileTimeline() {
    if (resizeTimerID == null) {
        resizeTimerID = window.setTimeout(function() {
            resizeTimerID = null;
            tl.layout();
        }, 500);
    }
}

/* addEvent function - by Scott Andrew 
 * http://www.scottandrew.com/weblog/articles/cbs-events
 */
function addEvent(obj, evType, fn){ 
	if (obj.addEventListener){ 
		obj.addEventListener(evType, fn, false); 
		return true; 
	} else if (obj.attachEvent){ 
		var r = obj.attachEvent("on"+evType, fn); 
		return r; 
	} else { 
		return false; 
	} 
}

// use cool onload observer if prototype.js is installed
if(Event.observe){
	Event.observe(window, "load", loadSimileTimeline);
	Event.observe(window, "resize", resizeSimileTimeline);
}
// otherwise fall back to non-standard addEvent
else{ 
	addEvent(window, "load", loadSimileTimeline);
	addEvent(window, "resize", resizeSimileTimeline);
}

