var cycle = {
  init: function() {
    $('.cycle').each(function(){

      var $cycle = $(this);

      var id = $(this).attr('id');

      // Initialise the cycle
      var $cycleItems = $(this).find('.items')
        .cycle({
          next: $(this).find('.next'),
          prev: $(this).find('.prev'),
          fit: 1,
          pause: 1,
          fx: 'fade',
          speed: 800,
          timeout: 3000,
          pauseOnPagerHover: 1,
          activePagerClass: 'active',
          pager: $(this).find('.pager')
        });

      // Pause the sub spotlights
      switch(id){
        case 'someid':
          $cycleItems.cycle('pause');
          break;
        case 'block-spotlight':
          // Pause on prev/next hover
          $('.prev, .next', $(this))
            .data('cycle', $cycleItems)
            .hover(
              function() {
                $(this).data('cycle').cycle('pause');
              },
              function() {
                $(this).data('cycle').cycle('resume');
              }
            );
          break;
      }
    });
  }
}

var socialInteraction = {
  init: function()
  {
    FB.Event.subscribe('edge.create', function(targetUrl) {
      $('#share-notification')
        .addClass('active')
        .html('Bedankt voor het stemmen op de Vakman van het Jaar Verkiezing 2011!<br/><br/>Als jouw vakman de Publieksprijs wint, ben jij wel misschien degene die de prijs mag overhandigen op 17 november 2011 (als je dat zelf wil natuurlijk).<br/><br/>Met vriendelijke groet,<br/><br/>Organisatie Vakman van het Jaar 2011')
        .delay(15000)
        .fadeOut(function()
        {
          $(this).remove();
        });
    });
    FB.Event.subscribe('message.send', function(targetUrl) {
      $('#share-notification')
        .addClass('active')
        .html('Bedankt voor het promoten van de Vakman van het Jaar Verkiezing 2011!')
        .delay(5000)
        .fadeOut(function()
        {
          $(this).remove();
        });
    });
    twttr.events.bind('tweet', function(event) {
    if (event) {
      $('#share-notification')
        .addClass('active')
        .html('Bedankt voor het promoten van de Vakman van het Jaar Verkiezing 2011!')
        .delay(5000)
        .fadeOut(function()
        {
          $(this).remove();
        });
    }
  });
  }
}

var fancybox = {
  init: function() {
    if(typeof(openFancybox) != 'undefined'){
      $.fancybox({
        'href': openFancybox,
        'type': 'iframe'
      });
    }

    $('a[rel*=fancybox]').each(function(){
      if($(this).hasClass('iframe')){
        $(this).attr('href', $(this).attr('href') + '?fancybox=true');
      }
      $(this).fancybox({
        'overlayOpacity': 0.7,
        'overlayColor': '#000000',
        'scrolling': 'no',
        'showNavArrows': false,
        'titleShow': false,
        'onStart': function(){
          $('#video iframe').hide();
        },
        'onClosed': function(){
          $('#video iframe').show();
        }
      });
    });

    if($('#popup-iframe').length > 0){
      parent.fancybox.resize($('#popup-iframe').outerHeight());
    }
  },

  resize: function(height){
    $('#fancybox-inner').css({
      'height': height + 'px',
      'left': '0',
      'top': '0',
      'width': '470px'
    });
    $('#fancybox-wrap').css({
      'height': height + 'px',
      'width': '470px'
    });

    /* Native fancybox center function */
    $.fancybox.center();
  }
}

$(function(){

  $('body').addClass('js');
  $('a[rel*=external]').attr('target', '_blank');

  // Load this function when all images are loaded
  $(window).load(function(){
    cycle.init();
  });

  socialInteraction.init();
  fancybox.init();

});
