// ==UserScript== // @name AllConsuming In NetFlix // @namespace http://www.rhyley.org/gm/ // @description Add an AllConsuming search link to every movie link in NetFlix. Also adds a floating link to open a search window for all movie links on the page, for exporting your queue or ratings. // @include http://*.netflix.com/* // @include http://netflix.com/* // ==/UserScript== var allLinks, thisLink, a; var acLink = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAMAAABhq6zVAAAABGdBTUEAAK/INwWK6QAAABl0 RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAEFUExURccAAP/SQMYAAP/WNv/X Nv/YQtAgCv/WQfjAMuyZJ8wNBdQvDs0VB/rFMtEtDf7WQf/cOP/NM9dIFd1dGu+eKt5yLPvJ PvfCPc0JA//bN+aGI84XCP/fOOeCI+2WJ8wHA8wDAeeHMN1hHP/VNf/VNuiJJfSxLv/SP+Nz KdtkJ8sBAMoBAcsDAf/QP80PBf7RNf/QNNAgCddFE//PNP/XQv/SNd5oJ+FsHuZmGtRCFO6i K9pUGO2cKv/RP++kNt1mJ+FpJ/vGM80RBeNiGdU8EeZ5Idc5D/a8MNAhCvzLP+JpG/e+O8UA ANxaGP/jOMgAAMoAAMsAAMkAAP/PP//MM8wAAP///2gh2OwAAABXdFJOU/////////////// //////////////////////////////////////////////////////////////////////// ////////////////////////////AL5jNeMAAADBSURBVHjaYggLC2ZUtNcU9dQNCwMIIIaw EAN3rqCAIBHlkDCAAGIIDmGRDQoNDRJmDgkGCCCGYEF9lwCd0EBDXuNggABiCDZVk5ewDAzV 5lQJBggghmAWc39uG4XQIF/mYIAAYlB39PB3FWALDJTmYAQIIAYTuQAtJSm+wNAgVVaAAGJg tQ4IYPDxB5onxA8QQAziPEFuXhbOeqGBTt4AAcQQxuRv5ScpY8QQxBQGEEAMYWEaYrbB7HZm DmFhAAEGALKJH0DHnzRtAAAAAElFTkSuQmCC"; allLinks = document.evaluate( "//a[contains(@href,'MovieDisplay?movieid=')]", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); for (var i = 0; i < allLinks.snapshotLength; i++) { thisLink = allLinks.snapshotItem(i); title = thisLink.innerHTML; a = document.createElement('a'); a.setAttribute('href', "http://www.allconsuming.net/search/query?q=" + encodeURIComponent(title) + "&product=movie"); a.setAttribute('title', title + " on AllConsuming"); var ac = document.createElement('img'); ac.setAttribute('src', acLink); ac.setAttribute('width', "12"); ac.setAttribute('height', "12"); ac.setAttribute('alt', title + " on AllConsuming"); a.appendChild( ac ); thisLink.parentNode.insertBefore ( a, thisLink.nextSibling); thisLink.parentNode.insertBefore ( document.createTextNode(" "), thisLink.nextSibling); }