var Class ={	create: function(){return function(){this.initialize.apply(this, arguments);}}};Object.extend = function(destination, source){for (var property in source) destination[property] = source[property];return destination;};Function.prototype.bind = function(object){var __method = this;return function(){return __method.apply(object, arguments);}};if (!Array.prototype.forEach){Array.prototype.forEach = function(fn, bind){for(var i = 0;i < this.length ;i++) fn.call(bind, this[i], i);};}Array.prototype.each = Array.prototype.forEach;String.prototype.camelize = function(){return this.replace(/-\D/gi, function(match){return match.charAt(match.length - 1).toUpperCase();});};var $A = function(iterable){var nArray = [];for (var i = 0;i < iterable.length;i++) nArray.push(iterable[i]);return nArray;};function $(){if (arguments.length == 1) return get$(arguments[0]);var elements = [];$c(arguments).each(function(el){elements.push(get$(el));});return elements;function get$(el){if (typeof el == 'string') el = document.getElementById(el);return el;}};
if (!window.Element) var Element ={};Object.extend(Element,{remove: function(element){element = $(element);element.parentNode.removeChild(element);}, hasClassName: function(element, className){element = $(element);return !!element.className.match(new RegExp("\\b"+className+"\\b"));}, addClassName: function(element, className){element = $(element);if (!Element.hasClassName(element, className)) element.className = (element.className+' '+className);}, removeClassName: function(element, className){element = $(element);if (Element.hasClassName(element, className)) element.className = element.className.replace(className, '');}});document.getElementsByClassName = function(className){var elements = [];var all = document.getElementsByTagName('*');$A(all).each(function(el){if (Element.hasClassName(el, className)) elements.push(el);});return elements;};//(c) 2006 Valerio Proietti (http://mad4milk.net). MIT-style license.
var Fx = fx ={};Fx.Base = function(){};Fx.Base.prototype ={setOptions: function(options){this.options = Object.extend({onStart: function(){}, onComplete: function(){}, transition: Fx.Transitions.sineInOut, duration: 500, unit: 'px', wait: true, fps: 50 }, options ||{});}, step: function(){var time = new Date().getTime();if (time < this.time+this.options.duration){this.cTime = time - this.time;this.setNow();}else{setTimeout(this.options.onComplete.bind(this, this.element), 10);this.clearTimer();this.now = this.to;}this.increase();}, setNow: function(){this.now = this.compute(this.from, this.to);}, compute: function(from, to){var change = to - from;return this.options.transition(this.cTime, from, change, this.options.duration);}, clearTimer: function(){clearInterval(this.timer);this.timer = null;return this;}, _start: function(from, to){if (!this.options.wait) this.clearTimer();if (this.timer) return;setTimeout(this.options.onStart.bind(this, this.element), 10);this.from = from;this.to = to;this.time = new Date().getTime();this.timer = setInterval(this.step.bind(this), Math.round(1000/this.options.fps));return this;}, custom: function(from, to){return this._start(from, to);}, set: function(to){this.now = to;this.increase();return this;}, hide: function(){return this.set(0);}, setStyle: function(e, p, v){if (p == 'opacity'){if (v == 0 && e.style.visibility != "hidden") e.style.visibility = "hidden";else if (e.style.visibility != "visible") e.style.visibility = "visible";if (window.ActiveXObject) e.style.filter = "alpha(opacity="+v*100+")";e.style.opacity = v;}else e.style[p] = v+this.options.unit;}};
Fx.Style = Class.create();
Fx.Style.prototype = Object.extend(new Fx.Base(),{initialize: function(el, property, options){this.element = $(el);this.setOptions(options);this.property = property.camelize();}, increase: function(){this.setStyle(this.element, this.property, this.now);}});Fx.Styles = Class.create();Fx.Styles.prototype = Object.extend(new Fx.Base(),{initialize: function(el, options){this.element = $(el);this.setOptions(options);this.now ={};}, setNow: function(){for (p in this.from) this.now[p] = this.compute(this.from[p], this.to[p]);}, custom: function(obj){if (this.timer && this.options.wait) return;var from ={};var to ={};for (p in obj){from[p] = obj[p][0];to[p] = obj[p][1];}return this._start(from, to);}, increase: function(){for (var p in this.now) this.setStyle(this.element, p, this.now[p]);}});
Fx.Transitions ={linear: function(t, b, c, d){return c*t/d+b;}, sineInOut: function(t, b, c, d){return -c/2 * (Math.cos(Math.PI*t/d) - 1)+b;}};
Fx.Height = Class.create();
Fx.Height.prototype = Object.extend(new Fx.Base(),{
initialize: function(el, options){
this.element = $(el);this.setOptions(options);this.element.style.overflow = 'hidden';}, toggle: function(){if (this.element.offsetHeight > 0) return this.custom(this.element.offsetHeight, 0);else return this.custom(0, this.element.scrollHeight);}, show: function(){return this.set(this.element.scrollHeight);}, increase: function(){this.setStyle(this.element, 'height', this.now);}});Fx.Width = Class.create();Fx.Width.prototype = Object.extend(new Fx.Base(),{initialize: function(el, options){this.element = $(el);this.setOptions(options);this.element.style.overflow = 'hidden';this.iniWidth = this.element.offsetWidth;}, toggle: function(){if (this.element.offsetWidth > 0) return this.custom(this.element.offsetWidth, 0);else return this.custom(0, this.iniWidth);}, show: function(){return this.set(this.iniWidth);}, increase: function(){this.setStyle(this.element, 'width', this.now);}});Fx.Opacity = Class.create();Fx.Opacity.prototype = Object.extend(new Fx.Base(),{initialize: function(el, options){this.element = $(el);this.setOptions(options);this.now = 1;}, toggle: function(){if (this.now > 0) return this.custom(1, 0);else return this.custom(0, 1);}, show: function(){return this.set(1);}, increase: function(){this.setStyle(this.element, 'opacity', this.now);}});
Fx.Scroll = Class.create();Fx.Scroll.prototype = Object.extend(new Fx.Base(),{initialize: function(el, options){this.element = $(el);this.setOptions(options);this.element.style.overflow = 'hidden';}, down: function(){return this.custom(this.element.scrollTop, this.element.scrollHeight-this.element.offsetHeight);}, up: function(){return this.custom(this.element.scrollTop, 0);}, increase: function(){this.element.scrollTop = this.now;}});
Fx.Color = Class.create();Fx.Color.prototype = Object.extend(new Fx.Base(),{initialize: function(el, property, options){this.element = $(el);this.setOptions(options);this.property = property.camelize();this.now = [];}, custom: function(from, to){return this._start(from.hexToRgb(true), to.hexToRgb(true));}, setNow: function(){[0,1,2].each(function(i){this.now[i] = Math.round(this.compute(this.from[i], this.to[i]));}.bind(this));}, increase: function(){this.element.style[this.property] = "rgb("+this.now[0]+","+this.now[1]+","+this.now[2]+")";}});Object.extend(String.prototype,{rgbToHex: function(array){var rgb = this.match(new RegExp('([\\d]{1,3})', 'g'));if (rgb[3] == 0) return 'transparent';var hex = [];for (var i = 0;i < 3;i++){var bit = (rgb[i]-0).toString(16);hex.push(bit.length == 1 ? '0'+bit : bit);}var hexText = '#'+hex.join('');if (array) return hex;else return hexText;}, hexToRgb: function(array){var hex = this.match(new RegExp('^[#]{0,1}([\\w]{1,2})([\\w]{1,2})([\\w]{1,2})$'));var rgb = [];for (var i = 1;i < hex.length;i++){if (hex[i].length == 1) hex[i] += hex[i];rgb.push(parseInt(hex[i], 16));}var rgbText = 'rgb('+rgb.join(',')+')';if (array) return rgb;else return rgbText;}});//moo.fx.transitions.js - depends on prototype.js or prototype.lite.js+moo.fx.js
 Fx.Transitions ={linear: function(t, b, c, d){return c*t/d+b;}, quadIn: function(t, b, c, d){return c*(t/=d)*t+b;}, quadOut: function(t, b, c, d){return -c *(t/=d)*(t-2)+b;}, quadInOut: function(t, b, c, d){if ((t/=d/2) < 1) return c/2*t*t+b;return -c/2 * ((--t)*(t-2) - 1)+b;}, cubicIn: function(t, b, c, d){return c*(t/=d)*t*t+b;}, cubicOut: function(t, b, c, d){return c*((t=t/d-1)*t*t+1)+b;}, cubicInOut: function(t, b, c, d){if ((t/=d/2) < 1) return c/2*t*t*t+b;return c/2*((t-=2)*t*t+2)+b;}, quartIn: function(t, b, c, d){return c*(t/=d)*t*t*t+b;}, quartOut: function(t, b, c, d){return -c * ((t=t/d-1)*t*t*t - 1)+b;}, quartInOut: function(t, b, c, d){if ((t/=d/2) < 1) return c/2*t*t*t*t+b;return -c/2 * ((t-=2)*t*t*t - 2)+b;}, quintIn: function(t, b, c, d){return c*(t/=d)*t*t*t*t+b;}, quintOut: function(t, b, c, d){return c*((t=t/d-1)*t*t*t*t+1)+b;}, quintInOut: function(t, b, c, d){if ((t/=d/2) < 1) return c/2*t*t*t*t*t+b;return c/2*((t-=2)*t*t*t*t+2)+b;}, sineIn: function(t, b, c, d){return -c * Math.cos(t/d * (Math.PI/2))+c+b;}, sineOut: function(t, b, c, d){return c * Math.sin(t/d * (Math.PI/2))+b;}, sineInOut: function(t, b, c, d){return -c/2 * (Math.cos(Math.PI*t/d) - 1)+b;}, expoIn: function(t, b, c, d){return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1))+b;}, expoOut: function(t, b, c, d){return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d)+1)+b;}, expoInOut: function(t, b, c, d){if (t==0) return b;if (t==d) return b+c;if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1))+b;return c/2 * (-Math.pow(2, -10 * --t)+2)+b;}, circIn: function(t, b, c, d){return -c * (Math.sqrt(1 - (t/=d)*t) - 1)+b;}, circOut: function(t, b, c, d){return c * Math.sqrt(1 - (t=t/d-1)*t)+b;}, circInOut: function(t, b, c, d){if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1)+b;return c/2 * (Math.sqrt(1 - (t-=2)*t)+1)+b;}, elasticIn: function(t, b, c, d, a, p){if (t==0) return b;if ((t/=d)==1) return b+c;if (!p) p=d*.3;if (!a) a = 1;if (a < Math.abs(c)){a=c;var s=p/4;}else var s = p/(2*Math.PI) * Math.asin(c/a);return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p ))+b;}, elasticOut: function(t, b, c, d, a, p){if (t==0) return b;if ((t/=d)==1) return b+c;if (!p) p=d*.3;if (!a) a = 1;if (a < Math.abs(c)){a=c;var s=p/4;}else var s = p/(2*Math.PI) * Math.asin(c/a);return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p )+c+b;}, elasticInOut: function(t, b, c, d, a, p){if (t==0) return b;if ((t/=d/2)==2) return b+c;if (!p) p=d*(.3*1.5);if (!a) a = 1;if (a < Math.abs(c)){a=c;var s=p/4;}else var s = p/(2*Math.PI) * Math.asin(c/a);if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p ))+b;return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5+c+b;}, backIn: function(t, b, c, d, s){if (!s) s = 1.70158;return c*(t/=d)*t*((s+1)*t - s)+b;}, backOut: function(t, b, c, d, s){if (!s) s = 1.70158;return c*((t=t/d-1)*t*((s+1)*t+s)+1)+b;}, backInOut: function(t, b, c, d, s){if (!s) s = 1.70158;if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s))+b;return c/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b;}, bounceIn: function(t, b, c, d){return c - Fx.Transitions.bounceOut (d-t, 0, c, d)+b;}, bounceOut: function(t, b, c, d){if ((t/=d) < (1/2.75)){return c*(7.5625*t*t)+b;}else if (t < (2/2.75)){return c*(7.5625*(t-=(1.5/2.75))*t+.75)+b;}else if (t < (2.5/2.75)){return c*(7.5625*(t-=(2.25/2.75))*t+.9375)+b;}else{return c*(7.5625*(t-=(2.625/2.75))*t+.984375)+b;}}, bounceInOut: function(t, b, c, d){if (t < d/2) return Fx.Transitions.bounceIn(t*2, 0, c, d) * .5+b;return Fx.Transitions.bounceOut(t*2-d, 0, c, d) * .5+c*.5+b;}};
