if (document.images) {
    _PreloadedImages = new Object();
}

    function imageRollover( id, name )
    {
        if (document.images) {
            document.getElementById(id).src = _PreloadedImages[name].src;
        }
    }

    function buttonRollover ( buttonName, state )
    {
        imageRollover( buttonName, buttonName + "_" + state)
    }

    function preloadImage ( name, url, ext )
    {
        if (document.images)
        {
            url += "." + ext;
            _PreloadedImages[name] = new Image();
            _PreloadedImages[name].src = url;
        }
    }

    function preloadButtonImages ( buttonName, url, ext )
    {
        preloadImage( buttonName + "_on", url + "-on", ext);
        preloadImage( buttonName + "_off", url + "-off", ext);
    }

    function preloadButtonImages_Dim ( buttonName, url, ext )
    {
        preloadButtonImages(buttonName, url, ext);
        preloadImage( buttonName + "_dim", url + "-dim", ext);
    }

function doMsgboxDim( id )
{
	var fade = 400; /* time in milliseconds */
	var opacity = 0.3;
    jQuery("#fuzz").css("height", jQuery(document).height());
    jQuery("#fuzz").css("width", jQuery(document).width());

	var reshow = function() {
        if (fade > 0) {
			jQuery("#fuzz").fadeOut(fade);
			jQuery("#" + id).fadeOut(fade);
		} else {
			jQuery("#fuzz").hide();
			jQuery("#" + id).hide();
		}
	}
	
    jQuery("#fuzz").click(function(){
        reshow();
    });

    jQuery("#"+id).click(function(e){
		if (!e) var e = window.e;
		reshow();
		e.cancelBubble = true;
		if (e.stopPropagation) e.stopPropagation();
		}
	);

    if (fade > 0) {
		jQuery("#fuzz").css({ opacity: 0 });
		jQuery("#fuzz").show();
		jQuery("#fuzz").fadeTo(fade, opacity);
		jQuery("#" + id).fadeIn(fade);
	} else {
		jQuery("#fuzz").show();
		jQuery("#" + id).show();
	}
	
    return false;
}

function reload_banner() {
	var html = document.documentElement;
	var xmlhttp =  new XMLHttpRequest();
	xmlhttp.open('POST', '/random_banner.php', true);
	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			if (xmlhttp.status == 200) {
				var foo = xmlhttp;
				page_backgroundImage = xmlhttp.responseText;
				html.style.backgroundImage = 'url("' +  xmlhttp.responseText + '")';
			}
		}
	}
	xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlhttp.send('previous=' + page_backgroundImage);

	return false;
}

function str_rot13 (str) {
    // Perform the rot13 transform on a string  
    // 
    // version: 1009.2513
    // discuss at: http://phpjs.org/functions/str_rot13    // +   original by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +   improved by: Ates Goral (http://magnetiq.com)
    // +   bugfixed by: Onno Marsman
    // +   improved by: Rafal Kukawski (http://blog.kukawski.pl)
    // *     example 1: str_rot13('Kevin van Zonneveld');    // *     returns 1: 'Xriva ina Mbaariryq'
    // *     example 2: str_rot13('Xriva ina Mbaariryq');
    // *     returns 2: 'Kevin van Zonneveld'
    // *     example 3: str_rot13(33);
    // *     returns 3: '33'    
    return (str+'').replace(/[a-z]/gi, function(s){
        return String.fromCharCode(s.charCodeAt(0)+(s.toLowerCase()<'n'?13:-13));
    });
}
