$(function() {
	// Open/close model popup windows
	
	function showPopup(content) {	
		$('body .infoContainer').remove(); //remove other popups
		
		var popup = $('<div class="infoContainer"></div>');
		var hideButton = $('<div class="hideButton">x</div>');
		hideButton.click(function() {
			$(this).parent().remove();
		});
		
		popup.append(hideButton);
		popup.append(content);
		$('body').prepend(popup);
		$('.modelPopupSelectbox').change(function(){
			 $("select option:selected").each(function () {
			createPopup($(this)); return false;
			 });
			})
		popup.fadeIn();
	}
	
	
	function createPopup(elem){
			var langCode = $(elem).attr('data-langCode');
	
			var modelId = $(elem).attr('data-modelId');
			var back = $(elem).attr('data-back');
			
				
			
			var url = '/'+langCode+'/shop-modelInfo/'+modelId+'?displayMode=content&back='+back;
			
			$.get(url, function(data) {
				$(elem).attr('data-content', data);
				showPopup(data);
			});
	}	
		
		
		$('.infoButton, .modelBox.popup').click(function(){
		if ($(this).attr('data-content') == '') {			
			createPopup($(this)); return false;
			}
		else {
			showPopup($(this).attr('data-content'));
		}
		
		
		});	
	
	;	
	
	/*$('.modelPopupSelectbox').change(function() {
		alert('');
		if ($(this).attr('data-content') == '') {				
			var langCode = $(this).attr('data-langCode');
			var modelId = $(this).attr('data-modelId');
			var back = $(this).attr('data-back');
			
			var url = '/'+langCode+'/shop-modelInfo/'+modelId+'?displayMode=content&back='+back;
			
			$.get(url, function(data) {
				$(this).attr('data-content', data);
				showPopup(data);
			});
		}
		else {
			showPopup($(this).attr('data-content'));
		}
		return false;
	}); */
	
	// Show/hide apply buttons
	$('.filters input[type="submit"]').hide();

	$('.filters li').click(function() {
		$(this).closest('ul').next('input[type="submit"]').slideDown('fast');
	});
	
	// Activate/inactivate checkboxes
	$('.filters input[type="checkbox"]').change(function() {
		if ($(this).is(':checked'))
			$(this).closest('li').addClass('active');
		else
			$(this).closest('li').removeClass('active');
	});
	
	$('.filters input[type="checkbox"]').change();
	
	// Shorten long lists and add a "more" button
	$('.filters ul').each(function(index) {
		if (index >= 2) { //Don't shorten the first 2 filters (brand, segment/usage)
			if ($(this).find('input[type="checkbox"]:checked').length == 0) {
				var listItems = $(this).find('li');
				var nVisible = 3;
				if (listItems.length > nVisible) {
					listItems.each(function(index) {
						if (index >= nVisible)
							$(this).hide();
					});
					var moreOptionsText = $('#moreOptionsText').html();
					var moreButton = $('<li class="more"><a href="#">'+moreOptionsText+' ▾</a></li>');
					moreButton.click(function() {
						$(this).parent().children('li').slideDown();
						$(this).slideUp();
						return false;
					});
					$(this).append(moreButton);
				}
			}
		}
	});
	
	/*
	$('.filters ul:first input[type="checkbox"]').change(function() {
		if ($(this).closest('ul').find('input[type="checkbox"]:checked').length == 0)
			if (!confirm('If no category is selected, finding the products you are looking for may become difficult due to too many available search options. It is advised to keep a category selected. Continue anyway?'))
				$(this).attr('checked', 'checked');
	});
	*/
	
	//Add range sliders
	$('.range').each(function() {
		var container = $(this);
		var minimum = parseFloat(container.attr('data-min'));
		var maximum = parseFloat(container.attr('data-max'));
		container.children('.slider').slider({
			range: true,
			step: 1,
			min: minimum,
			max: maximum,
			values: [0,3],
			slide: function(event, ui) {
				container.find('input.low').val(ui.values[0]);
				container.find('input.high').val(ui.values[1]);
				container.click(); //to show the apply button
			}
		});
		
		container.find('input.low, input.high').change(function() {
			$(this).val($(this).val().replace(',', '.'));
			
			var low = parseFloat(container.find('input.low').val());
			var high = parseFloat(container.find('input.high').val());
			if (isNaN(low)) {
				container.find('input.low').val(minimum);
				low = minimum;
			}
			if (isNaN(high)) {
				container.find('input.high').val(maximum);
				high = maximum;
			}
			container.find('.slider').slider('option', 'values', [low,high]);
		});
		
		container.find('input.low, input.high').change();
		
		container.find('input[type="checkbox"]').change(function() {
			if ($(this).is(':checked')) {
				container.find('input.low, input.high').removeAttr('disabled');
				container.find('.slider').slider('option', 'disabled', false);
			}
			else {
				container.find('input.low, input.high').attr('disabled', 'disabled');
				container.find('.slider').slider('option', 'disabled', true);
			}
		});
		
		container.find('input[type="checkbox"]').change();
	});
});
/*tabs by products */

$(document).ready(function() {
	$(".tab_content").hide(); //Hide all content
 	
		//When page loads...
		$(".tab_content:first").show(); //Show first tab content		
				$("ul#tabs li:first").addClass("active").show(); //Activate first tab

			//On Click Event
	$("ul#tabs li").click(function() {
		$("ul#tabs li").removeClass("active"); //Remove any "active" class
		$(this).addClass("active"); //Add "active" class to selected tab
		$(".tab_content").hide(); //Hide all tab content

		var activeTab = $(this).find("a").attr("href"); //Find the href attribute value to identify the active tab + content
		$(activeTab).fadeIn(); //Fade in the active ID content
		return false;
	});

});

