APEXX Front Forward Control Arms Can-Am Defender (2023)

  • Description
  • Fits
  • Reviews
  • Warranty
  • Warning

Features

  • Adjustable heat-treated collars for camber adjustability with a 1” thread
  • Raked forward 2"
  • Over 3 degrees of camber adjustment in each direction
  • Heavy duty ball joint brackets to eliminate deformation issues, Keller ball joint compatible
  • Ladder bar compatible with the 1.5” ID clamps
  • Extreme duty 1.5” x .120” DOM steel construction
  • Up to 2” of added ground clearance compared to OEM lower arm
  • Mounting accommodations for OEM brake lines using OEM tabs instead of P-clamps
  • Optimized sway bar linkage angles
  • Limited Lifetime Warranty (Excludes wearable items like bushings, bearings, cones, and heim joints)
  • Powder Coated

Heavy Duty Strength
High Lifter’s new heavy duty control arms add more support than factory. Our upper and lower arms are made with the same material for added strength, so they can withstand the abuse applied during a typical ride. High Lifter arms are constructed out of 1.5” DOM with.120 wall tubing. This is a 50% increase in size and a 70% increase in steel thickness for added durability and strength.

Built in Adjustability
The lower arms also feature an adjustability component in the bushing collars to eliminate premature wearing that can come from the addition of lift kits, portals, or larger tires. When the kit is set to the factory position, you have 3/8” of adjustability camber in and out. Heat treated and plated adjustable bushing collars allow you to be confident in the strength you’re adding to your ride. This kit comes packaged and pre-adjusted to the factory position, and factory bushings and caps should be used for installation.

Increased Ground Clearance
We maximized ground clearance by strategically arching the lower control arm with double bends. This unique design allowed us to get an additional 1.75” of ground clearance to avoid impacting those nasty trail obstacles. These bends maintain the factory geometry, which helps reduce wear on components like axles and tie rods. Our forward arms allow you to run larger tires without a suspension lift. We’ve improved the upper control arm by repositioning the sway bar tab. This will reduce the extreme angles places on the sway bar links and reduce wear.

Reinforced Ball Joints Brackets
Portals and large tires apply torque that can distort the ball joint bracket, leading to failure of the arms. With over 130% increase in the ball joint mounting area, we are helping to prevent breakdown or “egging” of the mounting bracket.

Tire Fitment: Up to 34.5"
Our tire fitment guide is a general fitment and is in no way guaranteed. Tires and lifts vary by manufacture and tire fitment can be affected by other modifications such as, but not limited to, wheel offset, actual tire diameter and actual tire width. Always verify your brand of tires, lift, and other modifications prior to making a buying decision.

Optional Preinstalled Ball Joints
High Lifter’s service team uses a hydraulic press to install the ball joint with the correct pressure and alignment, also making sure the clip is fully seated and secured. Purchasing control arms with the ball joints already installed adds to easy installation and prevents damage due to improper installation, which is not covered by High Lifter’s Lifetime Warranty.
The ball joints preinstalled in this kit areBJC-2andBJC-3.

2022 Can-Am Defender HD10 DPS
2022 Can-Am Defender HD10 XT
2022 Can-Am Defender MAX HD10 DPS
2022 Can-Am Defender MAX HD10 XT
2022 Can-Am Defender HD10 6x6 XT
2022 Can-Am Defender PRO HD10 DPS
2022 Can-Am Defender PRO HD10 XT
2023 Can-Am Defender HD10 6x6 DPS
2023 Can-Am Defender HD10 6x6 XT
2023 Can-Am Defender HD10 XT
2023 Can-Am Defender MAX HD10 XT
2023 Can-Am Defender PRO HD10 DPS
2023 Can-Am Defender PRO HD10 XT
2023 Can-Am Defender Max HD10 DPS
2020 Can-Am Defender HD10 DPS
2020 Can-Am Defender HD10 XT
2020 Can-Am Defender MAX HD10 DPS
2020 Can-Am Defender MAX HD10 XT
2020 Can-Am Defender PRO HD10 XT
2020 Can-Am Defender PRO HD10 DPS
2021 Can-Am Defender HD10 DPS
2021 Can-Am Defender HD10 XT
2021 Can-Am Defender MAX HD10 DPS
2021 Can-Am Defender MAX HD10 XT
2021 Can-Am Defender HD10 6x6 XT
2021 Can-Am Defender PRO HD10 DPS
2021 Can-Am Defender PRO HD10 XT

