var newsList = null;
var currentLeague = 0;
var availableHeight = 0;

$(document).ready(function() {
	// START NEWS TICKER:
	$('ol.news-list li').click(function() {
		newsList.show($(this).attr('article_id'));
		return false;
	}).mouseover(
		function() {
			$(this).addClass('hover');
		}
	).mouseout(
		function() {
			$(this).removeClass('hover');
		}
	);
	
	// START RIGHT SIDE:
	availableSpace = $('.news-unit').height() - (36 * $('.leagues .single').length) + 27;
	$('.leagues .selected').height(availableSpace);
	$('.leagues .selected .items').show();

	// LOAD FIRST LEAGUE:
	if ($('.leagues').length > 0) {
		LoadLeague(0, $('.leagues h2:first'));
	}

	$('.leagues h2').click(function() {
		LoadLeague($(this).attr('pos'), this);
	});
	
	// SET BOXES:
	var maxHeight = 0;
	$('.unit .content-wrapper .single').each(function() {
		if ($(this).height() > maxHeight) {
			maxHeight = $(this).height();
		}
	});
	$('.unit .content-wrapper .single').height(maxHeight);
	$('.unit .content-wrapper .single .items .content').height(maxHeight - 39);
});

function LoadLeague(index, heading) {
    $('.leagues .selected .items').hide();
    $('.leagues .selected').css('height', '36px');
	$('.leagues .selected').removeClass('selected');
	$('.leagues .single:eq(' + index + ')').addClass('selected');
	$('.leagues .selected').height(availableSpace);
	$('.leagues .selected .items').html('<div class="league-group">' +
		'<h3>Næstu leikir<img class="loader next-loader" src="/templates/valur/img/loader-small.gif" /></h3>' +
		'<ol class="games next"></ol>' +
		'<h3>Nýjustu úrslitin<img class="loader results-loader" src="/templates/valur/img/loader-small.gif" /></h3>' +
		'<ol class="games results"></ol>' +
		'<h3>Staðan<img class="loader standings-loader" src="/templates/valur/img/loader-small.gif" /></h3>' +
		'<ol class="standings"></ol>' +
		'</div>').show();

	var tournament = $(heading).attr('tournament');
	var division = $(heading).attr('division');
	var season = $(heading).attr('season');
	var filterTeam = $(heading).attr('team');

	Zeus.SportModules.WebService.Fixtures.GetFixtures(tournament, division, season, filterTeam, 'NotStarted', 3, function(r) {
	    $('img.next-loader').hide();
	    if (r.length > 0) {
			$(r).each(function() {
				$('<li><span class="left">' + this.HomeTeam.Name + ' - ' + this.AwayTeam.Name + '</span><span class="right">' + this.Date.format('dd.MM kl. HH:mm') + '</span></li>').appendTo('ol.next');
			});
		} else {
			$('<li>Engir leikir skráðir ...</li>').appendTo('ol.next');
		}
	});
	
	Zeus.SportModules.WebService.Fixtures.GetFixtures(tournament, division, season, filterTeam, 'Completed', 3, function(r) {
	    $('img.results-loader').hide();
	    if (r.length > 0) {
			$(r).each(function() {
				$('<li><span class="left">' + this.HomeTeam.Name + ' - ' + this.AwayTeam.Name + '</span><span class="right">' + this.HomeTeam.Scored + ' - ' + this.AwayTeam.Scored + '</span></li>').appendTo('ol.results');
			});
		} else {
			$('<li>Engir leikir skráðir ...</li>').appendTo('ol.results');
		}
	});
	
	Zeus.SportModules.WebService.Fixtures.GetStandings(tournament, division, season, function(r) {
	    $('img.standings-loader').hide();
		$(r).each(function() {
		    if (this.Name == 'Valur') {
				$('<li class="valur"><span class="left">' + this.Name + '</span><span class="right">' + this.TotalPoints + '</span></li>').appendTo('ol.standings');
			} else {
				$('<li><span class="left">' + this.Name + '</span><span class="right">' + this.TotalPoints + '</span></li>').appendTo('ol.standings');
			}
		});
	});
}

NewsList = function() {
	this.init();
}
jQuery.extend(NewsList.prototype, {
	init: function() {
		this.Items = new Array();
	},
	add: function(id, title, entry, image, link) {
		this.Items[this.Items.length] = {
		    ID: id,
			Title: title,
			Entry: entry,
			Image: image,
			Link: link
		};
	},
	showFirst: function() {
		$('ol.news-list li').removeClass('selected');
		$('ol.news-list li:eq(0)').addClass('selected');

	    $('.main-news-items').fadeOut(100, function() {
		    var newsItem = newsList.Items[0];

		    if (newsItem != null) {
				if (newsItem.Image != null && newsItem.Image.length > 0) {
			    	$('#news_item').html('<div class="news"><div class="img"><img src="' + newsItem.Image + '" /></div><h2><a href="	' + newsItem.Link + '/">' + newsItem.Title + '</a></h2><div class="summary">' + newsItem.Entry + '</div></div>');
				} else {
					$('#news_item').html('<div class="news"><h2><a href="' + newsItem.Link + '/">' + newsItem.Title + '</a></h2><div class="summary">' + newsItem.Entry + '</div></div>');
				}

				$('div.img').each(function() {
					$('<span class="corner tl"></span>').appendTo(this);
					$('<span class="corner tr"></span>').appendTo(this);
					$('<span class="corner bl"></span>').appendTo(this);
					$('<span class="corner br"></span>').appendTo(this);
				});
				$('.main-news-items').fadeIn(100);
			}
		});

	},
	show: function(articleID) {
		$('ol.news-list li').removeClass('selected');
		$('ol.news-list li[article_id="' + articleID + '"]').addClass('selected');

	    $('.main-news-items').fadeOut(100, function() {
	        var newsItem = null;
	        for (var i = 0; i < newsList.Items.length; i++) {
				if (articleID == newsList.Items[i].ID) {
					newsItem = newsList.Items[i];
				}
			}

		    if (newsItem != null) {
				if (newsItem.Image != null && newsItem.Image.length > 0) {
			    	$('#news_item').html('<div class="news"><div class="img"><img src="' + newsItem.Image + '" /></div><h2><a href="	' + newsItem.Link + '/">' + newsItem.Title + '</a></h2><div class="summary">' + newsItem.Entry + '</div></div>');
				} else {
					$('#news_item').html('<div class="news"><h2><a href="' + newsItem.Link + '/">' + newsItem.Title + '</a></h2><div class="summary">' + newsItem.Entry + '</div></div>');
				}

				$('div.img').each(function() {
					$('<span class="corner tl"></span>').appendTo(this);
					$('<span class="corner tr"></span>').appendTo(this);
					$('<span class="corner bl"></span>').appendTo(this);
					$('<span class="corner br"></span>').appendTo(this);
				});
				$('.main-news-items').fadeIn(100);
			}
		});
	}
});