// Global vars

var Video = new SwiffClass('/static/swf/Video.swf' + (Browser.Engine.trident ? '?'+$time() : ''), { allowFullScreen: true } );
var video;

// Inits the video class and trigger the latest movie including description

function init_video_player( trigger, volume_level ) {
	
	video = new Video({
		media: trigger.get('href'),
		autoPlay: true,
		volume: ( volume_level ) ? volume_level : 0,
		onFileNotFound: function(f){ alert('File not found:', f); }
	});
	
	if( $('video_player_container') ) {
		$('video_player_container').empty();
		video.inject( $('video_player_container'), { id:'video_player' } );
		$('init_start').setStyle( 'display', 'block' );

	}
		
	load_video_description( trigger );
			
}

// Loads movie clips on click event and returs false to prevents the href to fire

function load_movie( trigger, volume_level ) {
	
	video.load( trigger.get('href') );
	video.setVolume( ( volume_level ) ? volume_level : 0 );
	
	load_video_description( trigger );
	
	$('init_start').setStyle( 'display', 'none' );	
	
	return false;

}

// Sets the movie description to "video_description" i exsists and triggers "set_selected_video"

function load_video_description( trigger ) {
	
	var description_heading = null;
	var description_paragraph  = null;

	if( $("video_description") ) {
		
		description_heading = new Element('h3').set( 'text', trigger.getElements('strong')[0].innerHTML );
		description_paragraph  = new Element('p').set( 'html', (trigger.get('title')) ? trigger.get('title').replace('\n','<br />') : '' );
		
		$("video_description").empty();
		$("video_description").appendChild( description_heading );
		$("video_description").appendChild( description_paragraph );
	
	}
	else if( $("video_title") ) {
		
		description_heading = new Element('p').set( 'text', 'Visas: ' + trigger.getElements('strong')[0].innerHTML );
		
		$("video_title").empty();
		$("video_title").appendChild( description_heading );
		
	}
	
	set_selected_video( trigger );	

}

// Removes the class name "selected" from all the movie clips and adds it to the active

function set_selected_video( trigger ) {
	
	var movie_clips = $$('#movie_clips a');
		movie_clips.each( function(a) { a.removeClass('selected') } );
	
	trigger.set('class','selected');

}

// Inits movie clips column

window.addEvent('load', function() {

	var movie_clips = $$('#movie_clips a');
	
	if( movie_clips ) {
		
		movie_clips.each( function(a) { 
			a.addEvents({
				'click' : function() { return load_movie( a, 1 ); },
				'mouseover' : function() { a.setOpacity('0.6'); },
				'mouseout' : function() { a.setOpacity('1.0'); }
			});
		});
		
	}
	
});

// Init first movie in clip list and setup the play button

window.addEvent('load', function(){
	
	var latest_movie = $('movie_1');
	
	if( latest_movie ) {
		var t = setTimeout( 'init_video_player( $("movie_1") )', 300 );
		
		$('init_start').addEvent( 'click', function( event ) {
			load_movie( latest_movie, 1 );
			this.setStyle( 'display', 'none' );		
			event.preventDefault();
		});
		
	}

});

