/*
 * Konami-JS ~ Now with iPhone support!
 * Code: http://fonction-js.googlecode.com/
 * Examples: http://www.snaptortoise.com/fonction-js
 * Copyright (c) 2009 George Mandis (georgemandis.com)
 * Version: 1.0.8 (05/08/2009)
 * Licensed under the Artistic License/GPL
 * http://dev.perl.org/licenses/
 * Tested in: Safari 4, Firefox 3, IE7 and Mobile Safari 2.2.1
 */

var fonction = {
	input:"",
	pattern:"38384040373937396665",
	clear:setTimeout('fonction.clear_input()',2000),
	load: function(link) {
		window.document.onkeydown = function(e) {
			fonction.input+= e ? e.keyCode : event.keyCode;
			if (fonction.input == fonction.pattern) {
				fonction.code(link);
				clearTimeout(fonction.clear);
				return;
				}
			clearTimeout(fonction.clear);
			fonction.clear = setTimeout("fonction.clear_input()",2000);
			}
			this.iphone.load(link)
		},
	code: function(link) { window.location=link},
	clear_input: function() {
		fonction.input="";
		clearTimeout(fonction.clear);
		},
	iphone:{
		start_x:0,
		start_y:0,
		stop_x:0,
		stop_y:0,
		tap:false,
		capture:false,
		keys:["UP","UP","DOWN","DOWN","LEFT","RIGHT","LEFT","RIGHT","TAP","TAP","TAP"],
		code: function(link) { window.location=link},
		load: function(link){
			document.ontouchmove = function(e){
			  if(e.touches.length == 1 && fonction.iphone.capture==true){ // Only deal with one finger
			    var touch = e.touches[0]; // Get info for finger #1
				fonction.iphone.stop_x = touch.pageX;
				fonction.iphone.stop_y = touch.pageY;
				fonction.iphone.tap = false; 
				fonction.iphone.capture=false;
				fonction.iphone.check_direction();
			  	}
				}		
			document.ontouchend = function(evt){
				if (fonction.iphone.tap==true) fonction.iphone.check_direction();		
				}
			document.ontouchstart = function(evt){
				fonction.iphone.start_x = evt.changedTouches[0].pageX
				fonction.iphone.start_y = evt.changedTouches[0].pageY
				fonction.iphone.tap = true
				fonction.iphone.capture = true
				}		
				},
		check_direction: function(){
			x_magnitude = Math.abs(this.start_x-this.stop_x)
			y_magnitude = Math.abs(this.start_y-this.stop_y)
			x = ((this.start_x-this.stop_x) < 0) ? "RIGHT" : "LEFT";
			y = ((this.start_y-this.stop_y) < 0) ? "DOWN" : "UP";
			result = (x_magnitude > y_magnitude) ? x : y;
			result = (this.tap==true) ? "TAP" : result;			
			if (result==this.keys[0]) this.keys = this.keys.slice(1,this.keys.length)
			if (this.keys.length==0) this.code(this.link)
			}
		}
}

fonction.code = function() 
        {
                initsnow();
        }

fonction.load();

var snowmax = 35
var snowcolor = new Array("#FF0000","#FFAA00","#000000")
var snowtype = new Array("Verdana","Arial Black","Arial Narrow","Times","Comic Sans MS","Arial","Impact","Lucida Console")
var snowletter = "Forum Orchestres.net"
var sinkspeed = 0.01
var snowmaxsize = 64
var snowminsize = 16

var snowpos = new Array()
var snow = new Array()

for (i = 0; i < snowmax; i++)
{
	document.write("<span id='s"+i+"' style='position:absolute;'><img src=\"http://orchestres.net/forum/bus.gif\" alt=\"Yo !\" /></span>")
	snow[i] = document.getElementById('s'+i);
    snow[i].style.left = '-100%';
}

function random(max) { return Math.floor(max * Math.random()) }

function snowrand(i)
{
    snow[i].style.fontFamily = snowtype[random(snowtype.length)];
    snow[i].size = random(snowmaxsize) + snowminsize;
    snow[i].style.fontSize = snow[i].size;
    snow[i].style.color = snowcolor[random(snowcolor.length)];
    snow[i].speed = sinkspeed * snow[i].size / 5;
    snow[i].style.left = random(100) + '%';
    snow[i].style.top = snowpos[i] + '%';
}

function initsnow()
{
	for (i = 0; i < snowmax; i++)
	{
        snowpos[i] = random(100);
        snowrand(i)
	}

	setInterval("movesnow()",30)
}

function movesnow()
{
	for (i = 0; i < snowmax; i++)
    {
        if(snowpos[i] > 101)
        {
            snowpos[i] = 0;
            snowrand(i)
        }
        else
        {
            snowpos[i] += snow[i].speed;
            snow[i].style.top = snowpos[i] + '%';
        }
	}
}
