// ==UserScript== // @name imgur output formatter // @namespace surrealmoviez.info // @description Adds fully formatted output containers // @include http://imgur.com/* // @include http://www.imgur.com/* // @include https://imgur.com/* // @include https://www.imgur.com/* // @version 0.1.5 // @grant none // @downloadURL none // ==/UserScript== function extractUrls() { var imgUrls = []; var html = $('body').html(); var startScript = html.indexOf("var imgurShare = new ImgurShare({"); var endScript = html.indexOf("imgurShare.init()", startScript); var script = html.substring(startScript, endScript); var startRowHashes = script.indexOf("hashes:"); var startHashes = script.indexOf("[{", startRowHashes) + 2; var endHashes = script.indexOf("}]", startHashes); var hashesString = script.substring(startHashes, endHashes); var hashes = hashesString.split("},{"); var startRowCdnUrl = script.indexOf("cdnUrl:"); var startCdnUrl = script.indexOf("//", startRowCdnUrl); var endCdnUrl = script.indexOf(",", startCdnUrl) - 1; var cdnUrl = "http:" + script.substring(startCdnUrl, endCdnUrl); $.each(hashes, function (i, v) { var startImgID = v.indexOf("hash") + 7; var endImgID = v.indexOf(",", startImgID) - 1; var imgID = v.substring(startImgID, endImgID); var startExt = v.indexOf("ext\":") + 6; var endExt = v.indexOf(",", startExt) - 1; var ext = v.substring(startExt, endExt); imgUrls.push(cdnUrl + "/" + imgID + ext); }); return imgUrls; } $(".panel > .social").hide(); // Hide social crap (is duplicated anyway) var imgUrls = extractUrls(); var plainText = imgUrls.join("\n"); var formattedText = '