K&L SUPPLY COMPANY - K-L LIFT SIDE PANELS (2024)

sInputPKey = jQuery('#keys_' + rowkey).val();jQuery('#' + rowkey + '_rand_val').attr('name', sInputPKey + '_rand_val');jQuery('#td_' + rowkey).html('');/* * show price (use a bool option here?) */var cPrice = childItems[oSelect.selectedIndex].price;//lroselli 2/21/13 - Gets Thumb Picture if (bShowThumbCartOpts) {var sCartThumb = childItems[oSelect.selectedIndex].thumb;var sCartLargePic = childItems[oSelect.selectedIndex].lg_pic;var sCartOptName = childItems[oSelect.selectedIndex].nm;if (sCartThumb == "" || sCartThumb == "NULL") {jQuery('#thumb_' + rowkey).html("-");} else {if (sCartLargePic == "" || sCartLargePic == "NULL") {jQuery('#thumb_' + rowkey).html("K&L SUPPLY COMPANY - K-L LIFT SIDE PANELS (1)");} else {jQuery('#thumb_' + rowkey).html(buildLinkedImage(sCartOptName, sCartThumb, sCartLargePic));initImagePopup('#thumb_' + rowkey);}}}//childItems[oSelect.selectedIndex].qtybreaks/* * Begin pijushb - 03/04/2011 - identiphoto - Set the Price based on Price Display Type * and User Login session. */var bShowATCPrice = false;var bShowRegPrice = false;var bShowATCQty = true;if (bShowPriceDisplayType) {switch (sPriceDisplayType) {case 'hide':jQuery('#price_' + rowkey).html("-");break;case 'show_message':jQuery('#price_' + rowkey).html(sPriceMessage);break;case 'require_atc':bShowATCPrice = true;break;case 'require_login_or_atc':bShowATCPrice = true; break;/* * pijushb 03/11/2011 - Add new case condition for IDENTIPHOTO */case 'require_login_for_price_and_atc':bShowATCPrice = false;bShowATCQty = false;break;default: bShowRegPrice = true;break;} //- switch (sPriceDisplayType)} //- if (bShowPriceDisplayType)if (bShowPriceDisplayType) {if (bShowRegPrice) {jQuery('#price_' + rowkey).html(FormatCurrency(cPrice, true));} else if (bShowATCQty) {sTitle = "tip1"sHTML = '';jQuery('#price_' + rowkey).html(sHTML);} else {sTitle = "tip1"sHTML = '';jQuery('#price_' + rowkey).html(sHTML);}} else {jQuery('#price_' + rowkey).html(FormatCurrency(cPrice, true));}if (bShowCartOpts) {aCartOpts = sCartOptions.split('|');if (aCartOpts.length > 0) {for (var iCartOptCounter = 0, iCartOptGoTo = aCartOpts.length - 1; iCartOptCounter <= iCartOptGoTo; iCartOptCounter++) {/* * current cart option loading - split to pull out the * settings to determine to configure the current cart * option */sCartOpt= aCartOpts[iCartOptCounter].split("~");/* * build the value of the id for the cart option html input */sCartOptID= 'cart_opt_' + iCartOptCounter + '_' + rowkey;/* * build the value for the current cart option javascript * function to be added to the html input */sCartOptJSFunc= 'buildCartOpt(\'' + rowkey + '\');';/* * determine whether on parent product cart options are required */var sRqdHiddenField = '';if (bCartOptionsRqd) {sRqdHiddenField = '';} //- if (bCartOptionsRqd)/* * determine which html element to build for the current cart option */switch (sCartOpt[2]) {case 'select':sCartOptInput = '' + sRqdHiddenField;break;case 'text-area':sCartOptInput = '' + sRqdHiddenField;break;default:sCartOptInput = '' + sRqdHiddenField;break;} //- switch (sCartOpt[2])/* * add the current cart option to the table */jQuery('#cart_opt_td_' + iCartOptCounter + '_' + rowkey).html(sCartOptInput);} //- for (var iCartOptCounter = 0, iCartOptGoTo = aCartOpts.length - 1; iCartOptCounter <= iCartOptGoTo; iCartOptCounter++)iCartOptCounter = iCartOptCounter - 1;jQuery('#cart_opt_td_' + iCartOptCounter + '_' + rowkey).append('');} //- if (aCartOpts.length > 0)} //- if (bShowCartOpts)} //- if (oSelect.selectedIndex <= 0)} catch (err) {alert('Loading selection: ' + err.mesage);}}/** * Builds the hidden input for the data that gets posted * on the cart for the "cart_option" * * @author cainb * @author dand */function buildCartOpt(rowkey) {try{var cinput = '';//var oSelect = jQuery('#keys_' + rowkey);//if (oSelect === undefined) {//oSelect = jQuery('#' + rowkey + '_' + jQuery('#' + rowkey + '_sections').val());//}//var p_id = $oSelect.val();var sCartOptions = '';var sChildProduct = window.oChildProds[window.sChildPkey];var bUseChildProdOpts = false;var sCartOptDelim = '~';if (bUseChildProdOpts) {aCartOpts = sChildProduct.cartOptions.split('|');} else {aCartOpts = sCartOptions.split('|');}for (var iCOpt = 0, goTo = aCartOpts.length - 1; iCOpt <= goTo; iCOpt++) {aCartOpt = aCartOpts[iCOpt].split("~");cart_opt_type = aCartOpt[2];if (jQuery('#cart_opt_' + iCOpt + '_' + rowkey).val() != '') {if (cinput != '') {cinput += '|';}cart_opt_value = jQuery('#cart_opt_' + iCOpt + '_' + rowkey).val();if (cart_opt_type == 'text-area') {cart_opt_value = cart_opt_value.replace('\n', '
');}if (aCartOpt[1].length > 0 && aCartOpt[1] !== '') {cinput += aCartOpt[1] + sCartOptDelim + cart_opt_value;} else {cinput += cart_opt_value;}} //- if (document.getElementById('cart_opt_' + iCOpt + '_' + rowkey).value != '')} //- for (var iCOpt = 0, goTo = aCartOpts.length - 1; iCOpt <= goTo; iCOpt++)if (jQuery('#cart_option_' + rowkey).length > 0) {jQuery('#cart_option_' + rowkey).val(cinput);}} catch (err) {alert('Unable to build cart options. ' + err.mesage);//console.log('Unable to build cart options. ' + err.mesage);}}function hideProductContainer() {if (document.getElementById('sku_container'))document.getElementById('sku_container').innerHTML = '';if (document.getElementById('child_nm_container'))document.getElementById('child_nm_container').innerHTML = '';if (document.getElementById('child_ds_container'))document.getElementById('child_ds_container').innerHTML = ''; if (document.getElementById('price_container'))document.getElementById('price_container').innerHTML = '';if (document.getElementById('idp_container'))document.getElementById('idp_container').innerHTML = '';if (document.getElementById('atc_container'))document.getElementById('atc_container').style.display = 'none';hideChildProductInputs();}function hideChildProductInputs() { if (document.getElementById('child_cart_section'))document.getElementById('child_cart_section').style.display = 'none';for (var iCO=0; iCO<=5; iCO++){ if (document.getElementById('pc_cart_options_'+iCO))jQuery('#pc_cart_options_'+iCO).slideUp();}}/** * Function to Show/hide Buttons and message * @authorpijushb * @since1/25/2012 */function funcShowHideButtons() {sPrevSku = jQuery('#previous_sku').val();bReviewMessage = jQuery('#review_message_' + sPrevSku).is(':visible');jQuery('#previous_sku').val(sPKey);if (bReviewMessage){jQuery('#review_message_'+sPrevSku).hide();}bSubmitButton = jQuery('#submit_button').is(':visible')if (!bSubmitButton) {jQuery('#submit_button').hide();jQuery('#check_stock_button').show();jQuery('#checkout_button').show();} else {jQuery('#submit_button').hide();jQuery('#check_stock_button').show();jQuery('#checkout_button').show();} //- if (!bSubmitButton)} //- function funcShowHideButtons()/** * Function to add products to cart. * @authorpijushb * @since1/25/2012 */function fncCheckout() {gotoCart();} //- function fncCheckout()//Added styled modal to use instead of alert() -JMSfunction styled_modal_alert(htmlmsg) {jQuery('#styled_modal_text').html(htmlmsg);jQuery('#styled_modal_container').show();jQuery('#styled_modal_msg').show();jQuery('#styled_modal_buttons').show();jQuery('body').addClass('modal-open page-overflow');}jQuery('#styled_modal_close').click(function(e){e.preventDefault();jQuery('#styled_modal_container').hide();jQuery('#styled_modal_msg').hide();jQuery('#styled_modal_buttons').hide();jQuery('#styled_modal_text').html('');jQuery('body').removeClass('modal-open page-overflow');});function getQtyPricingUrl(sProductKey) {return 'i_i_priceBreakPopup.asp' + '?p_id=' + sProductKey + '&p_key=' + sProductKey;}/** * This function is responsible for loading the config sections / choices * for the input qty child product view * * @authorjohns * @since08/13/2013 * * @paramoLink html DOM object of link clicked * * @returnvoid */function fncLoadConfigSections(oLink) {var iColCount = 0;var $oLink = jQuery(oLink);var sKey = $oLink.data('key');var sDefaultQty = '';var sConfigSectionSource = $oLink.data('configsectionsource');var sParentProdKey = $oLink.data('parentprodkey');if (isNaN(sDefaultQty) || sDefaultQty < 1) {sDefaultQty = '';}// get the number of columns the new row will span$oLink.closest('tr').find('td').each(function () {if (jQuery(this).attr('colspan')) {iColCount += jQuery(this).attr('colspan');} else {iColCount++;}});if (sConfigSectionSource === 'parent') {sConfigKey = sParentProdKey;} else {sConfigKey = sKey;}jQuery.ajax({url: 'i_i_pc_product_detail.asp',data:{pageaction : 'getconfigdata',config_key : sConfigKey, //key of the product where the config data is coming fromchild_pkey : sKey,r_id : new Date().getTime()},type: 'GET',async: false,dataType: 'html',beforeSend: function () {$oLink.closest('tr').after('Loading Data...');},success: function (sData) {if (sData !== '') {// if there are config sections with choices setup, insert the html into the new rowjQuery('#config_sections_' + sKey + ' td').html(sData);$oLink.parent().prepend('');jQuery('#input_qty_config_sections_' + sKey).remove();} else {// if there are no config sections with choices setup, then remove the new row, remove the "Options" link, and draw out the input qty boxjQuery('#config_sections_' + sKey).remove();$oLink.parent().prepend('');jQuery('#input_qty_config_sections_' + sKey).remove();}}});/* * global vars used in holding info about the production configurations (BOM) and their source * added for product configurations (BOM) support in the input-qty view * johns - 08/13/2013 */oProdConfigData = { key: sKey, configkey: sConfigKey };aProdConfigData.push(oProdConfigData);} //- function fncLoadConfigSections(oLink)jQuery(function () { // dom readyvar sProdOpt1 = '';if (sChildProductOpt1 !== '') {if (sChildDisplay == 'droplist-one') {sProdOpt1 = sChildProductKey;} else {sProdOpt1 = sChildProductOpt1;}} else {sProdOpt1 = '';}if (sProdOpt1 !== '') {jQuery('#prod_opt1').val(sProdOpt1);}/** * load the default # of rows for the add-row view * cart options */if (bIsParentProduct && sChildDisplay == 'add-row') {/* * initially add 2 rows */addChildRows(2);}/* * determine which view to load */switch (sChildDisplay) {case 'matrix-one':fncColorSizes(false);break;case 'droplist-one':fncProcessOptProduct(1);break;case 'droplist-two':fncGetOptDroplist(2, false, 2);break;case 'droplist-three':fncGetOptDroplist(2, true, 3);break;case 'droplist-four':fncGetOptDroplist(2, true, 4);break;case 'droplist-five':fncGetOptDroplist(2, true, 5);break;case 'droplist-six':fncGetOptDroplist(2, true, 6);break;default:break;}if (document.getElementById('pc_cart_options_0')) {jQuery('#pc_cart_options_0').slideDown();}/* ============================================== * Event Handlers * ============================================== */if (bProductConfiguratorShowBasePrice) {if (jQuery('#formbuilder_container :input:not(:text, textarea, :disabled)').length != 0) {if (jQuery('#qtypricing').length == 0) {jQuery('#formbuilder_container').after('
  • ' + sProductConfiguratorPriceText + ' (Calculating)

