/* shorts */
var posterlinks = $$('#shorts ul a');
var shortsVideoLoaded = false;

function shortsVideoLoad (clickevent) {
	
	Event.stop(clickevent);
	clickedelement = Event.element(clickevent);
	if (clickedelement.tagName.toLowerCase() != 'a') { clickedelement = clickedelement.up('a'); }

	if (clickedelement.hasClassName('shorts-link')) {
		$('shortssitelink').appear();
	} else {
		$('shortssitelink').fade();
	}

	new Ajax.Updater('posterframe',clickedelement.readAttribute('href'),{
		method: 'get',
		onSuccess: function(){
			$('posterframe').setStyle({ height: '375px' });
		}
	});
	
	shortsVideoLoaded = true;
}

function shortsPosterMouseover (index,object) {
	
	posterlinks[index].observe('mouseover',function(moevent){

		// Gets any existing poster scroll effect and stops it to avoid conflicts
		Effect.Queues.get('shorts_poster_scroll').each(function(effect) { effect.cancel(); });

		if (!shortsVideoLoaded) { new Effect.Move('posters', { x: 0, y: ((index + 1) * (-354)), mode: 'absolute', duration: 0.7, queue: {position: 'end', scope: 'shorts_poster_scroll'}}); }
	});
	
	posterlinks[index].observe('click',shortsVideoLoad);	
}

for (var i = 0; i < posterlinks.length; i++) {	
	new shortsPosterMouseover(i,$('posters'));
}

$$('#posters div a').each(function(posterlink){
	Event.observe(posterlink,'click',shortsVideoLoad);
});

/* adverts */
var homeAds = [];
var homeAdNum = -1;
var homeAdsFrozen = false;

function homeAdsInit () {
	
	homeAdScroller = new PeriodicalExecuter(function(){
		
		if (homeAdsFrozen) { return; }

		if (homeAdNum >= (homeAds.length - 1)) { homeAdNum = -1; }

		Effect.Queues.get('home_ads').each(function(effect) { effect.cancel(); });

		new Effect.Move('adverts',{
			x: ((homeAdNum + 1) * (-338)),
			y: 0,
			mode: 'absolute',
			duration: 0.3,
			queue: {
				position: 'end',
				scope: 'home_ads'
			}
		});
		homeAdNum++;
	},5);
}

document.observe("dom:loaded", function() {
	
	if ($('adverts')) {
		homeAds = $$('#adverts a');
		homeAdsInit();
		$('adverts').observe('mouseover',function(){ homeAdsFrozen = true; });
		$('adverts').observe('mouseout',function(){ homeAdsFrozen = false; });
	}
});
