TCF Linkbot GM

By yah Last update Oct 13, 2008 — Installed 78 times. Daily Installs: 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

There are 1 previous version of this script.

Add Syntax Highlighting (this will take a few seconds, probably freezing your browser while it works)

// ==UserScript==
// @name           TCF Linkbot GM
// @namespace      http://userscripts.org/scripts/show/35400
// @include        http://www.thecavernforum.org/forums/linkbot/linkbot.php

// ==/UserScript==
// version                     0.10 13 Oct 2008
var local_version = new Number(0.10);

////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Variables
////////////////////////////////////////////////////////////////////////////////////////////////////////
var all = [];
var color_red_link = "lightPink";
var color_green_link = "paleGreen";
var deb = 0;
var hosts = [];
var imgs = [];
var myrapidshareRegExp0 = /http\:\/\/rapidshare\.com\/files\/\d{4,}\/.*?\..*?/;
var myrapidshareRegExp1 = /^.*?http:\/\/rapidshare\.com\/files\/\d{4,}\/.*?\..*?/;
var myrapidshareRegExp2 = /^.*?http%3A%2F%2Frapidshare\.com%2Ffiles%2F\d{4,}%2F.*?\..*?/;
var numberofrslinks = 0;
var other_alive = [];
var other_dead = [];
var other_link_qty = 0;
var other_links = [];
var redirs = [];

////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Check to see if a new version exists
////////////////////////////////////////////////////////////////////////////////////////////////////////
/*
GM_xmlhttpRequest({
	method: "GET",
	url: 'http://userscripts.org/scripts/show/99999',
	headers:{'User-agent': 'Mozilla/4.0 (compatible) Greasemonkey', 'Content-type':'application/x-www-form-urlencoded'},
	data:'',
	onload:function(result) {
		var res = result.responseText;
		//GM_log(res);
		var start_pos = res.indexOf("*Version");
		var stop_pos = res.indexOf("*", start_pos + 1);
		var server_version = new Number(0);
		server_version = res.substr(start_pos + 8, (stop_pos - start_pos - 8 ));
		if (server_version > local_version){
			alert("There is a new version of The Cavern Links Checker. Redirecting to the install page");
			location.replace("http://userscripts.org/scripts/source/29222.user.js");
		}
	}
});
*/
////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Hosts
//   [0] name to categorize links
//   [1] search string to hit on
//   [2] file_is_alive search string
//	 [3] file_is_dead search string -- Sometimes it's easier to match on these
////////////////////////////////////////////////////////////////////////////////////////////////////////

hosts.push (["badongo.com",
			 "BADONGO\.COM\/FILE\/\\d+",
			 /publisher\'s virtual Drive/gi,
			 ""
			 ]);
hosts.push (["depositfiles.com",
			 "DEPOSITFILES\.COM\/(?:\\w\\w\/|)FILES\/\\d+",
			 /all downloading slots for your country|Free downloading mode|depositfiles\.com\/images\/speed_small\.gif/gi,
			 ""
			 ]);
hosts.push (["easy-share.com",
			 "EASY-SHARE\.COM",
			 /FREE DOWNLOAD MODE/,
			 ""
			 ]);				 
hosts.push (["filefactory.com",
			 "HTTP:\/\/WWW\.FILEFACTORY\.COM",
			 /Here are your download options/,
			 ""
			 ]);				 
hosts.push (["mediafire.com",
			 "MEDIAFIRE\.COM",
			 /Click here to start download|you requested/gi,
			 ""
			 ]);				 
hosts.push (["megashare.com",
			 "MEGASHARE\.COM\/\\d+",
			 /Select your download/,
			 ""
			 ]);
hosts.push (["megashares.com",
			 "MEGASHARES\.COM",
			 /Your Download Passport is/gi,
			 ""
			 ]);
hosts.push (["megaupload.com",
			 /HTTP:\/\/MEGAUPLOAD\.COM|HTTP:\/\/WWW\.MEGAUPLOAD\.COM/gi,
			 /\/gui\/c_dnl\.gif|gui\/c_dnl\.swf/gi,
			 ""
			 ]);
hosts.push (["netload.in",
			 "HTTP:\/\/NETLOAD\.IN",
			 /header_login_background.gif/gi,
			 ""
			 ]);