Product Ratings and Reviews

Add a Review

Add a Review

0 out of 5 stars

Be the first to review this product.

Clickherefor High Lifter's limited lifetime warranty.

APEXX Front Forward Control Arms Can-Am Defender (6)WARNING:This product can expose you to chemicals including Chromium, which is known in the State of California to cause cancer and birth defects, or other reproductive harm. For more information go towww.p65warnings.ca.gov

Related Products

  • High Lifter Alignment Kit

    In Stock
  • 38-9-22 Outlaw 3 Tire

  • High Lifter Riser Snorkel 2020-2021 Can-Am Defender

    In Stock

';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 + '

';strInputsOutput = strTemp;iColCount = 0;} //- if (iColCount == iTotalCol)} //- for (strPKey in window.oChildProds)} catch (oError) {alert("fncDrawColorSizes" + oError.message);}sAtcHtml = '

Available Sizes

' + sHeadRow + strInputsOutput + '

';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: 'FA0E74CC276748C99855C0B16AFC51C2',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: 'true',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('
');}var $favoritesListLink = buildModalLink('i_i_add_product_to_favorites.asp?p_id=' + (sProductKey || sPKey),'Add to Favorites');jQuery('#addfavechild').html($favoritesListLink);initModalLinks('#addfavechild');}function buildLinkedImage(sTitle, sSmallImageUrl, sLargeImageUrl) {var $image = $('APEXX Front Forward Control Arms Can-Am Defender (10)').attr('src', sSmallImageUrl)// .attr(oImageAttributes);var oLinkAttributes = $.extend({href: sLargeImageUrl,title: sTitle}, oImageLinkAttributes);var $link = $('
').attr(oLinkAttributes).addClass(sImageLinkClass);return $link.append($image);}function fncProcessOptProduct(vOpt) {var bUseInlineBreaks = false;try {var sChildPKey = jQuery('#prod_opt' + vOpt).val();var oProdInfo = window.oChildProds[sChildPKey];if (bUseInlineBreaks) {jQuery.ajax({url: "i_i_pc_product_detail.asp?pageaction=getbreaks&key=" + sChildPKey,type: "GET",cache: false,dataType: "html",success: function(sResponse) {jQuery('#breaks_table_container').html(sResponse);},failure: function(sResponse) {alert('Server Error in fncProcessOptProduct: ' + sResponse);}});}//Global scope the pkeywindow.sChildPkey = sChildPKey;/* * Bail if no key or no product data */if (sChildPKey == '' || typeof oProdInfo == "undefined") {hideProductContainer();return false;}var qtyBoxElement = jQuery('#qty_box');if (qtyBoxElement.length > 0){qtyBoxElement.attr('name', 'qty_' + sChildPKey);/*#156734 - mrs_20180711: max quantity was not getting added the qty input for children products. i cannot find the logic for when children products qty available should be set on the qty_box, so i am adding it in the case that the max quantity is > 0. feel free to change the logic, if i missed the condition for when this should be set.#345865 - tschwab - 10/2020 - set to > instead of >=*/var maxQty = oProdInfo.max_order_qty;if(maxQty > 0){qtyBoxElement.attr('max', maxQty);}}jQuery('#keys').val(sChildPKey);/* * Update SKU */if (bShowSku) {jQuery('#sku_container').html(sSkuLabel + '' + oProdInfo.sku + '');/*'** ' Added link to sku on dropdown views ' @since 1/10/2004 ' @author jferguson'**/if (bDroplistChildSkuLink) {jQuery('#sku_container').wrapInner('');}}if (bShowName) {jQuery('#child_nm_container').html('Name: ' + oProdInfo.name);}if (bUseChildDescriptionMain && typeof oProdInfo.description != "undefined") {jQuery('#child_ds_container').html('Description: ' + oProdInfo.description);}/* * Cart */if (oProdInfo.showCart) {if (jQuery('#child_cart_section').length > 0)jQuery('#child_cart_section').show();/* * Handle Cart Options defined on Child Product */if (bUseChildCartOpts) {if (oProdInfo.cartOptions != '' && jQuery('#pc_cart_options_' + vOpt).length > 0) {buildCartOption(sChildPKey, oProdInfo.cartOptions, vOpt);} else {jQuery('#pc_cart_options_' + vOpt).html('');}} //- if (bUseChildCartOpts)/* * Cart Options defined on Parent (standard config) * need to know if this is the "last" droplist being displayed... */if (jQuery('#pc_cart_options_' + vOpt).length > 0) {jQuery('#pc_cart_options_' + vOpt).slideDown();// change the name of the hidden input so it will post to the item in the cartjQuery('#cart_option_FA0E74CC276748C99855C0B16AFC51C2').attr("name","cart_option_" + sChildPKey);} //- if (jQuery('#pc_cart_options_' + vOpt).length > 0)/* * Updating name of Tax Exempt with current key * @auther - vinayakj * @since - 2/5/2013 */} else {hideChildProductInputs();} //- if (oProdInfo.showCart)//Product Unit Displayif ('productUnit' in oProdInfo && oProdInfo.productUnit != '') jQuery('#product_unit_container').html('Unit: ' + oProdInfo.productUnit);// Single Unit of Measure (products.unit)if ('uomHTML' in oProdInfo && oProdInfo.uomHTML != '') {jQuery('#detail_atc_standalone').html(oProdInfo.uomHTML);jQuery('#child_cart_section').html(oProdInfo.uomHTML);}// Parent Addon Productsif (bShowParentAddonProds) {jQuery('#addon_product_container').slideDown();jQuery('#addon_products').attr('name','keys');} else {jQuery('#addon_product_container').slideUp();jQuery('#addon_products').attr('name','keys_no_post');}// Child Addon Productsif (bShowChildAddonProds && 'showChildAddonProds' in oProdInfo) {if (!oProdInfo.showChildAddonProds) {jQuery('#addon_product_container').slideUp();jQuery('#addon_products').attr('name','keys_no_post');} else {jQuery('#addon_product_container').slideDown();jQuery('#addon_products').attr('name','keys');}}// Price --------------------------------------------------------/* * Check for Price Display type * @authorpijushb * @since4/25/2011 */var bShowRegPrice= true;var bShowATCQty= false;var sShowMessage = '';if (sShowPriceDisplayTypeDropList) {switch (sPriceDisplayType) {case 'hide':bShowRegPrice= false;bShowATCQty= true;sShowMessage= '-';break;case 'show_message':bShowRegPrice= false;bShowATCQty= true;sShowMessage= sPriceMessage;break;case 'require_atc':bShowRegPrice= false;bShowATCQty= true;sShowMessage= sHelpText;break;case 'require_login_or_atc':bShowRegPrice= false;bShowATCQty= true;sShowMessage= sHelpTextbreak;case 'require_login_for_price_and_atc':bShowRegPrice= false;sShowMessage= sHelpTextLoginbreak;default:bShowRegPrice = true;break;} //- switch (sPriceDisplayType)} // if (sShowPriceDisplayTypeDropList)if (bShowRegPrice) {//Display standard} else {oProdInfo.showPrice=false;jQuery('#price_display_type_message').html('

