window.addEvent('domready', function() {
	// PlaceFooter
	if($('footer') != null){
		placeFooter();
	}
	// PlaceRightBar
	if($('rightbar') != null){
		resizeRightBar();
	}
	
	// Create Gallerie Photo
	if($('gallerie') != null){
		var largeur 		= 	getLargeurGallerie();
		var difference 		= 	getLargeurDifference(largeur);
	
		placeScroll(difference);
		createGallerie(difference);
	}
	
	//create our Accordion instance
	if($('accordion') != null){

		var myAccordion = new Accordion($('accordion'), 'div.toggler', 'div.element', {
			opacity: false,
			display:0,
			alwaysHide: true,
			onActive: function(toggler, element){
				toggler.setStyle('background', '#1d1d1d');
			},
			onBackground: function(toggler, element){
				//toggler.setStyle('background', '#ffcc00');
			},
			onComplete: function(toggler, element){
				var hauteurAccordion 	= 	$('accordion').getSize().y;
				var positionAccordion 	= 	$('accordion').getPosition().y;
				var hauteurBarRight 	= 	$('rightbar').getSize().y;
				var hauteurBarLeft 		= 	hauteurAccordion + positionAccordion;
				
				if(hauteurBarLeft > hauteurBarRight ){
					$('rightbar').setStyle('height', hauteurBarLeft);		
				}
			}
		});
	}
});


function resize(){
	
	// PlaceFooter
	if($('footer') != null){
		placeFooter();
	}
	// PlaceRightBar
	if($('rightbar') != null){
		resizeRightBar();
	}
	
	// Create Gallerie Photo
	if($('gallerie') != null){
		var largeur 		= 	getLargeurGallerie();
		var difference 		= 	getLargeurDifference(largeur);
	
		placeScroll(difference);
		createGallerie(difference);
	}

}

function resizeRightBar(){
	var hauteur = $('footer').getPosition().y; 
	$('rightbar').setStyle('height', hauteur-10);
	return hauteur;
}



function placeFooter(){
	var hauteur = document.documentElement.clientHeight;
	$('footer').setStyle('top', hauteur-22);
}


function getBroserWidth(){
	return document.documentElement.clientWidth;
}


function getLargeurDifference(largeur){
	var BrowserWidth 	= 	getBroserWidth();	
	var difference		=	largeur - BrowserWidth;
	
	return difference;
}


function getLargeurGallerie(){
	var allImages 		= 	$('gallerie').getElements('img');
	var largeur 		= 	0;
	
	for (i=0; i<allImages.length; i++){
		largeur += allImages[i].getSize().x + 1;
	}
	
	$('gallerie').setStyle('width', largeur);
	
	return largeur;
}


function placeScroll(difference){
	var el 				= 	$('myElement');
	var gallerie 		= 	$('gallerie');
	var diff 			= 	difference;
	var BrowserWidth 	= 	getBroserWidth();
	
	el.setStyle('width', BrowserWidth);
	if(diff <= 0){
		el.getElement('.knob').setStyle('visibility', 'hidden');
	}else{
		el.getElement('.knob').setStyle('visibility', 'visible');
	}
}


function createGallerie(diff){
	var el 				= 	$('myElement');
	
	var mySlider = new Slider(el, el.getElement('.knob'), {
		steps: diff,	// There are 35 steps
		range: [0],	// Minimum value is 8
		wheel: true,

		onChange: function(value){
			// Everytime the value changes, we change the font of an element
			$('gallerie').setStyle('margin-left', -value);
		}
	}).set(0);
}





// ---------------------------------------------------------------------------
// Simple Ajax
// @see: http://www.degraeve.com/reference/simple-ajax-example.php
// ---------------------------------------------------------------------------

function xmlhttpPost(strURL) {
    var xmlHttpReq = false;
    var self = this;
    // Mozilla/Safari
    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    }
    // IE
    else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }
    self.xmlHttpReq.open('POST', strURL, true);
    self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    self.xmlHttpReq.onreadystatechange = function() {
        if (self.xmlHttpReq.readyState == 4) {
            updatepage(self.xmlHttpReq.responseText);
        }
    }
    self.xmlHttpReq.send(getquerystring());
}

function getquerystring() {
    var form = document.forms['mailinglist'];
    var email = form.email.value;
    qstr = 'email=' + escape(email);  // NOTE: no '?' before querystring
    return qstr;
}

function updatepage(str){
    document.getElementById("ajaxResult").innerHTML = str;
}