hosts.push (["rapidshare.com",
			 "HTTP\:\/\/RAPIDSHARE\.COM\/FILES",
			 "",
			 ""
			 ]);
hosts.push (["rapidshare.de",
			 "HTTP\:\/\/RAPIDSHARE\.DE\/FILES",
			 /Choose download-type/,
			 ""
			 ]);
hosts.push (["uploaded.to",
			 "HTTP:\/\/UPLOADED\.TO",
			 "",
			 /File doesn\'t exist/gi
			 ]);			 
hosts.push (["ziddu.com",
			 "WWW\.ZIDDU\.COM\/DOWNLOAD",			 
			/\/images\/download-download-img\.gif/gi,
			 "",
			 ]);
hosts.push (["zshare.net",
			 "ZSHARE\.NET\/DOWNLOAD",
			 /last download/gi,
			 ""
			 ]);			 

////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Approved Image Hosts
////////////////////////////////////////////////////////////////////////////////////////////////////////
imgs.push("IMAGESHACK\.US");
imgs.push("PHOTOBUCKET\.COM");
imgs.push("TINYPIC\.COM");
imgs.push("WEBSHOTS\.COM");

////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Redirectors
////////////////////////////////////////////////////////////////////////////////////////////////////////
redirs.push ("BUX\.TO");
redirs.push ("KIJM7\.9HZ\.COM");
redirs.push ("LINKBUCKS\.COM");
redirs.push ("LINKIN\.US");
redirs.push ("LIX\.IN");
redirs.push ("PROTECTLINKS\.COM");
redirs.push ("RAPIDSAFE\.NET");
redirs.push ("RAPIDSHARR\.COM");
redirs.push ("TINYURL\.COM");
redirs.push ("URLHAWK");
redirs.push ("USERCASH\.COM");
redirs.push ("WLINK.US\.COM");

