activateGalleryItem = function(elem) {

	if (!$('.jcarousel-clip')[0]) return -1;
	var el = elem.get(0);
	var vs = $('.jcarousel-clip')[0].offsetWidth;
	var x='-36px';
	var leftPos = parseInt(elem.parent().css('left'));
	var elPos = parseInt(el.offsetLeft);

	if (elPos+leftPos<36) x=Math.abs(elPos+leftPos)+'px';
	else if (vs-leftPos-elPos<108) x=-Math.abs(147-vs+leftPos+elPos)+'px';

	elem.addClass('active');
	elem.find('.galleryActiveItem').css({'left' : x});
	elem.find('.galleryActiveItem').fadeIn('fast');

	};

deactivateGalleryItem = function() {
	$('.galleryActiveItem').fadeOut('fast');
	$('.jcarousel-skin-brw1 .jcarousel-item').removeClass('active');
	};





function hideOnTimeout(elem) {
	$(elem).hide();
}


$.fn.additionalDocumentsList = function() {
  $(this).mouseleave( function() {
    $('dd', this).each( function() {
      var t = $(this);

      var tout = t.attr('tout');

      if ( tout ) {
        clearTimeout( tout );
			}
      t.hide();
		});
  })

	$('dt' ,this).mouseenter( function() {
		$(this).parent().find('dd').hide();

//	  var dd = $(this).next('dd').show();
		var dd = $(this).next('dd');

		if ( !dd.hasClass('instrukcjaobslugiikonserwacji') ) {
			dd.show();
		}

	  var MyTimeout = {
	  	dd : $(this).next('dd'),
		  init : function() {
		    var self = this;
		    var tout = setTimeout( function(){ self.dd.hide(); }, (5*1000) );
		    this.dd.attr({'tout':tout});
		  }
		}
		MyTimeout.init();

		$(this).next('dd').mouseenter( function() {
			clearTimeout( $(this).attr('tout') );
		});
		$(this).next('dd').mouseleave( function() {
     $(this).hide();
		});

	});

}

function loadUpholsteryGroup(elem) {
//	if (JSDEBUG) console.log('loadUpholsteryGroup: ', elem);

	$('ul li a' , elem).click( function() {
	  $(this).parents('ul').find('li').removeClass('active');
	  $(this).parent().addClass('active');

	  loadPatternSetList( this.href, $(this).attr('rel') );

	  this.blur();

		return false;
	});

	$('ul li:first-child a' , elem).trigger('click');
}

function loadPatternSetList( _url, _hash ) {
//	if (JSDEBUG) console.log('maxPatterns: ', _hash);
	var maxPatterns = _hash.replace(/^max=([0-9]+)$|/, '$1');
//	if (JSDEBUG) console.log('max: ', maxPatterns);

	$('.upholsteryWrapper').attr('maxPatterns', maxPatterns);

	$.ajax({
		type: "GET",
		url: _url,
		success: function(data, textStatus) {
		  $('.groupsContent .groupContent .patternSetList').html( data );

		  $('.groupsContent .groupContent .patternSetList ul li a').click( function() {
		    $(this).parents('ul').find('li').removeClass('selected');
		    $(this).parent().addClass('selected');

        loadPatternList(this.href);

        this.blur();

		    return false;
			});

			$('.groupsContent .groupContent .patternSetList ul li:first-child a').trigger('click');
		}
	});
}

