var layertmp = null;
var run = false;
function init() {
	var so = new SWFObject( "flash/fsound.swf", "fastlane", "28", "28", "7", "#FFFFFF" );
	so.write("flashcontent");
	run = true;
}

function displayDetails( anchor ) {
	if( ! run ) return false;
	if( anchor.nodeType != 1 ) return;
	var tmp = anchor.id.split( '_' );
	var layerid = 'd_' + tmp[1];
	if( layerid != layertmp && layertmp != undefined ) hideDetails( null );
	if( layerid == layertmp ) return false;
	layertmp = layerid;
	var e = $( layerid );
	var myEffects = e.effects( { duration: 500,
														   transition: Fx.Transitions.Sine.easeInOut,
														   onComplete:function( e ) {
														   		e.setStyles( { 'display':'block','opacity':1} );
														   }
														  } );

		e.setStyles( {'display':'block', 'opacity':0 } );
		e.setStyle( 'top', ( e.getStyle( 'height' ).toInt() + 25 ) * -1  ); // +25 => fontsize + padding/margins
		myEffects.start( { 'opacity':[0,1] } );
	return false;
}

function hideDetails( anchor ) {
	var layerid;
	if( anchor != null && anchor.nodeType == 1 ) {
		layerid = anchor.parentNode.id;
		layertmp = undefined;
	} else {
		layerid = layertmp;
	}
	var e = $( layerid );
	if( ! e ) return false; // wrong html! may be there's a textnode
	var myEffects = e.effects( { duration: 500,
														   transition: Fx.Transitions.Sine.easeInOut,
														   onComplete:function( e ) {
														   		e.setStyles( { 'display':'none','opacity':0} );
														   }
														  } );
	myEffects.start( { 'opacity':[1,0] } );
	return false;
}

window.addEvent( 'domready', init );