// ==UserScript==
// @name Add helpful icons to links
// @namespace http://vaev.net/cms/link-icons
// @description This adds icons next to links that don't lead to normal HTML documents. For example a link leading to a PDF will display a PDF logo, and a mailto link will display a mail icon
// @author raezr
// @include *
// ==/UserScript==
var css = ''
/* Audio */
+ 'a[href $=".ogg"], a[href $=".OGG"],'
+ 'a[href $=".mid"], a[href $=".MID"],'
+ 'a[href $=".midi"], a[href $=".MIDI"],'
+ 'a[href $=".mp3"], a[href $=".MP3"],'
+ 'a[href $=".wav"], a[href $=".WAV"],'
+ 'a[href $=".wma"], a[href $=".WMA"],'
+ 'a[href $=".ra"], a[href $=".RA"],'
+ 'a[href $=".m4a"], a[href $=".M4A"],'
+ 'a[href $=".ape"], a[href $=".APE"],'
+ 'a[href $=".asf"], a[href $=".ASF"],'
+ 'a[href $=".flac"], a[href $=".FLAC"],'
+ 'a[href $=".speex"], a[href $=".SPEEX"],'
+ 'a[href $=".aac"], a[href $=".AAC"]'
+ '{'
+ ' background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAKCAMAAABVLlSxAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAA/UExURYO1/8zg/5rC/1+f/1ud/+30/63O//v9/+Xv/5S//53E/73X/4K0/0GN/+bw/3at/2aj/3+y5f///wBmzP///7yvI4wAAAAVdFJOU///////////////////////////ACvZfeoAAABeSURBVHjaYhABAkFhECkCEEAMYKYwHwczPztAADEICgoKCwlzsbDyMgIEEIOwsLCQkLCIABsnD0AAMQBZIDYTA7cAQAAhswECCFkNQAAh6wUIIGQzAQKIAckugAADAJRZBqnJZ4GSAAAAAElFTkSuQmCC") center right no-repeat !important;'
+ ' padding:0 13px 0 0 !important;'
+ '}'
/* Video */
+ 'a[href $=".ogm"], a[href $=".OGM"],'
+ 'a[href $=".avi"], a[href $=".AVI"],'
+ 'a[href $=".mpeg"], a[href $=".MPEG"],'
+ 'a[href $=".mpg"], a[href $=".MPG"],'
+ 'a[href $=".mkv"], a[href $=".MKV"],'
+ 'a[href $=".mov"], a[href $=".MOV"],'
+ 'a[href $=".wmv"], a[href $=".WMV"],'
+ 'a[href $=".flv"], a[href $=".FLV"],'
+ 'a[href $=".rm"], a[href $=".RM"],'
+ 'a[href $=".divx"], a[href $=".DIVX"],'
+ 'a[href $=".xvid"], a[href $=".XVID"],'
+ 'a[href $=".m4v"], a[href $=".M4V"],'
+ 'a[href $=".mp4"], a[href $=".MP4"]'
+ '{'
+ ' background: url("data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAMAAAC67D+PAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAASUExURczg9bLR8DOF1maj4P///wBmzL8VgU8AAABLSURBVHjaYmBmZWVkYWFkZWUGCCAGZgYmViBgYmAGCCAGhChAAIFEWYAAKAoQQEiiAAGEpBYggJBEAQIISS1AACGJAgQQklqAAAMARm0BQ7tR/e0AAAAASUVORK5CYII=") center right no-repeat !important;'
+ ' padding:0 13px 0 0 !important;'
+ '}'
/* Documents */
+ 'a[href $=".doc"], a[href $=".DOC"],'
+ 'a[href $=".odt"], a[href $=".ODT"],'
+ 'a[href $=".rtf"], a[href $=".RTF"],'
+ 'a[href $=".docx"], a[href $=".DOCX"],'
+ 'a[href $=".xls"], a[href $=".XLS"],'
+ 'a[href $=".ods"], a[href $=".ODS"],'
+ 'a[href $=".odp"], a[href $=".ODP"],'
+ 'a[href $=".ppt"], a[href $=".PPT"],'
+ 'a[href $=".pps"], a[href $=".PPS"]'
+ '{'
+ ' background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAKCAMAAAC+Ge+yAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAkUExURTOF1i2B1ubw/x130n+y5eHt/6XJ/8zg/2aj/////wBmzP///zvG3SgAAAAMdFJOU///////////////ABLfzs4AAABYSURBVHjaYuACAmYWbm6AAGLg4uTk5GJg4QYIIAYuVnZ2LiZGFoAAYuBi4+AAyQIEEFiEnZ2VCyCAwCIcHGxcAAEEFwEIILgIQACBtYNMAAggBi4oAAgwAGydAoHBcnzyAAAAAElFTkSuQmCC") center right no-repeat !important;'
+ ' padding:0 12px 0 0 !important;'
+ '}'
/* PDF */
+ 'a[href $=".pdf"], a[href $=".PDF"],'
+ 'a[href *=".pdf#"], a[href *=".PDF#"],'
+ 'a[href *=".pdf?"], a[href *=".PDF?"]'
+ '{'
+ ' background: url("data:image/gif;base64,R0lGODlhDwAPAPeOAJV6eqVXVrNEQ7lHRaV4d84+PNlSUNhUUtlUUtpfXdtgX9lhYN9jYdtqaNtradtta9xqaNxxb9h1c9l4d9x6ed96ed1+feB8eq+Af92Aft2Af4WFhYaEhIeGhoeIiIiGhomHh4yLi4+RkZKSkpubm5ycnJ2dnaKlpaWlpaampqmpqbKysra2tre3t7u7u7y8vN2CgdqKit2OjdydnN+gn9WvrtqlpN+1tN25uNy9vNy/v+KCgeSVleOlpOWmpcPDw8TExMvLy9bDw9vExNDQ0NLS0tjX19va2t3d3d7e3t7f39/f397g4N7i4t/i4uXPz+jHxurNzOHV1eHW1ubd3efc3OvU0+7Q0O/f3/Da2eDg4OHh4eHi4uLi4uPj4+Lk5OTi4uTk5Obm5ufn5+Tr6+fo6O3h4ezm5ujo6Ojp6enp6enq6urq6uvr6+zs7O3t7ezu7uzv7+7u7u/v7/Dj4/Lo6PDx8fHx8fHz8/Lx8fLy8vPy8vPz8/L09PT09PX19fb19fb29vb39/f39/j39/j4+Pj5+fn4+Pn5+fr5+fr6+vz8/P39/f7+/v///8zMzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAI8ALAAAAAAPAA8AAAjzAB0tSpQIUaFBgQL9WcjI0aNFXo4cMUIkyA8gL1qs6NIw0RFCiAwWKmTIkKIiKJYw8ljIDyA+fPJgoXMoSRETehAZKXSnJ54sPHzUEVSoxJ1CRAa5eeMmDpQLGp6k4WN0UJBAbNqoKQPGAowpX/YYDfQDkJoxYsKQyXAAB5I5I+aQvZO2CxcpMhJEyOHGAxxALuaE6bLFyY0ZQxoggBCAxh8WcghraWJDwoQFDiYMqPCnRZ4tWpjoeKAgRg0hVQBY4ZMCzZ0zPQzsiELFyxolG+QAUkHiBIYCAgiI6PABBIcQehr9udPnCgMKZuzImS5HD6OAADs=") center right no-repeat !important;'
+ ' padding:0 17px 0 0 !important;'
+ '}'
/* Mail */
+ 'a[href ^="mailto:"]'
+ '{'
+ ' background: url("data:image/png;base64,R0lGODlhEAAQAPcAAE5OTmSh5e43IPBEL/JhT6Ojo4Kz6o298LHQ8rbT87nV873X9L7Y9MLa9cXc9cne9srf9tDj99Hj99bm+Nrp+dzq+d3q+d/s+uHt+uTu+ujx++ny++vz/O30/PD2/PL3/fX5/fn7/vz9/v7+/+0XF////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACQALAAAAAAQABAAAAhzAEkIHEiwoMGDCBMSLMCwocOGAAQWKEGRoggQHTJUiHAgIomJFUeE8KDhAoEBHSWWCGAggEsOGCYMEJDyY8WLGSlEcLCg5kSWLg1YkPCAQQKfJUR+2HBhAoQGChD4PEC1qlWqHgsA2Mq1K1eFYMOKHVswIAA7") center right no-repeat !important;'
+ ' padding:0 18px 0 0 !important;'
+ '}'
/* FTP */
+ 'a[href ^="ftp://"]'
+ '{'
+ ' background: url("data:image/png;base64,R0lGODlhEAAQAPcAAE5OTv8RkouLi4298KjN9LDR9bLT9bjW9rrX9r3Z9sDb98Pc98be98ng+Mzh+M/j+dHk+dXn+dTm+tfo+drp+tzr+t3r+t/s+uLu++Tv++Tw++bx/Ony/Oz0/O71/fD3/fL3/fT4/vb6/vj7//r8//v8//3+//7+/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAAEALAAAAAAQABAAAAh2AAMIHEiwoMGDBwUoXAgAYQABKCKigNgwocSJESsWhBixhAAAIDUOhHiCRAgPA1KKFCjAxAgQHTJYkDBg5UMRHzhgoAChQU2DAjxsuDDhAYMEPzdqqBDBwQIEBpISFMCzgYIDBQhIHZmya1ebIcOGdEi2bMGAAAA7") center right no-repeat !important;'
+ ' padding:0 18px 0 0 !important;'
+ '}'
/* IRC */
+ 'a[href ^="irc://"]'
+ '{'
+ ' background: url("data:image/png;base64,R0lGODlhEAAQAPcAAE5OTmtra2+Xxm+Yx5EtLf8RkouLi4KjyJOty56qzYm68Iu78I298JC+8ZG/8a2z0LW30Ly80JLA8ZPA8ZbB8pjC8pvF8pzF857H86PJ86XL9KjM86rN9LDR9bLR9bfV9bnW9rvX9rzY98PDw8rE0tHH08Pc+Mfe+Mjf+M3i+M/i+dPl+tTm+tXm+trq+t3r+97r+9/t++3t7eXv/Ofx/Ojy/e31/O71/fD3/fL4/fP4/vX6/ff6/vn7/vr8/vz+//3+/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAAUALAAAAAAQABAAAAiSAAsIHEiwoMGDCGUoXKjQoAwDECNGDCBj4EMZQXrkqAFjxYkQCABULGAAow8dBEq0IADBg4YDAAQaCPJjhw0CJFIQeLDhgoOYJIHwuDHDhQoTHzhgmKAAaEkcNF4QiACCQAIKCwQAvRiDBQoRHTJUYDAAwAiLBgCoBWDAQgO1ZxGSlGB2pNy0ceUKNKu3r9+CAQEAOw==") center right no-repeat !important;'
+ ' padding:0 18px 0 0 !important;'
+ '}'
;
if (typeof GM_addStyle != 'undefined')
{
GM_addStyle(css);
}
else if (typeof addStyle != 'undefined')
{
addStyle(css);
}
else
{
var style = document.head.appendChild(document.createElement('style'));
style.type = "text/css";
style.innerHTML = css;
}