function slideSwitch() {
    var $active = $('#slideshow DIV.active');

    if ( $active.length == 0 ) $active = $('#slideshow DIV:last');

    // use this to pull the divs in the order they appear in the markup
    var $next =  $active.next().length ? $active.next()
        : $('#slideshow DIV:first');

    // uncomment below to pull the divs randomly
     var $sibs  = $active.siblings();
     var rndNum = Math.floor(Math.random() * $sibs.length );
     var $next  = $( $sibs[ rndNum ] );


    $active.addClass('last-active');

    $next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, 1000, function() {
            $active.removeClass('active last-active');
        });
}

$(function() {
    setInterval( "slideSwitch()", 5000 );
});

function decryptCharcode(n,start,end,offset){
	n=n+offset;
	if(offset>0&&n>end){
		n=start+(n-end-1);
	}
	else if(offset<0&&n<start){
		n=end-(start-n-1);
	}
	return String.fromCharCode(n);
}

function decryptString(enc,offset){
	var dec="";
	var len=enc.length;
	for(var i=0;i<len;i++){
		var n=enc.charCodeAt(i);
		if(n>=0x2B&&n<=0x3A){
			dec+=decryptCharcode(n,0x2B,0x3A,offset);
		}
		else if(n>=0x40&&n<=0x5A){
			dec+=decryptCharcode(n,0x40,0x5A,offset);
		}
		else if(n>=0x61&&n<=0x7A){
			dec+=decryptCharcode(n,0x61,0x7A,offset);
		}
		else{dec+=enc.charAt(i);
		}
	}
	return dec;
}

function mailto(s){
	location.href='mailto:'+decryptString(s,3);
}
