$(document).ready(function() { $('#searchBikeVg' ).click( function () { var language = b2c.locale.language; window.location.href = '/' + language + '/shop/configurator-bike.html'; }); function fetchTireDimCombinations(vehicleType, seasonElement, widthElement, profileElement, rimSizeElement, brandElement, adjustedComboElement) { if (adjustedComboElement) { adjustedComboElement.data('dimset', true); } seasonElement.prop('disabled', true); widthElement.prop('disabled', true); profileElement.prop('disabled', true); rimSizeElement.prop('disabled', true); brandElement.prop('disabled', true); $.ajax({ url: '/json/dimjsonp.jsp', data: { vehicleType: vehicleType, season: seasonElement ? seasonElement.val() : '', lastSeason: seasonElement ? (seasonElement.data('last') || '') : '', width: widthElement.val(), widthSet: widthElement.data('dimset') ? 1 : 0, profile: profileElement.val(), profileSet: profileElement.data('dimset') ? 1 : 0, rimSize: rimSizeElement.val(), rimSizeSet: rimSizeElement.data('dimset') ? 1 : 0, brand: brandElement.val() }, async: true, cache: false, crossDomain: true, dataType: 'jsonp', timeout: 3000, success: function(tireDimensions) { if (tireDimensions.reset) { widthElement.removeData('dimset'); profileElement.removeData('dimset'); rimSizeElement.removeData('dimset'); brandElement.removeData('dimset'); } setComboData(tireDimensions.season, tireDimensions.selectedSeason, seasonElement, adjustedComboElement); setComboData(tireDimensions.width, tireDimensions.selectedWidth, widthElement, adjustedComboElement); setComboData(tireDimensions.profile, tireDimensions.selectedProfile, profileElement, adjustedComboElement); setComboData(tireDimensions.rimSize, tireDimensions.selectedRimSize, rimSizeElement, adjustedComboElement); setComboData(tireDimensions.brand, tireDimensions.selectedBrand, brandElement, adjustedComboElement); } }); } function setComboData(availableValues, selectedValue, comboElement, adjustedComboElement) { comboElement.prop('disabled', false); if (adjustedComboElement && selectedValue !== '0' && comboElement.attr('id') === adjustedComboElement.attr('id')) { comboElement.val(selectedValue); } else { comboElement.empty(); for (var i in availableValues) { if (availableValues.hasOwnProperty(i)) { var dim = availableValues[i]; var option = $('