////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Inline Images + GM Styles
////////////////////////////////////////////////////////////////////////////////////////////////////////
alive_link_png = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCAYAAABy6+R8AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH2AMJCQY36Sc4vgAAAlRJREFUeNpV0r9PE3EABfD3veu1lJYr15ZCoBHBqJBAMEbjL0hYFAkyOAmJMUYd/Q+cXF1wYPQPILppYkKIRARiMDGoaAKimBaKHMWDXnu93venE0Tf9Ib3tg/BP7m3NGgwxtKcM4vyIKSk4BBqnwux9/LGKjvckcNy9/1Akgk2ZJHMWNyw+qWUMSGZ51R2FzbdX1NSyOnZWznn6HRn8UqSCv6gLdz58GSsL2voURJIirAWhh+U1fLO4tbKztdJIvHsw/1NR7/97pJBOR9tDXc+6rMGsg4vkd3AhkMdVJgLounkdKLHdL1S13ZpdyMzbK5pnNF0I0mNn4r3Ze3AJrZvo0zL8KkPyil6rTOgipFzrRezLXVt4zWKtBbwWjIeTgyEQlHiUhepcBpNkSaYehxX20Yw2HYd3VYP6iNRYhrpAeojGfJqvs7rRIyKGpSUGOm4iYgWwX7wB72ps/hWXMZCbgaNkUYQrseUr3SNB0JQRj0DBnSlYWN/DcfNEzifuYzVvS94vf4cVeoiBB2ScY8IiBBnytk7KM5XG8qj9SRClrbnUKNVZKLNWMjPwKkWkYk146BSUbZrz0PC0ZuHzaBYLokq9S90p3pMJRnJl35gtfgZQnAko0lY4WY1+2lu63s+N0EE+agXXrkydc3czjtF7noHXccSx82mWIY0hBpgRVMIalK9WX67tfJzfZJo5EVuouAdieh4kk3KQA21J1rGmuoy/UToMSG5t+vaC5u/7Smikenc04LzHyMAaH+cNcBVGgyWClSIgHAA+2DYy00Wjuz9Bce5MucW9xnuAAAAAElFTkSuQmCC';
adead_link_png = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCAYAAABy6+R8AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH2AMJCQkjdGXwDAAAAcpJREFUeNptkj9PFHEQhp/ZBcIhxyKHYgNCYUxogE0OpdDGxsQCY6e5ggS1Mn4Ce621u7MCYqOdX4DkSLTBqwyNiQmJBiJiDjmWP/ub1+IAMXGqmTx5M5nJY5wpwRiQHPfoL2rG8PVksDOBlKRYZWgwxcwkIQlc0o+fDe3sPu6E1dOQIGWg/yUT4zOUBiLtHYAHFBy6YvRrW+Hzl4/e/P2kAJ8iwRhJscrE+AzDwxG3Z2E/oO9bKMvhzj104aLZ1dFr9PZUWzDWASQMDaYqDZjdvAWzd2HkMlpcJKpUsMlJdHiI3i1Ffr4v9d29pEMnt7UyfOkNNjKKTU8Tl8tghq+sEGqvUZwjZA5EAiShPIetLXxhASSIY3An1Gr4xkabq70iar9OkOeoWCSqVMAM8hzMiObnIUnQ0RFyR0DkgNylzhh7cB+bmsLrdQ7n5gj1OlG5TPxoHro7kUsC4mdQUB5u0NdziW/r5q2M/PkLfG2NsLwMkRHevyVkWQib26t+FJYMIIOUvt5XdmXkunXEke/sQchRCNDdRfAQ8vXND97af1qCxqkRLUj9XKFq/cUUMMmRQHKFZquh7OBhCRr/aATQ/I97foxKZ9z7A9QA5voyr3dtAAAAAElFTkSuQmCC';
redir_link_png = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAMCAIAAACx5EmIAAAABGdBTUEAALGPC%2FxhBQAAAuNJREFUSEvVVFtIk2EY%2FldeOCTzQiqzwIWoFEFCqRUJ00Kdu%2BgijA6yqKAbO1xUlumkolBc%2B5da6cwxxSAtcTLxkBSIJ9B1QM3S7EKzYAkeMCoievrfb9%2FcdFsLusmPn5%2F39Dzv87%2Ff938yAMKyW5JoTA2hUIfSUnoMejT0UdDPmoJWi09Aby3yjf6K%2Fy3%2FtAa6GncKgZz%2BYmnai56rzf762Ki%2B9QusBVCd81fsNW%2BH5uJfAQ%2Buh7DOQ%2FQrIyl44YxHCQhM4k7HI5jN6HjrwrRVwyR99zhBnsxhahhtbGdqqzD5AZUV6Bkh1xP4vIWoWlibuQnEyCAo0NzFmaVUlRkjM9xdYBuZw4loBCT6EF3Zhd5ODL6GXMDmk1SkPwRhJRITSd8NNvvsJLLj4qFYS4bUMW8nH4Njr6I3wTKJsmNLgeJhyiYk0FvfiaGHbGMDsENDtBGSvQrxWyloHqDIAlvjOG6mIPyAD9ELJyQuFmNSzQwhT9%2FH7Cxy06iBg%2BtMLRkv73LRBSkQYnhKkcmo570DzzdQUsxEaDIZ6mAEq8m4d4TqHStrO6l3NOJsUsFRxGb5EF33Bg9yqPpWO6voIzs0DCGrEbkFkVGYnaCI1c6yY15Ea8r%2BBKx2O2NSXbIcQfuoPmMDVii5Jmsu%2FwCpEWcDHp%2BFMt%2BH6GEWP7WNYLZvfNKlbLPqtVBfAb5TKruRIgPlXkQfr2AUdkp5AnPZAbNcw8Z4pjUcgUx00X7XpC%2FshhDEJ83ZgAkbmhZdaG63R7%2FzY%2BicrCEnR0l06en0vlTPIuxMp6YiIoSMZz%2Bh3QUhjLfJKOYUlz2A1xmJSkXvzBIqy2NUe9m%2BhwiQhSFtD0UaPi5lS5NDkHtMenoUoohpZ%2FxdD8QijM6T32qCwYBWNm%2FHqi%2BGTo9fwG0Rn4HBdpRbKG4U0T3qKvMEdtURVZ3zusAP3ClBoYlDpJRBxPuv3HVn67bAyFo4l%2FMPcI%2F99%2FayFP0b9B9I5enpru8AAAAASUVORK5CYII%3D';
ok_image_link_png = 'data:image/png;base64,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'
bad_image_link_png = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAF4AAAAOCAIAAAApPjzOAAAABGdBTUEAALGPC/xhBQAABCNJREFUWEftln9M1GUcx7/MbDaEln+0asmyzVuycKNW1vrBghULSPyjyMFa12kc3lEehkyYuXYtfxzxY3CDOrQQ22zgwoZoP0VHoWs2TJuFJWWNYbQif6VJ3avn89z3PL9w4MEf/sWzZ8f7+3k+v573836eEQcY0yMqA4qa6RGVAWOal/EYmKZmXG2EqdndQOFG8Sos5NszfPEeq+umLqi9zdbwM+Tl0fPr1BPGEtnXhdPJuVhcx/fZWU9ZfWg5TI1sphHOqjeZbSfxpmHcOvUiqxdZw88J44cGp54wlsj2NdL8UCyuY3wCz9CsT27p7Zc7D1PT08br2+Bvyd46gC8LY76ZILBGTiPwWSRftRvHci5ewuWkTx9T7w6cLtxuev+Qz1fTI+HyfYGyMvE82kFxHYP7KSyiuVtW7A5erolkVoVWFuOunqhW8CchWs2gdYe7XpPm/wSng+IrckpvRTjLI95dmylyS7e6WTz3SeATBfQHeWE+s9KtqpFzTtIyslKTfwszk/H7mWmQtUkc0gzx2bCBeA06z3K8TkB9A57FAi6AN8NKzaDYt/azdZmApDTyHxGgZmWF/ObpyzvbwJZN0ztS615PlFodw/CD+Jf4KckWoAyXR4iaRBvr1wtYVCor63QhZUlJEKBGi0PAWw08epsAxW/5YyY1fZeoyiVpqZUaOedkKzV3oyqr4FwXlZXkP6hT6xsXOCKeI92Cd2kF723C5zJ3ewLeeNxKzZAsbf+F7W6zP/ojeR4ymFeguxnB58M2Q5YWFqHuxqhaX8LKVIybqK2kxi+rzwVGU6NUo0b+XK7PgP/Ex6flGTr10g6q9PmVB/C9bdrPd4mlSx0pbHZwf8lVqUmBkxJT8Aqlq/DVUbOR030ROkLb6w7yprp9SkdtBPcJ+HkCalaEqTksoOkbaSLjBmzLzNbveYqL8LBB8gr4cXStA/DiAuLm4V1LaQWNjbTtG03N79pgtxGfZWb4KMQWzDDI9Apo8TNHa1bNo0oAnQI6deSeCnJ8V6XmLrPd3FoBmSpRqml5oEyA90nJeBCy402NrNPKHIiZmsBhyZM+iwVKIz0S+/6pMEfFUWrt/5ctBWFyjwhoveJpD12o0DP8vHoylGq0UhKXCBj+QPDn/7DbT9zNJlnKsvZTOCZLn5wX48ctbGq2UvNSCsYcU4FbTlChXqYE8Tj1tcmukciAfveGtPzUbKiV3z3DjGj5qLl4ubZ/Fwk3WxgQe+A4gWfDGzsooErxCikGCTkC7HeYeTLvxJgdpdaHv2m3haab/V0zfehPq8c8GIVz1MuiVA+nvycpLJD2Q2L56xhzw5ZUu5nhRm3xHuBpFXidlRpLkQk/VrnY0Ssewzsl3VexR07e81rWGtPd5P8brl4S1pGBp33y251MxLWsNaav/wG6GRXYoAbWagAAAABJRU5ErkJggg=='

