/*------------------------------------------------------------------------------
    JS Document (https://developer.mozilla.org/en/JavaScript)

    project:    Phyto
    created:    2009-03-09
    author:     chrand

    summary:    CONSTANTES
                UTILITIES
				FUNCTIONS
                WINDOW.ONLOAD

----------------------------------------------------------------------------- */

/*  =CONSTANTES
----------------------------------------------------------------------------- */
var d = document;
var w = window;
var debug = null;
window.config = {
    debug : false
}
var myClasses = [];
var myTiming = 5000;
var myTimer;


/*  =UTILITIES
----------------------------------------------------------------------------- */
/* getElementsByClassName when not supported */
var matchAll = function() {
    var node = arguments[1] || document;
    var elms = node.getElementsByTagName('*');
    var className = arguments[0];
    if (d.getElementsByClassName) {
        return node.getElementsByClassName(className);
    }
    else {
        var regExp = new RegExp('\\b'+className+'\\b');
        var array = [];
        for (var i = 0; i < elms.length; i++) {
            var current = elms[i];
            if (current.className.match(regExp)) {
                array.push(current);
            }
        }
        return array;
    }
};

/* logs into a textarea for IE and in the console for others */
var debuger = function() {
    if (window.config.debug && !debug && typeof console == 'undefined') {
        var parent = d.getElementsByTagName('div')[0];
        var body   = d.getElementsByTagName('body')[0];
        var debug  = d.createElement('textarea');
        debug.setAttribute('rows', 10);
        debug.setAttribute('cols', 80);
        debug.setAttribute('name', 'debug');
        body.insertBefore(debug, parent);
        window.debug = debug;
    }
    else if (window.config.debug && console) {
        log('Debug mode : on');        
    }
};
var log = function(x) {
    if (typeof console != 'undefined')
        console.log(x);
    else if (debug) {
        debug.value += x + '\n';
        debug.scrollTop = debug.scrollHeight;
    }
};

/*  =FUNCTIONS
----------------------------------------------------------------------------- */
var myAutorun = function(mySkin,myRank) {

	myRank = parseInt(myRank) + 1;
	
	$("#img").fadeOut("slow", function () {
		document.getElementById('img').className = mySkin;
		$("#img").fadeIn("slow");
	});
	
	if(myClasses[myRank]) myTimer = setTimeout("myAutorun('"+myClasses[myRank]+"',"+myRank+")",myTiming);
	else myTimer = setTimeout("myAutorun('"+myClasses[0]+"',0)",myTiming);	
	
};

function getPosition(e) {
    e = e || window.event;
    var cursor = {x:0, y:0};
    if (e.pageX || e.pageY) {
        cursor.x = e.pageX;
        cursor.y = e.pageY;
    } 
    else {
        cursor.x = e.clientX + 
            (document.documentElement.scrollLeft || 
            document.body.scrollLeft) - 
            document.documentElement.clientLeft;
        cursor.y = e.clientY + 
            (document.documentElement.scrollTop || 
            document.body.scrollTop) - 
            document.documentElement.clientTop;
    }
    return cursor;
}

var tooltip = function() {
	
	$('.tooltip').hide();
	
	$('.tooltip-link').click(function(){ return false; })
	
	$('.tooltip-link').hover(function(e) {
		
		$('.tooltip').hide();
		$(this).next('.tooltip').show();		

		$(this).next('.tooltip').css('left',(getPosition(e).x -(692 / 2) + "px"));
		
	}, function () {
		
		$(this).next('.tooltip').hover(function(){},function () { setTimeout(function() { $('.tooltip').hide(); }, 150); });
		
	});
	
};

var collapse = function() {
	
	// tentative de resoudre le flickering du slide
	$('.collapse-me').each(function(){
		$(this).css("height", ($(this).height()));
	});
	
	$('.collapse-me').hide();
	$('.collapse-me:eq(0)').show();
	if (!(jQuery.browser.msie && jQuery.browser.version == 6)) { $('.bullet1').addClass('on'); }
	
	$('.numbers h2').click(function() {

		$('.numbers .collapse-me').slideUp('fast');
		
		
		$(this).next('.collapse-me').slideDown('fast');
		if (!(jQuery.browser.msie && jQuery.browser.version == 6)) { 
			$('.numbers').removeClass('on');
			$(this).parent().parent('.numbers').addClass('on');
		}
	})
	
};


/*  =WINDOW.ONLOAD
----------------------------------------------------------------------------- */
jQuery(document).ready(function(){
    
    // Functions
    debuger();              // build a log console for IE
	tooltip();				// tooltip behaviour
	collapse();				// collapse behaviour
	
    // Classes
        
    // jQuery crappy stuff

    if (jQuery.browser.msie && jQuery.browser.version == 6) {
        // IE 6 FUNCTIONS ONLY
        
    }

});