var fileLoadingImage = "../medias/images/loader.gif";
var fileBottomNavCloseImage = "../medias/images/bouton-fermer.png";
var resizeSpeed = 6;
var borderSize = 10;
var imageArray = new Array;
var activeImage;
if(resizeSpeed > 10){resizeSpeed = 10;}
if(resizeSpeed < 1){resizeSpeed = 1;}
resizeDuration = (11 - resizeSpeed) * 100;
Object.extend(Element,{
hide: function(){
for (var i = 0;i < arguments.length;i++){
var element = $(arguments[i]);
element.style.display = 'none';
}},
show: function(){
for (var i = 0;i < arguments.length;i++){
var element = $(arguments[i]);
element.style.display = '';
}},
getWidth: function(element){
   element = $(element);
   return element.offsetWidth;},
setWidth: function(element,w){
   element = $(element);
element.style.width = w +"px";},
getHeight: function(element){
element = $(element);
return element.offsetHeight;},
setHeight: function(element,h){
   element = $(element);
element.style.height = h +"px";},
setTop: function(element,t){
   element = $(element);
element.style.top = t +"px";},
setSrc: function(element,src){
element = $(element);
element.src = src;},
setInnerHTML: function(element,content){
element = $(element);
element.innerHTML = content;
}});
Array.prototype.removeDuplicates = function (){
for(i = 1;i < this.length;i++){
if(this[i][0] == this[i-1][0]){
this.splice(i,1);}
}}
Array.prototype.empty = function (){
for(i = 0;i <= this.length;i++){
this.shift();
}}
var Lightbox = Class.create();
Lightbox.prototype ={
initialize: function(){
if (!document.getElementsByTagName){return;}
var anchors = document.getElementsByTagName('a');
for (var i=0;i<anchors.length;i++){
var anchor = anchors[i];
var relAttribute = String(anchor.getAttribute('rel'));
if (anchor.getAttribute('href') && (relAttribute.toLowerCase().match('lightbox'))){
anchor.onclick = function (){myLightbox.start(this);return false;}
}}
var objBody = document.getElementsByTagName("body").item(0);
var objOverlay = document.createElement("div");
objOverlay.setAttribute('id','overlay');
objOverlay.onclick = function(){myLightbox.end();return false;}
objBody.appendChild(objOverlay);
var objLightbox = document.createElement("div");
objLightbox.setAttribute('id','lightbox');
objLightbox.style.display = 'none';
objBody.appendChild(objLightbox);
var objOuterImageContainer = document.createElement("div");
objOuterImageContainer.setAttribute('id','outerImageContainer');
objLightbox.appendChild(objOuterImageContainer);
var objImageContainer = document.createElement("div");
objImageContainer.setAttribute('id','imageContainer');
objOuterImageContainer.appendChild(objImageContainer);
var objLightboxImage = document.createElement("img");
objLightboxImage.setAttribute('id','lightboxImage');
objImageContainer.appendChild(objLightboxImage);
var objHoverNav = document.createElement("div");
objHoverNav.setAttribute('id','hoverNav');
objImageContainer.appendChild(objHoverNav);
var objPrevLink = document.createElement("a");
objPrevLink.setAttribute('id','prevLink');
objPrevLink.setAttribute('href','#');
objHoverNav.appendChild(objPrevLink);
var objNextLink = document.createElement("a");
objNextLink.setAttribute('id','nextLink');
objNextLink.setAttribute('href','#');
objHoverNav.appendChild(objNextLink);
var objLoading = document.createElement("div");
objLoading.setAttribute('id','loading');
objImageContainer.appendChild(objLoading);
var objLoadingLink = document.createElement("a");
objLoadingLink.setAttribute('id','loadingLink');
objLoadingLink.setAttribute('href','#');
objLoadingLink.onclick = function(){myLightbox.end();return false;}
objLoading.appendChild(objLoadingLink);
var objLoadingImage = document.createElement("img");
objLoadingImage.setAttribute('src', fileLoadingImage);
objLoadingLink.appendChild(objLoadingImage);
var objImageDataContainer = document.createElement("div");
objImageDataContainer.setAttribute('id','imageDataContainer');
objImageDataContainer.className = 'clearfix';
objLightbox.appendChild(objImageDataContainer);
var objImageData = document.createElement("div");
objImageData.setAttribute('id','imageData');
objImageDataContainer.appendChild(objImageData);
var objImageDetails = document.createElement("div");
objImageDetails.setAttribute('id','imageDetails');
objImageData.appendChild(objImageDetails);
var objCaption = document.createElement("span");
objCaption.setAttribute('id','caption');
objImageDetails.appendChild(objCaption);
var objNumberDisplay = document.createElement("span");
objNumberDisplay.setAttribute('id','numberDisplay');
objImageDetails.appendChild(objNumberDisplay);
var objBottomNav = document.createElement("div");
objBottomNav.setAttribute('id','bottomNav');
objImageData.appendChild(objBottomNav);
var objBottomNavCloseLink = document.createElement("a");
objBottomNavCloseLink.setAttribute('id','bottomNavClose');
objBottomNavCloseLink.setAttribute('href','#');
objBottomNavCloseLink.onclick = function(){myLightbox.end();return false;}
objBottomNav.appendChild(objBottomNavCloseLink);
var objBottomNavCloseImage = document.createElement("img");
objBottomNavCloseImage.setAttribute('src', fileBottomNavCloseImage);
objBottomNavCloseLink.appendChild(objBottomNavCloseImage);
overlayEffect = new fx.Opacity(objOverlay,{duration: 300 });
overlayEffect.hide();
imageEffect = new fx.Opacity(objLightboxImage,{duration: 350, onComplete: function(){imageDetailsEffect.custom(0,1);}});
imageEffect.hide();
imageDetailsEffect = new fx.Opacity('imageDataContainer',{duration: 400, onComplete: function(){navEffect.custom(0,1);}});
imageDetailsEffect.hide();
navEffect = new fx.Opacity('hoverNav',{duration: 100 });
navEffect.hide();},
start: function(imageLink){
hideSelectBoxes();
var arrayPageSize = getPageSize();
Element.setHeight('overlay', arrayPageSize[1]);
overlayEffect.custom(0,1);
imageArray = [];
imageNum = 0;
if (!document.getElementsByTagName){return;}
var anchors = document.getElementsByTagName('a');
if((imageLink.getAttribute('rel') == 'lightbox')){
imageArray.push(new Array(imageLink.getAttribute('href'), imageLink.getAttribute('title'),imageLink.getAttribute('link')));
} else{
for (var i=0;i<anchors.length;i++){
var anchor = anchors[i];
if (anchor.getAttribute('href') && (anchor.getAttribute('rel') == imageLink.getAttribute('rel'))){
imageArray.push(new Array(anchor.getAttribute('href'), anchor.getAttribute('title')));
}}
imageArray.removeDuplicates();
while(imageArray[imageNum][0] != imageLink.getAttribute('href')){imageNum++;}}
var arrayPageSize = getPageSize();
var arrayPageScroll = getPageScroll();
var lightboxTop = arrayPageScroll[1]+(arrayPageSize[3] / 15);
Element.setTop('lightbox', lightboxTop);
Element.show('lightbox');
this.changeImage(imageNum);},
changeImage: function(imageNum){
activeImage = imageNum;
Element.show('loading');
imageDetailsEffect.hide();
imageEffect.hide();
navEffect.hide();
Element.hide('prevLink');
Element.hide('nextLink');
Element.hide('numberDisplay');
imgPreloader = new Image();
imgPreloader.onload=function(){
Element.setSrc('lightboxImage', imageArray[activeImage][0]);
myLightbox.resizeImageContainer(imgPreloader.width, imgPreloader.height);}
imgPreloader.src = imageArray[activeImage][0];},
resizeImageContainer: function( imgWidth, imgHeight){
this.wCur = Element.getWidth('outerImageContainer');
this.hCur = Element.getHeight('outerImageContainer');
wDiff = (this.wCur - borderSize * 2) - imgWidth;
hDiff = (this.hCur - borderSize * 2) - imgHeight;
reHeight = new fx.Height('outerImageContainer',{duration: resizeDuration });
reHeight.custom(Element.getHeight('outerImageContainer'),imgHeight+(borderSize*2));
reWidth = new fx.Width('outerImageContainer',{duration: resizeDuration, onComplete: function(){imageEffect.custom(0,1);}});
reWidth.custom(Element.getWidth('outerImageContainer'),imgWidth+(borderSize*2));
if((hDiff == 0) && (wDiff == 0)){
if (navigator.appVersion.indexOf("MSIE")!=-1){pause(250);}else{pause(100);} }
Element.setHeight('prevLink', imgHeight);
Element.setHeight('nextLink', imgHeight);
Element.setWidth('imageDataContainer', imgWidth+(borderSize * 2));
Element.setWidth('hoverNav', imgWidth+(borderSize * 2));
this.showImage();},
showImage: function(){
Element.hide('loading');
myLightbox.updateDetails();
this.preloadNeighborImages();},
updateDetails: function(){
if(imageArray[activeImage][2])
	{
		Element.show('caption');		
	Element.setInnerHTML('caption', imageArray[activeImage][1] + ' - <a href="' + imageArray[activeImage][2] +'" onclick="myLightbox.end();" target="_blank">VOIR</a>');
	}
else
	{
Element.show('caption');		
	Element.setInnerHTML('caption', imageArray[activeImage][1]);
	}
if(imageArray.length > 1){
Element.show('numberDisplay');
Element.setInnerHTML('numberDisplay', "Image "+eval(activeImage+1)+" of "+imageArray.length);}
myLightbox.updateNav();},
updateNav: function(){
// if not first image in set, display prev image button
if(activeImage != 0){
Element.show('prevLink');
document.getElementById('prevLink').onclick = function(){
myLightbox.changeImage(activeImage - 1);return false;
}}
// if not last image in set, display next image button
if(activeImage != (imageArray.length - 1)){
Element.show('nextLink');
document.getElementById('nextLink').onclick = function(){
myLightbox.changeImage(activeImage+1);return false;
}}
this.enableKeyboardNav();},
//
//enableKeyboardNav()
//
enableKeyboardNav: function(){
document.onkeydown = this.keyboardAction;},
//
//disableKeyboardNav()
//
disableKeyboardNav: function(){
document.onkeydown = '';},
//
//keyboardAction()
//
keyboardAction: function(e){
if (e == null){// ie
keycode = event.keyCode;
} else{// mozilla
keycode = e.which;}
key = String.fromCharCode(keycode).toLowerCase();
if((key == 'x') || (key == 'o') || (key == 'c')){// close lightbox
myLightbox.end();
} else if(key == 'p'){// display previous image
if(activeImage != 0){
myLightbox.disableKeyboardNav();
myLightbox.changeImage(activeImage - 1);
}} else if(key == 'n'){// display next image
if(activeImage != (imageArray.length - 1)){
myLightbox.disableKeyboardNav();
myLightbox.changeImage(activeImage+1);}
}},
//
//preloadNeighborImages()
//Preload previous and next images.
//
preloadNeighborImages: function(){
if((imageArray.length - 1) > activeImage){
preloadNextImage = new Image();
preloadNextImage.src = imageArray[activeImage+1][0];}
if(activeImage > 0){
preloadPrevImage = new Image();
preloadPrevImage.src = imageArray[activeImage - 1][0];
}},
//
//end()
//
end: function(){
this.disableKeyboardNav();
Element.hide('lightbox');
imageEffect.toggle();
overlayEffect.custom(0.8,0);
showSelectBoxes();
}}
// -----------------------------------------------------------------------------------
//
// getPageScroll()
// Returns array with x,y page scroll values.
// Core code from - quirksmode.org
//
function getPageScroll(){
var yScroll;
if (self.pageYOffset){
yScroll = self.pageYOffset;
} else if (document.documentElement && document.documentElement.scrollTop){// Explorer 6 Strict
yScroll = document.documentElement.scrollTop;
} else if (document.body){// all other Explorers
yScroll = document.body.scrollTop;}
arrayPageScroll = new Array('',yScroll) 
return arrayPageScroll;}
// -----------------------------------------------------------------------------------
//
// getPageSize()
// Returns array with page width, height and window width, height
// Core code from - quirksmode.org
// Edit for Firefox by pHaez
//
function getPageSize(){
var xScroll, yScroll;
if (window.innerHeight && window.scrollMaxY){
xScroll = document.body.scrollWidth;
yScroll = window.innerHeight+window.scrollMaxY;
} else if (document.body.scrollHeight > document.body.offsetHeight){// all but Explorer Mac
xScroll = document.body.scrollWidth;
yScroll = document.body.scrollHeight;
} else{// Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
xScroll = document.body.offsetWidth;
yScroll = document.body.offsetHeight;}
var windowWidth, windowHeight;
if (self.innerHeight){// all except Explorer
windowWidth = self.innerWidth;
windowHeight = self.innerHeight;
} else if (document.documentElement && document.documentElement.clientHeight){// Explorer 6 Strict Mode
windowWidth = document.documentElement.clientWidth;
windowHeight = document.documentElement.clientHeight;
} else if (document.body){// other Explorers
windowWidth = document.body.clientWidth;
windowHeight = document.body.clientHeight;}
// for small pages with total height less then height of the viewport
if(yScroll < windowHeight){
pageHeight = windowHeight;
} else{
pageHeight = yScroll;}
// for small pages with total width less then width of the viewport
if(xScroll < windowWidth){
pageWidth = windowWidth;
} else{
pageWidth = xScroll;}
arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 
return arrayPageSize;}
// -----------------------------------------------------------------------------------
//
// getKey(key)
// Gets keycode. If 'x' is pressed then it hides the lightbox.
//
function getKey(e){
if (e == null){// ie
keycode = event.keyCode;
} else{// mozilla
keycode = e.which;}
key = String.fromCharCode(keycode).toLowerCase();
if(key == 'x'){
}}
function listenKey (){document.onkeypress = getKey;}
function showSelectBoxes(){
selects = document.getElementsByTagName("select");
for (i = 0;i != selects.length;i++){
selects[i].style.visibility = "visible";
}}
// ---------------------------------------------------
function hideSelectBoxes(){
selects = document.getElementsByTagName("select");
for (i = 0;i != selects.length;i++){
selects[i].style.visibility = "hidden";
}}
function pause(numberMillis){
var now = new Date();
var exitTime = now.getTime()+numberMillis;
while (true){
now = new Date();
if (now.getTime() > exitTime)
return;
}}
// ---------------------------------------------------
function initLightbox(){myLightbox = new Lightbox();}
var timedSlideShow = Class.create();
timedSlideShow.prototype ={
initialize: function(element, data){
this.currentIter = 0;
this.lastIter = 0;
this.maxIter = 0;
this.slideShowElement = element;
this.slideShowData = data;
this.slideShowInit = 1;
this.slideElements = Array();
this.slideShowDelay = 5000;
this.articleLink = "";
this.slideInfoZone = "";
element.style.display="block";
this.articleLink = document.createElement('a');
this.articleLink.className = 'global';
element.appendChild(this.articleLink);
this.articleLink.href = "realisations/index.php";
this.maxIter = data.length;
for(i=0;i<data.length;i++)
{
var currentImg = document.createElement('div');
currentImg.className = "slideElement";
currentImg.style.position="absolute";
currentImg.style.left="0px";
currentImg.style.top="0px";
currentImg.style.margin="0px";
currentImg.style.border="0px";
currentImg.style.backgroundImage="url('"+data[i][0]+"')";
currentImg.style.backgroundPosition="center center";
this.articleLink.appendChild(currentImg);
currentImg.currentOpacity = new fx.Opacity(currentImg,{duration: 400});
currentImg.currentOpacity.set(0);
this.slideElements[parseInt(i)] = currentImg;}
this.loadingElement = document.createElement('div');
this.loadingElement.className = 'loadingElement';
this.articleLink.appendChild(this.loadingElement);
this.slideInfoZone = document.createElement('div');
this.slideInfoZone.className = 'slideInfoZone';
this.articleLink.appendChild(this.slideInfoZone);
this.slideInfoZone.style.opacity = 0;
this.doSlideShow();},
destroySlideShow: function(element){
var myClassName = element.className;
var newElement = document.createElement('div');
newElement.className = myClassName;
element.parentNode.replaceChild(newElement, element);},
startSlideShow: function(){
this.loadingElement.style.display = "none";
this.lastIter = this.maxIter - 1;
this.currentIter = 0;
this.slideShowInit = 0;
this.slideElements[parseInt(this.currentIter)].currentOpacity.set(1);
setTimeout(this.showInfoSlideShow.bind(this),1000);
setTimeout(this.hideInfoSlideShow.bind(this),this.slideShowDelay-1000);
setTimeout(this.nextSlideShow.bind(this),this.slideShowDelay);},
nextSlideShow: function(){
this.lastIter = this.currentIter;
this.currentIter++;
if (this.currentIter >= this.maxIter)
{
this.currentIter = 0;
this.lastIter = this.maxIter - 1;}
this.slideShowInit = 0;
this.doSlideShow.bind(this)();},
doSlideShow: function(){
if (this.slideShowInit == 1)
{
imgPreloader = new Image();
// once image is preloaded, start slideshow
imgPreloader.onload=function(){
setTimeout(this.startSlideShow.bind(this),10);
}.bind(this);
imgPreloader.src = this.slideShowData[0][0];
} else{
if (this.currentIter != 0){
this.slideElements[parseInt(this.currentIter)].currentOpacity.options.onComplete = function(){
this.slideElements[parseInt(this.lastIter)].currentOpacity.set(0);
}.bind(this);
this.slideElements[parseInt(this.currentIter)].currentOpacity.custom(0, 1);
} else{
this.slideElements[parseInt(this.currentIter)].currentOpacity.set(1);
this.slideElements[parseInt(this.lastIter)].currentOpacity.custom(1, 0);}
setTimeout(this.showInfoSlideShow.bind(this),1000);
setTimeout(this.hideInfoSlideShow.bind(this),this.slideShowDelay-1000);
setTimeout(this.nextSlideShow.bind(this),this.slideShowDelay);
}},
showInfoSlideShow: function(){
return true;},
hideInfoSlideShow: function(){
return true
}};
function initTimedSlideShow(element, data){
var slideshow = new timedSlideShow(element, data);}
function addLoadEvent(func){
var oldonload = window.onload;
if (typeof window.onload != 'function'){
window.onload = func;
} else{
window.onload = function(){
oldonload();
func();}
}}
function externalLinks(){ if (!document.getElementsByTagName) return;var anchors = document.getElementsByTagName("a");for (var i=0;i<anchors.length;i++){ var anchor = anchors[i];var relvalue = anchor.getAttribute("rel");if (anchor.getAttribute("href")){var external = /external/;var relvalue = anchor.getAttribute("rel");if (external.test(relvalue)){anchor.target = "_blank";}}}}
function SendForm(){nom = document.getElementById('name').value;email = document.getElementById('email').value;message = document.getElementById('message').value;if(nom == null || nom == '' || email == null || email == '' || message == null || message == '' ){alert('Merci de remplir toutes les informations');return false;}else{return true;}}