GM_addStyle("#alive_link {background:transparent url("+alive_link_png+") no-repeat scroll 100% 50%;padding-right:17px;}");
GM_addStyle("#adead_link {background:transparent url("+adead_link_png+") no-repeat scroll 100% 50%;padding-right:17px;}");
GM_addStyle("#redir_link {background:transparent url("+redir_link_png+") no-repeat scroll 100% 50%;padding-right:65px;}");
GM_addStyle("#ok_image_link {background:transparent url("+ok_image_link_png+") no-repeat scroll 100% 50%;padding-right:120px;}");
GM_addStyle("#bad_image_link {background:transparent url("+bad_image_link_png+") no-repeat scroll 100% 50%;padding-right:95px;}");

////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Process links
////////////////////////////////////////////////////////////////////////////////////////////////////////
//linkify();

var allLinks, thisLink;
var regex = /(b|B)anner|subscribeForm|mainSubOffer|adbox/gi;
allLinks = document.evaluate( '//div[@id]',
		document, 
		null, 
		XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, 
		null); 
for (var i = 0; i < allLinks.snapshotLength; i++) {
  	thisLink = allLinks.snapshotItem(i);
  	if (thisLink.id.search(regex) != -1) {
  		thisLink.parentNode.removeChild(thisLink);
  		GM_log("Found Div Class: " + thisLink.id);
		GM_log("Found Div Name: " + thisLink.name);
		GM_log("Found Div Class: " + thisLink.class);
		
	}
}



