$(document).ready(function(){
  $('form.contact-form').submit(function(){
    $(this).find('.error').removeClass('error');
    var can_submit = true;
    var fields = "name email phone message".split(' ');
    for(var i = 0; i < fields.length; i++){
      var f = $(this).find('#' + fields[i]);
      if(f.val().trim() == ''){
        can_submit = false;
        f.addClass('error');
      }
      if(f.attr('id') == 'email' && !validateEmail(f.val())){
        can_submit = false;
        f.addClass('error');
      }
    }
    return can_submit;
  });
  $('.text-carousel ul').jcarousel({
    auto: 0,
    scroll: 3,
    visible: 3,
    initCallback: function(carousel, state){
       var list = $(carousel.list);
       var lis_length = list.find('li').length;
       var length = Math.ceil(lis_length / 3);
       var full_pages = Math.ceil(lis_length / 3) * 3
       var activate_buttons = {};
       var button_actions   = {};
       var idx = 1;
       var i = 0;
       var parent_holder =  $(list).parents('.text-carousel');
       var carousel_button_holder = parent_holder.find('.carousel-buttons');
       parent_holder.find('.next').click(function(){
         carousel.next();
         return false;
       })
       parent_holder.find('.prev').click(function(){
         carousel.prev();
         return false;
       })
       if(length > 1){
         carousel_button_holder.html('<div class="button"></div>'.repeat(length));

         while(idx < full_pages){
           activate_buttons[idx] = i;
           button_actions[i] = idx;
           i += 1;
           idx += 3;
         }
         if(full_pages < lis_length){
           activate_buttons[idx + (lis_length - full_pages) - 3] = i; 
           button_actions[i] = idx + (lis_length - full_pages) - 3;
         }
         carousel.options['activate_buttons'] = activate_buttons;
         var c = carousel;
         var buttons = $(carousel_button_holder).find('.button');
         buttons.click(function(){
           var index = $(buttons).index($(this));
           c.scroll(button_actions[index]);
           c.stopAuto();
         });
       }

     }, 
     itemFirstInCallback: function(carousel, item, idx, state) {
       var i = idx - 1;
       var modulo = i % 3;
       var index = parseInt(i / 3);
       if(modulo > 0){
         index++;
       }
         var carousel_button_holder = $(carousel.list).parents('.text-carousel').find('.carousel-buttons');
         //var index = Math.floor(idx / 3);
         $(carousel_button_holder).find('.active-button').removeClass('active-button');
         $(carousel_button_holder).find('.button:eq(' + index + ')').addClass('active-button');
       

     }
  });
	$('.article-list tr').click(function(){
		window.location = $(this).find('a:last').attr('href');
	})
  $('.text-carousel ul a:not(.red-button)').fancybox({
  		
  });
	$('.product-gallery a').fancybox();
  var search = $('#search .text')
  search.data('default-value', search.val());
  search.focus(function(){
    if($(this).val() == $(this).data('default-value')) $(this).val('');
    
  }).blur(function(){
    if($(this).val() == '') $(this).val($(this).data('default-value'));
  });
  
  $('#main-menu > li > a').hover(function(ev){
    
  }, function(ev){
    
  });
  $('#main-menu > li').hover(function(){
    $(this).find('> a').animate({backgroundColor: '#d80038', color: '#FFFFFF'}, 'fast');
    $(this).find('> ul').fadeIn('fast');
  }, function(){
    $(this).find('> ul').fadeOut('fast');
    $(this).find('> a').animate({backgroundColor: '#FFFFFF', color: '#787878'}, 'fast');
  });
  $('#main-menu > li > ul > li').hover(function(){
    $(this).find('> ul').fadeIn('fast');
  }, function(){
    $(this).find('> ul').fadeOut('fast');
  });
  $('#main-menu > li > ul > li > ul > li').hover(function(){
    $(this).find('> ul').fadeIn('fast');
  }, function(){
    $(this).find('> ul').fadeOut('fast');
  });

  $('.news').click(function(){
    window.location = $(this).find('a').attr('href')
  });

    $('a.product').hover(function(){
        $(this).find('img, .product-label, .name').hide();
        $(this).find('.labels').hide();
        //$(this).animate({backgroundColor: '#d80038', borderColor: '#bc0031'}, 'fast');
        $(this).css('background-color', '#d80038');
        $(this).css('border-color', '#bc0031');
        $(this).find('.description, .read-more').show();
    }, function(){
        $(this).find('.description, .read-more').hide();
        $(this).find('.labels').show()
        $(this).find('img, .product-label, .name').show();
        //$(this).animate({backgroundColor: '#ffffff', borderColor: '#dbdbdb'}, 'fast');
        $(this).css('background-color', '#ffffff');
        $(this).css('border-color', '#dbdbdb');
    });
  /*
  $('a.product').hover(function(){
    $(this).find('img, .product-label, .name').fadeOut('fast');
    $(this).find('.labels').fadeOut('fast');
    //$(this).animate({backgroundColor: '#d80038', borderColor: '#bc0031'}, 'fast');
    $(this).css('background-color', '#d80038');
    $(this).find('.description, .read-more').fadeIn('fast');
  }, function(){
    $(this).find('.description, .read-more').fadeOut('fast', function(){});
    $(this).find('.labels').fadeIn('fast');
    $(this).find('img, .product-label, .name').fadeIn('fast');
    //$(this).animate({backgroundColor: '#ffffff', borderColor: '#dbdbdb'}, 'fast');
    $(this).css('background-color', '#ffffff');
  });
  */

  if($('#frontpage-slideshow-wrapper').length > 0){
    $.getJSON('/frontpage_slider.json', function(data){
      for(var i = 0; i < data.length; i++){
        $('#red-stripe-content').append($('<div class="slider-button"></div>').data('slide', data[i]));
      }
      $('#red-stripe-content .slider-button').click(function(){
        var s = $(this).data('slide');
        var margin = (s.position == 'left') ? '-396px' : '96px'
        $('<img />').attr('src', s.image).load(function(){
          $('.banner-text p').html(s.text);
          $('.banner-text a').attr('href', s.url);
          $('#frontpage-slideshow-wrapper .banner-text').animate({marginLeft: margin}, 'slow');
          $('#frontpage-slideshow').fadeOut('fast', function(){
            $('#frontpage-slideshow-wrapper').animate({backgroundColor: s.background}, 'fast', function(){
              // $('#frontpage-slideshow').css({backgroundImage: 'url('+s.image+')'}).fadeIn('fast');
              //$('#frontpage-slideshow').css("background-image", "url('"+s.image+"')").fadeIn('fast');
              $('#frontpage-slideshow-wrapper').css("background-image", "url('"+s.image+"')").fadeIn('fast', function(){
                $("#frontpage-slideshow").fadeIn('slow');
              });
            });
          });
        });
      });
      $('#red-stripe-content .slider-button:first').click();
    });
  }

    $("img.image-with-credits").each(function(){
        var caption = $(this).attr('alt');
        $(this).wrap("<div class='image-with-credits' />")
        $(this).after(caption);
        $(this).removeClass('image-with-credits');
    });
    $("img.left-image-with-credits").each(function(){
        var caption = $(this).attr('alt');
        $(this).wrap("<div class='left-image-with-credits' />")
        $(this).after(caption);
        $(this).removeClass('left-image-with-credits');
    });
    $("img.right-image-with-credits").each(function(){
        var caption = $(this).attr('alt');
        $(this).wrap("<div class='right-image-with-credits' />")
        $(this).after(caption);
        $(this).removeClass('right-image-with-credits');
    });
});

String.prototype.repeat = function(num) {
  return new Array(isNaN(num)? 1 : ++num).join(this);
}
String.prototype.trim = function () {
    return this.replace(/^\s*/, "").replace(/\s*$/, "");
}

function validateEmail(email) 
{ 
 var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ 
 return email.match(re) 
}