' + 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 = '
  • ';}iRetailPrice = parseFloat(oProdInfo.retail_price.replace('$','').replace(',',''));iPrice = parseFloat(oProdInfo.price.replace('$','').replace(',',''));cRetailPrice = oProdInfo.retail_price;cListPrice = oProdInfo.listprice;cPrice = oProdInfo.price/* * code to compare final price to retail price or suggested retail price * depending on which values are populated and value are greater than * the final price returned by the oRs.GetPrice call * * @authorjohns * @since12/22/2011 * * * Modified code to always display the list price. * (if it's blank/zero, retail price is displayed * instead. * @authordcohen * @since11/4/2013 * @seetask #42616 */if (bShowPriceCompare) {if (oProdInfo.listprice != undefined) {iListPrice = parseFloat(oProdInfo.listprice.replace('$','').replace(',',''));} else {iListPrice = iRetailPrice;cListPrice = cRetailPrice;} //- if (oProdInfo.listprice)if (iPrice < iListPrice) {if (false) {iPercent= (iListPrice - iPrice) / iListPrice;iPercentSaved= (iPercent * 100).toFixed(2);sDollarAmtText = '';sYouSaveText = ''; if(false){sDollarAmtText = ' (' + (FormatCurrency(iListPrice - iPrice, true)) + ')';}if(bUseYouSaveStringReplacement){sYouSaveText = youSaveStringReplace(iPercentSaved, FormatCurrency(iListPrice - iPrice, true)); }else{sYouSaveText = 'You Save: ' + iPercentSaved + '%' + sDollarAmtText + ''}if (false) {jQuery('#price_container').html('
    • ' + FormatCurrency(oProdInfo.price, true) + 'USD' + cPrice + '
    • ' + sPriceBreakHTML + '
    • List Price: ' + cListPrice + '
    • ' + sYouSaveText + '
    ');} else {jQuery('#price_container').html('
    • ' + FormatCurrency(oProdInfo.price, true) + 'USD' + cPrice + '
    • ' + sPriceBreakHTML + '
    • List Price: ' + cListPrice + '
    • ' + sYouSaveText + '
    ');}} else {if (false) {jQuery('#price_container').html('
    • ' + FormatCurrency(oProdInfo.price, true) + 'USD' + cPrice + '
    • ' + sPriceBreakHTML + '
    • List Price: ' + cListPrice + '
    ');} else {jQuery('#price_container').html('
    • ' + FormatCurrency(oProdInfo.price, true) + 'USD' + cPrice + '
    • ' + sPriceBreakHTML + '
    • List Price: ' + cListPrice + '
    ');}}//- if (0)} else {jQuery('#price_container').html('
    • ' + FormatCurrency(oProdInfo.price, true) + 'USD' + FormatCurrency(oProdInfo.price, true) + '
    • ' + sPriceBreakHTML + '
    ');}} else {jQuery('#price_container').html('
    • ' + FormatCurrency(oProdInfo.price, true) + 'USD' + FormatCurrency(oProdInfo.price, true) + '
    • ' + sPriceBreakHTML + '
    ');} //- if (bShowPriceCompare)} //- if (jQuery('#price_container').length > 0)} //- if (sUomView != '')if (typeof runHook !== 'undefined') {runHook('ProductDetailActionAfterDroplistPriceDisplay', { bShowPriceCompare: bShowPriceCompare, oProdInfo: oProdInfo, sPriceBreakHTML: sPriceBreakHTML });}jQuery('#price_container').show();} else {jQuery('#price_container').hide();jQuery('#qtypricing').hide();}//- if (oProdInfo.showPrice)/* * Add hidden field for qty available to check back order. * @authorpijushb * @since9/28/2011 */if (bShowBackOrderMessage) {jQuery('.qtyavailable').remove();jQuery('#idp_container').parent().append('')} //- if (bShowBackOrderMessage)/* * Inventory */if (oProdInfo.showInventory) {jQuery('#idp_container').html(oProdInfo.invMsg);/** * if status = out then show "add product to watch list" link * * @authorjohns * @since12/11/2009 */if (bShowInvWatchLink && oProdInfo.invStatus != 'in') {if (!oProdInfo.showCart) {hideChildProductInputs();}var selected_prod = document.getElementById('prod_opt'+ vOpt).selectedIndex;var selected_prod_nm = document.getElementById('prod_opt'+ vOpt).options[selected_prod].text.replace('#','%23');var $inventoryWatchListLink = buildModalLink(getInventoryWatchListUrl(sChildPKey, selected_prod_nm, oProdInfo.sku),'Add to Inventory Watch List');jQuery('#idp_container').append('
    ').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 + '
      ');} //- 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('

      APEXX Front Forward Control Arms Can-Am Defender (11)

      ');}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("", optionMin) + "
      "} else {jQuery('#qty_box').attr("min", "0");}if (optionMax > 0) {jQuery('#qty_box').attr("max", optionMax);sQtyControlsText += sMaxQtyMessage.replace("", optionMax) + "
      "} else {jQuery('#qty_box').attr("max", "");}if (optionStep > 0) {jQuery('#qty_box').attr("step", optionStep);if (optionStep != 1) {sQtyControlsText += sIncrementQtyMessage.replace("", optionStep);}} else {jQuery('#qty_box').attr("step", "0");}jQuery("#qty_box").val(optionInitVal);optionQtyMessage.html(sQtyControlsText);} //if (bValidateQtyControls && bUseChildQtyControls) {} //function updateQtyControls() {function initModalLinks(sContainer) {}// This function should not be called directly; it should be used through initModalLinks or initImagePopup.function initializeThickbox(sContainer) {var aContainers = (sContainer || 'body').split(',');for (var i = 0; i < aContainers.length; i++) {aContainers[i] += ' a.thickbox';}tb_init(aContainers.join(','));}function initImagePopup(sContainer) {if (bUseVenobox) {$(sContainer + ' .venobox').venobox();} else {initializeThickbox(sContainer);}}function htmlDecode(value) {if (value) {return $('').html(value).text();} else {return '';}}/** * Draw UOM Table * * @authorjohns * @since3/17/2011 * @paramsPKeystring - the key of the product we are looking at *oDataobject - object containing the data from the ajax call * * @returnUOM Table HTML */function fncDrawUOM(sPKey, oData) {try {/* * if the product price is blank, then exit the function */if (oData.price == '') {sUOMHtml = '';return sUOMHtml;}/* * var containing html table structure to displayed containing the data */var sUOMHtml = '';var sQtyPerUnitColumn = '';/* * make sure at least one of the show uom booleans is true */if (bShowSalesUOM || bOnlyShowSalesUOM || bShowAdditionalSalesUOM) {/* * display title and hidden fields for the product */sUOMHtml += '

      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 = 'Qty Per Unit';} //- if (bShowQtyPerUnitColumn)sUOMHtml += '';sUOMHtml += '' + sQtyPerUnitColumn + '';if (bShowSalesUOM && !bOnlyShowSalesUOM) {/* * determine whether or not to show the Qty Per Unit column */if (bShowQtyPerUnitColumn) {sQtyPerUnitColumn = '';} //- if (bShowQtyPerUnitColumn)/* * draw Standard UOM row */if ('uomStd' in oData) {sUOMHtml += '' + sQtyPerUnitColumn + '';} //- if ('uomStd' in oData)if ('uomSales' in oData) {if (oData.uomSales != '' && oData.uomSalesConversion > 1 && oData.uomSales != oData.uomStd) {/* * determine whether or not to show the Qty Per Unit column */if (bShowQtyPerUnitColumn) {sQtyPerUnitColumn = '';} //- if (bShowQtyPerUnitColumn)if (typeof oData.uomSalesUnitPrice == 'undefined') {iUnitPrice = 0;} else {iUnitPrice = oData.uomSalesUnitPrice} //- if (typeof oUomConfig.uomSalesUnitPrice == 'undefined')/* * draw UOM Sales row */sUOMHtml += '' + sQtyPerUnitColumn + ''} //- if ('uomSales' in oData && 'uomSalesConversion' in oData)3} //- if ('uomSales' in oData)if (bShowAdditionalSalesUOM) {if ('uomAdditional' in oData && oData.uomAdditional.length > 0) {/* * draw additional uom rows */for (var iCounter = 0, iGoTo = oData.uomAdditional.length; iCounter < iGoTo; iCounter++) {var oUomConfig= oData.uomAdditional[iCounter];var sQtyPerHTML= '';if (typeof oUomConfig != 'undefined' && typeof oUomConfig.conversion != 'undefined') {var sThisUom = iCounter + 1/* * determine whether or not to show the Qty Per Unit column */if (bShowQtyPerUnitColumn) {/* * calculating the qty per unit */if (iUOMConversion < 1) {iQty = 1 / iUOMConversion} else if (iUOMConversion >= 1) {iQty = iUOMConversion} //- if (iUOMConversion < 1)sQtyPerHTML= '';} 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 += '' + sQtyPerHTML + ''} //- if (typeof oUomConfig != 'undefined' && typeof oUomConfig.conversion != 'undefined')} //- for (var i = 0, goTo = oProdInfo.documents.length - 1; i <= goTo; i++)} //- if ('uomAdditional' in oData)} //- if (bShowAdditionalSalesUOM)} else if (bOnlyShowSalesUOM) {// removed: !bShowSalesUOM &&// fixes issue preventing price table from displaying// when bShowSalesUOM and bOnlyShowSalesUOM are both true// dcohen - 06/20/2013/* * only draw UOM Sales row */if (bShowQtyPerUnitColumn) {sQtyPerUnitColumn = ''}sUOMHtml += '' + sQtyPerUnitColumn + ''} //- if (bShowSalesUOM)sUOMHtml += '
      ' + sUnitHeader + '' + sUnitPriceColumnLabel + 'Qty
      1
      ' + oData.uomStd + '' + oData.price + '';sUOMHtml += fncDrawQtyBox(sPKey, oData, '');sUOMHtml += '
      ' + oData.uomSalesConversion + '
      ' + oData.uomSales + '$' + parseFloat(iUnitPrice).toFixed(2) + '';sUOMHtml += fncDrawQtyBox(sPKey, oData, 'sales_');sUOMHtml += '
      ' + iQty.toFixed() + '
      ' + sUnitHTML + '' + sPriceHTML + '';sUOMHtml += fncDrawQtyBox(sPKey, oData, 'uom' + sThisUom + '_', oUomConfig.conversion);sUOMHtml += '
      1
      ' + oData.uomSales + '$' + parseFloat(oData.uomSalesUnitPrice * oData.uomSalesConversion).toFixed(2) + '';sUOMHtml += fncDrawQtyBox(sPKey, oData, '');sUOMHtml += '
      '/* * Add to Cart button */ if (bUseBootStrap) {sUOMBtn = "btn btn-primary" } else {sUOMBtn = "btn_addtocart chrome" }if (oData.showCart) {sUOMHtml += '';}} //- if (bShowSalesUOM || bOnlyShowSalesUOM || bShowAdditionalSalesUOM)return sUOMHtml;} catch (err) {alert('function: fncDrawUOM - ' + err.message);return '';}} //- function fncDrawUOM(sPKey, oData)/** * Draw Qty Box for UOM Table * * @authorjohns * @since3/17/2011 * * @returnsvoid */function fncDrawQtyBox(sPKey, oProdObject, sPrefix, UoMconversion) {try {var sQtyDisplayType = oProdObject.qtyDisplayType;var sEachField;if(sPrefix == 'sales_') {sEachField = oProdObject.uomSales;} else if(sPrefix.indexOf('uom') >= 0) {sEachField = UoMconversion;} else {sEachField = oProdObject.uomStd;}/** * Qty Input Display var */var sQtyInputHtml = '';var iVal = '';var sMinAttr = ' min="1"';var sMaxAttr = '';var sStepAttr = '';// Set initial qty to 1 if only one UOM is being displayedif (bOnlyShowSalesUOM) {iVal = '1';}if(oProdObject.min_order_qty > 0) {iVal = oProdObject.min_order_qty;sMinAttr = ' min="' + iVal +'"';}if(oProdObject.max_order_qty > 0) {sMaxAttr = ' max="' + oProdObject.max_order_qty +'"';}if(oProdObject.qty_increment > 0) {sStepAttr = ' step="' + oProdObject.qty_increment +'"';}if (bUseQtyByUnitQtyDisplay) {if (sQtyDisplayType == 'sets') {sQtyInputHtml += ' @';sQtyInputHtml += ' ' + sEachField + ' (s) each.';} else {sQtyInputHtml += ''} //- if (oData.qtyDisplayType == 'sets')} else {sQtyInputHtml += ''}return sQtyInputHtml;} catch (err) {alert('function: fncDrawQtyBox
      ' + 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_FA0E74CC276748C99855C0B16AFC51C2').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('
      • ' + oProdInfo.price + '
      • List Price: ' + oProdInfo.retail_price + '
      • You Save: ' + iPercentSaved + '%'+ sDollarAmtText +'
      ');} else {jQuery('#price_container').html('
      • ' + oProdInfo.price + '
      • List Price: ' + oProdInfo.retail_price + '
      • You Save: ' + iPercentSaved + '%'+ sDollarAmtText +'
      ');}} else {if (false) {jQuery('#price_container').html('
      • ' + oProdInfo.price + '
      • List Price: ' + oProdInfo.retail_price + '
      ');} else {jQuery('#price_container').html('
      • ' + oProdInfo.price + '
      • List Price: ' + oProdInfo.retail_price + '
      ');}} //- if (0)} else {jQuery('#price_container').html('
      • ' + FormatCurrency(oProdInfo.price, true) + '
      ');} //- if (iPrice < iRetailPrice)} //- if (oProdInfo.showPrice)/* *Add hidden field for qty available to check back order. *@author pijushb *@since 9/28/2011 */ if (bShowBackOrderMessage) {jQuery('.qtyavailable').remove();jQuery('#idp_container').parent().append('') } //- if (bShowBackOrderMessage)// Check for a child description overrideapplyChildDescription(oProdInfo);if (bUseProductAliases && jQuery.trim(oProdInfo.pa_key) != '') {jQuery('#pa_id').val(oProdInfo.pa_key);jQuery('#pa_id').attr('name','pa_id_' + sPKey);} //- if (bUseProductAliases && jQuery.trim(oProdInfo.pa_key) != '')/* * Inventory */if (oProdInfo.showInventory) {jQuery('#idp_container').html(oProdInfo.invMsg);} //- if (oProdInfo.showInventory)if (bShowFavoriteLink && bShowChildFavoriteLink) {addFavoritesLink(sChildPkey);}/* * 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);}/* * 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 (bShowProdConfig)/* * reinitialize Thickbox after modifying the DOM; make this call only once to * prevent multiple instances of the window from showing * @authorjohns * @since01/31/2013 */if (bInitThickbox) {initModalLinks('#idp_container,#qtypricing');initImagePopup('#detail_photo_container');bInitThickbox = false;}updateQtyControls(2);} catch (oError) {alert("fncProcessSizeProduct-" + oError.message);hideProductContainer();}}//-function fncProcessSizeProductfunction fncSelectAddon() {//Update Design Key & Qtydocument.getElementById('design_keys_' + sGroup).value = sDesignKey;document.getElementById('design_qty_' + sGroup).name = 'ED8EF1597D7F4D0797F652145C64714C_' + sDesignKey + '_qty';}function InArray(vArray, vValue) {for (var iOpt = 0; iOpt < vArray.length; iOpt++) {if (vArray[iOpt] == vValue) {return true;}}return false;}function ResizeLoadingBG(bDisableDroplistForm) {if (bDisableDroplistForm === 'undefined') fncDisableDroplistForm();var oLBG = document.getElementById('detailloadingbg');var oLPic = document.getElementById('detailloadingpic');var popwidth = 200;if (window.innerHeight && window.scrollMaxY) {oLBG.style.width = document.body.scrollWidth;oLBG.style.height = window.innerHeight + window.scrollMaxY;} else if (document.body.scrollHeight > document.body.offsetHeight) { // all but Explorer MacoLBG.style.width = document.body.scrollWidth;oLBG.style.height = document.body.scrollHeight;} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and SafarioLBG.style.width = document.body.offsetWidth;oLBG.style.height = document.body.offsetHeight;}if (self.innerHeight) {// all except ExploreroLPic.style.left = (self.innerWidth / 2) - (popwidth / 2);oLPic.style.top = self.pageYOffset + (self.innerHeight / 4);} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict ModeoLPic.style.left = (document.documentElement.clientWidth / 2) - (popwidth / 2);oLPic.style.top = document.documentElement.scrollTop + (document.documentElement.clientHeight / 4);} else if (document.body) { // other ExplorersoLPic.style.left = (document.body.clientWidth / 2) - (popwidth / 2);oLPic.style.top = document.body.scrollTop + (document.body.clientHeight / 4);}oLBG.style.display = 'block';oLPic.style.display = 'block';}function HideLoading() {document.getElementById('detailloadingbg').style.display = 'none';document.getElementById('detailloadingpic').style.display = 'none';fncEnableDroplistForm();}function createXMLDoc(XMLFile) {// code for IEif (window.ActiveXObject) {xmlDoc = new ActiveXObject("Microsoft.XMLDOM");xmlDoc.loadXML(XMLFile);// code for Mozilla, Firefox, Opera, etc.} else if (document.implementation && document.implementation.createDocument) {//xmlDoc = document.implementation.createDocument("", "", null);var parser = new DOMParser();var xmlDoc = parser.parseFromString(XMLFile, "text/xml");} else {alert('Your browser cannot handle this script.');}return(xmlDoc);}function getNodeValue(xmlDoc, tagName, index) {if (xmlDoc.getElementsByTagName(tagName)[index].childNodes[0] != null)return xmlDoc.getElementsByTagName(tagName)[index].childNodes[0].nodeValue;elsereturn '';}function MakeAJAXRequest(fncHandleData, strPage, bAsync, aShow, aHide, bDisable, errorMsg, xmlDoc, vID) {ResizeLoadingBG();xmlHttp = GetXmlHttpObject();if (xmlHttp == null) {alert ("Your browser does not support AJAX.");return;}if (bDisable == null) {bDisable = false;}var i;try{if (aShow != null) {for (i = 0; i < aShow.length; i++) {if (bDisable == true) {document.getElementById(aHide[i]).disabled = false;} else {document.getElementById(aShow[i]).style.display = 'block';}}}}catch (err) {alert(err.message);}try{if (aHide != null) {for (i = 0; i < aHide.length; i++) {if (bDisable == true) {document.getElementById(aHide[i]).disabled = true;} else {document.getElementById(aHide[i]).style.display = 'none';}}}}catch (err) {alert(err.message);}xmlHttp.open('get', strPage + '&r_id=' + genID(), bAsync);xmlHttp.onreadystatechange = function () { HandleData(fncHandleData, errorMsg, vID) };if (xmlDoc == undefined) {xmlDoc = null;}xmlHttp.send(xmlDoc);}function HandleData(fncHandleData, errorMsg, vID) {if (errorMsg == undefined || errorMsg == "") errorMsg = "An error has occured." if (xmlHttp.readyState == 4) { //Finished loading the response//var xmlDoc = xmlHttp.responseXML.documentElement;//alert(xmlHttp.responseText);xmlDoc = createXMLDoc(xmlHttp.responseText);if (xmlDoc == null){alert(errorMsg);HideLoading()} else {fncHandleData(xmlDoc, vID);}}}function NumbersOnly(myfield, e) {var key;var keychar;if (window.event) { key = window.event.keyCode;} else if (e){ key = e.which;} else { return true;}keychar = String.fromCharCode(key);// control keysif ((key == null) || (key == 0) || (key == 8) || (key == 9) || (key == 27)) {//alert('control keys');return true;// no enters} else if ((key == 13) || (key == 32)) {//alert('no enters');return false;// only one deicmal} else if ((keychar == '.' && myfield.value.indexOf('.')>-1) || (keychar == '.' && !bAllowDecimals)) {//alert('only one deicmal');return false;// numbers} else if (("0123456789.").indexOf(keychar) > -1) {//alert('numbers');return true;// isNaN} else if (isNaN(myfield.value)) {//alert('isNaN');myfield.value = '';return false;} else {//alert('Else');return false;}}// Open lightboxfunction fncDrawFindPopup(popwidth,popheight,searchtype,showsearch,key,qstring) {//document.getElementById('lb_open_type').value = searchtype;//var ckey = childkey.replace('?', '');lightbox_pageScrollX = document.body.scrollLeft;lightbox_pageScrollY = document.body.scrollTop;lightbox_bIsOpen = true;document.getElementById('popup').style.width=popwidth + 'px';document.getElementById('popup').style.height=popheight + 'px';document.getElementById('lostfocus').style.display = 'block';document.getElementById('popup').style.display = 'block';lightbox_Position();document.getElementById('searchtype').value=searchtype;//document.getElementById('lightbox_header').innerHTML=header;document.getElementById('popup_search_text').value='';document.getElementById('popupdesc').innerHTML='';if (showsearch == '0') {document.getElementById('popup_search_section').style.display='none';}// Fix IE for DTD 4.0if (ie && document.documentElement && document.compatMode == 'CSS1Compat') {document.getElementById('popup_search_results_container').style.height = (document.getElementById('popup_search_results_container').offsetHeight - 1 - (document.getElementById("popupheader").offsetHeight + document.getElementById("popupdesc").offsetHeight + document.getElementById("popup_search_section").offsetHeight)) + 'px';}document.getElementById('lostfocus').style.visibility = 'visible';document.getElementById('popup').style.visibility = 'visible';//document.getElementById('popup_search_results').innerHTML = '
  • Top Articles
    Latest Posts
    Article information

    Author: Rueben Jacobs

    Last Updated: 10/10/2023

    Views: 6390

    Rating: 4.7 / 5 (77 voted)

    Reviews: 92% of readers found this page helpful

    Author information

    Name: Rueben Jacobs

    Birthday: 1999-03-14

    Address: 951 Caterina Walk, Schambergerside, CA 67667-0896

    Phone: +6881806848632

    Job: Internal Education Planner

    Hobby: Candle making, Cabaret, Poi, Gambling, Rock climbing, Wood carving, Computer programming

    Introduction: My name is Rueben Jacobs, I am a cooperative, beautiful, kind, comfortable, glamorous, open, magnificent person who loves writing and wants to share my knowledge and understanding with you.