Advertisement
Guest User

Untitled

a guest
May 27th, 2019
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var __isp_options = {
  2.     isp_serp_callback: function() {
  3.         $jquery_isp('.isp_single_facet_wrapper').each(function() {
  4.             if ($jquery_isp(this).find('.isp_facet_check_box_icon_checked').length == 0) {
  5.                 $jquery_isp(this).addClass('collapsed');
  6.             }
  7.         });
  8.     },
  9.     isp_serp_quickview_callback: function () {
  10.         var id = $jquery_isp('.isp_quick_view_title').attr('product_id');
  11.  
  12.         if (ISP_PRODUCTS[id].vra) {
  13.             var color_super_attribute_id = ISP_PRODUCTS[id].vrc["Color"]["MAGENTO_ATTRIBUTE_NAME_CODE"];
  14.             var color_dropdown = $jquery_isp('<select id="isp_quick_view_color_select" class="isp_quick_view_variant_select" onchange="ispQVChangeColor(this, ' + color_super_attribute_id + ')" style="-webkit-appearance: none;"><option value="default">Choose Color</option></select>');
  15.             var size_super_attribute_id = ISP_PRODUCTS[id].vrc["Size"]["MAGENTO_ATTRIBUTE_NAME_CODE"];
  16.             var size_dropdown = $jquery_isp('<select id="isp_quick_view_size_select" class="isp_quick_view_variant_select" onchange="ispQVChangeSize(this, ' + size_super_attribute_id + ')" style="-webkit-appearance: none;"><option value="default">Choose Size</option></select>');
  17.             var width_super_attribute_id = ISP_PRODUCTS[id].vrc["Width"]["MAGENTO_ATTRIBUTE_NAME_CODE"];
  18.             var width_dropdown = $jquery_isp('<select id="isp_quick_view_width_select" class="isp_quick_view_variant_select" onchange="ispQVChangeWidth(this, ' + width_super_attribute_id + ')" style="-webkit-appearance: none;"><option value="default">Choose Width</option></select>');
  19.  
  20.             $jquery_isp('.isp_quick_view_variant select').remove();
  21.             $jquery_isp('.isp_quick_view_variant').append(color_dropdown);
  22.             $jquery_isp('.isp_quick_view_variant').append(size_dropdown);
  23.             $jquery_isp('.isp_quick_view_variant').append(width_dropdown);
  24.  
  25.             for (var i = 0; i < ISP_PRODUCTS[id].vra.length; i++) {
  26.                 var get_color = ISP_PRODUCTS[id].vra[i][1].find(function (element) { return element[0] === "Color" });
  27.                 var color = get_color ? get_color[1][0] : "";
  28.                 var color_id = ISP_PRODUCTS[id].vrc["Color"][color];
  29.                 var get_size = ISP_PRODUCTS[id].vra[i][1].find(function (element) { return element[0] === "Size" });
  30.                 var size = get_size ? get_size[1][0] : "";
  31.                 var size_id = ISP_PRODUCTS[id].vrc["Size"][size];
  32.                 var get_width = ISP_PRODUCTS[id].vra[i][1].find(function (element) { return element[0] === "Width" });
  33.                 var width = get_width ? get_width[1][0] : "";
  34.                 var width_id = ISP_PRODUCTS[id].vrc["Width"][width];
  35.                 if (color_id) {
  36.                     $jquery_isp('#isp_quick_view_color_select').append('<option class="isp_quick_view_color_option" value="' + color_id + '">' + color + '</option>');
  37.                 }
  38.                 if (size_id) {
  39.                     $jquery_isp('#isp_quick_view_size_select').append('<option class="isp_quick_view_size_option" value="' + size_id + '">' + size + '</option>');
  40.                 }
  41.                 if (width_id) {
  42.                     $jquery_isp('#isp_quick_view_width_select').append('<option class="isp_quick_view_width_option" value="' + width_id + '">' + width + '</option>');
  43.                 }
  44.             }
  45.         }
  46.  
  47.         var seen = {};
  48.         $jquery_isp('.isp_quick_view_color_option, .isp_quick_view_size_option, .isp_quick_view_width_option').each(function () {
  49.             var txt = $jquery_isp(this).text();
  50.             if (seen[txt]) {
  51.                 $jquery_isp(this).remove();
  52.             } else {
  53.                 seen[txt] = true;
  54.             }
  55.         });
  56.  
  57.         $jquery_isp("#isp_quick_view_size_select").html($jquery_isp("#isp_quick_view_size_select option").sort(function (a, b) {
  58.             var a = parseFloat(a.text.match(/^\d*\.?\d*$/)),
  59.                 b = parseFloat(b.text.match(/^\d*\.?\d*$/));
  60.             return a < b ? -1 : 1;
  61.         }));
  62.         $jquery_isp("#isp_quick_view_size_select").prop('selectedIndex', 0);
  63.     }
  64. };
  65.  
  66. function ispQVChangeColor(select, super_attribute) {
  67.     var id = $jquery_isp('.isp_quick_view_title').attr('product_id');
  68.     $jquery_isp('[name="super_attribute[' + super_attribute + ']"]').val($jquery_isp(select).val());
  69.  
  70.     for (var i = 0; i < ISP_PRODUCTS[id].vra.length; i++) {
  71.         var get_color_for_image = ISP_PRODUCTS[id].vra[i][1].find(function (element) { return element[0] === "Color" });
  72.         var color_for_image = get_color_for_image ? get_color_for_image[1][0] : "";
  73.         if (color_for_image === select.selectedOptions[0].text) {
  74.             $jquery_isp('.isp_quick_view_image').attr('src', ISP_PRODUCTS[id].vra[i][1].find(function (element) { return element[0] === "imgs" })[1][0]);
  75.             break;
  76.         }
  77.     }
  78.  
  79.     for (var j = 0; j < ISP_PRODUCTS[id].vra.length; j++) {
  80.         var sellable = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Sellable" })[1][0];
  81.         var get_color = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Color" });
  82.         var color = get_color ? get_color[1][0] : "";
  83.         if (color === select.selectedOptions[0].text && sellable) {
  84.             var get_size = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Size" });
  85.             var size = get_size ? get_size[1][0] : "";
  86.             var get_width = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Width" });
  87.             var width = get_width ? get_width[1][0] : "";
  88.             $jquery_isp('#isp_quick_view_size_select option').filter(function() { return $jquery_isp(this).html() == size; }).css('display', 'none');
  89.             $jquery_isp('#isp_quick_view_width_select option').filter(function() { return $jquery_isp(this).html() == width; }).css('display', 'none');
  90.         }
  91.     }
  92.     $jquery_isp('#isp_quick_view_size_select option, #isp_quick_view_width_select option').each(function() { $jquery_isp(this).toggle(); });
  93.  
  94.     if ($jquery_isp('#isp_quick_view_size_select').find(":selected").css('display') === 'none') {
  95.         $jquery_isp('#isp_quick_view_size_select').val('default');
  96.     }
  97.     if ($jquery_isp('#isp_quick_view_width_select').find(":selected").css('display') === 'none') {
  98.         $jquery_isp('#isp_quick_view_width_select').val('default');
  99.     }
  100.    
  101. }
  102.  
  103. function ispQVChangeSize(select, super_attribute) {
  104.     var id = $jquery_isp('.isp_quick_view_title').attr('product_id');
  105.     $jquery_isp('[name="super_attribute[' + super_attribute + ']"]').val($jquery_isp(select).val());
  106.  
  107.     for (var j = 0; j < ISP_PRODUCTS[id].vra.length; j++) {
  108.         var sellable = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Sellable" })[1][0];
  109.         var get_size = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Size" });
  110.         var size = get_size ? get_size[1][0] : "";
  111.         if (size === select.selectedOptions[0].text && sellable) {
  112.             var get_color = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Color" });
  113.             var color = get_color ? get_color[1][0] : "";
  114.             var get_width = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Width" });
  115.             var width = get_width ? get_width[1][0] : "";
  116.             $jquery_isp('#isp_quick_view_color_select option').filter(function() { return $jquery_isp(this).html() == color; }).css('display', 'none');
  117.             $jquery_isp('#isp_quick_view_width_select option').filter(function() { return $jquery_isp(this).html() == width; }).css('display', 'none');
  118.         }
  119.     }
  120.     $jquery_isp('#isp_quick_view_color_select option, #isp_quick_view_width_select option').each(function() { $jquery_isp(this).toggle(); });
  121.  
  122.     if ($jquery_isp('#isp_quick_view_color_select').find(":selected").css('display') === 'none') {
  123.         $jquery_isp('#isp_quick_view_color_select').val('default');
  124.     }
  125.     if ($jquery_isp('#isp_quick_view_width_select').find(":selected").css('display') === 'none') {
  126.         $jquery_isp('#isp_quick_view_width_select').val('default');
  127.     }
  128. }
  129.  
  130. function ispQVChangeWidth(select, super_attribute) {
  131.     var id = $jquery_isp('.isp_quick_view_title').attr('product_id');
  132.     $jquery_isp('[name="super_attribute[' + super_attribute + ']"]').val($jquery_isp(select).val());
  133.  
  134.     for (var j = 0; j < ISP_PRODUCTS[id].vra.length; j++) {
  135.         var sellable = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Sellable" })[1][0];
  136.         var get_width = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Width" });
  137.         var width = get_width ? get_width[1][0] : "";
  138.         if (width === select.selectedOptions[0].text && sellable) {
  139.             var get_color = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Color" });
  140.             var color = get_color ? get_color[1][0] : "";
  141.             var get_size = ISP_PRODUCTS[id].vra[j][1].find(function (element) { return element[0] === "Size" });
  142.             var size = get_size ? get_size[1][0] : "";
  143.             $jquery_isp('#isp_quick_view_color_select option').filter(function() { return $jquery_isp(this).html() == color; }).css('display', 'none');
  144.             $jquery_isp('#isp_quick_view_size_select option').filter(function() { return $jquery_isp(this).html() == size; }).css('display', 'none');
  145.         }
  146.     }
  147.     $jquery_isp('#isp_quick_view_color_select option, #isp_quick_view_size_select option').each(function() { $jquery_isp(this).toggle(); });
  148.  
  149.     if ($jquery_isp('#isp_quick_view_color_select').find(":selected").css('display') === 'none') {
  150.         $jquery_isp('#isp_quick_view_color_select').val('default');
  151.     }
  152.     if ($jquery_isp('#isp_quick_view_size_select').find(":selected").css('display') === 'none') {
  153.         $jquery_isp('#isp_quick_view_size_select').val('default');
  154.     }
  155. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement