/* A workaround for IE issues in mootools 1.2.1
 * - Recreates FX.Scroll() but utilises 1.2.0's getPosition/getOffset routines.
 */
Fx.Scroll2 = new Class({
 
    'Extends': Fx.Scroll,
 
    'styleString': Element.getComputedStyle,
    'styleNumber': function(element, style) {
        return this.styleString(element, style).toInt() || 0;
    },
    'borderBox': function(element) {
        return this.styleString(element, '-moz-box-sizing') == 'border-box';
    },
    'topBorder': function(element) {
        return this.styleNumber(element, 'border-top-width');
    },
    'leftBorder': function(element) {
        return this.styleNumber(element, 'border-left-width');
    },
    'isBody': function(element) {
        return (/^(?:body|html)$/i).test(element.tagName);
    }, 
    'toElement': function(el) {
        var offset   = {x: 0, y: 0};
        var element  = $(el);
 
        if (this.isBody(element)) {
            return offset;
        }
        var scroll = element.getScrolls();
 
        while (element && !this.isBody(element)){
            offset.x += element.offsetLeft;
            offset.y += element.offsetTop;
 
            if (Browser.Engine.gecko){
                if (!this.borderBox(element)){
                    offset.x += this.leftBorder(element);
                    offset.y += this.topBorder(element);
                }
                var parent = element.parentNode;
                if (parent && this.styleString(parent, 'overflow') != 'visible'){
                    offset.x += this.leftBorder(parent);
                    offset.y += this.topBorder(parent);
                }
            } else if (Browser.Engine.trident || Browser.Engine.webkit){
                offset.x += this.leftBorder(element);
                offset.y += this.topBorder(element);
            }
 
            element = element.offsetParent;
            if (Browser.Engine.trident) {
                while (element && !element.currentStyle.hasLayout) {
                    element = element.offsetParent;
                }
            }
        }
        if (Browser.Engine.gecko && !this.borderBox(element)){
            offset.x -= this.leftBorder(element);
            offset.y -= this.topBorder(element);
        }
 
        var relative = this.element;
        var relativePosition = (relative && (relative = $(relative))) ? relative.getPosition() : {x: 0, y: 0};
        var position = {x: offset.x - scroll.x, y: offset.y - scroll.y};
 
        return this.start(position.x - relativePosition.x, position.y - relativePosition.y);
    }
});



		window.addEvent('load', function(){


			// **************************************************************************************************************
			var scroll = new Fx.Scroll2('demo-wrapper', {
			   wait: false, duration: 1000, transition: Fx.Transitions.Quad.easeInOut
			});
			$('osteo_home').addEvent('click', function(event)		{ event = new Event(event).stop(); cm('menu1'); scroll.toElement('home');});
			$('osteo_cabinet').addEvent('click', function(event)	{ event = new Event(event).stop(); cm('menu2'); scroll.toElement('cabinet');});
			$('cabshomes').addEvent('click', function(event)		{ event = new Event(event).stop(); cm('menu2'); scroll.toElement('cabinet');});
			$('osteo_consult').addEvent('click', function(event)	{ event = new Event(event).stop(); cm('menu3'); scroll.toElement('consult');});
			$('linkconsults').addEvent('click', function(event)		{ event = new Event(event).stop(); cm('menu3'); scroll.toElement('consult');});
			$('osteo_parcours').addEvent('click', function(event)	{ event = new Event(event).stop(); cm('menu4'); scroll.toElement('parcours');});
			$('linkparcours').addEvent('click', function(event)		{ event = new Event(event).stop(); cm('menu4'); scroll.toElement('parcours');});
			$('osteo_avis').addEvent('click', function(event)		{ event = new Event(event).stop(); cm('menu5'); scroll.toElement('avis');});
			$('osteo_contact').addEvent('click', function(event)	{ event = new Event(event).stop(); cm('menu6'); scroll.toElement('contact');});
			$('illucontact').addEvent('click', function(event)		{ event = new Event(event).stop(); cm('menu6'); scroll.toElement('contact');});




		});


		var lp = function(where)  {
			var scroll = new Fx.Scroll2('demo-wrapper', {
				wait: false,
				duration: 1,
				transition: Fx.Transitions.Quad.easeInOut
			});
			anchor = window.location.hash;
			if (where == 'home' && anchor != '' && anchor != '#') where = anchor.substring(1,anchor.length);	
			scroll.toElement(where);

			if		(where == 'cabinet')	{ cm('menu2'); }
			else if (where == 'consult')	{ cm('menu3'); }
			else if (where == 'parcours')	{ cm('menu4'); }
			else if (where == 'avis')		{ cm('menu5'); }
			else if (where == 'contact')	{ cm('menu6'); }
			else cm('menu1');

			$('loadbase').fade('out');
			
			
		}		
		
		var cm = function(menuclick){
			for (x=1; x<=6; x++) document.getElementById('menu'+x).className = "menu";
			document.getElementById(menuclick).className = "hover";
		}