var links = document.getElementsByTagName('a');
for (var i = 0; i < links.length; i++){
	var urll = links[i].href;

	// New Link identifier and categorizer
	urll = urll.replace(/%2F/gi,'/');
	urll = urll.replace(/%3A/gi,':');
	urll = urll.replace(/\?killcode=[\d]*/gi,'');
	if (urll.search(/HTTP:\/\/WWW\.THECAVERNFORUM\.COM|Javascript\:|www\.invision(board|power)\.com|^$/gi) == -1) {
		if (deb){GM_log("Link: " + urll);}
		var alreadyFound = 0;
		//Check to see if it is a redirector links
		for (var ii = 0; ii < redirs.length; ii++){
			if (links[i].href.toUpperCase().search(redirs[ii]) != -1) {
				display_flag(links[i], "REDIR");
				alreadyFound = 1;
			}
		}
		//Check for a valid image link
		if (alreadyFound == 0){
			if (urll.toUpperCase().substr(-4) == ".GIF" || urll.toUpperCase().substr(-4) == ".JPG" || urll.toUpperCase().substr(-4) == ".PNG"){
				if (deb){GM_log("...Image Link");}
				//Image links
				var count = 0;
				for (var ii = 0; ii < imgs.length; ii++){
					if (links[i].href.toUpperCase().search(imgs[ii]) != -1) {
						count = 1;
					}
				}
				if (count == 1){
					display_flag(urll, "OK");
					if (deb){GM_log("......OK");}
				} else {
					display_flag(urll, "BAD");
					if (deb){GM_log("......Bad");}
				}
			} else {
				//Host file links
				if ((links[i].href.search(myrapidshareRegExp0) != -1) || (links[i].href.search(myrapidshareRegExp1) != -1) || (links[i].href.search(myrapidshareRegExp2) != -1) ) {
					if (deb){GM_log("...Rapidshare Link");}
					var urll = links[i].href;
					numberofrslinks++;
					urll = urll.replace(/^.*?http:\/\/rapidshare/gi,'http://rapidshare');
					urll = urll.replace(/^.*?http%3A%2F%2Frapidshare/gi,'http://rapidshare');
					urll = urll.replace(/\?killcode=[\d]*/gi,'');
					urll = urll.replace(/%2F/gi,'/');
					urll = urll.replace(/%3A/gi,':');
					var myString = ''+numberofrslinks+'';
					if (myString.search(/\d00/) != -1){
						all.push('xxxczxczxcsasdasdasdx4234');
					}
						all.push(urll);
				} else {
					if (deb){GM_log("...Non-Rapidshare Link");}
					for (var ii = 0; ii < hosts.length; ii++){
						if (links[i].href.toUpperCase().search(hosts[ii][1]) != -1) {
							if (deb){GM_log("......Matched on host: " + hosts[ii][0]);}
							if (deb){GM_log("......Matched on host string: " + hosts[ii][1]);}
							if (deb){GM_log("......Alive string: " + hosts[ii][2]);}
							if (deb){GM_log("......Dead string: " + hosts[ii][3]);}
							other_links.push(urll);
							other_link_qty = other_link_qty + 1;
							other_alive.push(hosts[ii][2]);
							other_dead.push(hosts[ii][3]);
							alreadyFound = 1
						}
					}
				}
			}
		}
	}
}
all = all.join();     
all = all.replace(/,/gi,'\n');
var all=all.split("xxxczxczxcsasdasdasdx4234");
if (numberofrslinks > 0){
	if (deb){GM_log("RS Link Qty: " + numberofrslinks);}
	get_rs_links_checked(all);
}
other_link_check(other_links);

