function urlGetSegments(url) {
    var a =  document.createElement('a');
    a.href = url;
    return a.pathname.replace(/^\//,'').split('/');
}

function getContent($url)
{
	var content = '';

	$.ajax({
		url:$url,
		success:function(result){
			if(result)
			{
				var xmlDoc;
				xmlDoc = result;
				/*
				try //Internet Explorer
				{
					xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
					xmlDoc.async="false";
					xmlDoc.loadXML(result);
				}
				catch(e)
				{
					try //Firefox, Mozilla, Opera, etc.
					{
						var parser=new DOMParser();
						xmlDoc=parser.parseFromString(result,"text/xml");
					}
					catch(e)
					{
						//alert(e.message);
						return;
					}
				}				
*/
				$(xmlDoc).find('item').each(function() {	
					var $item = $(this);
					// grab the post title
					var title = $item.find('title').text();
					// grab the post's URL
					var link = $item.find('link').text();
					content += '<li><a href="' + link + '" >'+ title +'</a></li>';
				});
			}
		},
		async:   false
	});
	return content;
}	

function getUrl($type)
{
	var segments = urlGetSegments(document.location);
	var division='';
	
	if(segments[0]) 
		division = '../'; 
	else
		division='';
	
	return division+$type+'/rss/'+segments[0];	
}

$(document).ready(function(){
	var ul = 'ul#Ticker';
	var container = $('#TickerContainer');
	var speed = 20000; //ms to complete animation
	
	var real_ul_width = 0;

	$(ul).html(getContent(getUrl('news')));
	$(ul).append(getContent(getUrl('carriers')));

	if($(ul).html() != '')
	{
		$(ul).css({left:container.width()});

		$(container).slideDown('slow',function (){

			var ul_html = $(ul).parent().html();
			
			var padding_right = parseInt($(this).css('padding-right'));

			$(ul + ' li').each(function(){
				real_ul_width += ($(this).width() + parseInt($(this).css('padding-right')));
				
			});

			real_ul_width = real_ul_width + container.width() - padding_right;

			//var scroll_amount = real_ul_width + container.width();
			//speed = speed + (speed * (real_ul_width/container.width()));

			a_scroll(ul);

			$(container).mouseenter(function() {
				$(ul).stop();
			});

			$(container).mouseleave(function(){
				a_scroll(ul);
			});

			function first_to_last(ul_x){
				$(ul_x).remove();
				container.append(ul_html);
				container.children().css({left: container.width()});
				a_scroll(container.children());
			}

			function a_scroll(ul){
				var scroll_speed = speed + (speed * (real_ul_width/container.width()));
				var scroll_amount = real_ul_width + 50;
				
				if(parseInt($(ul).css('left')) < container.width())
				{
					scroll_amount = 50 + real_ul_width - (container.width() - parseInt($(ul).css('left')));
					scroll_speed = speed * (scroll_amount/container.width());
				}
				else
				{
					scroll_amount = real_ul_width + 50;
					scroll_speed = speed * (scroll_amount/container.width());
				}
				
				$(ul).animate({
					left: '-='+scroll_amount},
					scroll_speed,
					'linear',
					function(){
						first_to_last(ul);
					}
				);
			}
		});
	}
});
