	Technorati = function(){
	var $R	    = new String; //holder for content to be rendered	
	return {
		init : function(settings){                    
			var sendRequest = function(){
				if (window.XMLHttpRequest) { var req = new XMLHttpRequest();
				}else if (window.ActiveXObject) {
					try {req = new ActiveXObject("Msxml2.XMLHTTP");}catch(e) { req = new ActiveXObject("Microsoft.XMLHTTP");}}
				req.onreadystatechange = function() { if(req.readyState == 4) if(req.status == 404){ handleError(); }else{ handleResponse(req);}}
				req.open('GET','/technorati/'+formatURI(settings.url),true);
				req.setRequestHeader('X-Requested-With','XMLHttpRequest');
				req.setRequestHeader('If-Modified-Since','Wed, 15 Nov 1995 00:00:00 GMT');
				if (req.overrideMimeType) {req.overrideMimeType("text/xml"); }
				req.send(null);	};
			var formatURI = function(uri){
				try{var uri_extracted	= uri.substr(uri.indexOf('story'),uri.indexOf('.html')); var uri_formatted 	= 'http://www.cbc.ca/'+uri_extracted; return uri_formatted.replace(/html?.*/i,'html');}catch(err){$T.handleError();}};
			var handleError	= function(){
				document.getElementById(settings.technorati_holder).style.visibility='visible';										
				return;};
			var handleResponse	= function(req){
				if (req.responseXML.documentElement){
					var technorati 				= req.responseXML.documentElement	}else{				
					var dom 					= new ActiveXObject("MSXML.DOMDocument");
					dom.loadXML(req.responseText);
					var technorati 				= dom.getElementsByTagName('technorati')[0];}
					try{parseRequest(technorati);}catch(err){handleError(); return;}};
			var parseRequest 	= function(t){ 
					var in_links 				= parseInt(t.getElementsByTagName('result')[0].getElementsByTagName('inboundlinks')[0].firstChild.nodeValue);
					var A_blogs					= t.getElementsByTagName('item');
					for(i=0;i<A_blogs.length;i++){
						var blogs			    = new Object();								
						blogs.weblog_name 	    = A_blogs[i].getElementsByTagName('weblog')[0].getElementsByTagName('name')[0].firstChild.nodeValue;
						blogs.excerpt 		    = A_blogs[i].getElementsByTagName('excerpt')[0].firstChild.nodeValue;
                           blogs.nearestpermalink  = A_blogs[i].getElementsByTagName('nearestpermalink')[0].firstChild.nodeValue;
						blogs.url 			    = A_blogs[i].getElementsByTagName('weblog')[0].getElementsByTagName('url')[0].firstChild.nodeValue;
						$R +='<dt><a href="'+blogs.nearestpermalink+'" title="'+blogs.weblog_name+'" target="_blank" rel="nofollow">'+blogs.weblog_name+'</a></dt>\n';}
					$R = '<dl>'+$R+'</dl>';
					renderRequest('<p>Read what bloggers are saying about this article</p>',$R,in_links);};	
			var renderRequest 	= function(p,r,i){
				document.getElementById(settings.content_container).innerHTML=p+r+'<p class="fullp"><a target="_blank" href="http://technorati.com/search/'+formatURI(settings.url)+'?partnerid=410&sort=authority">View '+i+' posts &raquo;</a></p>';
				document.getElementById(settings.technorati_holder).style.visibility='visible';
				document.getElementById(settings.technorati_holder).style.display='block';};
			sendRequest();
		}
	};			
}();
Technorati.init(settings);