////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Functions
////////////////////////////////////////////////////////////////////////////////////////////////////////
function get_rs_links_checked(all){
	for (var i = all.length - 1; i >= 0; i--) {
	  	GM_xmlhttpRequest({
	    	method: "POST",
	    	url: 'http://rapidshare.com/cgi-bin/checkfiles.cgi',
	    	headers:{'User-agent': 'Mozilla/4.0 (compatible) Greasemonkey', 'Content-type':'application/x-www-form-urlencoded'},
	    	data:'urls='+encodeURIComponent(all[i]),
	    	onload:function(result) {
				res=result.responseText;
				notfound = res.match(/inexistent<\/td><\/tr><\/table>    \n<div class="downloadlink">http:\/\/rapidshare\.com\/files\/(\d*)\/.*<\/div>/g);
				livelink = res.match(/load<\/a><\/td><\/tr><\/table>    \n<div class="downloadlink">http:\/\/rapidshare\.com\/files\/(\d*)\/.*<\/div>/g);
				if (notfound){
	  				var fotfoundlinks = new Array();   
		  			for (var i = notfound.length - 1; i >= 0; i--) {
	          			var string=notfound[i];
	          			var regex = /inexistent<\/td><\/tr><\/table>    \n<div class="downloadlink">http:\/\/rapidshare\.com\/files\/(\d*)\/.*<\/div>/;
	          			matchArray=string.match(regex);
	          			fotfoundlinks.push(matchArray[1]);
	     			}
	       			if (fotfoundlinks){
	       				DiplayTheDeletedLinks(fotfoundlinks);
	           		}
	           		if (deb){GM_log(".........RS Link -- Deleted");}
	          	}
				if (livelink){
	  				var livelinklinks = new Array();   
		  			for (var i = livelink.length - 1; i >= 0; i--) {
	          			var string=livelink[i];
	          			var regex2 = /load<\/a><\/td><\/tr><\/table>    \n<div class="downloadlink">http:\/\/rapidshare\.com\/files\/(\d*)\/.*<\/div>/;
	          			matchArraylive=string.match(regex2);
	          			livelinklinks.push(matchArraylive[1]);
	     			}
	      			if (livelinklinks){
	      				DiplayTheLiveLinks(livelinklinks);
	          		}
	          		if (deb){GM_log(".........RS Link -- Good");}
	         	}
	  		}
	 	});
	}
}
function DiplayTheDeletedLinks(fotfoundlinks){
	var xpathoffotfoundlinks = "//a[contains(@href,\'" + fotfoundlinks.join('\') or contains(@href,\'') +"\')]";
	var allLinks, thisLink;
	allLinks = document.evaluate( xpathoffotfoundlinks, document,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);
	for (var i = 0; i < allLinks.snapshotLength; i++) {
    	var thisLink = allLinks.snapshotItem(i);
    	display_flag(thisLink.href,"DEL");
  	}
}

function DiplayTheLiveLinks(livelinklinks){
	var xpathoflivelinklinks = "//a[contains(@href,\'" + livelinklinks.join('\') or contains(@href,\'') +"\')]";
	var allliveLinks, thisLink;
	allliveLinks = document.evaluate( xpathoflivelinklinks,	document,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);
	for (var i = 0; i < allliveLinks.snapshotLength; i++) {
    	var thisLink = allliveLinks.snapshotItem(i);
    	display_flag(thisLink.href,"LIVE");
 	}
}

function other_link_check(other_links){
	if (deb){GM_log("Start processing other links");}
	if (deb){GM_log("...Other Links length: " + other_links.length);}
	for (var i = 0; i < other_links.length; i++){
		var file_is_alive = other_alive[i];
		var file_is_dead = other_dead[i];
		var URL = other_links[i];
		if (deb){GM_log("...Link: " + URL);}
		var ret = other_get_url(URL, file_is_alive, file_is_dead);
	}
}

