
function loadRSS(url, el, no) {
    var url = (typeof url !== "undefined") ? url: false;
    if (!url) {
        return false;
    }
    if (!document.getElementById(el)) {
        return false;
    }
    $.get(url,
    function(data) {
        
        var containerOnPage = document.getElementById(el);
        var items = data.getElementsByTagName("item");
        var noItems = (typeof no !== "undefined") ? no: items.length;
        for (var i = 0; i < noItems; i++) {
            /*get values*/
            var title = items[i].getElementsByTagName("title")[0].firstChild.nodeValue;
            var shrttitle = getShortTitle(title);
            var pubDate = items[i].getElementsByTagName("pubDate")[0].firstChild.nodeValue;
            var shrtdate = getShortDate(pubDate);
            var snippet = items[i].getElementsByTagName("description")[0].firstChild.nodeValue;
            var shrtsnippet = getString(snippet, 200);
            var veryshrtsnippet = getString(snippet, 45);
            var link = items[i].getElementsByTagName("link")[0].firstChild.nodeValue;
            /* For some reason tags with namespaces work differently in differnt browsers. 		 * Try with the namespace first and if nothing is found, try without. 		 * */
            var sourceElement = items[i].getElementsByTagName("ret:source")[0];
            if (!sourceElement) {
                sourceElement = items[i].getElementsByTagName("source")[0];
            }
            var source = sourceElement.firstChild.nodeValue;
            /*build feed item*/
            var container = document.createElement("div");
            if(i == 0){
            	container.id = "big_news_box";
            }
            else{
            	container.id = "small_news_box";
            }
            
            /* The date */
            var dateDiv = document.createElement("div");
            dateDiv.className = "date";
            
            var dateLink = document.createElement("a");
            dateLink.setAttribute("href", link);
            dateLink.setAttribute("target", "_blank");
            dateLink.setAttribute("title", shrttitle);
            dateLink.appendChild(document.createTextNode(shrtdate));
            /* Image?*/
            dateDiv.appendChild(dateLink);
            container.appendChild(dateDiv);
            
            /* The title */
            var textDiv = document.createElement("div");
            if(i == 0){
            	textDiv.setAttribute("class", "big_news_text");
            }
            else{
            	textDiv.setAttribute("class", "small_news_text");
            }
            
            var textLink = document.createElement("a");
            textLink.setAttribute("href", link);
            textLink.setAttribute("target", "_blank");
            textLink.setAttribute("title", shrttitle);
            
            /* Create the text node. It is a */
            var heading;
            if(i == 0){
            	heading = document.createElement("h2");
            	heading.appendChild(document.createTextNode(title));
            }
            else{
            	heading = document.createElement("span");
            	heading.setAttribute("class", "small_news_heading");
            	heading.appendChild(document.createTextNode(shrttitle));
            }
            textLink.appendChild(heading);
            
            if(i == 0){
            	textLink.appendChild(document.createElement("br"));
            	textLink.appendChild(document.createTextNode(shrtsnippet));
            }
            else{
            	textLink.appendChild(document.createElement("br"));	
            	textLink.appendChild(document.createTextNode(veryshrtsnippet));
            }
            textDiv.appendChild(textLink);
            container.appendChild(textDiv);
            containerOnPage.appendChild(container);
        }
    });
}

function getString(string, limit){
	if(string.length <= limit){
		return string;
	}
	return string.substring(0, limit) + "...";
}

/*
 * Parses the date and formats it in the yyyy-MM-dd format
 * Fix for Safari and IE that can not parse the date that checkes for 'Na'N' or 'Invalid Date'
 */
function getShortDate(pubDate){
	var d = new Date(Date.parse(pubDate));
	if(d=='Invalid Date' || d == 'NaN'){
		return pubDate;
	}
	var month = (d.getMonth() +1);
	var day = d.getDate();
	if(month < 10){
		month = "0" + month;
	}
	if(day < 10){
		day = "0" + day;
	}
	return d.getFullYear() + "-" + month + "-" + day;
}

function getShortTitle(title){
	var result = title.substring(0, 45);
	if(title.length > 45){
		result = result + "...";
	}
	return result;
}


