(function($) {
  var once = false;
  var nid = '';
  var base;
  var ajax;
  var element_settings = {};
  var ajaxInit = true;

  Drupal.behaviors.pascaud = {
    attach: function(context, settings) {
      
      // Execute once
      if(!once){
        // Frontpage banners
        $("#banner-menu a").click(function(event){
          // Prevent event
          event.preventDefault();
          
          // disable active links
          $("#banner-menu a").removeClass('active');
          
          // set this link active
          $(this).addClass('active');
          
          // Get href
          var href= $(this).attr('href');
           
          // Hide all divs in banner content
          $('#banner-content div').hide();
          $('#banner-content .slide-container').show();
          
          // Get show correct div
          $('#banner-content '+href).show();
          
          // Uitzondering voor video
          if(href=='#banner2'){
            $('#banner2').css('height','332');
            $('#mediaspace_wrapper').css('display','block');
            $('#banner-next-menu-container').hide();
          }

          if(href == '#banner1'){
            $('#banner-next-menu-container').hide();
          }

          if(href == '#banner3'){
            $('#banner-next-menu-container').show();
          }
        });
        
        // Mainmenu behaviour
        $("#mainmenu ul li:has(ul li.nolink)").mouseover(function(){
          var width_val = 0;
          $('#mainmenu ul li ul li.nolink').parent().show();
          $(this).find("ul li.nolink ul").each(function(){
            $(this).parents('li:first').css('width', $(this).width());
            width_val += parseInt($(this).width(),10) + 1;
          });
          $(this).find('ul:first').css('width', width_val);
        });

        $("#mainmenu ul li:has(ul li.nolink)").mouseleave(function(){
          $('#mainmenu ul li ul li.nolink').parent().hide();
        });

        // Hide readmore text
        $('.readmore-text').each(function(i){
          // Add classes
          var readmoreClass = 'readmore-link-'+i; 
          $(this).addClass(readmoreClass);
          $('<a class="'+readmoreClass+'" href="#">'+Drupal.t('Click to read more...')+'</a>').insertBefore($(this));
          
          // Add live event
          $('a.'+readmoreClass).live('click', function(event) {
            // Prevent default action
            event.preventDefault();
            
            // Hide link
            $(this).hide();
            
            // Show text
            $('.readmore-text.'+readmoreClass).show();
          });
          
          // Hide
          $(this).hide();
        });        
        
        // Switch
        once = true;
      }

      $('.product-amount').bind('change',function(){
        $(this).each(setLink);
      });

      $(document).ready(function(){
        $('.product-amount').each(setLink);

        var playlist = [];
        var i = 0;
        $('#jplayer-files .file').each(function(){
          playlist[i] = {title: $(this).attr('title'), mp3: '/sites/default/files'+$(this).text()};
          i++;
        });
        
        if(playlist.length > 0){
          new jPlayerPlaylist({
            jPlayer: ".jplayer-wrapper"
          }, 
          playlist, {
            swfPath: '../sites/all/libraries/jplayer',
            supplied: 'mp3',
            preload: 'metadata'
          });
        }
      });

      $('.custom-ajax-button').click(function(){
        var customUrl = $(this).attr('href').replace('/mode/nojs','/mode/custom');
        var button = $(this);
        $.ajax({
          type: 'POST',
          url:customUrl,
          beforeSend: function(){
            if($('.ajax-progress-throbber').length == 0){
              button.before('<div class="ajax-progress ajax-progress-throbber"><div class="throbber">&nbsp;</div></div>');
            }
          },
          success: function(data){
            $('#overview-shoppingcart-mini').html(data);
            $('.ajax-progress-throbber').remove();
          }
        });
        return false;
      });
    }
  };

  Array.prototype.array_search = function(needle, argStrict) { 
    var strict = !!argStrict;
    var key = '';

    for (key in this) {
      if ((strict && this[key] === needle) || (!strict && this[key] == needle)) {
        return key;
      }
    }

    return false;
  }

  function setLink(){
    var input = $(this);
    var id = $(this).attr('id').split('-');
    nid = id[id.length-1];

    var link = $('a[href*="/nid/'+nid+'/"]');
    link.each(function(){
      var cartUrl = link.attr('href').split('/');
      var key = cartUrl.array_search('quantity');
      key++;
      var oldQty = cartUrl[key];
      var newQty = input.val();
      $(this).attr('href',$(this).attr('href').replace('/quantity/'+oldQty+'/','/quantity/'+newQty+'/'));
    });
  }
})(jQuery);;

