
var MooToolsOfferRotator = new Class({
   Implements: Options,

   options: {
      activeSlide: 0	//initally opened tab
		, transitionDuration: 500	//duration in millisecond of  opening effect (1000ms = 1 sec)
		, transition: Fx.Transitions.Sine.easeInOut	//effect's transitions. See http://docs.mootools.net/Fx/Fx.Transitions for more details
		, autoPlayDuration: 1000
		, startDelay: 0
   },

   initialize: function(panelClass, options) {
      this.setOptions(options);
      this.panelClass = panelClass;
      window.addEvent('domready', this.domready.bind(this));
   },


   domready: function() {
      this.panelSlides = $$(this.panelClass);
      if (this.options.activeSlide > this.panelSlides.length) {
         this.options.activeSlide = this.panelSlides.length - 1;
      }
      this.panelSlides.each(function(slide, index) {
         if (index != this.options.activeSlide)
            slide.fade('hide');
         else
            slide.fade('show');
         slide.setStyles({
            position: 'absolute'
               , top: 0
               , left: 0
         });
      } .bind(this));

      if (this.panelSlides.length > 1) {
         (function() {
            this.slideIntervall = this.showNextSlide.periodical(this.options.autoPlayDuration, this);
         }).delay(this.options.startDelay, this);
      }
   },

   showNextSlide: function() {

      this.panelSlides[this.options.activeSlide].set('tween', {
      /* onComplete: function() {
      if (Browser.Engine.trident) {
      // alert(this.element.getStyle('opacity')); //style.filter = "progidXImageTransform.Microsoft.Alpha(Opacity=100)"; //for IE
      // if (this.element.getStyle('opacity') == 1) {
      //this.element.style.filter = "progidXImageTransform.Microsoft.Alpha(Opacity=100)";

            }
      }*/
   });

   this.panelSlides[this.options.activeSlide].fade('out');

   (function() {
      if (this.options.activeSlide < this.panelSlides.length - 1)
         this.showSlide(this.options.activeSlide + 1);
      else
         this.showSlide(0);
   }).delay(this.options.transitionDuration / 2, this);
},

showSlide: function(slideToShow) {
   this.options.activeSlide = slideToShow;
   this.panelSlides[this.options.activeSlide].fade('in');
}
});
