var home_slider = {
  slided:false,
  sc:null,
  stopuse: 0,
  largeurTotale: 0,
  largeurFenetre: 0,
  largeurZone: 980,
  largeurBoutonKnob: 48,
  largeurTotaleKnob: 0,
  largeurPhotos: 0,
  nbOcc: 0,
  value2: 0,
  init:function(largeur)
  {
    var zoom_slider = $('knob-slide'),
        box = $('move-element');
    var down;
	if (document.body)
	{
		home_slider.largeurFenetre = (document.body.clientWidth);
	}
	else
	{
		home_slider.largeurFenetre = (window.innerWidth);
	}
	if (!(home_slider.largeurFenetre > 0))
	{
    		home_slider.largeurFenetre = home_slider.largeurZone;
	}

      if (!zoom_slider)
          return ;
      if (!(down = zoom_slider.down('.knob')))
          return ;
	
	if (!largeur) {
	      new Effect.Move(box,
          		{ x: 0,
          		  y: 0, 
          		  mode: 'absolute',
          		  queue:'end',
          		  duration:0
          		});
		box.setStyle({marginLeft: (0) + 'px'});
		home_slider.value2 = 0;
	} else {
	 	home_slider.largeurPhotos = largeur;
	}

	home_slider.largeurTotale = home_slider.largeurPhotos - home_slider.largeurFenetre;
        home_slider.largeurTotaleKnob = home_slider.largeurFenetre - 2*(home_slider.largeurBoutonKnob);
        home_slider.nbOcc = (2*home_slider.largeurTotale)/home_slider.largeurFenetre;

      this.sc = new Control.Slider(down, zoom_slider, {
	      range: $R(0, home_slider.largeurTotale),
	      sliderValue: 0,
	      disable_tracker:true,
	      onChange: function(value){
		      new Effect.Move(box,
		          { x: 0,
		            y: 0, 
		            mode: 'absolute',
		            queue:'end',
		            duration:0
		          });
	        	box.setStyle({marginLeft: (0 - value) + 'px'});
			home_slider.value2 = ((home_slider.largeurTotaleKnob - home_slider.largeurBoutonKnob) * value) / (home_slider.largeurTotale);
	        	home_slider.slided = true;

	      },
	      onSlide: function(value) {
		      new Effect.Move(box,
		          { x: 0,
		            y: 0, 
		            mode: 'absolute',
		            queue:'end',
		            duration:0
		          });
	        	box.setStyle({marginLeft: (0 - value) + 'px'});
//       home_slider.stopuse = Math.floor(2*value/home_slider.largeurFenetre);
			home_slider.value2 = ((home_slider.largeurTotaleKnob - home_slider.largeurBoutonKnob) * value) / (home_slider.largeurTotale);
	        	home_slider.slided = true;
      		}
      });


    this.observe_knob();
  },
  observe_knob:function()
  {
    var knob;
    var value;
    knob = $('knob');
    knob.observe('mousedown', function(event)
        {
        }
    );
    knob.observe('mouseup', function(event)
        {
            if (!home_slider.slided)
            {
//                value = Math.floor(home_slider.sc.value);
//                if (value == 0)
//                    home_slider.move_right(value + 1);
//                if (value == home_slider.largeurTotale)
//                    home_slider.move_left(value - 1);
            }
            else
            {
                value = Math.floor(home_slider.sc.value);
//                if (value >= home_slider.largeurTotale/2)
//                    home_slider.move_right(value);
//                if (value < home_slider.largeurTotale/2)
//                    home_slider.move_left(value);
            }
            //home_slider.slided = false;
        }
    );
  },
  move_left:function(value)
  {
alert('move_left');
    if (value == 0)
    {
        home_slider.sc.setValue(0);
        return ;
    }
    this.sc.setValue(value);
    value -= 50;
    if (value < 0)
        value = 0;
    setTimeout(function() {home_slider.move_left(value);}, 0.5);
  },
  move_right:function(value)
  {
     if (value >= home_slider.largeurTotale)
    {
        home_slider.sc.setValue(home_slider.largeurTotale);
        return ;
    }
    this.sc.setValue(value);
    value += 50;
    if (value > home_slider.largeurTotale)
        value = home_slider.largeurTotale;
    setTimeout(function() {home_slider.move_right(value);}, 0.5);
  },
  usecases_slider_moveright:function(value) {
      var toslide;
      var toknob;
      var width_toslide = -(home_slider.largeurFenetre/2);
      var width_toslide2 = -(width_toslide*(home_slider.largeurTotaleKnob - home_slider.largeurBoutonKnob/2)/home_slider.largeurTotale);
      if (!(toslide = $('move-element')))
          return ;
      if (!(toknob = $('knob-slide')))
          return ;

      if (home_slider.slided)
      {
	toslide.setStyle({marginLeft: (0) + 'px'});
	value = Math.floor(home_slider.sc.value);
	new Effect.Move(toslide,
          { x: -value,
            y: 0, 
            mode: 'absolute',
            queue:'parallel',
            duration:0
          });
	home_slider.slided = false;
      }

      if (home_slider.value2 + width_toslide2 >= (home_slider.largeurTotaleKnob - (home_slider.largeurBoutonKnob/2)))
          {
// home_slider.sc.setValue(home_slider.largeurTotale);
	home_slider.value2 = home_slider.largeurTotaleKnob - (home_slider.largeurBoutonKnob/2);
      new Effect.Move(toslide,
          { x: -home_slider.largeurTotale,
            y: 0, 
            mode: 'absolute',
            queue:'end',
            duration:0.3
          });
      new Effect.Move(toknob.down('.knob'),
          { x: (home_slider.largeurTotaleKnob - (home_slider.largeurBoutonKnob/2)),
            y: 0, 
            mode: 'absolute',
            queue:'parallel',
            duration:0.3
          });
              return;
          }
      else
          {
	home_slider.value2 = home_slider.value2 + width_toslide2;
// home_slider.sc.setValue(home_slider.sc.value - width_toslide);
      new Effect.Move(toslide,
          { x: width_toslide,
            y: 0,
            queue:'end',
            duration:0.3
          });
      new Effect.Move(toknob.down('.knob'),
          { x: width_toslide2,
            y: 0, 
            queue:'parallel',
            duration:0.3
          });
//      home_slider.stopuse++;
     }
  },
  usecases_slider_moveleft:function(value) {
      var toslide;
      var toknob;
      var width_toslide =  home_slider.largeurFenetre/2;
      var width_toslide2 = (width_toslide*(home_slider.largeurTotaleKnob - home_slider.largeurBoutonKnob/2)/home_slider.largeurTotale);

      if (!(toslide = $('move-element')))
          return ;
      if (!(toknob = $('knob-slide')))
          return ;

      if (home_slider.slided)
      {
	toslide.setStyle({marginLeft: (0) + 'px'});
	value = Math.floor(home_slider.sc.value);

	new Effect.Move(toslide,
          { x: -value,
            y: 0, 
            mode: 'absolute',
            queue:'parallel',
            duration:0
          });
	home_slider.slided = false;
      }

      if (home_slider.value2 < width_toslide2)
          {
home_slider.value2 = 0;
// home_slider.sc.setValue(0);
      new Effect.Move(toslide,
          { x: 0,
            y: 0, 
            mode: 'absolute',
            queue:'end',
            duration:0.3
          });
      new Effect.Move(toknob.down('.knob'),
          { x: 0,
            y: 0, 
            mode: 'absolute',
            queue:'parallel',
            duration:0.3
          });
              return;
          }
      else
          {
	home_slider.value2 = home_slider.value2 - width_toslide2;
// home_slider.sc.setValue(home_slider.sc.value - width_toslide);
      new Effect.Move(toslide,
          { x: width_toslide,
            y: 0,
            queue:'end',
            duration:0.3
          });
      new Effect.Move(toknob.down('.knob'),
          { x: -width_toslide2,
            y: 0, 
            queue:'parallel',
            duration:0.3
          });
//      home_slider.stopuse--;
      }
  }
};


