Gallery Direct

By poetic scarecrow Last update Mar 13, 2008 — Installed 728 times.
// Gallery Direct
// version 0.1
// 2008-03-13
// Copyright (c) 2008, poetic scarecrow
// Released under the GPL license
// http://www.gnu.org/copyleft/gpl.html
//
// ==UserScript==
// @name         Gallery Direct
// @namespace    about:blank
// @description  In Galleries powered by http://gallery.sourceforge.net/, the thumbnails will link directly to the image, instead of linking to an HTML page which contains it.
// @include      */v/*
// ==/UserScript==

GalleryDirect = function() {
	var elements = getElementsByClass('giThumbnail', document.getElementById('gsThumbMatrix'));
	for each (el in elements) {
		var link = el.getAttribute('src');
		var linkArray = link.split('/');
		var numbers = linkArray[linkArray.length-2].split('-');
		numbers[0]--;
		numbers[1]--;
		linkArray[linkArray.length-2] = numbers.join('-');
		link = linkArray.join('/');
		el.parentNode.setAttribute('href', link);
	}
}

function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

GalleryDirect();