window.addEvent('domready', function () {
  //get a list of all the search results in the delegates section
  var collections   = $$('.delegates-collection li', '.companies-collection li'),
      searchResults = $$('#search-results .result'),
      programItems  = $$('.program-item-list .three'),
      timelineItems = $$('.timeline > div');

  $$('body')[0].addClass('hasJS');
  Browser.isIE6 = (Browser.Engine.trident && typeof XMLHttpRequest == 'undefined');

  //fix :hover & :first-child implementation for IE6
  if (Browser.isIE6) {
    var hoverFix = {
      'mouseenter': function () { this.addClass('mouseover'); },
      'mouseleave': function () { this.removeClass('mouseover'); }
    }

    $$('#navigation > li').addEvents({
      'mouseenter': function () { this.getElement('span').addClass('mouseover'); },
      'mouseleave': function () { this.getElement('span').removeClass('mouseover');	}
    });

    $$('#navigation > li', collections, searchResults, programItems, timelineItems).addEvents(hoverFix);

    $$('li.timeline').addEvents({
      'mouseenter': function () { this.getElement('.details').setStyle('display', 'block')},
      'mouseleave': function () { this.getElement('.details').setStyle('display', '')}
    });
  }

  $$(collections, searchResults, programItems).addEvent('mouseup', function (e) {
    if (e.target.href) return;
    document.location.href = $(this).getElement('a').get('href');
  });

  if (document.id('search-results')) {
    document.id('search-results').addEvent('mouseup', function(e){
      if (e.target.href) return;

      $target = document.id(e.target);

      if (($target.get('tag') == 'p' && $target.hasClass('width-3')) || ($target.getParent().get('tag') == 'p' && $target.getParent().hasClass('width-3'))) {
        document.location.href = $target.getElement('a').get('href');
      }
    });
  }

  $$('.expandable-stripped').each(function (stripped) {
		var full = stripped.getNext('.expandable-full'),
        expandPar = new Element('p'),
        expandBtn = new Element('span', {'class': 'expand', 'html': 'Lees meer &raquo;'});

    expandBtn.addEvent('click', function () {
      if (stripped.getStyle('display') == 'none') {
        stripped.setStyle('display', '');
        full.setStyle('display', 'none');
        this.set('html', 'Lees meer &raquo;')
      } else {
        stripped.setStyle('display', 'none');
        full.setStyle('display', '');
        this.set('html', '&laquo; Inklappen')
      }
    });

    expandPar.grab(expandBtn)
    expandPar.inject(full, 'after');

    full.setStyle('display', 'none');
  });

  // Newsletter popup
  if ($('newsletter-signup')) {
    var signUpParagraph = new Element('p'),
        signUpLink      = new Element('a', {'href': '#', 'class': 'newsletter-signup'}),
        signUpFormRef   = $('newsletter-signup'),
        signUpForm,
        backdrop = new Element('div', {'id': 'backdrop', 'class': 'hide'}),
        overlay  = new Element('div', {'id': 'overlay', 'class': 'hide'}),
        closeBtn = new Element('img', {'src': '/images/overlay-close.gif', 'class': 'close'});

    signUpLink.set('html', 'Schrijf je in voor de nieuwsbrief');

    signUpParagraph.adopt(signUpLink);
    signUpFormRef.grab(signUpParagraph, 'before');

    signUpFormRef.adopt(closeBtn);
    
    signUpFormRef.getPrevious().getPrevious().destroy();
    signUpForm = signUpFormRef.dispose();

    $$('body')[0].adopt(backdrop, overlay);
    overlay.adopt(signUpForm);

    signUpLink.addEvent('click', function (evt) {
      backdrop.removeClass('hide');
      overlay.removeClass('hide');

      evt.stop();
    });

    closeBtn.addEvent('click', function () {
      backdrop.addClass('hide');
      overlay.addClass('hide');

      signUpForm.getElement('ol').removeClass('hide');

      if (signUpForm.getElement('p')) {
        signUpForm.getElement('p').destroy();
      }
    });

    if (signUpForm.hasClass('error') || signUpForm.hasClass('success')) {
      backdrop.removeClass('hide');
      overlay.removeClass('hide');

      if (signUpForm.hasClass('success')) {
        signUpForm.getElement('ol').addClass('hide');
      }
    }
  }
  
  if ($('caroussel')) {
    new Swiff('/flash/bumanl-2011-carrousel.swf', {
      'container': $('caroussel'),
      'width': 650,
      'height': 597,
      'params': {
        'wMode': 'transparent'
      }
    });
  }
});


/** CUFONING THE HEADERS */
Cufon.replace('#navigation span a', {'fontFamily': 'DIN-Bold'});
Cufon.replace('#homepage #content h1', {'fontFamily': 'DIN-Regular'});
Cufon.replace('#sidebar h1', {'fontFamily': 'DIN-Regular'});

Cufon.replace('body:not([id=program-overview]):not([id=location-detail]) h1 strong', {'fontFamily': 'DIN-Regular'});
Cufon.replace('body:not([id=program-overview]):not([id=location-detail]) h1 span:not(.date):not(.producer)', {'fontFamily': 'DIN-Regular'});
Cufon.replace('h1 span.producer', {'fontFamily': 'DIN-Bold'});
Cufon.replace('#controlpanel legend', {'fontFamily': 'DIN-Regular'});
Cufon.replace('#program-overview #controlpanel-wrapper h1', {'fontFamily': 'DIN-Regular'});
