Now with cleaner grease!
Display image md5s
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
// ==UserScript== // @name 8chan-MD5 // @version 0.3.1 // @description Display image md5s // @author Anonymous // @match *://8ch.net/* // @grant none // @namespace https://greasyfork.org/users/18941 // ==/UserScript== String.prototype.hexEncode = function() { var result = ""; for (var i = 0; i < this.length; i++) { result += this.charCodeAt(i).toString(16); } return result; }; (function(window, $) { var md5 = { init: function() { // apply md5 to all posts now. md5.append(document.body); // add md5 to any posts that may be added. this.observer = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) { var newNodes = mutation.addedNodes; if (newNodes !== null) { $(newNodes).each(function() { md5.append(this); }); } }); }); this.observer.observe($('.thread')[0], {attributes: true, childList: true, characterData: true}); }, append: function(root) { $(root).find('.files .file').each(function() { var md5 = window.atob($(this).find('.post-image').attr('data-md5')).hexEncode(); $(this).find('.fileinfo .unimportant').append(" <a href='javascript:md5.toggle(\"" + md5 + "\");'>#</a><br/><span id='md5_" + md5 + "' class='hidden'>MD5: " + md5 + "</span>"); }); }, toggle: function(md5) { $('#md5_' + md5).toggleClass('hidden'); } }; md5.init(); window.md5 = md5; })(window, jQuery); |