Seasons.product = Seasons.product ? Seasons.product : {};

Seasons.product.zoomer = (function() {
   var str_thumbnail_id = '#thumbnail_image',
   str_magnify_anchor_id = '#magnify',
   obj_magnify_options = {
      lensWidth: 200,
      lensHeight: 200,
      link: false
   },

   initialise = function() {
      $('a[rel*=magnify]').magnify(obj_magnify_options);
      $('.product_alternative_images img').click(swap_image);
   },

   swap_image = function() {
      var arr_matches = $(this).attr('src').match(/\/product-media\/([^\/]*)/);
      var str_selected = arr_matches[1];

      var str_thumbnail_src = $(str_thumbnail_id).attr('src');
      var str_thumbnail_src = str_thumbnail_src.replace(/\/product-media\/[^\/]*/, '/product-media/' + str_selected);
      $(str_thumbnail_id).attr('src', str_thumbnail_src);

      var str_magnify_src = $(str_magnify_anchor_id).attr('href');
      var str_magnify_src = str_magnify_src.replace(/\/product-media\/[^\/]*/, '/product-media/' + str_selected);
      $(str_magnify_anchor_id).attr('href', str_magnify_src);
      $('a[rel*=magnify]').magnify(obj_magnify_options);

      return false;
   };

   Seasons.modules.add(initialise);

	return {};
}());
