var Qredits = {
  startInterval: 3800,
  enable: function(el) {
    // lightest is de default class, zodat crappy browsers die hiervoor al op hun bek gaan ten minste een mooie achtergrond tonen ;-)
    $(document.body).removeClass('lightest');

    soundManager.debugMode = false;


    if (navigator.userAgent.match(/Opera Mini/i)) {
      alert("Helaas, Opera Mini heeft echt te weinig power voor deze show. Als u  " + window.location.href.substring(0, window.location.href.indexOf('#')) + " op uw PC of Mac bezoekt kunt u wel volop van deze audiovisuele ervaring genieten. (Vooral in Chrome of Safari is 'ie erg mooi.)");
      Qredits.lightest = true;
      $(document.body).addClass('lightest');
      Qredits.launch(1, 100);
      return;
    }
    if (navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPod/i)) {
      $(document.body).addClass('light');
      Qredits.launch(1, 100);
      return;
    }
    if (navigator.userAgent.match(/Android/i) || navigator.userAgent.match(/SymbianOS/i)) {
      Qredits.lightest = true;
      $(document.body).addClass('lightest');
      Qredits.launch(1, 100);
      return;
    }
    if (navigator.userAgent.match(/IEMobile/i) || navigator.userAgent.match(/Windows Phone/i)) {
      Qredits.lightest = true;
      $(document.body).addClass('lightest iemobile');
      Qredits.launch(1, 100);
      return;
    }
    if (Browser.Engine.trident) {
      $(document.body).addClass('ie');
    }
    if (Browser.Engine.gecko) {
      $(document.body).addClass('ff');
    }
    if (navigator.userAgent.match(/msie 6/i)) {
      $(document.body).addClass('ie6');
      $('logo').src = 'img/q42.gif';
    }

    soundManager.waitForWindowLoad = true;
    soundManager.url = 'swf/';
    soundManager.onload = function() {
      var mySound = soundManager.createSound({
        id: 'klaus',
        url: 'klaus.mp3',
        onload: function() {
          Qredits.launch(800, 4642);
        }
      });
      mySound.play();
    }
  },
  launch: function(delayLoadingFade, delayAnimation) {
    window.location.href = window.location.href.substring(0, window.location.href.indexOf('#')) + "#page";
    (function() {
      $('loading').set('tween', { duration: 1000, transition: Fx.Transitions.bicubic });
      $('loading').tween('opacity', 1, 0);
    }).delay(delayLoadingFade);
    Qredits.start.delay(delayAnimation);
    Qredits.remaining.delay(delayAnimation + ($$('#start .group').length * Qredits.startInterval));
    //Qredits.end.delay(1);
  },
  start: function() {
    $('start').set('tween', {
      duration: Qredits.startInterval,
      transition: Fx.Transitions.bicubic
    });
    $('start').setStyle('display', 'block');
    $$('#start .group').each(function(el, i) {
      (function() {
        $(el).setStyle('display', 'block');
        if (!Qredits.lightest && !Browser.Engine.trident) {
          $('start').tween('opacity', 1, 0);
        }
        (function() { $(el).setStyle('display', 'none'); }).delay(Qredits.startInterval);
      }).delay(i * Qredits.startInterval);
    });
  },
  remaining: function() {
    $('remaining').setStyle('display', 'block');
    $('remaining').set('tween', {
      duration: 50000,
      transition: Fx.Transitions.linear,
      onComplete: Qredits.end
    });
    $('remaining').tween('top', [window.getHeight() - 42, $('remaining').getSize().y * -1]);
  },
  end: function() {
    $('end').setStyle('display', 'block');
    $('end').set('tween', {
      duration: 2500,
      transition: Fx.Transitions.linear
    });
    var negativeMarginTop = 130;
    if (navigator.userAgent.match(/IEMobile/i) || navigator.userAgent.match(/Windows Phone/i)) {
      negativeMarginTop = 30;
    }
    $('end').tween('top', [window.getHeight() - 42, window.getHeight() / 2 - negativeMarginTop]);
  }
};