- Description
- Fits
- Reviews
- Warranty
The same protection you come to expect from Tough Country for your UTV. This bumper includes a 2 inch Receiver, Winch Mount, 5/8 inch Shackle Mounts & Black Wrinkle Finish.
2016 Can-Am Defender HD8
2016 Can-Am Defender HD10
2016 Can-Am Defender HD8 DPS
2016 Can-Am Defender HD10 DPS
2016 Can-Am Defender HD8 XT
2016 Can-Am Defender HD10 XT
2016 Can-Am Defender HD10 CAB
2017 Can-Am Defender HD10
2017 Can-Am Defender HD10 CAB
2017 Can-Am Defender HD10 DPS
2017 Can-Am Defender HD10 XT
2017 Can-Am Defender HD8 BASE
2017 Can-Am Defender HD8
2017 Can-Am Defender HD8 DPS
2017 Can-Am Defender HD8 XT
2017 Can-Am Defender MAX HD10 DPS
2017 Can-Am Defender MAX HD10 XT
2017 Can-Am Defender MAX HD8 DPS
2017 Can-Am Defender MAX HD8 XT
2018 Can-Am Defender HD10
2018 Can-Am Defender HD10 DPS
2018 Can-Am Defender HD10 XT
2018 Can-Am Defender HD10 CAB XT
2018 Can-Am Defender HD8
2018 Can-Am Defender HD8 DPS
2018 Can-Am Defender HD8 XT
2018 Can-Am Defender HD8 CAB XT
2018 Can-Am Defender HD5
2018 Can-Am Defender HD5 DPS
2018 Can-Am Defender MAX HD10 DPS
2018 Can-Am Defender MAX HD10 XT
2018 Can-Am Defender MAX HD10 CAB XT
2018 Can-Am Defender MAX HD8 DPS
2018 Can-Am Defender MAX HD8 XT
2018 Can-Am Defender MAX HD8
2018 Can-Am Defender HD10 XMR
2018 Can-Am Defender HD10 XTP
2018 Can-Am Defender Lone Star MAX
2019 Can-Am Defender HD10 DPS
2019 Can-Am Defender HD10 XT
2019 Can-Am Defender HD10 XTP
2019 Can-Am Defender HD10 XMR
2019 Can-Am Defender HD10 CAB
2019 Can-Am Defender HD8
2019 Can-Am Defender HD8 DPS
2019 Can-Am Defender HD8 XT
2019 Can-Am Defender HD8 CAB
2019 Can-Am Defender HD5
2019 Can-Am Defender HD5 DPS
2019 Can-Am Defender MAX HD10 DPS
2019 Can-Am Defender MAX HD10 XT
2019 Can-Am Defender MAX HD10 CAB
2019 Can-Am Defender MAX HD10 Lone Star
2019 Can-Am Defender MAX HD8 DPS
2019 Can-Am Defender MAX HD8 XT
2019 Can-Am Defender MAX HD8
2019 Can-Am Defender HD10 MAX XMR
2020 Can-Am Defender HD10 DPS
2020 Can-Am Defender HD10 XT
2020 Can-Am Defender HD10 XTP
2020 Can-Am Defender HD10 XMR
2020 Can-Am Defender HD10 CAB XT
2020 Can-Am Defender HD10 6x6 DPS
2020 Can-Am Defender HD8
2020 Can-Am Defender HD8 DPS
2020 Can-Am Defender HD8 XT
2020 Can-Am Defender HD8 CAB XT
2020 Can-Am Defender HD5
2020 Can-Am Defender HD5 DPS
2020 Can-Am Defender MAX HD10 DPS
2020 Can-Am Defender MAX HD10 XT
2020 Can-Am Defender MAX HD10 CAB XT
2020 Can-Am Defender MAX HD10 Lone Star
2020 Can-Am Defender MAX HD10 XMR
2020 Can-Am Defender MAX HD8 DPS
2020 Can-Am Defender MAX HD8 XT
2020 Can-Am Defender MAX HD8
2020 Can-Am Defender HD10 Mossy Oak Edition
Product Ratings and Reviews
Add a Review
Add a Review
0 out of 5 stars
Be the first to review this product.
';strInputsOutput = strTemp;if (!oProdInfo.showCart) {strTemp = strInputsOutput + '-';} else {if (bUseChildQtyControls) {strMax = ""if (oProdInfo.maxOrderQty > 0) {strMax = 'max="' + oProdInfo.maxOrderQty + '"';}//jsmotherman 3.8.2016 still need to add display for the child min/max/step.strTemp = strInputsOutput + '';} else {strTemp = strInputsOutput + '';}}strInputsOutput = strTemp;strTemp = strInputsOutput + '
' + oProdInfo.invMsg;if (bShowInvWatchLink && oProdInfo.invStatus == 'out') {strTemp = strTemp + '
' +buildModalLink(getInventoryWatchListUrl(strPKey, oProdInfo.nm, oProdInfo.sku),'Add to Inventory Watch List','Add to Watch List').html();}strInputsOutput = strTemp;strTemp = strInputsOutput + '' + sMatrixSkuLabel + oProdInfo.sku + ''strInputsOutput = strTemp + '
';if (iColCount == iTotalCol) {strTemp = strInputsOutput + '
Available Sizes
';if (bUseProductAliases) {if (jQuery.trim(oProdInfo.pa_key) != '') {sAtcHtml += '';} //- if jQuery.trim(oProdInfo.pa_key) != '')} //- if (bUseProductAliases)if (bShowAtc) {sAtcHtml += '';} //- if (bShowAtc)sAtcHtml += '
';jQuery('#detail_mx1_sizeinfo').html(sAtcHtml);} catch (oError) {alert("fncDrawColorSizes" + oError.message);document.getElementById('detail_mx1_sizeinfo').innerHTML = 'Error loading sizes found in this color!';HideLoading()}HideLoading();} //- function fncDrawColorSizes()/** * Update Qty for "Select List" Addon Products */function fncUpdateAddonsSelectQty(oSelect) {sPKey = jQuery(oSelect).val();jQuery('#addon_qty_container').html('');}/** * Ajax to process parent-child product nested drop list displays * * @author dand * @internal refactored on 4/8/2010 - dand * * @param int vOptint of the option to processed (1-4) * @param bool vKeepGoingdetermines if function should recurse * @param int vLastthe total number of nested drop lists (1-4) */function fncGetOptDroplist(vOpt, vKeepGoing, vLast) {var oAjaxData = {opts: vOpt,maxopts: vLast,detailpageaction: 'ajaxcall',actiontype: 'getnestedopts',key: '6C97C561210C494C93FAD139E73F5F21',parent_atc: '1',parent_price: '1',use_child_pics: 'false',use_child_docs: 'false',use_child_product_flags: 'false',use_child_cart_opts: 'false',use_child_ds: 'false',parent_config_sections:'false'};switch (vOpt) {/* * Add mode case condition for 5 & 6 Droplist * @authorpijushb * @since5/17/2012 */case 6:var sOpt5Key = jQuery('#prod_opt5').val();var oOpt5Info = window.oChildProds[sOpt5Key];var sVal = escapeUriQueryParens(jQuery("#prod_opt5 option[value='" + sOpt5Key + "']").text());if (sChildProductOpt5 !== '') sVal = sChildProductOpt5oAjaxData.opt5 = sVal;//Drop Throughcase 5:var sOpt4Key = jQuery('#prod_opt4').val();var oOpt4Info = window.oChildProds[sOpt4Key];var sVal = escapeUriQueryParens(jQuery("#prod_opt4 option[value='" + sOpt4Key + "']").text());if (sChildProductOpt4 !== '') sVal = sChildProductOpt4oAjaxData.opt4 = sVal;//Drop Throughcase 4:var sOpt3Key = jQuery('#prod_opt3').val();var oOpt3Info = window.oChildProds[sOpt3Key];var sVal = escapeUriQueryParens(jQuery("#prod_opt3 option[value='" + sOpt3Key + "']").text());if (sChildProductOpt3 !== '') sVal = sChildProductOpt3oAjaxData.opt3 = sVal;//Drop Throughcase 3:var sOpt2Key = jQuery('#prod_opt2').val();var oOpt2Info = window.oChildProds[sOpt2Key];var sVal = escapeUriQueryParens(jQuery("#prod_opt2 option[value='" + sOpt2Key + "']").text());if (sChildProductOpt2 !== '') sVal = sChildProductOpt2oAjaxData.opt2 = sVal;//Drop Throughcase 2:var sVal = escapeUriQueryParens(jQuery('#prod_opt1').val());oAjaxData.opt1 = sVal;break;default:break;} //- switch (vOpt)tif (typeof runHook !== 'undefined') {runHook('ProductDetailActionBeforeGetOptDroplistAjaxCall', { oAjaxData: oAjaxData, vOpt: vOpt });}jQuery.ajax({url: 'i_i_pc_product_detail.asp',data: oAjaxData,cache: false,type: "GET",dataType: "json",beforeSend: ResizeLoadingBG,success: function (oData) {fncDrawOptDroplist(oData, vOpt, vKeepGoing, vLast)}});} //- function fncGetOptDroplist(vOpt, vKeepGoing, vLast)// EVENT FUNCTIONS ==================================================function fncDrawOptDroplist(oData, vOpt, bKeepGoing, vLast) {var iOpt = parseInt(vOpt);var iLastOpt = parseInt(vLast);var aUsedValues = new Array();var sProdKey = '';var sDisplayValue = '';var oProdInfo;window.oChildProds= oData;if (document.getElementById('prod_opt' + (iOpt - 1))) {document.getElementById('prod_opt' + (iOpt - 1)).disabled = false;}if (bKeepGoing) {bKeepGoing = true;} else {bKeepGoing = false;}if (iLastOpt == iOpt) {bKeepGoing = false;}try {// removes all previous optionsvar oOptSelect = document.getElementById('prod_opt' + iOpt);oOptSelect.options.length = 0;try {for (strPKey in window.oChildProds) {oProdInfo = window.oChildProds[strPKey];/* * Updated logic for building the droplist options if their is a sku in the * querystring that is an exact match to a child product sku so it can * preselect the correct options to load the child product sku searched for * johns - 06/27/2013 */if (sChildProductKey !== '') {switch (iOpt) {case 2 :sDisplayValue = sChildProductOpt2;break;case 3 :sDisplayValue = sChildProductOpt3;break;case 4 :sDisplayValue = sChildProductOpt4;break;case 5 :sDisplayValue = sChildProductOpt5;break;case 6 :sDisplayValue = sChildProductOpt6;break;}}if (sDisplayValue === oProdInfo.opt) {sProdKey = sChildProductKey;} else if ((!InArray (aUsedValues, oProdInfo.opt) && InArray (aUsedValues, sDisplayValue)) || sDisplayValue !== oProdInfo.opt) {sDisplayValue = oProdInfo.opt;sProdKey = strPKey;}if (!InArray (aUsedValues, sDisplayValue) && sProdKey !== '') {oOptSelect.options[oOptSelect.options.length] = new Option(jQuery('').html(sDisplayValue).text(), sProdKey);if (bValidateQtyControls && parseInt(vOpt) == parseInt(vLast)) {//jsmotherman set qty controls on the final product options//might remove this and use javascript to set it from window.ochildprods in fncProcessOptProduct insteadoOptSelect.options[oOptSelect.options.length - 1].setAttribute("data-min", window.oChildProds[sProdKey].min_order_qty);oOptSelect.options[oOptSelect.options.length - 1].setAttribute("data-max", window.oChildProds[sProdKey].max_order_qty);oOptSelect.options[oOptSelect.options.length - 1].setAttribute("data-step", window.oChildProds[sProdKey].qty_increment);oOptSelect.options[oOptSelect.options.length - 1].setAttribute("data-initval", window.oChildProds[sProdKey].initval);}aUsedValues[aUsedValues.length] = jQuery('').html(sDisplayValue).text();}}// johns - 06/27/2013 added code to preselect options based on an exact child sku match passed in the querystringif (sChildProductKey !== '') {oOptSelect.value = sChildProductKey;}// Recursively Call fncGetOptDroplist untilc we're done getting all the drop listsif (bKeepGoing) {if (iOpt == 5) {fncGetOptDroplist (iOpt + 1, false, iLastOpt);} else {fncGetOptDroplist (iOpt + 1, true, iLastOpt);}} else {fncProcessOptProduct (iOpt);HideLoading();} //- if (bKeepGoing)} catch (err) {alert("fncDrawOptDroplist-" + err.message);HideLoading();}if (oOptSelect.options.length < 1) {oOptSelect.options[oOptSelect.options.length] = new Option('No Sub-Options Found', '');oOptSelect.disabled = true;} else {oOptSelect.disabled = false;}} catch (err) {alert("fncDrawOptDroplist-" + err.message);} // Add Code to show/hide review message and buttons - pijushb 1/24/2012 if (bShowBackOrderMessage) {sPrevSku = jQuery("#previous_sku").val();bReviewMessage = $("#review_message_"+sPrevSku).is(":visible")if (bReviewMessage){$("#review_message_"+sPrevSku).hide();}bSubmitButton = $("#submit_button").is(":visible")if (!bSubmitButton){ $("#submit_button").show(); $("#check_stock_button").show(); $("#checkout_button").hide();} } //The child product only needs to load the first time this is called. //Blanking it out to prevent issues with multiple droplist. //[twalters 05/20/2016] sChildProductKey = '';} //- function fncDrawOptDroplist//================================================================/** * SearchString escape the parens in the uri query * * @param string sValstring containing the value to escape * @return stringstring with properly escaped parens for searchstring */function escapeUriQueryParens(sVal) { if (typeof sVal == 'undefined') {return;}sValue = sVal;sValue = sValue.replace(/%28/gi,"\(");sValue = sValue.replace(/%29/gi,"\)");sValue = sValue.replace(/\(/gi,"\\(");sValue = sValue.replace(/\)/gi,"\\)");return sValue;}function setImage($links, sImageUrl) {$links.filter('.' + sImageLinkClass).attr('href', sImageUrl);}function buildModalLink(sUrl, sText, sTitle) {sTitle = sTitle || sText;return jQuery('').attr('href', getModalUrl(sUrl)).addClass('global-modal').attr('title', sTitle).text(sText);}function getModalUrl(sUrl) {var sQueryStringChar = sUrl.indexOf('?') === -1 ? '?' : '&';sUrl = sUrl.replace(/\bi_i_/ig, '');return sUrl;}function getInventoryWatchListUrl(sProductKey, sProductName, sProductSku) {return 'prod_inv_watch_add.asp' + '?' +'p_id=' + sProductKey + '&' +'p_nm=' + encodeURIComponent(sProductName) + '&' +'p_sku=' + encodeURIComponent(sProductSku);}function addFavoritesLink(sProductKey) {if (jQuery('#addfavechild').length === 0) {jQuery('#idp_container').append('' + sShowMessage + '
');if (!bShowATCQty) {jQuery('#child_cart_section').hide();}} //- if (bShowRegPrice)/* * Set Dangerous Price Ratio * @authorvinayakj * @since4/25/2011 */if (bShowHazmatRatio) {if (oProdInfo.dangerous_price_ratio > 0) {jQuery('#dangerous_price_ratio').show();jQuery('#dangerous_price_ratio_value').html(oProdInfo.dangerous_price_ratio);} else { jQuery('#dangerous_price_ratio').hide();}}if (oProdInfo.showPrice) {/* * Draw full UOM section (products.uom_std, products.uom_sales, * products.uom_sales_conversion and additional unit of measure * conversions from the unit_of_measure table) */sUomView = '';if (bShowSalesUOM || bOnlyShowSalesUOM || bShowAdditionalSalesUOM) {sUomView = fncDrawUOM (sChildPKey, oProdInfo);}if (sUomView != '') {jQuery('#child_cart_section').html(sUomView);jQuery('#child_cart_section').show();if (bShowChildQtyPricing) {if ('showPriceBreaks' in oProdInfo && oProdInfo.showPriceBreaks) {jQuery('#qtypricing').html(buildModalLink(getQtyPricingUrl(sChildPKey),sQtyPricingLinkLabel,'Qty Pricing'));jQuery('#qtypricing').show();} else {jQuery('#qtypricing').hide();}}} else {if (jQuery('#price_container').length > 0 ) {/* * Add Qty Pricing Link for Child Product */var sPriceBreakHTML = '';if (bShowChildQtyPricing && 'showPriceBreaks' in oProdInfo && oProdInfo.showPriceBreaks) {sPriceBreakHTML = '- ' + FormatCurrency(oProdInfo.price, true) + 'USD' + cPrice + ' ' + sPriceBreakHTML + '
- List Price: ' + cListPrice + '
- ' + sYouSaveText + '
- ' + FormatCurrency(oProdInfo.price, true) + 'USD' + cPrice + ' ' + sPriceBreakHTML + '
- List Price: ' + cListPrice + '
- ' + sYouSaveText + '
- ' + FormatCurrency(oProdInfo.price, true) + 'USD' + cPrice + ' ' + sPriceBreakHTML + '
- List Price: ' + cListPrice + '
- ' + FormatCurrency(oProdInfo.price, true) + 'USD' + cPrice + ' ' + sPriceBreakHTML + '
- List Price: ' + cListPrice + '
- ' + FormatCurrency(oProdInfo.price, true) + 'USD' + FormatCurrency(oProdInfo.price, true) + ' ' + sPriceBreakHTML + '
- ' + FormatCurrency(oProdInfo.price, true) + 'USD' + FormatCurrency(oProdInfo.price, true) + ' ' + sPriceBreakHTML + '
').append($inventoryWatchListLink);if (bUseETADate){var today = new Date();var etaDay = new Date(oProdInfo.idpETADate);if(oProdInfo.idpETADate != "" && etaDay > today){//trim the time - this is more cross-browser reliable than converting to Date and using built in functions//sDate = oProdInfo.idpETADate.substring(0, oProdInfo.idpETADate.length - 7);jQuery('#idp_container').append('
ETA Date: ' + oProdInfo.idpETADate + '');}else{jQuery('#idp_container').append('
ETA Date: No ETA. Please Call.');}}initModalLinks('#idp_container');} // if (bShowInvWatchLink && oProdInfo.invStatus != 'in')} // if (oProdInfo.showInventory)if (bShowInvByWarehouse) {jQuery.ajax({url: "i_i_pc_product_detail.asp?pageaction=inventorybywarehouse&key=" + sChildPKey, cache: false, dataType: "text", success: function (sResponse) { $('select[id^="pw_id_"]').parent().parent().remove();jQuery('#idp_container').html(jQuery('#idp_container').html() + sResponse);}});}if (bShowFavoriteLink && bShowChildFavoriteLink) {addFavoritesLink(sChildPKey);}// Show the image container and hide the broken image containerjQuery('#detail_noimage_cotainer').hide();jQuery('#detail_photo_container').show();if (bUseChildPics) {/** * Main Image & View Larger Link */if (oProdInfo.pic && oProdInfo.pic != '') {// Build Image & View Larger Linkif (oProdInfo.lg_pic != '') {setImage(jQuery('#detail_photo_container a'), 'images/' + oProdInfo.lg_pic);}jQuery('#detail_photo_container img#prodpicthumb').attr('src', 'images/' + oProdInfo.pic);} else {setImage(jQuery('#detail_photo_container a'), sLargePic);jQuery('#detail_photo_container img#prodpicthumb').attr('src', sDetailPic);} //- if (oProdInfo.pic && oProdInfo.pic != '')/* * Additional Images */var $childImages = jQuery('.detail_multipic ul.child_prods');var $parentImages = jQuery('.detail_multipic ul').not('.child_prods');if (oProdInfo.additionalPics && oProdInfo.additionalPics.length > 0) {/* * Clear Child Additional Images */if ($childImages.length > 0) {$childImages.empty();} else {$childImages = $('
- ').hide();jQuery('.detail_multipic').append($childImages);} //- if ($childImages.length > 0)/* * Build Child Additional Images */for (var iCounter = 0; iCounter < oProdInfo.additionalPics.length; iCounter++) {oPics = oProdInfo.additionalPics[iCounter];var $imageListItem = $('
- ').append(buildLinkedImage(oProdInfo.name,'images/' + oPics.thumb,'images/' + oPics.large).addClass('detail_multipic_img'));$childImages.append($imageListItem);}/* * Hide Parent Images & Show Child Images */$parentImages.hide();$childImages.fadeIn(1000);initImagePopup('.detail_multipic ul.child_prods');} else {/* * Hide Child Images & Show Parent Images */$parentImages.fadeIn(1000);$childImages.hide();} //- if (oProdInfo.additionalPics && oProdInfo.additionalPics.length > 0)} //- if (bUseChildPics)/* * Child Product Documents * * @authordand * @since4/6/2010 */if (bUseChildDocs) {if (oProdInfo.documents.length > 0) {/* * Clear Child Documents */if (jQuery("#child_doc_download").length > 0) {jQuery("#child_doc_download").html('Downloads:
');} else {jQuery("#doc_download").parent().append(' ');} //- if (jQuery("#child_doc_download").length > 0)/* * Build Child Documents */for (var iCounter = 0, goTo = oProdInfo.documents.length - 1; iCounter <= goTo; iCounter++) {oDocConfig = oProdInfo.documents[iCounter];jQuery("#child_doc_download").append('' + oDocConfig.link + ' - ' + oProdInfo.price + '
- List Price: ' + oProdInfo.retail_price + '
- You Save: ' + iPercentSaved + '%'+ sDollarAmtText +'
- ' + oProdInfo.price + '
- List Price: ' + oProdInfo.retail_price + '
- You Save: ' + iPercentSaved + '%'+ sDollarAmtText +'
- ' + oProdInfo.price + '
- List Price: ' + oProdInfo.retail_price + '
- ' + oProdInfo.price + '
- List Price: ' + oProdInfo.retail_price + '
- ' + FormatCurrency(oProdInfo.price, true) + '
');} //- for (var iCounter = 0, goTo = oProdInfo.documents.length - 1; iCounter <= goTo; iCounter++)/* * Hide Parent Docs & Show Child Docs */jQuery('#doc_download').hide();jQuery('#child_doc_download').show();} else {/* * Hide Child Docs */jQuery('#child_doc_download').hide();/* * Show Parent Docs - If there are any */if (jQuery('#doc_download').find('span').eq(1).html() == '') {jQuery('#doc_download').hide();} else {jQuery('#doc_download').show();} //- if (jQuery("#doc_download").find('span').eq(1).html() == '')} //- if (oProdInfo.documents.length > 0)} //- if (bUseChildDocs)//child product flagsif(bUseChildProductFlags){//remove existing flag iamge elements if they exist$('#detail_photo_container .product_flags').remove();//remove modals$('.detail_photo.clearfix .global-modal').remove();//add flagsfor (var i = 1; i < 5; i++) {if(oProdInfo["flag" + i] == "1" && oProdInfo["flag" + i + "_show"]){var flagImage = oProdInfo["flag" + i + "_pic"];if(oProdInfo["flag" + i + "_url"] == ""){$('#detail_photo_container').prepend('');}else{var sFlagUrl = oProdInfo["flag" + i + "_url"];var sFlagTitle = oProdInfo["flag" + i + "_title"];var sModalClass = 'global-modal';var iFlagHeight = '600';var test = getModalUrl("i_i_" + sFlagUrl + ".asp");var sModalHtml = '';var sModalHtml = sModalHtml + '';var sModalHtml = sModalHtml + '';$('.detail_photo.clearfix').prepend(sModalHtml);}}}}/* * Child Product Qty Pricing * * @authorjohns * @since11/6/2010 */ if (bShowChildQtyPricing && 'showPriceBreaks' in oProdInfo && oProdInfo.showPriceBreaks) {jQuery('#qtypricing').html(buildModalLink(getQtyPricingUrl(sChildPKey),sQtyPricingLinkLabel,'Qty Pricing'));initModalLinks('#qtypricing');} //- if ( bShowChildQtyPricing )// Check for a child description overrideapplyChildDescription(oProdInfo);/* * Add Code to show/hide review message and buttons. * * @authorpijushb * @since1/24/2012 */if (bShowBackOrderMessage) {sPrevSku = jQuery('#previous_sku').val();bReviewMessage = jQuery('#review_message_' + sPrevSku).is(':visible')if (bReviewMessage) {jQuery("#review_message_"+sPrevSku).hide();} //- if (bReviewMessage)bSubmitButton = jQuery('#submit_button').is(':visible')if (!bSubmitButton) {jQuery('#submit_button').show();jQuery('#check_stock_button').show();jQuery('#checkout_button').hide();}} //- if (bShowBackOrderMessage)if (bUseProductAliases) {if ('pa_key' in oProdInfo) {if (oProdInfo.pa_key) {jQuery('#pa_id').html(oProdInfo.pa_key);} //- if (oProdInfo.pa_key)} //- if ('pa_key' in oProdInfo)} //- if (bUseProductAliases)/* * Displaying Config Data * @auther - vinayakj * @since - 5/2/2012 */if (bShowProdConfig) {if ('prod_config_droplist' in oProdInfo) {jQuery('#config_sections_container').html(htmlDecode(oProdInfo.prod_config_droplist));} else {jQuery('#config_sections_container').html('');}/* * Put Config Keys */if ('config_keys' in oProdInfo) {jQuery('#config_keys').val(oProdInfo.config_keys);if (jQuery('#qty_box').length > 0)jQuery('#qty_box').attr('name', 'qty_' + oProdInfo.config_keys);}/* * Put use_parent_key */if ('use_parent_key' in oProdInfo) {jQuery('#use_parent_key').val(oProdInfo.use_parent_key);}/* * Put show_config_sections */if ('show_config_sections' in oProdInfo) {jQuery('#show_config_sections').val(oProdInfo.show_config_sections);if (oProdInfo.show_config_sections == "1"){jQuery.ajax({url: '?pageaction=getconfigdata&config_key=' + jQuery('#config_keys').val() + '&key=', cache: false, dataType: "html", success: function (sResponse) { jQuery('#config_sections_container').html(htmlDecode(sResponse));}});} else {jQuery('#config_sections_container').html('');}}}if (bUsePromotions) {updateDroplistPromoDisplay(sChildPKey);}updateSmartListChildProduct();updateQtyControls(vOpt);if (typeof runHook !== 'undefined') {runHook('ProductDetailActionProcessOptProduct', { product: oProdInfo, opt: vOpt });}} catch (oError) {alert('fncProcessOptProduct(' + vOpt + '): ' + oError.message);hideProductContainer();}} //- function fncProcessOptProduct(vOpt)//jsmotherman 3.7.2015function updateQtyControls(vOpt) {var sQtyControlsText = "";if (bValidateQtyControls && bUseChildQtyControls) {var optionQtyMessage= jQuery('#qty_controls_msg');var optionStep = Number(jQuery('#prod_opt' + vOpt + ' :selected').attr("data-step"));var optionMin = Number(jQuery('#prod_opt' + vOpt + ' :selected').attr("data-min"));var optionMax = Number(jQuery('#prod_opt' + vOpt + ' :selected').attr("data-max"));var optionInitVal = Number(jQuery('#prod_opt' + vOpt + ' :selected').attr("data-initval"));if (optionMin > 0) {jQuery('#qty_box').attr("min", optionMin);sQtyControlsText += sMinQtyMessage.replace("
"} else {jQuery('#qty_box').attr("min", "0");}if (optionMax > 0) {jQuery('#qty_box').attr("max", optionMax);sQtyControlsText += sMaxQtyMessage.replace("
"} else {jQuery('#qty_box').attr("max", "");}if (optionStep > 0) {jQuery('#qty_box').attr("step", optionStep);if (optionStep != 1) {sQtyControlsText += sIncrementQtyMessage.replace("
Add to Cart
';if ('uomStd' in oData) {sUOMHtml += '';}if ('uomSales' in oData) {sUOMHtml += '';sUOMHtml += '';sUOMHtml += '';}if (bShowNativeUOMinCart && 'uomSales' in oData) {sUOMHtml += '';}/* * determine whether or not to show the Qty Per Unit column */if (bShowQtyPerUnitColumn) {sQtyPerUnitColumn = '' + sUnitHeader + ' | ' + sQtyPerUnitColumn + '' + sUnitPriceColumnLabel + ' | Qty | 1 | ';} //- if (bShowQtyPerUnitColumn)/* * draw Standard UOM row */if ('uomStd' in oData) {sUOMHtml += '
' + oData.uomStd + ' | ' + sQtyPerUnitColumn + '' + oData.price + ' | ';sUOMHtml += fncDrawQtyBox(sPKey, oData, '');sUOMHtml += ' | ' + oData.uomSalesConversion + ' | ';} //- if (bShowQtyPerUnitColumn)if (typeof oData.uomSalesUnitPrice == 'undefined') {iUnitPrice = 0;} else {iUnitPrice = oData.uomSalesUnitPrice} //- if (typeof oUomConfig.uomSalesUnitPrice == 'undefined')/* * draw UOM Sales row */sUOMHtml += '
' + oData.uomSales + ' | ' + sQtyPerUnitColumn + '$' + parseFloat(iUnitPrice).toFixed(2) + ' | ';sUOMHtml += fncDrawQtyBox(sPKey, oData, 'sales_');sUOMHtml += ' | ' + iQty.toFixed() + ' | ';} else {sQtyPerHTML = ''} //- if (bShowQtyPerUnitColumn)if (typeof oUomConfig.unitPrice == 'undefined') {iUnitPrice = 0;} else {iUnitPrice = oUomConfig.unitPrice;} //- if (typeof oUomConfig.unitPrice == 'undefined')/* * build the html w/ hidden inputs */sUnitHTML= oUomConfig.unit + '';sPriceHTML= '$' + parseFloat(iUnitPrice).toFixed(2) + '';sUOMHtml += '
' + sUnitHTML + ' | ' + sQtyPerHTML + '' + sPriceHTML + ' | ';sUOMHtml += fncDrawQtyBox(sPKey, oData, 'uom' + sThisUom + '_', oUomConfig.conversion);sUOMHtml += ' | 1 | '}sUOMHtml += '
' + oData.uomSales + ' | ' + sQtyPerUnitColumn + '$' + parseFloat(oData.uomSalesUnitPrice * oData.uomSalesConversion).toFixed(2) + ' | ';sUOMHtml += fncDrawQtyBox(sPKey, oData, '');sUOMHtml += ' |
' + err.message);return '';}} //- function fncDrawQtyBox(sPKey, oData, sEachField)/* * This will build out the Cart Options with comments * @auther - vinayakj * @since - 8/28/2012 */function buildCartOptWithComments(rowkey,sCartOptions,RowID) {if (jQuery('#parent_p_key').val() != '' && jQuery('#parent_p_key').val() !== undefined) {rowkey = jQuery('#parent_p_key').val();} else {rowkey = jQuery('#keys').val();}if (bUseChildCartOpts || bShowCartOpts) {buildCartOpt(rowkey);}} //- function buildCartOptWithComments(rowkey,sCartOptions,RowID)function buildCartOption(PKey, sOptions, Num) {/* * Get the cart options */aCartOpts = sOptions.split("|");/* * Clear the cart option container and start building it * with the new cart options */jQuery('#pc_cart_options_' + Num).remove('.atc').html('');var aOptInputs= Array();var aLimitIds= Array();/* * Loop all the cart options, and append each to the cart * option container. */for (var iOpt = 0, goTo = aCartOpts.length; iOpt < goTo; iOpt++) {aCartOpt = aCartOpts[iOpt].split('~');sDisplay= aCartOpt[0];sLabel= aCartOpt[1];sType= aCartOpt[2];sAnswers= aCartOpt[3];if (aCartOpt.length >= 4) {sCharLimit= aCartOpt[4];} //- if (aCartOpt.length >= 4)/* * Character Limit Logic */bUseLimit = (sCharLimit != '0' && sCharLimit != '' ? true : false);/* * Input Id */sOptId = 'cart_opt_' + iOpt + '_' + PKey;/* * Begin building this option */sHtml = '';/* * Append the option to the container */jQuery('#pc_cart_options_' + Num).append(sHtml);/* * Register char counter event listener */ if (bUseLimit) {jQuery('#' + sOptId).live('keyup', {optId: sOptId, optLimit: sCharLimit}, function (event) {limitChars(event.data.optId, event.data.optLimit, event.data.optId + '_limit');});}/* * Register input event listener */jQuery('#' + sOptId).live(sJsEvent, {optId: sOptId, pkey: PKey}, function (event) {buildCartOpt(event.data.pkey);});} //- for (var iOpt = 0, goTo = aCartOpts.length; iOpt < goTo; iOpt++)jQuery('#pc_cart_options_' + Num).append('');} //- function buildCartOption(PKey, sOptions, Num)function getCartOptOptions(sAnswers) {aAnswers = sAnswers.split(";");sHtml = '';for(i = 0, goTo = aAnswers.length; i < goTo; i++) {sHtml += '';}return sHtml;}//-getCartOptOptionsfunction limitChars(textid, limit, infodiv) {var text = jQuery('#' + textid).val();var textlength = text.length;if (textlength > limit) {jQuery('#' + infodiv).html('You cannot write more then '+limit+' characters!');jQuery('#' + textid).val(text.substr(0,limit));return false;} else {jQuery('#' + infodiv).html('You have '+ (limit - textlength) +' characters left.');return true;}}//-function limitCharsfunction fncProcessSizeProduct() {/* * if you need to use the thickbox for displaying, add the identifier to the list * at the bottom of this function to prevent "tb_init()" from being called multiple * times causing multiple instances of the window * @authorjohns * @since01/31/2013 * * @modifiedjohns * @since02/12/2013 * @noteIf you are just updating an anchor tag, then just add the selector * to the list at the bottom of this function. If you are actually * building the anchor tag, then call the initModalLinks/initImagePopup function *and pass the specific selector in a call to the initModalLinks/initImagePopup *function. */try{var sChildPKey = jQuery('#prod_opt2').val();var oProdInfo = window.oChildProds[sPKey];if (sPKey == '') {hideProductContainer();return false;}jQuery('#qty_box').attr('name', 'qty_' + sPKey);jQuery('#keys').val(sPKey);/* * Test if this is the "last" droplist being displayed */if (jQuery('#pc_cart_options_2').length > 0) {jQuery('#pc_cart_options_2').slideDown();/* * Change name to post item to the cart */jQuery('#cart_option_6C97C561210C494C93FAD139E73F5F21').attr('name','cart_option_' + sPKey);} //- if (jQuery('#pc_cart_options_2').length > 0)/* * SKU */if (bShowSku) {jQuery('#sku_container').html(sSkuLabel + '' + oProdInfo.sku + '');}if (bShowName) {jQuery('#child_nm_container').html('Name: ' + oProdInfo.name);}if (bUseChildDescriptionMain) {jQuery('#child_ds_container').html('Description: ' + oProdInfo.description);}/* * Cart */if (oProdInfo.showCart) {jQuery('#atc_container').show();} else {jQuery('#atc_container').hide();} //- if (oProdInfo.showCart)/* * Unit of Measure */if ('uomHTML' in oProdInfo && oProdInfo.uomHTML != '') jQuery('#detail_atc_standalone').html(oProdInfo.uomHTML);/* * Price */if (oProdInfo.showPrice) {iRetailPrice= parseFloat(oProdInfo.retail_price.replace('$',''));iPrice = parseFloat(oProdInfo.price.replace('$',''));if (iPrice < iRetailPrice) { if (false) {iPercent= (iRetailPrice - iPrice) / iRetailPrice;iPercentSaved= (iPercent * 100).toFixed(2);sDollarAmtText = '';if(false){sDollarAmtText = ' (' + (FormatCurrency(iListPrice - iPrice, true)) + ')';}if (false) {jQuery('#price_container').html('