function loadPatternList(_url) {
  $('.upholsteryWrapper .summary .upholsteryPriceCheck').hide();

  $.ajax({
		type: "GET",
		url: _url,
		success: function(data, textStatus) {
		  $('.groupsContent .groupContent .patternList').html( data );
		  tb_init('.groupsContent .groupContent .patternList a.thickbox');
		  $('.upholsteryWrapper').attr('currPatterns', 0);

		  var maxPatterns = $('.upholsteryWrapper').attr('maxPatterns');
			$('.upholsteryWrapper .maxPatternsInfo').html( maxPatterns );


		  $('.groupsContent .groupContent .patternList dl dd a.pattern').click( function() {
				var maxPatterns = $('.upholsteryWrapper').attr('maxPatterns');
				var currPatterns;

				currPatterns = $('.upholsteryWrapper').attr('currPatterns');

		    var elemContainer = $(this).parents('dd');

		    if ( elemContainer.hasClass('selected') ) {
          elemContainer.removeClass('selected');
          currPatterns--;
          $('.upholsteryWrapper').attr('currPatterns', currPatterns);
				} else {
				  if ( currPatterns<maxPatterns ) {
				    elemContainer.addClass('selected');
				    currPatterns++;
          	$('.upholsteryWrapper').attr('currPatterns', currPatterns);
					}
				}

				if ( currPatterns == 0 ) {
				  $('.upholsteryWrapper .summary .upholsteryPriceCheck').hide();
				  $('.upholsteryWrapper .summary .upholsteryPrice').hide();
				} else {
				  $('.upholsteryWrapper .summary .upholsteryPriceCheck').show();
				  $('.upholsteryWrapper .summary .upholsteryPrice').show();
				}

//				if (JSDEBUG) console.log( $('.upholsteryWrapper').attr() );

        this.blur();

		    return false;
			});
		}
	});

}

function upholsteryPrice() {
	var groupId = -1;
	var productId = -1;

  $('.groupsContent .groupContent .patternList dl dd.selected a.pattern').each( function() {
    var rx = new RegExp('^#([0-9]+)-([0-9]+)$');

    groupId = this.hash.replace(rx, '$1');
    productId = this.hash.replace(rx, '$2');
	});

		$('.upholsteryWrapper .summary .upholsteryPrice').load( ajax_domain + '/produkty/tapicerka-cena/groupId/' + groupId + '/productId/' + productId);
}


$.fn.upholsteryTabs = function() {
  $('.floatCol .linkButton.tapicerki').click( function(){
    $('.upholsteryWrapper').show();

    return false;
	});

  $('.upholsteryWrapper .summary .upholsteryPriceCheck').hide();
  loadUpholsteryGroup(this);

	$('.upholsteryWrapper a.close').click( function() {
	  $(this).parents('div.upholsteryWrapper').hide();

	  return false;
	});

	$('.upholsteryWrapper a.upholsteryPriceCheck').click( function() {
	  upholsteryPrice();

	  this.blur();

	  return false;
	});

}




/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

$(document).ready(function() {


 $('.data .constCol dl.additionalDocuments').additionalDocumentsList();


	$('#galleryList a').each( function (){
		var t;

		var src1 = $(this).find('img').eq(0).attr('src');

		t = $(this).find('img').eq(0).attr('longdesc');
		var longdesc1 = t!=undefined?t:src1;

		t = $(this).attr('alt');
		var alt1 = t!=undefined?t:'';
		// $(this).parent().prepend('<a href="javascript:void(0);"><img src="'+src1+'" alt="'+alt1+'" /></a>');
		$(this).parent().prepend('<a href="javascript:void(0);"><img src="'+ longdesc1 +'" alt="'+alt1+'" /></a>');
		$(this).hide();
	});

	$('#galleryList li').hover(
		function() {
			deactivateGalleryItem();
			activateGalleryItem($(this));
			},
		function() {
			deactivateGalleryItem();
	});

	if ($('#galleryList')[0]) $('#galleryList').jcarousel({
	    scroll: 1
	});
	if ($('.jcarousel-clip')[0]) {
		$('.jcarousel-clip .galleryActiveItem').css('position','absolute');
		var vs = $('.jcarousel-clip')[0].offsetWidth;
		var ulw = $('#galleryList')[0].offsetWidth;
		ulw = vs - ulw;
		if (ulw>0) $('#galleryList').css('padding-right', ulw+'px');
		$('#galleryList').css('position', 'absolute');
	}

 $('div.upholsteryWrapper div.groupsTabs').upholsteryTabs();
});



