document.getElementsByClassName = function (needle){
    var s = [document.documentElement || document.body], i = 0, r = [], l = 0, e;
    var re = new RegExp('(^|\\s)' + needle + '(\\s|$)');

    do{
        e = s[i];

        while (e){
            if (e.nodeType == 1){
                if (e.className && re.test(e.className)) r[l++] = e;

                s[i++] = e.firstChild;
            }

            e = e.nextSibling;
        }
    }
	
    while (i--);

    return r;
}

function getPositionOfMouse(e) {
	var posx = 0;
	var posy = 0;
	if (!e) var e = window.event;
	if (e.pageX || e.pageY) 	{
		posx = e.pageX;
		posy = e.pageY;
	}
	else if (e.clientX || e.clientY) 	{
		posx = e.clientX + document.body.scrollLeft
			+ document.documentElement.scrollLeft;
		posy = e.clientY + document.body.scrollTop
			+ document.documentElement.scrollTop;
	}
	return [posx,posy];

}
function initPreviewThumbs() {
	var thumbnailImages = document.getElementsByClassName('thumblist');
	
	for (var i=0; i < thumbnailImages.length; i++) {
		var itemAnchors = thumbnailImages[i].getElementsByTagName('a');
		
		for (var j=0; j < itemAnchors.length; j++) {
			itemAnchors[j].onmouseover = function(e) {
				var pos = getPositionOfMouse(e);
				var previewThumb;
				var previewThumbImage;
				
				if(!document.getElementById('previewThumb')) {
					previewThumb = document.createElement('div');
					previewThumb.id = 'previewThumb';
					previewThumb.style.position = 'absolute';
					previewThumbImage = document.createElement('img');
					previewThumbImage.id = 'previewThumbImage';
					previewThumb.appendChild(previewThumbImage);
					document.body.style.position = 'relative';
					document.body.appendChild(previewThumb);

				} else {
					previewThumb = document.getElementById('previewThumb');
					previewThumbImage = document.getElementById('previewThumbImage');
				}
				previewThumb.style.display='block';
				previewThumb.style.left = pos[0]+'px';
				previewThumb.style.top = pos[1]+'px';
			    previewThumbImage.src = this.href.replace('.php','-bigthumb.png');
								
			}
			itemAnchors[j].onmouseout = function() {
				var previewThumb = document.getElementById('previewThumb');
				var previewThumbImage = document.getElementById('previewThumbImage');
				if(previewThumb) {
					previewThumb.style.display='none';
				}
			}

		}
		var itemLIs = thumbnailImages[i].getElementsByTagName('li');
		
		for (var j=0; j < itemLIs.length; j++) {
			var itemLI = itemLIs[j].getElementsByTagName('a')[0];
			
			var smallThumbAnchor  = document.createElement('a');
			smallThumbAnchor.href = itemLI.href;
			smallThumbAnchor.target = itemLI.target;
			smallThumbAnchor.title = itemLI.title;
			
			var smallThumb  = document.createElement('img');
			smallThumb.src = itemLI.href.replace('.php','-thumb.png');
			smallThumbAnchor.appendChild(smallThumb);
			itemLI.parentNode.insertBefore(smallThumbAnchor, itemLI);
		}
	}
}

function initPrintLinkTracking() {
	if(document.getElementById('printLink')) {
		document.getElementById('printLink').onclick = function () {
			if (pageTracker) {
				try {
					pageTracker._trackPageview(window.location.pathname + '?action=print');
				} catch(err) {}
			}
		}
	}
}


