CONFI Roue(s) DT SWISS RR 481 DISC / SON28 (2023)

  • New

CONFI Roue(s) DT SWISS RR 481 DISC / SON28 (1)

* The colors of the products displayed in photos may vary from one screen to another depending on their calibration.

'; } else { htmlSelect = '

'; if (!nolabel) { htmlSelect += ' '; } htmlSelect += '

'; } retour.push(htmlSelect); }); return retour; } function generateAllSelect(baseElement, path) { let retour = new Array(); Object.entries(baseElement).forEach(function (item) { retour[item[0]] = generateSelect(item[1][0], item[1][2], item[0], path); }); return retour; } function addSelectsToHtml(id, selects, path) { let html = ''; Object.entries(selects).forEach(function (item) { let isNoAttributes = ''; if (!attributes.includes(item[0])) { isNoAttributes = 'noAttributes'; } let nolabel = false; if (item[1].length == 1) { nolabel = true; } html += '

'; if (!nolabel) { html += '' + item[0] + ''; } item[1].forEach(function (it, i) { html += it; }); html += '

'; }); $('#' + id).html(html); } /*function loadSelectBase() { let htmlSelect = '

'; htmlSelect += '

'; $('#selectConfig').append(htmlSelect); }*/ function loadConfigRoue(index) { let backwheel = dataConfig[index].config.back_wheel; let frontwheel = dataConfig[index].config.front_wheel; let isbackwheel = true; let isfrontwheel = true; $('#roueConfig input[type=radio][name=roueConfig]:checked').val(); if (JSON.stringify(backwheel) === '{}') { isbackwheel = false; } if (JSON.stringify(frontwheel) === '{}') { isfrontwheel = false; } if (isbackwheel && isfrontwheel) { $("#roueConfig input[type=radio][name=roueConfig][value='P'] + label").click(); } else { if (isbackwheel) { $("#roueConfig input[type=radio][name=roueConfig][value='B'] + label").click(); $("#roueConfig input[type=radio][name=roueConfig][value='P']").attr('disabled', true); $("#roueConfig input[type=radio][name=roueConfig][value='F']").attr('disabled', true); $("#roueConfig input[type=radio][name=roueConfig][value='P'] + label").hide(); $("#roueConfig input[type=radio][name=roueConfig][value='F'] + label").hide(); } if (isfrontwheel) { $("#roueConfig input[type=radio][name=roueConfig][value='F'] + label").click(); $("#roueConfig input[type=radio][name=roueConfig][value='P']").attr('disabled', true); $("#roueConfig input[type=radio][name=roueConfig][value='B']").attr('disabled', true); $("#roueConfig input[type=radio][name=roueConfig][value='P'] + label").hide(); $("#roueConfig input[type=radio][name=roueConfig][value='B'] + label").hide(); } } } function loadSelectBase() { let htmlSelect = '

'; //htmlSelect += '

