// uWEBSHOP SCRIPTS



function liftOff() {   
  $('.randomizer > .item').remove();
  var shopAlias = $('body').attr('id');
  $.fn.GetRandomItems(shopAlias);  
  $('#countdown').countdown('change',{until: '+20s', significant: 2, layout: '{sn}', onExpiry: liftOff });  
};

    /*equalize height
    $.fn.equalHeight = function (group) {
        var tallest = 0;
        group.each(function () {
            var thisHeight = $(this).height();
            if (thisHeight > tallest) {
                tallest = thisHeight;
            }
        });
        group.height(tallest);
    }; */
  
    $.fn.GetRandomItems = function (shopAlias) {
        SuperSimpleWebshop.GetJSONForCatalog(shopAlias,
      function (data) {
        
        var categoryList = []; 
            
        $.each(data.Categories, function(i, val) {      
            categoryList.push(this);   
        });        
        catArr = $.shuffle(categoryList);        
        
        var AdditionalPropertiesList = [];  
        $.each(catArr, function(i, val) {    
          $.each(this.AdditionalProperties, function(i, val) {            
              AdditionalPropertiesList.push(this);      
          });   
        });
        
        var productList = [];  
        $.each(catArr, function(i, val) {    
          $.each(this.Products, function(i, val) {            
              productList.push(this);              
          });   
        });        
        prodArr = $.shuffle(productList);
        $.each(prodArr, function(i, val) {
          if($.inArray(val, prodArr) < 3) {
            var productUrl = this.URL;
            var productTitle = this.Title;
            
            var mainImage = "/media/1008/noimage.png";
            
            $.each(this.Images, function(i, val) {
              if(i == 0) {
                if (this.FilePath != null) {
                  mainImage = '/ImageGen.ashx?image=' + this.FilePath + '&width=164&height=164&constrain=true'
                };
              }
            
            });
                        
            var tags = this.Tags.join(",")
            tags = tags.toLowerCase().split(",");
            
            var cssClass = "black";
            if ($.inArray('meisje', tags) >= 0 && $.inArray('jongen', tags) == -1) {
              cssClass = "pink";
            }
            if ($.inArray('jongen', tags) >= 0 && $.inArray('meisje', tags) == -1) {
              cssClass = "green";
            } 
                      
            var lowestPriceWithTax = this.LowestPriceWithTax;
            $('<div class="item"></div>').html('<h3 class="'+cssClass+'">'+productTitle+'</h3><div class="itemimage"><a href="'+productUrl+'"><img src="'+mainImage+'" alt="'+ productTitle +'"></a></div><a href="'+productUrl+'" class="button ' + cssClass + '">Details</a>').fadeIn('slow').appendTo('.randomizer');          
          };
         });
        
      },
      function (data) {
          alert('Error' + data.status);
      });
    };


    $.fn.GetJSONForCategory = function (shopAlias, CategoryId) {
        SuperSimpleWebshop.GetJSONForCategory(shopAlias, CategoryId,
      function (data) {
          alert(data.Title);
      },
      function (data) {
          alert('Error' + data.status);
      });
    };

  $.fn.GetJSONForProduct = function (shopAlias, ProductId) {
      SuperSimpleWebshop.GetJSONForProduct(shopAlias,ProductId,
      function (data) {
          alert(data.Title);
      },
      function (data) {
          alert('Error' + data.status);
      });
    };

  $.fn.GetJSONForPricing = function (shopAlias, PricingId) {
      SuperSimpleWebshop.GetJSONForPricing(shopAlias,PricingId,
      function (data) {
          alert(data.Title);
      },
      function (data) {
          alert('Error' + data.status);
      });
    };

    $.fn.AddUpdateOrderline = function (shopAlias, id, action, quantity, variants) {
        SuperSimpleWebshop.addUpdateOrderLine(shopAlias, id, action, quantity, variants,
      function (data) {
        $('#shoppingbasket span.basketamount').text(data.Order.TotalAmount);
        $('#shoppingbasket span.basketproducts #count').text(data.Order.TotalItemCount);
      },
      function (data) {
          alert('Error during order creation: ' + data.status);
      });
    };



$(document).ready(function () {

    if ($('.equallize').length) {
      $('.equallize').equalizer({
        useHeight  : 'height',    // height measurement to use
        resizeable : true,        // when true, heights are adjusted on window resize
        min        : 0,           // Minimum height applied to all columns
        max        : 0,           // Max height applied to all columns
        overflow   : 'overflowed' // class applied to columns that are taller than the allowable max
      });
    };
  
    // shopdirect links
    $('.shopdirect a').click(function (event) {
      // stop href from firing
      event.preventDefault();
      var shopAlias = $('body').attr('id');
      var pricingID = $(this).attr('id');
      $.fn.AddUpdateOrderline(shopAlias, pricingID, 'add', 1, '');
      $(this).effect("pulsate", { times: 1 }, 200);
    });

    // productpage to basket links
    $('.pricingblock > form > input[type=submit]').click(function (event) {
        // stop href from firing
        event.preventDefault();
        var items = '';
        $(this).parent().find('select[name*=variant] option:selected').each(function (i) {
            if (!$(this).attr("disabled")) {
                items += $(this).val() + ',';
            }
        });
        var shopAlias = $('body').attr('id');
        var pricingID = $(this).parent().find('input[name=product]').val();
        var action = $(this).parent().find('input[name=action]').val();
        var quantity = $(this).parent().find('input[name=quantity]').val();
        var variants = items.substring(0, items.length - 1);
        $.fn.AddUpdateOrderline(shopAlias, pricingID, action, quantity, variants);      
    });

    
    var autoscrolling = true;
    
    $('.infiniteCarousel').infiniteCarousel().mouseover(function () {
        autoscrolling = false;
    }).mouseout(function () {
        autoscrolling = true;
    });
    
    setInterval(function () {
        if (autoscrolling) {
            $('.infiniteCarousel').trigger('next');
        }
    }, 4000);

    var shopAlias = $('body').attr('id');
    $.fn.GetRandomItems(shopAlias);
    $('#countdown').countdown({until: '+20s', significant: 2, layout: '{sn}', onExpiry: liftOff }); 
  
   $('#randomizebutton').click(function() { 
      liftOff();
   });

});


