/* Copyright (c) [Darren Kovalchik](http://ellipsisentity.com), MIT Style License.
*/
var LinkAlert=new Class({typeOrder:["external","secure","secureExternal","blank","mail","picture","pdf","rss","video","audio","streaming","archive","code","document","text","spreadsheet","presentation","paint","vector","plugin","program","iso"],types:{picture:["jpg","jpeg","png","gif","bmp"],pdf:["pdf"],rss:["rss","atom"],video:["avi","divx","mov","flv","swf","mpeg","mpg","mpe","wmv","asf","rm"],audio:["mp3","mp2","ogg","oga","wma","ra","wav","mid"],streaming:["asx","pls","m3u","xspf","b4s","wpl","ram","zpl"],archive:["zip","tar","rar","dmg","7z","gz","tgz"],code:["js","css","phps"],document:["doc","docx","odt","pages"],text:["txt","rtf"],spreadsheet:["xls","xlsx","ods","numbers"],presentation:["ppt","pptx","odp","key","keynote"],paint:["psd"],vector:["ai","eps"],plugin:["xpi"],program:["exe","dll","msi","app"],iso:["iso"]},iconSize:16,initialize:function(a){a=$pick(a,"/js/linkalert/");a+=(Browser.Engine.trident4)?"icons-8bit.png":"icons.png";this.domain=($chk(document.domain))?document.domain:null;this.types=new Hash(this.types);this.container=new Element("div",{styles:{position:"absolute",top:0,left:-50,width:16,height:16,overflow:"hidden",zIndex:9999}}).inject(document.body);this.icons=new Element("img",{src:a,styles:{position:"absolute",top:0,left:0}}).inject(this.container);this.icon=new CursorTail(this.container);if(Browser.Engine.gecko){this.disableExtension()}this.setupLinks()},setupLinks:function(){$$("a").each(function(b){var c=b.get("href");var d=$pick(this.identifyType(c),this.identifyBlank(b.get("target")),this.identifyProtocol(c));if(d){b.addEvent("mouseover",function(){this.icons.setStyle("left",-this.typeOrder.indexOf(d)*this.iconSize);this.icon.attach()}.bind(this));b.addEvent("mouseout",function(){this.icon.detach()}.bind(this))}},this)},identifyType:function(b){var c=b.getExtension();var a=null;this.types.each(function(e,d){if(!a){if(e.contains(c)){a=d}}});return a},identifyBlank:function(a){return(a=="_blank")?"blank":null},identifyProtocol:function(a){var b=a.getProtocol();return(b=="http"&&!a.contains(this.domain))?"external":(b=="https"&&!a.contains(this.domain))?"secureExternal":(b=="https")?"secure":(b=="mailto")?"mail":null},disableExtension:function(){new Element("style",{text:"#linkalert-box{display:none}"}).inject(document.head)}});var CursorTail=new Class({initialize:function(a){this.element=document.id(a);var b=(Browser.Platform.win)?15:11;var c=(Browser.Platform.win)?13:9;this.moveWithMouse=function(d){a.setStyles({left:d.page.x+b,top:d.page.y+c})};a.setStyles({position:"absolute",top:0,left:-9999})},attach:function(){document.addEvent("mousemove",this.moveWithMouse)},detach:function(){document.removeEvent("mousemove",this.moveWithMouse);this.element.setStyle("left",-9999)}});String.implement({getExtension:function(){var a=this.split("?")[0].split(".");if(a.length<2){return null}return a.getLast()},getProtocol:function(){var a=this.split(":");if(a.length<2){return null}return a[0]}});