Cufon.replace('#topnavi a', {hover: true});
Cufon.replace('h1');

window.addEvent('domready', function() {
  // Emails
  $$('a.mail').each(function(a) {
    var mail = a.get('text').trim().reverse();
    
    a.set('href', 'mailto:'+mail);
    a.set('text', mail);
  });
  
  
  var roulette = $('company-roulette');
  
  if(roulette) {
    var prev = roulette.getElement('a.prev').setStyle('opacity', 0.1).addClass('disabled');
    var next = roulette.getElement('a.next');
    var seli = 0;
    
    var s = new Fx.Morph(roulette.getElement('.scrollbox'));
    var rpos = roulette.getPosition();
    
    s.set({opacity: 0});
    
    var lis = $$('.company-roulette-list li');
    var boxes = roulette.getElements('.box');
    boxes.each(function(box, i) {
      var pos = box.getPosition();
      
      box.addEvent('click', function() {
        s.start({
          left: -pos.x + rpos.x + 190,
          top: -pos.y + rpos.y + 30
        });
      
        seli = i;
        
        lis.removeClass('selected');
        lis[i].addClass('selected');
        
        if(i == 0) {
          prev.morph({opacity: 0.1}).addClass('disabled');
        }
        else {
          prev.morph({opacity: 1}).removeClass('disabled');
        }
        
        if(i == boxes.length - 1) {
          next.morph({opacity: 0.1}).addClass('disabled');
        }
        else {
          next.morph({opacity: 1}).removeClass('disabled');
        }
      });
    });
    
    boxes[0].fireEvent('click');
    
    lis.each(function(li, i) {
      li.addEvent('click', function() {
        boxes[i].fireEvent('click');
      });
    });
    
    prev.addEvent('click', function() {
      if(!this.hasClass('disabled')) {
        boxes[seli-1].fireEvent('click');
      }
    });
    next.addEvent('click', function() {
      if(!this.hasClass('disabled')) {
        boxes[seli+1].fireEvent('click');
      }
    });
    
    (function() {
      s.start({opacity: 1});
    }).delay(600);
  }

  if(Browser.Engine.trident) {
    $$('input').each(function(input) {
      input.addClass(input.get('type'));
    });
  }
});

String.prototype.reverse = function(){
  return this.split("").reverse().join("");
}
