var LoadBlogsRSS = {
	//methods
	callback: function (oReturn) {	
		try {
			LoadBlogsRSS.payload = oReturn;
			if(LoadBlogsRSS.find(oPageInfo.channel.name, oReturn)) {
				LoadBlogsRSS.load();
			}
		} catch(e) {}
	},
	find: function (sChannel,o) {							
		this.channel = sChannel;
		for(var i=0;i<o.blogs.length;i++) {
			if(o.blogs[i].channels.search(sChannel) != -1) {
				this.blogToGet = o.blogs[i].name;
				return true;
			}
		}
		return false;
	},
	fin:  function () {
		var blogRSS = document.getElementById("blogRSS");
		var whileCap = 0;
		while(blogRSS.innerHTML.search(/Comments\&nbsp;\[0\]/) != -1) {
			var emptyLinkPos = blogRSS.innerHTML.search(/Comments\&nbsp;\[0\]/);
			var startPos = blogRSS.innerHTML.lastIndexOf("&nbsp;|&nbsp;&nbsp;",emptyLinkPos);
			var strToExtract = blogRSS.innerHTML.substring(startPos,(emptyLinkPos+21)) ;
			blogRSS.innerHTML = blogRSS.innerHTML.replace(strToExtract,"");
			if(whileCap <= 10) {
				whileCap++;
			} else {
				break;
			}
		}
	},
	init: function (sURL) {	
		document.write('<scr'+'ipt language="javascr'+'ipt" src="'+sURL+'"></scr'+'ipt>');	
	},
	load : function () {
		var blogRSS = document.getElementById("blogRSS");
		blogRSS.innerHTML += '<div id="ajaxLoading">Loading...</div>';
		blogRSS.className = "ajaxLoading";
		com.reuters.rcom.utils.replaceContent('blogRSS', '/assets/sharedModule?view=RSM-'+LoadBlogsRSS.blogToGet, null, LoadBlogsRSS.fin);
	}		
};
function poller(oToFind,iInterval,iAttempts,oSuccessFunc,oFailFunc) {
	var randomnumber=Math.floor(Math.random()*101); //used to prevent object collision
	eval("poller_"+randomnumber+"= new Object();"); //create a new poller object
	var localPoller = eval("poller_"+randomnumber); //local reference to this new object
	if(typeof(localPoller.counter) == 'undefined' || localPoller.counter == false) {
		localPoller.counter = 0;
	}
	localPoller.doesObjExist = function () {
		if(typeof (oToFind) == 'undefined' || oToFind == false) {
			localPoller.counter++;
			return false;
		} else {
			return true;
		}
	};
	localPoller.tryPolling = function () {
		if(localPoller.counter < iAttempts) {
			if(localPoller.doesObjExist()) {
				clearTimeout(localPoller.timer);
				oSuccessFunc();
			} else {
				localPoller.timer = setTimeout(localPoller.tryPolling, iInterval);
			}
		} else {
			clearTimeout(localPoller.timer);
			oFailFunc();
		}
	};
	localPoller.tryPolling();
}
poller(pageInfo,500,5,oSuccessFunc,oFailFunc);								