var preloaded1 = new Array();
function preload_images() {
    for (var i = 0; i < arguments.length; i++){
        preloaded1[i] = document.createElement('img');
        preloaded1[i].setAttribute('src',arguments[i]);
    };
};
preload_images(
    'access-denied.png',
    'dashnokern.png',
    'poof.png',
    'lit-up.jpg'
);

function init() {
    spinner.context = document.getElementById("canvas").getContext("2d")
	spinner.context.translate(64, 64);
    spinner.context.clearRect(-64, -64, 128, 128);
    spinner.context.drawImage(spinner.image, -64, -64);
    preload_images();
}

			var sound3Embed = null;
            
            function sound3Play() {
				sound3Embed = document.createElement("embed");
				sound3Embed.setAttribute("src", "pop.aiff");
				sound3Embed.setAttribute("hidden", true);
				sound3Embed.setAttribute("autostart", true);
				sound3Embed.setAttribute("loop", "6");
				document.body.appendChild(sound3Embed);
				//sound3Stop();
			}

            function sound3Stop() {
				if ( sound3Embed ) {
					document.body.removeChild(sound3Embed);
					sound3Embed = null;
				}
			}
			
   var randomnumber= 3 + Math.round((Math.random() * 5));
   var inverter = -1;
   var speedrandom;
   var oneortwo;
    var stopSpin = false;
    
function randomSpinning(speed) {
    stopSpin = "false";
    sound3Play();
    oneortwo = Math.round(Math.random()) + 1;
    if (speedrandom > 3) {
        speedrandom = Math.floor(Math.random()*1) +.9;
    } else {
        speedrandom = Math.floor(Math.random()*4) + 1.1;
    }
    speed = inverter * speed * randomnumber;
    //alert(speed);
    spinner.timer = setInterval(function() {
        if (stopSpin != "true") {
		spinner.context.clearRect(-64, -64, 128, 128);
		spinner.context.drawImage(spinner.image, -64, -64);
		if (Math.abs(speed) < .0001) {
		    //alert(speed);
		    //stopSpin = "true";
		    return;
		    speed = null; 
        }
        speed = speed - (speedrandom * .07) * speed;
        //alert(speed);
		spinner.context.rotate(speed * oneortwo);
		}
	}, speedrandom + 10);
	

	   inverter = inverter * -1;
}

var spinner = {context: null, timer: null, image: null};
spinner.image = new Image();
spinner.image.src = "spinner.png";

function fade(el, from, to, interval, callBack) {
    if (el == new String(el)) el = document.getElementById(el);

    var dif = Math.abs(to - from);
    
    var pi = Math.PI;
    var i = 0;
    
    var opacs = [];
    
    for (var theta=0; theta < 90; theta+=8) { 
        	if (to > from) 
			var step = Math.sin((theta*pi)/180);
		else 
			var step = Math.cos((theta*pi)/180);
		
		opacs.push(dif*step);
    }
        
	var inter = setInterval(
		function() {
			if (++i < opacs.length) {
				el.style.opacity = Math.max(0.01, opacs[i]); 
			} else {
				el.style.opacity = to;

				clearInterval(inter);
				if (callBack != null && el.style.opacity == to) callBack();
			}
		}, interval); 
}