function other_get_url(URL, file_is_alive, file_is_dead){
	if (deb){GM_log("......other_get_url URL: " + URL );}
	if (deb){GM_log("......file_is_alive: " + file_is_alive );}
	if (deb){GM_log("......file_is_dead: " + file_is_dead );}
	GM_xmlhttpRequest({
		method: 'GET',
		url: URL,
		headers: { 'User-agent': 'Mozilla/4.0 [en] (Windows NT 6.0; U)', }, 
		onload: function(responseDetails) {
			var ind = responseDetails.responseText.indexOf(file_is_alive);
			if (file_is_alive != ""){
				if (deb){GM_log("......Using file_is_alive string.");}
				if (responseDetails.responseText.search(file_is_alive) == -1) {
					display_flag(URL, "DEL");
					if (deb){GM_log(".........Match = Del.");}
				} else {
					display_flag(URL, "LIVE");
					if (deb){GM_log(".........Match = Live.");}
				}
			} else {
				if (deb){GM_log("......Using file_is_dead string.");}
				if (responseDetails.responseText.search(file_is_dead) != -1) {
					display_flag(URL, "DEL");
					if (deb){GM_log(".........Match = Del.");}
				} else {
					display_flag(URL, "LIVE");
					if (deb){GM_log(".........Match = Live.");}
				}
			}
		}
	});
}

function display_flag(URL, uType){
	var bgc = "";
	var lnk = "";
	var dec = "";
	switch(uType){
		case "DEL":
			bgc = color_red_link;
			lnk = 'adead_link';
			dec = '';
			break;
		case "BAD":
			bgc = color_red_link;
			lnk = 'bad_image_link';
			dec = '';
			break;
		case "OK":
			bgc = color_green_link;
			dec = "";
			lnk = 'ok_image_link';
			break;
		case "LIVE":
			bgc = color_green_link;
			dec = "";
			lnk = 'alive_link';
			break;
		case "REDIR":
			bgc = color_red_link;
			lnk = 'redir_link';
			dec = '';
			break;
		default:
			break;
	}
	var xpathotherlinks = "//a[contains(@href,\'"+URL+"\')]";
	var allLinks, thisLink;
	allLinks = document.evaluate( xpathotherlinks,	document,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);
	for (var i = 0; i < allLinks.snapshotLength; i++) {
		var thisLink = allLinks.snapshotItem(i);
		thisLink.id = lnk;
		thisLink.style.backgroundColor = bgc;
		thisLink.style.textDecoration = dec;
	}
}

function linkify(){
	try{
		var regex = /((?:https?|ftp):\/\/[^\s'"'<>()]*|[-\w.+]+@(?:[-\w]+\.)+[\w]{2,6})/gi;
		var regex_ends = /\.rar\.html\b/gi;
		var altText, tekst, muligtLink;
		var ikkeTilladteTags = ['a', 'head', 'script', 'style', 'textarea', 'title', 'option', 'pre', 'code'];
		var path = "//text()[not(parent::" + ikkeTilladteTags.join(" or parent::") +")]";
		altText = document.evaluate(path, document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
		for(var i=0;i<altText.snapshotLength;i++){
			tekst = altText.snapshotItem(i);
			muligtLink = tekst.nodeValue;
			if(regex.test(muligtLink)){
				var span = document.createElement('span');
				var lastLastIndex = 0;
				regex.lastIndex = 0;
				for(myArray = null; myArray = regex.exec(muligtLink); ){
					var link = myArray[0];
					span.appendChild(document.createTextNode(muligtLink.substring(lastLastIndex, myArray.index)));
					var href = link;
					var prefix = '';
					if(href.length > 7){
						prefix = href.substring(0,7);
					}
					if(prefix.toLowerCase() != 'http://'){
						href = 'http://' + href;
					}
					
					//Fix links that end in .rar.html
					if (href.search(regex_ends) != -1){
						href = href.substr(0, href.length - 5);
					}
					var a = document.createElement('a');
					a.setAttribute('href', href);
					a.appendChild(document.createTextNode(href));
					span.appendChild(a);
					lastLastIndex = regex.lastIndex;
				}				
				span.appendChild(document.createTextNode(muligtLink.substring(lastLastIndex)));
				tekst.parentNode.replaceChild(span, tekst);
			}
		}
	} catch(e){alert(e);}
}