Movie Torrent Search Linker for IMDB, Rotten Tomatoes and Yahoo Movies

By Sharath Last update Oct 28, 2009 — Installed 4,372 times. Daily Installs: 23, 13, 11, 14, 20, 8, 8, 16, 9, 1, 14, 13, 9, 9, 17, 14, 8, 4, 12, 10, 16, 6, 7, 8, 6, 6, 11, 8, 8, 5, 13, 4

There are 29 previous versions of this script.

// ==UserScript==
// @name          Movie Torrent Search Linker for IMDB, Rotten Tomatoes and Yahoo Movies  V0.3.5.1
// @author        Sharath
// @namespace     http://technowise.blogspot.com
// @description   Adds torrent search links, and drop down torrent results in IMDB, Rotten Tomatoes and Yahoo movie pages.
// @include       http://*rottentomatoes.com/m/*
// @include       http://*imdb.com/title/*
// @include		  http://*movies.yahoo.com/movie/*
// ==/UserScript==
										/*
											This script owes credits to authors of following scripts:
											*IMDB pirated version 
											*IMDB Popular Torrent Search 
										*/
	var prevDrop = "";										
	// Adds Torrent Links and Drop-downs 	
    function startAddingLinks() 
    {
		var movieTitle = "";
		var addLinksToObj = "";

		$('<img />').attr('src', 'http://avsharath.googlepages.com/showResultsDownActive.gif'); //preload active drop image
		
		if(/rottentomatoes/.test(document.location.href)  ) //If its on Rotten Tomatoes, obtain the rotten tomatoes elements
		{
			var addLinksToObj = $(".movie_info_area")[0];
			movieTitle = $(".movie_info_area > h1:first").text();
		}
		else
		if(/imdb/.test(document.location.href) )//obtain IMDB page elements
		{
			var addLinksToObj = $("#tn15content")[0];
			movieTitle = $("title").text();
		}
		else
		if(/movies.yahoo/.test(document.location.href) ) //For yahoo movies
		{
			var addLinksToObj = $("h1:first").parents("td:first")[0];
			movieTitle = ($("title").text()).split("-")[0];
		}
		
		if( addLinksToObj && movieTitle.length > 0 )
		{

			movieTitle = movieTitle.replace(/^\s+|\s+$/g, ''); //trim the title
			movieTitle = movieTitle.replace(/\s/g, "+"); //replace spaces with +'s
			movieTitle = movieTitle.replace(/[\?#]!\"/g, ""); //remove bad chars 
			movieTitle = movieTitle.replace(/[()]/g, ""); //remove braces in movie title

			var torrentsDiv = addLinksToObj.insertBefore(document.createElement("div"), addLinksToObj.firstChild);
			torrentsDiv.id = "gm_links";			
			$(addLinksToObj).prepend(torrentsDiv);
			
			dropDownResultsDiv = document.createElement("div");
			$(dropDownResultsDiv).attr( {
				id: 'btResultsDiv',
				name: 'btResults'		
			} );
			
			$(dropDownResultsDiv).css({ 'padding':'5px', 'background-color':'#fff','width':'650px', 'position':'absolute', 'display':'none', 'overflow':'auto', 'z-index':'12000', 'border':'2px solid'});
			
			torrentsDiv.appendChild(dropDownResultsDiv);			
			
			GM_addStyle("@namespace url(http://www.w3.org/1999/xhtml); #gm_links a { vertical-align:bottom; font-weight:bold; outline: none;};");
			GM_addStyle("@namespace url(http://www.w3.org/1999/xhtml); #gm_links a img { border: 0; padding: 0;};");
			
			var torrentLinksSpan = torrentsDiv.insertBefore(document.createElement("span"), torrentsDiv.firstChild );
			
			img = "data:application/octet-stream;base64,Qk04AwAAAAAAADYAAAAoAAAAEAAAABAAAAABABgAAAAAAAAAAADgTAAA4EwAAAAAAAAAAAAA%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Fv7%2B%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FPz8vb297Ozs%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F4uLiSUlJ3d3d%2F%2F%2F%2F%2F%2F%2F%2F8%2FPzEhIScnJy8fHx%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F8fHxwsLCWFhYAAAAyMjI%2F%2F%2F%2F%2F%2F%2F%2F5%2BfnEBAQICAgQkJCV1dXZWVli4uLiYmJUlJSKioqPT09bm5uHh4eYWFhwcHBubm5bGxsQEBAp6end3d3FBQUAAAAFBQUOTk5ISEhGRkZPT09WVlZQkJCKioqJycnenp6AAAAQUFBPz8%2FYGBgjo6O0dHR%2B%2Fv7%2F%2F%2F%2F%2F%2F%2F%2F7%2B%2FvxcXFnZ2dg4ODExMTQEBAv7%2B%2FAAAAgoKCjo6OpaWltra2qqqqpqampaWlpKSkra2tr6%2BvsbGx5eXll5eXW1tb1NTUcXFxmJiYAwMDAAAANzc3VFRUGxsbAAAAX19fPDw8ERERAAAAQUFB%2Fv7%2B%2FPz8%2F%2F%2F%2F%2F%2F%2F%2FnJycAAAAAAAAAAAAHx8fCwsLAAAAJiYmBQUFAAAAAAAAKysr%2Bvr6%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FnJycAAAAAAAADw8PAAAAAAAAAAAAAAAADQ0NAwMDAAAANjY2%2Bvr6%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Frq6uAAAANjY25eXlWVlZHx8fJycnIyMj0dHRhoaGAAAAV1dX%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Fr6%2BvAAAALS0t0tLSX19fsrKy2dnZZWVlsrKyiIiIAAAAWVlZ%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Fr6%2BvAAAAAAAABQUFAgICExMTEBAQAwMDAwMDAQEBAAAAWlpa%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Fq6urAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVFRU%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F19fXSUlJQUFBQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQkJCQkJCqKio%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2Fv7%2B%2Fv7%2B%2Fv7%2B%2Fv7%2B%2Fv7%2B%2Fv7%2B%2Fv7%2B%2Fv7%2B%2Fv7%2B%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FAAA%3D";
			buildLink(torrentLinksSpan, "The Pirate Bay","http://thepiratebay.org/search/"+movieTitle+"/0/7/200", img);

			img = "data:image/x-icon;base64,AAABAAEAEBAAAAEAGABoAwAAFgAAACgAAAAQAAAAIAAAAAEAGAAAAAAAQAMAAAAAAAAAAAAAAAAAAAAAAADRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWD////////////////////////////////////////////////////////RnWDRnWD///////+ATTOATTOATTOATTOATTOATTP////////////////////////RnWDRnWD///////+ATTOATTOATTOATTOATTOATTOATTP////////////////////RnWDRnWD///////////////////////+ATTOATTOATTOATTP////////////////RnWDRnWD///////////////////////+ATTOATTOATTOATTP////////////////RnWDRnWD///////////////////////+ATTOATTOATTOATTP////////////////RnWDRnWD///////////////////////+ATTOATTOATTOATTP////////////////RnWDRnWD///////////////////////+ATTOATTOATTOATTP////////////////RnWDRnWD///////////////////////+ATTOATTOATTOATTP////////////////RnWDRnWD///////////////////////+ATTOATTOATTOATTP////////////////RnWDRnWD////////////////////////////////////////////////////////RnWDRnWD///////////////////////////+ATTOATTP////////////////////RnWDRnWD///////////////////////////+ATTOATTP////////////////////RnWDRnWD////////////////////////////////////////////////////////RnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWDRnWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
			buildLink(torrentLinksSpan, "btjunkie","http://btjunkie.org/search?q="+movieTitle, img);
			
			img = "data:image/x-icon;base64,AAABAAEAEBAQAAAAAAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%2F%2F%2F%2FANx3RgDdEREA7rmeAOWXbgD44NcA8825AOuphAD68ekA34BQAOJ%2BRgDx0MEA%2FPLxAP%2F99wDmkmsAMzMzMzMzMzMxEREREREREzERERERERETMRERERERERMxonHCoRUkEzGiccKhFSQTMaJxwqEVJBMxonHCsRUkEzGiQXItHyQTMaK08iVCJxMxoosixSL%2BEzGZ7W0eZuETMRERERERERMxEREREREREzERERERERETMzMzMzMzMzMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
			buildLink(torrentLinksSpan, "mininova","http://www.mininova.org/search/"+movieTitle+"/4/seeds", img);

			img = "data:image/x-icon;base64,AAABAAEAEBAAAAEAGABoAwAAFgAAACgAAAAQAAAAIAAAAAEAGAAAAAAAQAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD39vX28e%2F5%2BfUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkim2EWjTazb0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkimdmMwDBq5oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQv6qymH4AAACulH1mMwCpi3EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD08O16UCaAXDPs5N%2FMu6xmMwCgfl8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD7%2BviadFNzRRPl3tjn39dyRBaJYz4AAAAAAAAAAAC7qJaQbUvfzsYAAAAAAAAAAAAAAAC1m4ZmMwDGs57p4tqFXjh9VCXo4dgAAAAAAADZyrx1SByMbEUAAAAAAAAAAAAAAADJvKtsPQujh2n7%2B%2FqUd1dmMwB1Rxl3SRx3SRx1RxlmNAGKZj%2Fl2NMAAAAAAAAAAADk1c5wQBGNZ0H18O2niGNmMwBtPA52SRx2SRx2SRxtPQxoNQPl2tQAAAAAAAAAAADz8eyHXz9xQxXt6OTMvrNpNwW1mYQAAAAAAAAAAACxloNmMwC6p40AAAAAAAAAAAAAAACjgGJsOgrTx7Xs49uFXjeXdlXv6uMAAAAAAADXzb9sPAujgWYAAAAAAAAAAAAAAAC%2FrZlmNAG4n4gAAAAAAAAAAAAAAAAAAAAAAADn39d3TCGDWS7PwbQAAAAAAAAAAADx7ei6pI7Yyr0AAAAAAAAAAAAAAAAAAAAAAAAAAACJZD9rOgrIs54AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADGsZxmMwCkjnAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADSwLdtPQqDWjL08vAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADy7uju6eQAAADx%2FwAA8f8AAPH%2FAACR%2FwAAAf8AAAHHAACAxwAAgAMAAIADAACA4wAAwGMAAMfhAADH8QAA%2F%2FEAAP%2FwAAD%2F%2BQAA";
			buildLink(torrentLinksSpan, "isohunt","http://isohunt.com/torrents/?ihq="+movieTitle+"&ihs1=2&iho1=d&iht=1", img);
	
			$('body').click(function() 
			{
				if( $("#btResultsDiv:visible")[0] )
				{
					$('#btResultsDiv').fadeOut('slow');
				}
				$(".dropImg").attr("src","http://avsharath.googlepages.com/showResultsDown.gif");							
			});
			
			$('#btResultsDiv').click(function(event)
			{
				event.stopPropagation();
			});


		}
    }

	function buildLink(container, linkText, torrentSiteHref, image)
	{
		var torrentsLink = $(document.createElement("a") );
		torrentsLink.attr({ 
          title: 'Torrents from '+linkText,
          href: torrentSiteHref,
		  name: 'btLink',
		  target: '_new'		  
        });
		
		//For Yahoo movies to use a style becuse there is no default anchor link style for it.
		torrentsLink.addClass("mainon");

		$("#btResultsDiv").data( torrentSiteHref, 'notLoadedYet');

		torrentsLink.text(linkText);
		var img = document.createElement("img");
		img.src = image;
		
		var showResultsAnchor = $(document.createElement("a") );
		
		showResultsAnchor.attr({ 
          id: torrentSiteHref,
          title: 'Torrents from '+linkText,
          href: 'javascript:;',
		  name: 'btResultsDrop'
		  
        });
		
		showResultsAnchor.css( { 'margin-right': '25px' }); 
		showResultsImg = document.createElement("img");
		showResultsImg.src = 'http://avsharath.googlepages.com/showResultsDown.gif';
		$(showResultsImg).addClass("dropImg");
		showResultsAnchor.append(showResultsImg);	
		
		showResultsAnchor[0].addEventListener('click',function(event)		
		{
		 
			event.stopPropagation();
			$(".dropImg").attr("src","http://avsharath.googlepages.com/showResultsDown.gif");			
			// If result is already shown for this site, fade it out.
			if( prevDrop == this.id && $("#btResultsDiv:visible")[0] )
			{
				$("#btResultsDiv").fadeOut('slow');
			}
			else
			{		
				getBtResults(this.id);				
				prevDrop = this.id;	
				$(this).children("img").attr("src","http://avsharath.googlepages.com/showResultsDownActive.gif");			
			}

		}, false);	

		$(container).append(img);
		$(container).append(torrentsLink);    
		$(container).append( showResultsAnchor );			
	}

	function errorLoadingResults()
	{
		$('#PleaseWaitForTorrents').hide();
		$('#btResultsDiv').html("This server is having its share of blue :(");
	}
	
	//Gets the Torrents Data from AJAX GET request.
	/*This function is obtained from IMDB Pirated Version script, and modified for this*/
	function getBtResults(url)
	{
		var torrentResultsData = '';
		
		if( $('#btResultsDiv').data( url ) == 'notLoadedYet')
		{
			$("#btResultsDiv").html("<img id='PleaseWaitForTorrents' src='http://avsharath.googlepages.com/loadingTorrent.gif' />");
			GM_addStyle('div#btResultsDiv{  height: 30px; text-align: center;}');

			$("#btResultsDiv").hide();
			$("#btResultsDiv").css("height", "16px")
			.slideDown('slow');
			
			
			var errorTimer = setTimeout(errorLoadingResults, 10000); //Display error if the GM_xmlhttpRequest doesn't come up with something within 10 secs.
			
			GM_xmlhttpRequest(
			{
				method: 'GET',
				url: url,
				headers: { 'User-agent': 'Mozilla/4.0 (compatible) Greasemonkey'},
				onload: function(rd) 
				{
					clearTimeout(errorTimer);
					$('#PleaseWaitForTorrents').hide();
					
					if( rd.responseText.match(/Did you mean:/) ||
						rd.responseText.match(/No results/) ||
						rd.responseText.match(/Search returned 0 results/) ||
						rd.responseText.match(/No hits/)
					  )
					{
							$('#btResultsDiv').text("No Torrents Found");
							$('#btResultsDiv').data( url, "<span style='height:16px;'>No TorrentsFound</span>");							
					}
					else
					{
						if( url.match(/btjunkie/) )
						{
							torrentResultsData = filterBtjunkieResults(rd.responseText);
							/* $('#btResultsDiv').html( filterBtjunkieResults(rd.responseText) ); */
						}
						else
						if( url.match(/mininova/) )
						{
							torrentResultsData = filterMininovaResults(rd.responseText);
							/* $('#btResultsDiv').html( filterMininovaResults(rd.responseText) ); */
						}
						else
						if( url.match(/isohunt/) )
						{
							torrentResultsData = filterIsohuntResults(rd.responseText);
							/* $('#btResultsDiv').html( filterIsohuntResults(rd.responseText) ); */
						}
						else
						if( url.match(/piratebay/) )
						{
							torrentResultsData = filterPiratebayResults(rd.responseText);
							/* $('#btResultsDiv').html( filterPiratebayResults(rd.responseText) );	*/
						}																
						
						if( ! $("#btResultsDiv:hidden")[0] )
						{
							$('#btResultsDiv').html( torrentResultsData );
							$('#btResultsDiv').data( url, torrentResultsData );
							$('#btResultsDiv').animate( {  
								height: ( Math.min( $('#btResultsDiv>*:first').height(), 250) ) + 'px'
							}, 1500 );								
						}
						
					}//End else result not found		
				}//end onload function.
			});	//End GM_xmlhttpRequest	
		
		}//End if notLoadedYet
		else                     //Show the cached data results for this link.
		{
			if( $('#btResultsDiv:visible')[0] )
			{
				$('#btResultsDiv:visible').fadeOut("slow", 
				function()
				{
					$('#btResultsDiv').html( $('#btResultsDiv').data( url) );
					$('#btResultsDiv').slideDown(1500);
				});
			}
			else
			{
				$('#btResultsDiv').html( $('#btResultsDiv').data( url) );
				$('#btResultsDiv').slideDown(1500);
			}			
			
		}//end Else if notLoadedYet.
	}
	//Ends getBtResults function

	/*Cleanup BTJunkie results data and then style to fit into our drop-down results*/
	function filterBtjunkieResults(rawText)
	{	
		var cleanData="";
		rawText= rawText.replace(/\n/g,'');
		rawText= rawText.replace(/\r/g,'');
		var re = new RegExp('<table cellpadding="1".*?Next', 'i', 'm');
		cleanData = re.exec(rawText);		
		cleanData = cleanData.toString();
		cleanData = cleanData.replace(/<(?:|\/)font.*?>/g,'');
		cleanData = cleanData.replace(/FFFF99/g,'F3EEAD');
		cleanData = cleanData.replace(/<tr bgcolor="#F1F2F6"><th colspan="7" height="4"><\/th><\/tr>/g,'');
		cleanData = cleanData.replace(/<tr bgcolor="#FFFFFF"><th colspan="7" height="4"><\/th><\/tr>/g,'<tr bgcolor="#F3EEAD"><th colspan="7" height="1"></th></tr>');
		cleanData = cleanData.replace(/="\//g,'="http://btjunkie.org/');
		cleanData = cleanData.replace(/>\t\t<a href=.*?\/files\/.*?listfiles.*?<\/a>/g,'>');
		cleanData = cleanData.replace(/<th bgcolor="#FFFF66".*?<\/th>/g,'');
		cleanData = cleanData.replace(/align="center"><table.*/g,'align="center"></table>');
		cleanData = cleanData.replace(/'\/images/g,"'http://btjunkie.org/images");
		cleanData = cleanData.replace(/onclick=".*?"/g,'');	
		GM_addStyle('.label {color:brown !important;}');   
		GM_addStyle('.barback { border: 1px solid #B5B5B5;display: block;background-color:#FFFFFF;width: 38px;height: 7px; }');
		GM_addStyle('.barback2 { border: 1px solid #B5B5B5;display: block;background-color:#FFFFFF;width: 120px;height: 5px; }');
		GM_addStyle('.bar1 { background-color:#FF0000;display: block;width: 6px; height: 7px; }');
		GM_addStyle('.bar2 { background-color:#FFFF00;display:block;width:14px; height:7px; }');
		GM_addStyle('.bar3 { background-color:#32CD32;display: block;width: 22px; height: 7px; }');
		GM_addStyle('.bar4 { background-color:#32CD32;display: block;width: 30px; height: 7px; }');
		GM_addStyle('.bar5 { background-color:#32CD32;display: block;width: 38px; height: 7px;}');
		GM_addStyle('.tab_results { color: #000000; font-weight: normal; font-size:10px !important; background-color:#F3EEAD; padding:1px 0; }');
		return cleanData;
	}

	/*Cleanup Mininova results data and then style to fit into our drop-down results*/
	function filterMininovaResults(rawText)
	{	
		var cleanData="";
		rawText = rawText.replace(/href="\//g,'href="http://www.mininova.org/'); //http://www.mininova.org/tor/1033892
		rawText = rawText.replace(/href="http:\/\/www.mininova.org\/sub/g,'id="linksfrommininova" href="http://www.mininova.org/sub');
		rawText = rawText.replace(/<span id="linksfrommininova">.*?<\/span>/g,'');
		var regexpressmininova = new RegExp('<table class="maintable".*?</tr></table>', 'i', 'm');
		var cleanData= regexpressmininova.exec(rawText);
		cleanData = cleanData.toString();
		cleanData = cleanData.replace(/\/images/g,"http://mininova.org/images/");
		cleanData = cleanData.replace(/onclick=".*?"/g,'');		
		GM_addStyle('table.maintable {font-size:80%; width:98%;} '); 
		GM_addStyle('tr.d {font-size:11px; width:98%;} '); 
		GM_addStyle('.maintable .ti.com {background-color:paleGoldenRod; padding:0px 0px 0px 4px; -moz-border-radius:7px;}'); 
		GM_addStyle('table.maintable tr {	border-bottom:1px solid PaleGoldenrod;}'); 
		GM_addStyle('table.maintable th {	padding: 1px 1px 1px 1px;	background-color: PaleGoldenrod;	-moz-border-radius-bottomleft:4px;	-moz-border-radius: 3px 3px 3px 3px;	border-top-width: 1px;	border-bottom-width: 1px;	border-top-style: inset;	border-bottom-style: inset;	border-top-color: PaleGoldenrod;	border-right-color: #FFFFFF;	border-bottom-color: PaleGoldenrod;	border-left-color: #FFFFFF;}'); 
		GM_addStyle('table.maintable {	border-spacing: 0px;	border-collapse: collapse;	background-color: white;	border-top-width: medium;	border-bottom-width: 0px;	border-top-style: solid;	border-bottom-style: solid;	border-left-style: none;	border-top-color: PaleGoldenrod;	border-bottom-color: PaleGoldenrod;	font-size: small;}'); 
		GM_addStyle('#linksfrommininova{	color: #75808A !important; margin-left:2px; text-transform:lowercase;}'); 
		GM_addStyle('table#maintable > tbody > tr.header a:link  {color:#805B4D;}'); 
		return cleanData;
	}

	/*Cleanup Mininova results data and then style to fit into our drop-down results*/
	function filterIsohuntResults(rawText)
	{	
		var cleanData="";
		var regexpressisohunt = new RegExp('<table id=serps.*?</iframe></td></tr></table></td></tr></table>', 'i', 'm');
		var cleanData= regexpressisohunt.exec(rawText);
		cleanData = cleanData.toString();
		cleanData = cleanData.replace(/href='\//g,'href=\'http://www.isohunt.com/'); 
		cleanData = cleanData.replace(/\n/g,'');
		cleanData = cleanData.replace(/\r/g,'');
		cleanData = cleanData.replace(/<tr class="hlRow".*?>/g,'<tr>');	
		cleanData = cleanData.replace(/<th .*?>/g,'<th>');	
		cleanData = cleanData.replace(/'\/img/g,"'http://isohunt.com/img/");
		return cleanData;
	}

	/*Cleanup and style PirateBay results*/
	function filterPiratebayResults(rawText)
	{
		var cleanData="";
		rawText = rawText.replace(/\n|\r/g, "");
		rawText = rawText.replace(/.*?<table id=\"searchResult\">/,'<table id="searchResult">');
		rawText = rawText.replace(/<\/table>.*/,'</table>');
		rawText = rawText.replace(/href=\"\//g,'href=\"http://thepiratebay.org/');
		cleanData = rawText.toString();
		GM_addStyle('table#searchResult {font-size:80%; width:98%;} '); 
		GM_addStyle('table#searchResult > tbody > tr {background-color:#FFFFFF;} '); 
		GM_addStyle('table#searchResult > tbody > tr > td {border-bottom:1px solid PaleGoldenrod;} '); 
		GM_addStyle('table#searchResult > thead > tr.header {background:paleGoldenRod;font-size:12px;color:#805B4D;font-weight:normal;line-height:131%;} '); 
		GM_addStyle('table#searchResult > thead > tr.header a:link  {color:#805B4D;}'); 
		GM_addStyle('table#searchResult > thead > tr.header a:visited  {color:#805B4D;}'); 
		return cleanData;
	}
	//thepiratebay.org end


	// Check if jQuery's loaded
    function GM_wait() 
    {
        if(typeof unsafeWindow.jQuery == 'undefined') 
		{ 
			window.setTimeout(GM_wait,100); 
		}
        else 
        { 
            $ = unsafeWindow.jQuery;
			startAddingLinks(); 
        }
    }

	if (/rottentomatoes/.test(document.location.href)) //If its on Rotten Tomatoes, obtain the rotten tomatoes elements
	{
		//Adding jQuery is not required as RT already uses that.
		$ = unsafeWindow.jQuery;
		startAddingLinks();			
	}
	else 
	{
		// Add jQuery for IMDB
		var GM_JQ = document.createElement('script');
		GM_JQ.src = 'http://snapsav.googlepages.com/jquery-1.3.2.min.js';
		GM_JQ.type = 'text/javascript';
		document.getElementsByTagName('head')[0].appendChild(GM_JQ);
		GM_wait();
	}