');} else {jQuery('#formbuilder_container').after('

  • ' + sProductConfiguratorPriceText + ' (Calculating)

');}}}addCommas = function (input) {// If the regex doesn't match, `replace` returns the string unmodifiedreturn (input.toString()).replace(// Each parentheses group (or 'capture') in this regex becomes an argument// to the function; in this case, every argument after 'match'/^([-+]?)(0?)(\d+)(.?)(\d+)$/g, function (match, sign, zeros, before, decimal, after) {// Less obtrusive than adding 'reverse' method on all stringsvar reverseString = function (string) {return string.split('').reverse().join('');};// Insert commas every three characters from the rightvar insertCommas = function (string) {// Reverse, because it's easier to do things from the leftvar reversed = reverseString(string);// Add commas every three charactersvar reversedWithCommas = reversed.match(/.{1,3}/g).join(',');// Reverse again (back to normal)return reverseString(reversedWithCommas);};// If there was no decimal, the last capture grabs the final digit, so// we have to put it back together with the 'before' substringreturn sign + (decimal ? insertCommas(before) + decimal + after : insertCommas(before + after));});};/* * Register Addon Product select list */jQuery('#addon_products').change(function () {fncUpdateAddonsSelectQty(this);});/* * Update addon product (needed due to page caching) */if (bUseAddonProducts) {if (jQuery('#addon_products').length > 0) {fncUpdateAddonsSelectQty(jQuery('#addon_products')[0]);}}/* * Register Addon Product Checkboxes */jQuery('#addon_product_container input:checkbox').click(function () {jQuery('#addon_qty_container').html('');jQuery('#addon_product_container input:checked').each(function () {jQuery('#addon_qty_container').append('')});});/* * Register AJAX Add To Cart Window Close Button */jQuery('#atc_msg_close_win').click(function (event) {event.preventDefault();closeCartLightbox();});jQuery('a[id^="input_qty_config_sections_"]').click(function (event) {event.preventDefault();fncLoadConfigSections (this);});var sPageName = 'k-l-lift-side-panels-extensions.asp';// event handlers for UOM logic for the input qty view// johns - 8/6/2013jQuery('select[name^="uom_selected"]').bind('change', function () {sSelectedVal = jQuery(this).val();sProdKey = jQuery(this).data('key');sUomStd = jQuery(this).data('uomstd');if (sSelectedVal !== sUomStd) {jQuery('#uom_sales_' + sProdKey).val(sSelectedVal);jQuery('#uom_std_' + sProdKey).val('');jQuery(this).parent().prev('td.qty_price_breaks_container').text(jQuery(this).data('uomconvprice'));// added to post uom to the new cart [johns - 04/21/2014]jQuery('#multiplier_on_qty_display_' + sProdKey).remove();} else {jQuery('#uom_sales_' + sProdKey).val('');jQuery('#uom_std_' + sProdKey).val(sSelectedVal);jQuery(this).parent().prev('td.qty_price_breaks_container').text(jQuery(this).data('price'));// added to post uom to the new cart [johns - 04/21/2014]jQuery(this).after('');}if (bShowNativeUOMinCart) {jQuery('#order_uom_' + sProdKey).val(sSelectedVal);}if (jQuery('#uom_sales_' + sProdKey).val() !== '' && jQuery('#qty_' + sProdKey).val() !== '') {jQuery('#sales_qty_' + sProdKey).val(jQuery('#qty_' + sProdKey).val());}});jQuery('.qty_input_table input[name^="qty_"]').bind('change keyup', function () {sProdKey = jQuery(this).data('key');if (jQuery('#uom_sales_' + sProdKey).val() !== '') {jQuery('#sales_qty_' + sProdKey).val(jQuery(this).val());}});if (bUsePromotions && bUsePromoBarAtcModal){jQuery('#atc_msg').on('shown', function () {// The ticker cannot be started until the elements are visible.jQuery('#atc_promo_bar .notification-center').trigger('notification-center-added');});}/** * Rating Stars * - gets score from data attribute on container * @author jonr * @since 1/27/2014 */jQuery('.raty').raty({path: 'templates/gfx/',space: false,readOnly: true,width: 90,hints: ['Bad', 'Poor', 'Good', 'Very Good', 'Excellent'],score: function () {return jQuery(this).attr('data-score');}});toggleSmartListSection();if (bConfiguratorEdit) {fncLoadConfigEdit(oConfiguratorEditData, dblConfiguratorEditQty);}$('#formbuilder_container').on('change', ':input:not(:text, textarea, :disabled, :hidden)', updateConfigPrices);// force HTML5 validation for the "step" attribute to not fire if the form has at least 1 input with step attribute set to a value > 1 [johns - 02/26/2016]$('form input').each(function() {if ($(this)[0].hasAttribute('step') && ( $(this).attr('step') !== '' || $(this).attr('step') > 0 )) {$('form').attr('novalidate', 'novalidate');return false;}});});function updateConfigPrices() {var dConfigPrice = 0;$('#formbuilder_container').find(':input:checked, select :selected').filter(':not(:disabled)').each(function () {dConfigPrice += $(this).data('price') || 0;});var $price = bProductConfiguratorShowBasePrice ? $('#configurator_price') : $('li[class=saleprice]');var sPrice = (dblBasePrice + dConfigPrice).toFixed(iProductConfiguratorPriceDecimals);$price.html(sProductConfiguratorPriceText + " $" + addCommas(sPrice));}function fncLoadConfigEdit(oData, dQty) {var $form = jQuery('#formbuilder_container');for (choiceKey in oData.choices) {var choice = oData.choices[choiceKey];var $inputs = $form.find('[name="' + choice.name + '"]');var inputType = $inputs.first().attr("type");if (inputType === "checkbox" || inputType === "radio") {$inputs.filter('[value="' + choice.answer + '"]').prop('checked', true);} else {$inputs.val(choice.answer);}// Update display activators.$inputs.change();}jQuery('.qtyinput').val(dQty);updateConfigPrices();}// Toggles the visibility of the smart list section (stand-alone, not in advanced tabs)// based on whether the product has any information to show.function toggleSmartListSection() {var sKey = $('#keys').val();var $smartListContainer = $('#detail_smart_list');var bHistoryExists = $smartListContainer.find('.smart-list[data-product=' + sKey + ']').length > 0;//Hide the children rather than the entire container so product tabs//can hide the container when a smart list tab is showing.$smartListContainer.children().toggle(bHistoryExists);}function updateSmartListChildProduct() {var sChildKey = $('#keys').val();$('.smart-lists-container[data-product=' + sPKey + ']').trigger('child-product-changed', sChildKey);toggleSmartListSection();}/* * This function checks the global variable bUseChildDescription to see if it * should substitute the child description (from oProdInfo) for the current description. * * @authorjohns, ddara * @since11/6/2010 */function applyChildDescription(oProdInfo) {if (bUseChildDescription) {if (typeof oProdInfo.description !== 'string' || oProdInfo.description.trim() === '') {$('.detail_desc_full').hide();} else {$('.detail_desc_full').show();// HCS 2/1/2017 - updated to use IDs instead of detail_desc_content class to prevent// issues with price display message when using child description swapping.jQuery('#detail_desc_content_0').html(oProdInfo.description);jQuery('#detail_desc_content_1').html(oProdInfo.description);jQuery('#desc').html(oProdInfo.description);}}}/*Collates an array of data pairs into an object with the first value from the pairs beingkeys in the object with the value being an array of all of that value's pair partners.e.g.[['a', 1], ['b', 2], ['a', 8]]yields{'a': [1, 8], 'b': [2]}*/function collateArrayIntoObject(aPairs) {var sKeyvar sValuevar oMapping = {};for (var i = 0; i < aPairs.length; i++) {sKey = aPairs[i][0];sValue = aPairs[i][1];if (!oMapping.hasOwnProperty(sKey)) {oMapping[sKey] = [];}oMapping[sKey].push(sValue);}return oMapping;}function initSavedCartsHelper() {initializeSavedCarts(function (sOrderKey, sNickname) {postToCart(undefined, undefined, sOrderKey, sNickname, 'saved-cart');});}// Returns the intersection of two sorted arrays.// Based on intersect_safe from http://stackoverflow.com/a/1885660function intersectArrays(a, b) {var ai=0, bi=0;var result = new Array();while(ai < a.length && bi < b.length) {if (a[ai] < b[bi]) {ai++;}else if (a[ai] > b[bi]) {bi++;} else { /* they're equal */result.push(a[ai]);ai++;bi++;}}return result;}function updateDroplistPromoDisplay(sProductKey) {var aApplicablePromos = oTargetPromos[sProductKey] || [];var $promoPanels = $('.detail_cart .promo-panel');aApplicablePromos.sort();$promoPanels.each(function(panelIndex, element) {var $panel = $(this);var aPromos = $panel.data('promos').split(',');aPromos.sort();var bApplicable = intersectArrays(aApplicablePromos, aPromos).length > 0;$panel.toggleClass('faded', !bApplicable);});}function fncAddToSavedCartClick(event) {if (!fncFormSubmit(false)) {event.stopPropagation();}}// String replacement on you save text for droplist products. function youSaveStringReplace(sYouSavePercent, sYouSaveDollarAmount){sYouSaveDisplay = sYouSaveStringReplacementsYouSaveDisplay = sYouSaveDisplay.replace( "

", sYouSavePercent)sYouSaveDisplay = sYouSaveDisplay.replace("", sYouSaveDollarAmount)return sYouSaveDisplay; }// Broken image show placeholdervar utils = {};// Missing large image remove linkutils.handleImageLargeError = function (img) {jQuery('#detail_noimage_cotainer').show();jQuery('#detail_photo_container').hide();};// Thumb image replaceutils.handleImageError = function (img) {$(img).attr('src', 'images/no-image.png');};
  • Contact Us

    • K&L Supply Co.
    • 2099 S. 10th St. Unit #80
    • San Jose, CA 95112
    • Monday-Friday: 7:00am-3:30pm
    • Phone: +1 (800) 727-6767
    • Email: Sales@klsupply.com
    • *PRICES ARE SUBJECT TO CHANGE WITHOUT NOTICE.
    • **K&L SUPPLY CO. RESERVES THE RIGHT TO REFUSE SERVICE TO ANYONE.
  • More Information
      • Product Categories

      • Shop Equipment
      • Hard Parts
      • Control Items
      • Suspension
      • Accessories
      • Connect With Us

      • Email Us
      • Dealer Login
      • View Product Catalog
      • About K&L Supply

      • About Us
      • Worldwide Distributors
      • Product Videos

Copyright 2024 K&L Supply Co. All Rights Reserved.

Estimate Shipping

K&L SUPPLY COMPANY - K-L LIFT SIDE PANELS (2024)
Top Articles
Latest Posts
Article information

Author: Pres. Carey Rath

Last Updated:

Views: 5766

Rating: 4 / 5 (61 voted)

Reviews: 84% of readers found this page helpful

Author information

Name: Pres. Carey Rath

Birthday: 1997-03-06

Address: 14955 Ledner Trail, East Rodrickfort, NE 85127-8369

Phone: +18682428114917

Job: National Technology Representative

Hobby: Sand art, Drama, Web surfing, Cycling, Brazilian jiu-jitsu, Leather crafting, Creative writing

Introduction: My name is Pres. Carey Rath, I am a faithful, funny, vast, joyous, lively, brave, glamorous person who loves writing and wants to share my knowledge and understanding with you.