Adds fully formatted output containers
当前为
// ==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
// ==/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 = '<center><img src="' + imgUrls.join('">\n\n<img src="') + '"></center>';
var textareaCss = "cursor:pointer; overflow: auto; height: 100px; background-color: #181817; border: 0 none; border-radius: 4px 4px 4px 4px; color: #ABABA1; font-size: 12px; margin-bottom: 5px; padding: 6px; width: 95%;";
var formattedTextBox = '<h3>Formatted images</h3><textarea style="' + textareaCss + '" wrap="off" onclick="this.select();" title="Click to select">' + formattedText + '</textarea>';
var plainTextBox = '<h3>Unformatted images</h3><textarea style="' + textareaCss + '" wrap="off" onclick="this.select();" title="Click to select">' + plainText + '</textarea>';
$(formattedTextBox + plainTextBox).prependTo("#link-codes > div");