//setup scrolling
$(function() {
	
	//setup listener
	$('.preview .thumbnail a').click(showAsset);
			
	//add click advancement to images
	$('#current_preview img').live('click', function() { 
		
		//get next thumb
		var next_thumb = getNextThumbLink();
		
		//trigger click on it
		next_thumb.trigger('click');
		
	});
	
});

//get the next thumbnail link in the asset list
function getNextThumbLink() {
	
	//find current
	var now_thumb = $('.preview .thumbnail .current').parent();
	var count = now_thumb.parent().children('.thumbnail').length;
	
	//get next thumb
	var index = now_thumb.parent().children('.thumbnail').index(now_thumb)+1;
	if (index >= count) index = 0;
	var next_thumb = now_thumb.parent().children().eq(index).find('a');
	return next_thumb;
}

//show a new asset
function showAsset(e) {

	//stop click
	e.preventDefault();
	
	//identify parts
	var old_thumb = $('.thumbnail .current');
	var new_thumb = $(e.currentTarget);
	var old_asset_url = old_thumb.attr('href');
	var new_asset_url = new_thumb.attr('href');
	if (!showAsset.old_asset) showAsset.old_asset = $('#current_preview *');
	var old_asset = showAsset.old_asset;
	
	//determine file type
	var ext = new_asset_url.substr(new_asset_url.lastIndexOf('.')+1);
	if (ext == 'jpg' || ext == 'jpeg' || ext == 'gif' || ext == 'png') var type = 'image';
	else var type = 'movie';
	
	//no double click
	if (old_asset_url == new_asset_url) return;

	//toggle current
	old_thumb.removeClass('current');
	new_thumb.addClass('current');
	
	//show loader
	var loader = new_thumb.find('.loader');
	loader.fadeIn();
	
	//transition
	var transition = function() {
		var span = 500;
		new_asset.animate({opacity:1}, span, null, function() { old_asset.remove(); });
		$("#current_preview").animate({height:new_asset.height()}, span);
		showAsset.old_asset = new_asset;
		loader.stop();
		loader.fadeOut();
	}

	//image asset
	if (type == 'image') {
		$("#current_preview").append('<img src="'+new_asset_url+'" alt="" />');
		var new_asset = $('#current_preview img:last');
		new_asset.css({opacity:0, position:'absolute', top: 0, left: 0});
		new_asset.load(transition);
		
	//movie asset
	} else if (type == 'movie') {
		var id = 'id'+Math.floor(Math.random()*1000);
		$("#current_preview").append('<div class="asset_movie"><div id="'+id+'">Need flash player</div></div>');
		var poster = new_thumb.find('img').attr('src').replace('75_42c','715_405c');
		addVideo(id, new_asset_url, poster);
		var new_asset = $('#current_preview div:last');
		new_asset.css({opacity:0, position:'absolute'});	
		transition();
	}
}