'; $('#selectConfig').html(htmlSelect); } ; function selectVariante(o) { miniConfigLoader('Start'); console.log(o.value); let id_product = $('#product-details').data("product").id; let quantity = $('#quantity_wanted').val(); config = buildConfig(); $('.product_date_available').addClass('toRefresh'); if (config['complete'] === true) { sendCustomization(id_product, fieldMiniConfig, config['config'], config['type'], quantity); } else { sendCustomizationIncomplete(id_product, fieldMiniConfig, config['config'], config['type'], quantity); } } function buildConfig() { jsonConfig = {}; configComplete = true; let configRoue = $('#roueConfig input[type=radio][name=roueConfig]:checked').val(); let selector = '[data-groupminiconfig]'; if (configRoue == 'P') { selector = '.configArriere [data-groupminiconfig], .configAvant [data-groupminiconfig]'; } if (configRoue == 'F') { selector = '.configAvant [data-groupminiconfig]'; } if (configRoue == 'B') { selector = '.configArriere [data-groupminiconfig]'; } $(selector).each(function (index, item) { //console.log(item); path = $(item).data('groupminiconfig'); itemvalues = $(item).find(".miniConfig-value"); re = /\[(.*?)\]/g; groupattr = re.exec(path); groupattr = groupattr[1].replace(/^"(.+(?="$))"$/, '$1'); dataReverse = eval(path); idprddataconfig = 0; if (attributes.includes(groupattr)) { groupvalue = []; $(itemvalues).each(function (index2, item2) { cle = $(item2).data('attrminiconfig'); valeur = ''; if ($(item2).is("select")) { valeur = $(item2).val(); } if ($(item2).is("span")) { valeur = $(item2).text(); } groupvalue[cle] = valeur; }); key = JSON.stringify(Object.assign({}, groupvalue)); console.log(key); idprddataconfig = dataReverse[1][key]; } else { valeur = ''; if ($(itemvalues).is("select")) { valeur = $(itemvalues).val(); } if ($(itemvalues).is("span")) { valeur = $(itemvalues).text(); } idprddataconfig = dataReverse[1][valeur]; } re2 = /\.(.*?)\[/g; attrType = re2.exec(path); attrType = attrType[1]; if (idprddataconfig === undefined && attrType === 'base') { /*jsonConfig = undefined; return false;*/ $(item).css("background-color", "#e7f4d0"); configComplete = false; } else { $(item).css("background-color", "#f3f7fa"); } selectprd = {}; selectprd.type = groupattr; if (idprddataconfig !== undefined) { //let indexConfig = $('#selectConfig select').val(); let indexConfig = $('#selectConfig input[type=radio][name=configRayon]:checked').val(); refpath = "dataConfig[" + indexConfig + "].config." + path + ".products['" + idprddataconfig + "'].reference"; selectprd.ref = eval(refpath); if (qtyMulti.includes(groupattr)) { frontOrBack = path.split('.'); frontOrBack = frontOrBack[0]; //pathNbRayon = "dataConfig[" + indexConfig + "].config." + frontOrBack + ".nb_rayons"; pathNbRayonReel = "dataConfig[" + indexConfig + "].config." + frontOrBack + ".nb_rayons_reel"; nbRayon = eval(pathNbRayonReel); selectprd.qty = parseInt(nbRayon); } else { selectprd.qty = 1; } basePath = path.split('['); basePath = basePath[0]; basePath = basePath.split('.'); if (jsonConfig[basePath[0]] === undefined) { jsonConfig[basePath[0]] = {}; } if (jsonConfig[basePath[0]][basePath[1]] === undefined) { jsonConfig[basePath[0]][basePath[1]] = []; } jsonConfig[basePath[0]][basePath[1]].push(selectprd); } }); retourConfig = {}; retourConfig['complete'] = configComplete; retourConfig['config'] = JSON.stringify(jsonConfig); retourConfig['type'] = configRoue; return retourConfig; } function initConfig(index) { console.log("init config"); //miniConfigLoader('Start'); $('#wBtnAddToCart').prop('disabled', true); //$('#product-information .product-add-to-cart-inner').hide(); $('#product-information .product-add-to-cart-msg').show(); /*let dataProduct = $('#product-details').data('product'); $('#wProductPrice').html(dataProduct.price); $('#wProductWeight').html(baseWeight);*/ let configRoue = $('#roueConfig input[type=radio][name=roueConfig]:checked').val(); $('.configArriere').hide(); $('.configAvant').hide(); if (configRoue == "P" || configRoue == "B") { basearriere = getBaseData(dataConfig[index].config.back_wheel.base); back_wheel = {}; back_wheel.base = basearriere; console.log(basearriere); selectarriere = generateAllSelect(basearriere, "back_wheel.base"); addSelectsToHtml('roueArriere', selectarriere, "back_wheel.base"); optionsarriere = getBaseData(dataConfig[index].config.back_wheel.options); back_wheel.options = optionsarriere; selectoptionsarriere = generateAllSelect(optionsarriere, "back_wheel.options"); addSelectsToHtml('optionsArriere', selectoptionsarriere, "back_wheel.options"); $('.configArriere').show(); if (Array.isArray(optionsarriere) && Object.keys(optionsarriere).length > 0) { $('.optionsArriere .product-maintitle').show(); } else { $('.optionsArriere .product-maintitle').hide(); } } if (configRoue == "P" || configRoue == "F") { baseavant = getBaseData(dataConfig[index].config.front_wheel.base); front_wheel = {}; front_wheel.base = baseavant; selectavant = generateAllSelect(baseavant, 'front_wheel.base'); addSelectsToHtml('roueAvant', selectavant, 'front_wheel.base'); optionsavant = getBaseData(dataConfig[index].config.front_wheel.options); front_wheel.options = optionsavant; selectoptionsavant = generateAllSelect(optionsavant, "front_wheel.options"); addSelectsToHtml('optionsAvant', selectoptionsavant, "front_wheel.options"); $('.configAvant').show(); console.log(optionsavant); if (Array.isArray(optionsavant) && Object.keys(optionsavant).length > 0) { $('.optionsAvant .product-maintitle').show(); } else { $('.optionsAvant .product-maintitle').hide(); } } let id_product = $('#product-details').data("product").id; let quantity = $('#quantity_wanted').val(); config = buildConfig(); if (config['complete'] === true) { sendCustomization(id_product, fieldMiniConfig, config['config'], config['type'], quantity); } else { sendCustomizationIncomplete(id_product, fieldMiniConfig, config['config'], config['type'], quantity); } availableDateLoader('Start'); //let indexConfig = $('#selectConfig input[type=radio][name=configRayon]:checked').val(); getAvailableDate(config['config'],quantity); //synchronisation verticale des blocs du configurateur $("#avant .form-group").each(function () { let elmt = $(this).data('elemtminiconfig'); //console.log('[data-elemtminiconfig="' + elmt + '"]'); let topAvant = $('#avant [data-elemtminiconfig="' + elmt + '"]').position().top; if ($('#arriere [data-elemtminiconfig="' + elmt + '"]').length > 0) { let topArriere = $('#arriere [data-elemtminiconfig="' + elmt + '"]').position().top; let diffTop = topAvant - topArriere; if (diffTop > 0) { let newmargintoparriere = parseInt($('#arriere [data-elemtminiconfig="' + elmt + '"]').css('margin-top')) + diffTop; $('#arriere [data-elemtminiconfig="' + elmt + '"]').css('margin-top', newmargintoparriere + 'px'); } if (diffTop < 0) { let newmargintopavant = parseInt($('#avant [data-elemtminiconfig="' + elmt + '"]').css('margin-top')) - diffTop; $('#avant [data-elemtminiconfig="' + elmt + '"]').css('margin-top', newmargintopavant + 'px'); } } }); } function sendCustomization(idproduct, field, config, type, quantity) { //let indexConfig = $('#selectConfig select').val(); let indexConfig = $('#selectConfig input[type=radio][name=configRayon]:checked').val(); console.log('sendCustomization'); console.log(JSON.parse(config)); $.ajax({ type: 'POST', url: "https://www.jpracingbike1.com/en/module/wattminiconfig/ajax", cache: false, async: true, data: { action: 'SendCustomization', ajax: true, idproduct: idproduct, field: field, config: config, type: type, indexConfig: indexConfig, quantity: quantity }, success: function (result) { result = JSON.parse(result); if (result.result == 'ok') { console.log(result); $('#product_customization_id').val(result.id_customizedData); $('#wProductPrice').html(result.price); $('#wProductWeight').html(result.weight); let configRoue = $('#roueConfig input[type=radio][name=roueConfig]:checked').val(); if (configRoue === 'P') { $('#wProductTolerance').html('30'); } else { $('#wProductTolerance').html('15'); } $('#wMiniConfigPrdsInfos').html(result.prdsInfos); $('#wBtnAddToCart').prop('disabled', false); //$('#product-information .product-add-to-cart-inner').show(); $('#product-information .product-add-to-cart-msg').hide(); } else { $('#wBtnAddToCart').prop('disabled', true); //$('#product-information .product-add-to-cart-inner').hide(); $('#product-information .product-add-to-cart-msg').show(); } miniConfigLoader('Stop'); } }); } function sendCustomizationIncomplete(idproduct, field, config, type, quantity) { //let indexConfig = $('#selectConfig select').val(); let indexConfig = $('#selectConfig input[type=radio][name=configRayon]:checked').val(); //$('#product-information .product-add-to-cart-inner').hide(); $('#product-information .product-add-to-cart-msg').show(); console.log('sendCustomizationIncomplete'); console.log(JSON.parse(config)); //miniConfigLoader('Start'); $.ajax({ type: 'POST', url: "https://www.jpracingbike1.com/en/module/wattminiconfig/ajax", cache: false, async: true, data: { action: 'SendCustomization', ajax: true, idproduct: idproduct, field: field, config: config, type: type, indexConfig: indexConfig, quantity: quantity }, success: function (result) { result = JSON.parse(result); if (result.result == 'ok') { console.log(result); $('#product_customization_id').val(result.id_customizedData); $('#wProductPrice').html(result.price); $('#wProductWeight').html(result.weight); let configRoue = $('#roueConfig input[type=radio][name=roueConfig]:checked').val(); if (configRoue === 'P') { $('#wProductTolerance').html('30'); } else { $('#wProductTolerance').html('15'); } $('#wMiniConfigPrdsInfos').html(result.prdsInfos); $('#wBtnAddToCart').prop('disabled', true); } else { $('#wBtnAddToCart').prop('disabled', true); } miniConfigLoader('Stop'); } }); } function refreshAvailableDate() { availableDateLoader('Start'); let quantity = $('#quantity_wanted').val(); config = buildConfig(); getAvailableDate(config['config'],quantity); return false; } function getAvailableDate(config,qty) { $.ajax({ type: 'POST', url: "https://www.jpracingbike1.com/en/module/wattminiconfig/ajax", cache: false, async: true, data: { action: 'GetAvailableDate', ajax: true, config: config, quantity: qty }, success: function (result) { if (result == '--/--/----') { $('.product_date_available span').html(result); } else { $('.product_date_available span').html(result); $('.product_date_available').removeClass('toRefresh'); } availableDateLoader('Stop'); } }); } function miniConfigUpdQuantity() { console.log('miniConfigUpdQuantity'); let id_product = $('#product-details').data("product").id; let quantity = $('#quantity_wanted').val(); miniConfigLoader('Start'); config = buildConfig(); $('.product_date_available').addClass('toRefresh'); if (config['complete'] === true) { sendCustomization(id_product, fieldMiniConfig, config['config'], config['type'], quantity); } else { sendCustomizationIncomplete(id_product, fieldMiniConfig, config['config'], config['type'], quantity); } } function miniConfigLoader(run) { if (run == 'Start') { //console.log('start'); $('.loaderDiv').show(); } if (run == 'Stop') { //console.log('stop'); $('.loaderDiv').hide(); } } function availableDateLoader(run) { if (run == 'Start') { //console.log('start'); $('.dateLoaderDiv').show(); } if (run == 'Stop') { //console.log('stop'); $('.dateLoaderDiv').hide(); } }

