Frontend_Banner = function(act) {
  var self = this;
  self.active = 0;
  self.min = 1;
  self.max = 1;
  self.rotateVector = 'next';
  
  self.nextBanner = function(event) {
    clearTimeout(self.timer);
    var next = self.active + 1;
    if(self.max < next) {
      next = self.min; //return false;
      $('.banner_scroller table').animate({"left": "0px"}, "slow");    
      self.active = self.min;
      self.activeLink(next);
      if(self.active == self.max) $('.next_banner').css("display", "none");
      self.rotate();

      $('.prev_banner').removeAttr("style");
      $('.next_banner').removeAttr("style");    
      if(self.active == self.min) $('.prev_banner').css("display", "none");      
      
      return false;          
    }
    $('.banner_scroller table').animate({"left": "-="+self.td_width+"px"}, "slow");
    self.active++;
    self.activeLink(next);
    
    $('.prev_banner').removeAttr("style");
    $('.next_banner').removeAttr("style");    

    if(self.active == self.max) $('.next_banner').css("display", "none"); 
    if(self.active == self.min) $('.prev_banner').css("display", "none");

    self.rotate();
    return false; 
  }

  self.prevBanner = function(event) {
    clearTimeout(self.timer);    
    var prev = self.active-1;
    if(self.min > prev ) return false;
    
    $('.banner_scroller table').animate({"left": "+="+self.td_width+"px"}, "slow");

    self.active--;
    self.activeLink(prev);
    
    $('.next_banner').show();    
    if(self.active == self.min) $('.prev_banner').css("display", "none");
    self.rotate();
    return false;	
  }  
  
  self.changeBanner = function() {
    clearTimeout(self.timer);
    var num = parseInt($(this).html());
    self.active = num;
    var left = self.td_width*(num - 1);

    $('.banner_scroller table').animate({"left": -left+"px"}, "slow");    
    self.activeLink(num); 
    
    $('.prev_banner').removeAttr("style");
    $('.next_banner').removeAttr("style");    

    if(self.active == self.max) $('.next_banner').css("display", "none"); 
    if(self.active == self.min) $('.prev_banner').css("display", "none"); 
    self.rotate();  
    return false;
  }
  
  
  self.activeLink = function(number) {
  	  var item = $('.central_banner_init:contains(\''+number+'\')');
      $('.central_banner_init').removeClass('act');
      item.addClass('act');  
  }
  
  self.executeOnResize = function() {
    self.td_width = $('.banner_scroller table td').eq(0).width();
    var left = self.td_width*(self.active - 1);
    $('.banner_scroller table').css({"left": -left+"px"});    
  }
  
  self.rotate = function() { 

  //  if(self.max == self.active) self.rotateVector = 'prev';
  //  if(self.min == self.active) self.rotateVector = 'next';
    
    if(self.rotateVector == 'next')
      self.timer = setTimeout("banner.nextBanner()", 7000);
        else  self.timer = setTimeout("banner.prevBanner()", 7000);
  }
  
  self.__init__ = function() {
    self.max =  $('.banner_scroller td').length;
    self.active = act;
    self.executeOnResize();    
    if(self.active == self.max) $('.next_banner').css("display", "none");
    if(self.active == self.min) $('.prev_banner').css("display", "none");      
    
    $('.central_banner_init').click(self.changeBanner);
    $('.prev_banner').click(self.prevBanner);
    $('.next_banner').click(self.nextBanner);
    $(window).resize(self.executeOnResize);
    self.rotate();
  }

  self.__init__();
}
