Tumblr Dashboard High-Res Photos

cxx Gooooooooood Job!!!!
http://userscripts.org/scripts/review/43621

version : 0.0.3.20090306

// ==UserScript==
// @name           Tumblr Dashboard High-Res Photos
// @namespace      http://cxx.tumblr.com/
// @include        http://www.tumblr.com/*
// @require        http://gist.github.com/raw/3242/9dc0cdee5e975d275c7ab71f581d272eb316674f/dollarX.js
// @version        0.0.3.20090306
// ==/UserScript==

(function(){
function highRes(pages) {
	pages.forEach(function(p){
		$X('.//li[contains(@class,"post")][.//img[@width="500" or @height="700"]]', p).forEach(function(li){
			var img = $X('.//img[@class="image"]', li)[0];
			if (!img.src.match(/(\w+)o1_/))
				return;
			var hash = RegExp.$1;
			var postId = li.id.replace('post', '');
			var host = $X('.//a[@class="avatar"]', li)[0].href;
			var highResPath = host + 'photo/1280/' + postId + '/1/' + hash;
			img.src = highResPath;
			img.style.width = img.style.height = 'auto';
		});
	});
}

function addFilter() {
	window.AutoPagerize.addFilter(highRes);
}

var container = $X('id("container")')[0];
if (container)
	container.style.marginLeft = '0';
highRes([document]);

if (window.AutoPagerize)
	addFilter();
else
	window.addEventListener('GM_AutoPagerizeLoaded', addFilter, false);
})();


version : 0.0.1.20090305

/ ==UserScript==
// @name           Tumblr Dashboard High-Res Photos
// @namespace      http://cxx.tumblr.com/
// @include        http://www.tumblr.com/*
// @require        http://gist.github.com/raw/3242/9dc0cdee5e975d275c7ab71f581d272eb316674f/dollarX.js
// @version        0.0.1.20090305
// ==/UserScript==

(function(){
function highRes(pages) {
	pages.forEach(function(p){
		$X('.//li[contains(@class,"post")][.//img[@width="500" or @height="700"]]', p).forEach(function(li){
			var img = $X('.//img[@class="image"]', li)[0];
			var hash = img.src.match(/(\w+)\w{2}_/)[1];
			var postId = li.id.replace('post', '');
			var host = $X('.//a[@class="avatar"]', li)[0].href;
			var highResPath = host + 'photo/1280/' + postId + '/1/' + hash;
			GM_xmlhttpRequest({
				method: 'GET',
				url: highResPath,
				onload: function(res){
					if (res.status == 200) {
						img.src = highResPath;
						img.style.width = img.style.height = 'auto';
					}
				}
			});
		});
	});
}

function addFilter() {
	window.AutoPagerize.addFilter(highRes);
}

highRes([document]);

if (window.AutoPagerize)
	addFilter();
else
	window.addEventListener('GM_AutoPagerizeLoaded', addFilter, false);
})();

GM_xmlhttpRequest とっちゃったんだな。