I want to configure :

With :

Front wheel

Back wheel

Front option

Back option

Product customization

Don't forget to save your customization to be able to add to cart

dealer locator

Sapim Spokes

Sapim is THE brand of spokes, made in Belgium since 1918.Several models of spokes are available, within the limits of compatibility with the practice and the chosen rim:

  • Sapim CX-Ray: flat spoke, very light, durable, aero and very dynamic (309g / 64 pcs / 292mm)
  • Sapim CX-Sprint: Flat spoke identical to the CX-Ray but thicker for even more rigidity (373g / 64pcs / 292mm)
  • Sapim D-Light: round spoke, light and durable, with a 1.65mm diameter central part, good value for money (344g / 64 pcs / 292mm)
  • Sapim Race: round, sturdy and rigid spoke with a 1.8mm diameter central part (408g / 64 pcs / 292mm)

Nipples

Aluminium nipples with locking thread, available in 16 colours: black, red, silver, metal grey, blue, aqua blue, gold, light gold, dark green, mint syrup green, lime green, lilac, pink, fuchsia pink, orange and oil slick.

Accessories

The wheels are delivered assembled with valves and rim tape fitted, four spare spokes and nipples and an assembly certificate.

Brand SON

Supplier info

Confi/RR481DISC-SON28

CONFI Roue(s) DT SWISS RR 481 DISC / SON28 (2)

Fast delivery and careful

CONFI Roue(s) DT SWISS RR 481 DISC / SON28 (3)

International delivery

CONFI Roue(s) DT SWISS RR 481 DISC / SON28 (4)

Delivery by Chronopost

CONFI Roue(s) DT SWISS RR 481 DISC / SON28 (5)

Secure payment

References

Top Articles
Latest Posts
Article information

Author: Margart Wisoky

Last Updated: 08/01/2024

Views: 6399

Rating: 4.8 / 5 (58 voted)

Reviews: 89% of readers found this page helpful

Author information

Name: Margart Wisoky

Birthday: 1993-05-13

Address: 2113 Abernathy Knoll, New Tamerafurt, CT 66893-2169

Phone: +25815234346805

Job: Central Developer

Hobby: Machining, Pottery, Rafting, Cosplaying, Jogging, Taekwondo, Scouting

Introduction: My name is Margart Wisoky, I am a gorgeous, shiny, successful, beautiful, adventurous, excited, pleasant person who loves writing and wants to share my knowledge and understanding with you.