// source --> https://custombirthdaybanners.co.uk/wp-content/plugins/cbb_calculator/includes/js/cbb_calculation.js?ver=1 
/* global jquery */
 $(document).on("click", "#closePopupBtn", function () {
       jQuery("div#popup").css('display','none');
});            
 $(document).on("click", "button#tbclosenameBtn", function () {
       jQuery("#tablename_popup").hide();
});            
 $(document).on("click", "button#closexstandBtn", function () {
       jQuery("div#popup_xstand").hide();
});            
 $(document).on("click", "button#closeselfieframBtn", function () {
       jQuery("div#popup_selfiefram").hide();
});   
jQuery(document).ready(function($) {
    $('.bannereyelets_size').on('change', function() {
        var selectedOption = $(this).val(); // Get selected value
        if (selectedOption !== '') {
            $('.sm_item_right.eyelets_sm').text(selectedOption); // Update the div
        } else {
            $('.sm_item_right.eyelets_sm').text('Select eyelet'); // Default text if nothing is selected
        }
    });
});

jQuery(document).ready(function() {
/*jQuery("#post_cbb_form").on('submit', function(event) {
     //   // // console.log('its working');

        jQuery('#post_cbb_form').css('opacity', '1');
        var btnVal = jQuery(this).find(".cbb_add_to_cart").val();
        //  alert(btnVal);
        jQuery('.loader').show();
        // // console.log("btnVal:"+btnVal)
        var formData = new FormData(jQuery(this)[0]);
        formData.append('productId', btnVal);
        formData.append("action", "cart_form_submit_posterdesign");
        jQuery.ajax({
            type: "post",
            url: ajax_object.ajax_url,
            dataType: "json",
            data: formData,
            processData: false,
            contentType: false,
            success: function(data) {
                jQuery('.loader').hide();
                 // console.log("success:"+data);
                document.location.href = 'https://custombirthdaybanners.co.uk/cart/';
            },
            error: function(xhr, textStatus, errorThrown) {
                // console.log("error:"+errorThrown);
            }
        });
        return false;
    });*/
    
jQuery("#post_cbb_form").on('submit', function(event) {
        
        var btn_cart = jQuery(".cbb_add_to_cart").val();
        var formDatastand = new FormData(jQuery(this)[0]);
        
        formDatastand.append('productId_stands', btn_cart);

        formDatastand.append("action", "cart_form_submit_stands");
        
        jQuery.ajax({
            type: "post",
            url: ajax_object.ajax_url,
            dataType: "json",
            data: formDatastand,
            processData: false,
            contentType: false,
            success: function(data) {
           //    jQuery('.loader').hide();
           // console.log("success"+data);
               document.location.href = 'https://custombirthdaybanners.co.uk/cart/';
            },
            error: function(xhr, textStatus, errorThrown) {
                // console.log("error"+errorThrown);
            }
        });
        return false;

    });
});

jQuery(document).ready(function($) {
    function updateSelectedDate() {
        var selectedDate = $(".delivery_inner .active .dlvry_date").text();
        $(".del_date_is_this").text(selectedDate);
    }

    // Run on page load
    updateSelectedDate();

    // Update when clicking a different delivery option
    $(".delivery_inner > div").on("click", function() {
        $(".delivery_inner > div").removeClass("active");
        $(this).addClass("active");
        updateSelectedDate();
    });
});
            


 $(document).ready(function () {
            $('.sf_size').change(function () {
                var selectedValue = $(this).val();

                if (selectedValue === 'Portrait') {
                    $('.sizerect').show();
                    $('.sizerect_landscap').hide();
                } else if (selectedValue === 'landscape') {
                    $('.sizerect').hide();
                    $('.sizerect_landscap').show();
                }
            });

            // Trigger the change event on page load to apply the initial state
            $('.sf_size').trigger('change');
         
        });
/* $(document).ready(function () {
    const $designRightSec = $(".design_right_sec");
    const $designWrapper = $(".design_wrapper");
    const $footerBoundary = $(".home-fifth-sec-full-wdth");

    $(window).on("scroll", function () {
      const scrollTop = $(this).scrollTop();
      const wrapperBottom = $designWrapper.offset().top + $designWrapper.outerHeight();
      const viewportBottom = scrollTop + $(window).height();
      const designHeight = $designRightSec.outerHeight();

      if (scrollTop > wrapperBottom && viewportBottom < $footerBoundary.offset().top) {
        $designRightSec.removeClass("default").addClass("fixed");
        $designWrapper.css("visibility", "hidden"); // Hide design wrapper
      } else {
        $designRightSec.removeClass("fixed").addClass("default");
        $designWrapper.css("visibility", "visible"); // Restore design wrapper visibility
      }
    });
  });*/
  $(document).ready(function () {
    const $designRightSec = $(".design_right_sec");
    const $designWrapper = $(".design_wrapper");
    const $footerBoundary = $(".home-fifth-sec-full-wdth");

    // Function to handle the scroll event
    function handleScroll() {
        const scrollTop = $(this).scrollTop();
        const wrapperBottom = $designWrapper.offset().top + $designWrapper.outerHeight();
        const viewportBottom = scrollTop + $(window).height();
        const designHeight = $designRightSec.outerHeight();

        if (scrollTop > wrapperBottom && viewportBottom < $footerBoundary.offset().top) {
            $designRightSec.removeClass("default").addClass("fixed");
            $designWrapper.css("visibility", "hidden"); // Hide design wrapper
        } else {
            $designRightSec.removeClass("fixed").addClass("default");
            $designWrapper.css("visibility", "visible"); // Restore design wrapper visibility
        }
    }

    // Only enable the script for desktop screens
    function initScrollBehavior() {
        if ($(window).width() > 1024) { // Adjust this value for your desktop breakpoint
            $(window).on("scroll", handleScroll);
        } else {
            $(window).off("scroll", handleScroll); // Remove the scroll listener for non-desktop
            $designRightSec.removeClass("fixed").addClass("default");
            $designWrapper.css("visibility", "visible");
        }
    }

    // Initialize on document ready
    initScrollBehavior();

    // Recheck on window resize
    $(window).on("resize", initScrollBehavior);
});

 $(document).ready(function() {

/*$(document).on("change", "select.standardbanner_unit", function(){
    var unit = jQuery('.standardbanner_unit').val();
    var active_tab = jQuery("select.backdrop_sizes").text();
    var previous = jQuery("select.standardbanner_unit").val();

    jQuery("#previous").val(active_tab);
    
    var sizeclass = 'backdrop_sizes';
    var widthclass = 'c_widthstandard';
    var heightclass = 'c_heightstandard'; 
    
    jQuery('.'+sizeclass+' option').each(function() {
        var indexoption = jQuery(this).index();
        var sizeb = jQuery(this).text();
        
        if(sizeb != 'custom') {
            if(unit == 'foot'){
                // Update options based on foot unit
                if(indexoption == 0){
                    jQuery(this).text('1.5ft x 4.5ft');
                    jQuery(this).val('1.5ft x 4.5ft');
                }else if(indexoption == 1){
                    jQuery(this).text('1.75ft x 5.5ft');
                    jQuery(this).val('1.75ft x 5.5ft');
                }else if(indexoption == 2){
                    jQuery(this).text('2ft x 6.25ft');
                    jQuery(this).val('2ft x 6.25ft');
                }else if(indexoption == 3){
                    jQuery(this).text('2.25ft x 7ft');
                    jQuery(this).val('2.25ft x 7ft');
                }else if(indexoption == 4){
                    jQuery(this).text('2.5ft x 7.25ft');
                    jQuery(this).val('2.5ft x 7.25ft');
                }else if(indexoption == 5){
                    jQuery(this).text('2.75ft x 7.75ft');
                    jQuery(this).val('2.75ft x 7.75ft');
                }else if(indexoption == 6){
                    jQuery(this).text('3ft x 8ft');
                    jQuery(this).val('3ft x 8ft');
                }
            } else if(unit == 'inch'){
                // Update options based on inch unit
                if(indexoption == 0){
                    jQuery(this).text('18 inch x 54 inch');
                    jQuery(this).val('18 inch x 54 inch');
                }else if(indexoption == 1){
                    jQuery(this).text('21 inch x 66 inch');
                    jQuery(this).val('21 inch x 66 inch');
                }else if(indexoption == 2){
                    jQuery(this).text('24 inch x 75 inch');
                    jQuery(this).val('24 inch x 75 inch');
                }else if(indexoption == 3){
                    jQuery(this).text('27 inch x 84 inch');
                    jQuery(this).val('27 inch x 84 inch');
                }else if(indexoption == 4){
                    jQuery(this).text('30 inch x 87 inch');
                    jQuery(this).val('30 inch x 87 inch');
                }else if(indexoption == 5){
                    jQuery(this).text('33 inch x 93 inch');
                    jQuery(this).val('33 inch x 93 inch');
                }else if(indexoption == 6){
                    jQuery(this).text('36 inch x 96 inch');
                    jQuery(this).val('36 inch x 96 inch');
                }
            } else if(unit == 'cm'){
                // Update options based on cm unit
                if(indexoption == 0){
                    jQuery(this).text('40cm x 150cm');
                    jQuery(this).val('40cm x 150cm');
                }else if(indexoption == 1){
                    jQuery(this).text('50cm x 175cm');
                    jQuery(this).val('50cm x 175cm');
                }else if(indexoption == 2){
                    jQuery(this).text('60cm x 200cm');
                    jQuery(this).val('60cm x 200cm');
                }else if(indexoption == 3){
                    jQuery(this).text('70cm x 210cm');
                    jQuery(this).val('70cm x 210cm');
                }else if(indexoption == 4){
                    jQuery(this).text('75cm x 225cm');
                    jQuery(this).val('75cm x 225cm');
                }else if(indexoption == 5){
                    jQuery(this).text('80cm x 245cm');
                    jQuery(this).val('80cm x 245cm');
                }else if(indexoption == 6){
                    jQuery(this).text('90cm x 250cm');
                    jQuery(this).val('90cm x 250cm');
                }
            } else if(unit == 'mm'){
                // Update options based on mm unit
                if(indexoption == 0){
                    jQuery(this).text('400mm x 1500mm');
                    jQuery(this).val('400mm x 1500mm');
                }else if(indexoption == 1){
                    jQuery(this).text('500mm x 1750mm');
                    jQuery(this).val('500mm x 1750mm');
                }else if(indexoption == 2){
                    jQuery(this).text('600mm x 2000mm');
                    jQuery(this).val('600mm x 2000mm');
                }else if(indexoption == 3){
                    jQuery(this).text('700mm x 2100mm');
                    jQuery(this).val('700mm x 2100mm');
                }else if(indexoption == 4){
                    jQuery(this).text('750mm x 2250mm');
                    jQuery(this).val('750mm x 2250mm');
                }else if(indexoption == 5){
                    jQuery(this).text('800mm x 2450mm');
                    jQuery(this).val('800mm x 2450mm');
                }else if(indexoption == 6){
                    jQuery(this).text('900mm x 2500mm');
                    jQuery(this).val('900mm x 2500mm');
                }
            } else if(unit == 'm'){
                // Update options based on m unit
                if(indexoption == 0){
                    jQuery(this).text('0.4m x 1.5m');
                    jQuery(this).val('0.4m x 1.5m');
                }else if(indexoption == 1){
                    jQuery(this).text('0.5m x 1.75m');
                    jQuery(this).val('0.5m x 1.75m');
                }else if(indexoption == 2){
                    jQuery(this).text('0.6m x 2m');
                    jQuery(this).val('0.6m x 2m');
                }else if(indexoption == 3){
                    jQuery(this).text('0.7m x 2.10m');
                    jQuery(this).val('0.7m x 2.10m');
                }else if(indexoption == 4){
                    jQuery(this).text('0.75m x 2.25m');
                    jQuery(this).val('0.75m x 2.25m');
                }else if(indexoption == 5){
                    jQuery(this).text('0.8m x 2.45m');
                    jQuery(this).val('0.8m x 2.45m');
                }else if(indexoption == 6){
                    jQuery(this).text('0.9m x 2.5m');
                    jQuery(this).val('0.9m x 2.5m');
                }
            }
        }
    });
    
    // Set the value of backdrop_sizes select element
    // jQuery("select.backdrop_sizes").val(selected_value).trigger('change'); 
    
    // Call the function to calculate price
    cbb_calculate_price();
});*/
  $(document).ready(function () {
    const conversions = {
        cm: 1,
        mm: 10,
        inch: 0.393701,
        foot: 0.0328084,
        m: 0.01
    };

    function convertValue(value, unit) {
        return (parseFloat(value) * conversions[unit]).toFixed(2);
    }

    function updateSizes(unit) {
        let firstWidth = null, firstHeight = null;

        $('.backdrop_sizes option').each(function () {
            const option = $(this);
            const originalVal = option.attr('data-original');

            if (option.val() === 'custom') return;

            let valueSource = originalVal ? originalVal : option.attr('value');

            const match = valueSource.match(/(\d+\.?\d*)cm\s*x\s*(\d+\.?\d*)cm/i);

            if (match) {
                const width_cm = parseFloat(match[1]);
                const height_cm = parseFloat(match[2]);

                const convertedWidth = convertValue(width_cm, unit);
                const convertedHeight = convertValue(height_cm, unit);

                const bestSeller = option.text().includes('Best seller') ? ' (Best seller)' : '';

                option.text(`${convertedWidth}${unit} x ${convertedHeight}${unit}${bestSeller}`);
                option.attr('value', `${convertedWidth}${unit} x ${convertedHeight}${unit}`);

                if (!originalVal) {
                    option.attr('data-original', valueSource);
                }

                if (firstWidth === null && firstHeight === null) {
                    firstWidth = convertedWidth;
                    firstHeight = convertedHeight;
                }
            }
        });

        $('.backdrop_sizes').val($('.backdrop_sizes option:not([value="custom"])').first().val());
        $('.c_widthstandard').val(firstWidth);
        $('.c_heightstandard').val(firstHeight);

        updateSmSizeText(firstWidth, firstHeight);
    }

    function updateInputsFromSelectedSize() {
        const selectedVal = $('.backdrop_sizes').val();
        if (selectedVal === 'custom') return;

        const arr = selectedVal.split('x');
        if (arr.length === 2) {
            const width = arr[0].replace(/[^0-9.]/g, '').trim();
            const height = arr[1].replace(/[^0-9.]/g, '').trim();
            $('.c_widthstandard').val(width);
            $('.c_heightstandard').val(height);

            updateSmSizeText(width, height);
            cbb_calculate_price();
        }
    }

    function updateSmSizeText(width, height) {
        $('.sm_bk_wrapper .sm_item_right.size_sm').text(width + " x " + height);
    }

    $('.standardbanner_unit').on('change', function () {
        const unit = $(this).val();
        updateSizes(unit);
        updateInputsFromSelectedSize();
        cbb_calculate_price();
    });

    $('.backdrop_sizes').on('change', function () {
        updateInputsFromSelectedSize();
    });

    // On initial load
    updateSizes($('.standardbanner_unit').val());
    updateInputsFromSelectedSize();
    cbb_calculate_price();
});
     
 jQuery('select.backdrop_sizes').change(function() {

    var value = jQuery(this).val();
  //  // console.log("value::"+value);
    if(value=='custom'){
     // jQuery('.backdrop_size,.ccustomsize').hide();
     jQuery('.customsizefieldstandard').show();
     cbb_calculate_price();
   }
   else{
    
    jQuery('.customsizefieldstandard').hide();
       var i = jQuery('.backdrop_sizes option:selected').index();
      // // console.log("index::"+i);
       if(i==0){
            jQuery('.sizere').css({'border':'2px solid #109edc','z-index':'0'});
            jQuery('.sizere1').css({'border':'3px solid #ff0000','z-index':'1'});
            jQuery('.sizere1').show();
            jQuery('.sizere2,.sizere3,.sizere4,.sizere5,.sizere6,.sizere7').show();
         
        }
        
        else if(i==1){
            jQuery('.sizere').css({'border':'2px solid #109edc','z-index':'0'});
            jQuery('.sizere2').css({'border':'3px solid #ff0000','z-index':'1'});
             jQuery('.sizere2').show();
            jQuery('.sizere1,.sizere3,.sizere4,.sizere5,.sizere6,.sizere7').show();
        
        }
        if(i==2){
            jQuery('.sizere').css({'border':'2px solid #109edc','z-index':'0'});
            jQuery('.sizere3').css({'border':'3px solid #ff0000','z-index':'1'});
             jQuery('.sizere3').show();
            jQuery('.sizere1,.sizere2,.sizere4,.sizere5,.sizere6,.sizere7').show();
        }
        else if(i==3){
            jQuery('.sizere').css({'border':'2px solid #109edc','z-index':'0'});
            jQuery('.sizere4').css({'border':'3px solid #ff0000','z-index':'1'});
              jQuery('.sizere4').show();
            jQuery('.sizere1,.sizere2,.sizere3,.sizere5,.sizere6,.sizere7').show();
        }
        else if(i==4){
            jQuery('.sizere').css({'border':'2px solid #109edc','z-index':'0'});
            jQuery('.sizere5').css({'border':'3px solid #ff0000','z-index':'1'});
         jQuery('.sizere5').show();
            jQuery('.sizere1,.sizere2,.sizere3,.sizere4,.sizere6,.sizere7').show();
        }
        else if(i==5){
            jQuery('.sizere').css({'border':'2px solid #109edc','z-index':'0'});
            jQuery('.sizere6').css({'border':'3px solid #ff0000','z-index':'1'});
            jQuery('.sizere6').show();
            jQuery('.sizere1,.sizere2,.sizere3,.sizere4,.sizere5,.sizere7').show();
        }
        else if(i==6){
            jQuery('.sizere').css({'border':'2px solid #109edc','z-index':'0'});
            jQuery('.sizere7').css({'border':'3px solid #ff0000','z-index':'1'});
          jQuery('.sizere7').show();
            jQuery('.sizere1,.sizere2,.sizere3,.sizere4,.sizere5,.sizere6').show();
        }

    cbb_calculate_price();
  }
});

/*jQuery(document).ready(function() {
    jQuery('select.sf_size').change(function() {
        var value = jQuery(this).val();
        // console.log("Selected value::" + value);
        
        if (value === 'custom') {
            jQuery('.customsizefieldstandard').show();
            cbb_calculate_price();
        } else {
            var i = jQuery('.sf_size option:selected').index();
            if(i==0){
                jQuery('.sizere').css({'border':'2px solid #109edc','z-index':'0'});
                jQuery('.sizere4').css({'border':'3px solid #ff0000','z-index':'1'});
                jQuery('.sizere4').show();

            }else if(i==1){
                jQuery('.sizere').css({'border':'2px solid #109edc','z-index':'0'});
                jQuery('.sizere7').css({'border':'3px solid #ff0000','z-index':'1'});
                jQuery('.sizere7').show();

            }
            
            cbb_calculate_price();
        }
    });
});*/

jQuery(document).ready(function () {
    function checkSelectedOption() {
        var value = jQuery('select.sf_size').val();
        // console.log("Selected value::" + value);

        if (value === 'custom') {
            jQuery('.customsizefieldstandard').show();
            cbb_calculate_price();
        } else {
            var i = jQuery('.sf_size option:selected').index();
            
            // Reset previous borders
            jQuery('.sizere').css({'border':'2px solid #109edc','z-index':'0'});
            jQuery('.sizere4, .sizere7').hide(); // Hide both initially
            
            if (i == 0) {
                jQuery('.sizere4').css({'border':'3px solid #ff0000','z-index':'1'}).show();
            } else if (i == 1) {
                jQuery('.sizere7').css({'border':'3px solid #ff0000','z-index':'1'}).show();
            }

            cbb_calculate_price();
        }
    }

    // Run the function every 2 seconds
    // setInterval(checkSelectedOption, 2000);

    // Also trigger on change for immediate effect
    jQuery('select.sf_size').change(checkSelectedOption);
});

jQuery('.left_section.bk_size select.backdrop_sizes').change(function() {
    
    var multi_bk_size=jQuery(this).val();
    jQuery(".sm_bk_wrapper .sm_item_right.size_sm").text(multi_bk_size);
    cbb_calculate_price();
    
});
jQuery('select#select_del,select.backdrop_sizes ,select.tbcl_size,select.xs_size, select.sf_size').change(function() {cbb_calculate_price();});
 jQuery('.c_width ,.c_height,.c_widthstandard,.c_heightstandard,.qty_bk, .qty_tb, .qty_xs, .qty_sf,input#qty').keyup(function (e) { 

    cbb_calculate_price();
      //Some code
    });
jQuery("p#remove_xs,p#remove_tc,p#add_sf,input#saturday_day_dels,.xstandfram,p#remove_bk,p#remove_sf,p#remove_tc,p#add_sf,p#add_sf,p#add_xs,p#add_tc,p#add_bk,p#remove_bk").on('click', function(event) { 
    cbb_calculate_price();
    setTimeout(function() {
        cbb_calculate_price();
    }, 100);
});
  
     window.onload = function() {
    cbb_calculate_price();
    var delivery=jQuery("#select_del").val(); jQuery(".summary_right").text(delivery);  
  };
  cbb_calculate_price();
     function cbb_calculate_price() {
         // console.log("yes changed");
          var unit = jQuery('.standardbanner_unit').val();  
          var deliveryvar = jQuery('select#select_del').val();
    
    var unit = jQuery('select.standardbanner_unit').val(); //// console.log("bd unit select:"+unit);
   
      var cbb_qty = jQuery("#qty").val();

 var sizebdt = width+' x '+height; 
 // // console.log("size bd"+sizebdt);
   var total_pricebanner=0;
   var delivery_charges=100;
  if (deliveryvar == '24hoursdelivery') {
                  delivery_charges=122;
            } else if (deliveryvar == 'fortyeighthours') {
                 delivery_charges= 117;
            } else  if (deliveryvar == 'seventytwohours') {
               delivery_charges =115;
            } else  if (deliveryvar == 'standarddelivery') {
               delivery_charges = 100;
            }  
             // console.log("deliveryvar:"+deliveryvar);   
              if(jQuery("input#saturday_day_dels").prop('checked')){
      total_pricebanner=total_pricebanner+21.99;
      total_pricebanner=parseFloat(total_pricebanner);
  }
 total_pricebanner=parseFloat(total_pricebanner);
  // console.log("total_pricebanner::___:"+total_pricebanner);  
 if(jQuery("#BK_add_remove").prop('checked')){
   var sizeText = jQuery('.backdrop_sizes option:selected').text().trim();
    var size = "";
 var sizeb = jQuery('.backdrop_sizes').val();
 // console.log("sizeb:"+sizeb);
if (!sizeb || sizeb.trim() === '') {
  // console.log('Element with class backdrop_sizes not found or value is empty');
  // Handle the case: set default values, provide user feedback, etc.
  // For example:
  width = 300;
  height = 250;
  // Or display an error message to the user
} else {
  if (sizeb === 'custom') {
    var width = jQuery('input.c_widthstandard.samesizeclass').val();
    var height = jQuery('input.c_heightstandard.samesizeclass').val();
  } else {
       var arr = sizeText.split('x');
        if (arr.length === 2) {
            var width = arr[0].replace(/[^0-9.]/g, '').trim();
            var height = arr[1].replace(/[^0-9.]/g, '').trim();
            // console.log("yo width:"+width);
            // console.log("yo height:"+height);
            size = width + ' x ' + height;
        }
    // Handle predefined sizes
   /* var arr = sizeb.split('x');
    var height = arr[0].replace(/([a-zA-Z ])/g, "").replace(/[()]/g, '');
    var width = arr[1].replace(/([a-zA-Z ])/g, "").replace(/[()]/g, '');*/
  }
}

var bannerpricecheck = 0;
var backdropcheckprice = 0;
 var standbannerprice = 0; 
          var pricelimit11 = 0;
          var pricelimit12 = 10.99;
          var pricelimit21 = 11;
          var pricelimit22 = 24.99;
          var pricelimit31 = 25;
          var pricelimit32 = 40.99;
          var pricelimit41 = 41;
          var pricelimit42 = 60.99;
          var pricelimit51 = 61;
          var rate1 = 1.67;
          var rate2 = 1.62;
          var rate3 = 1.58;
          var rate4 = 1.53;
          var rate5 = 1.47;
         
          var tubesel = 0;
         var sizecus;
        
        var total_pricebackdrop=0;
    var pricelimit11 = 0;
    var pricelimit12 = 10.99;
    var pricelimit21 = 11;
    var pricelimit22 = 24.99;
    var pricelimit31 = 25;
    var pricelimit32 = 30.99;
    var pricelimit41 = 31;
    var pricelimit42 = 60.99;
    var pricelimit51 = 61;
    var rate1 = 1.67;
    var rate2 = 1.806;
    var rate3 = 1.706;
    var rate4 = 1.7416;
    var rate5 = 1.47;
    //// console.log("size with unit:"+width+'x'+height+unit);
    var size_eg = width + " x " + height;

//// console.log("size with unit: " + size_eg + unit);

jQuery(".sm_item_right.size_sm").text(size_eg + unit);
//  jQuery(".sm_item_right.size_sm").text(sizebdt+unit);   
jQuery('#bannersizebackdrop').val(sizebdt);
    if(unit=='cm'){
      var wfoot = width / 30.48;
      var hfoot = height / 30.48;
     /* // console.log('bd wfoot'+wfoot);
     // console.log('bd hfoot'+hfoot);
       // console.log('bd unit'+unit);*/
      var sqfootu1f = wfoot * hfoot;
    }else if(unit=='mm'){
     var wfoot = width * 0.00328084;
     var hfoot = height * 0.00328084;
     var sqfootu1f = wfoot * hfoot;
   }
   else if(unit=='m'){
     var wfoot = width * 3.280;
     var hfoot = height * 3.280;
     var sqfootu1f = wfoot * hfoot;
   }
   else if(unit=='inch'){
     var wfoot = width * 0.0833333;
     var hfoot = height * 0.0833333;
     var sqfootu1f = wfoot * hfoot;
   }
   else{
    var sqfootu1f = width * height;
  }
    var sqfootvalu1t = parseFloat(sqfootu1f);
    
    // // console.log("sqfootvalu1t"+sqfootvalu1t);
    
       var resrateu1;
               if (sqfootvalu1t >= pricelimit11 && sqfootvalu1t <= pricelimit12)
               {
                 resrateu1 = rate1;
               } else if (sqfootvalu1t >= pricelimit21 && sqfootvalu1t <= pricelimit22)
               {
                 resrateu1 = rate2;
               } else if (sqfootvalu1t >= pricelimit31 && sqfootvalu1t <= pricelimit32)
               {
                 resrateu1 = rate3;
               } else if (sqfootvalu1t >= pricelimit41 && sqfootvalu1t <= pricelimit42)
               {
                 resrateu1 = rate4;
               } else if (sqfootvalu1t >= pricelimit51)
               {
                 resrateu1 = rate5;
               }
            
               var qtydiscprice = sqfootvalu1t * resrateu1;
               var qtydisc = jQuery("#qty").val();
 
     /*// console.log('bd sqfootvalu1t :'+sqfootvalu1t);
     // console.log('bd resrateu1 :'+resrateu1);
       // console.log('bd qtydiscprice : '+qtydiscprice);*/
               
 if(qtydisc==2){
       var fif_dis_total_cal=qtydiscprice*15/100;
      qtydiscprice_fifteen=qtydiscprice-fif_dis_total_cal;
     jQuery('#fifteen_per_dis').text(qtydiscprice_fifteen.toFixed(2));
     var ten_dis_total_cal=qtydiscprice*10/100;

      qtydiscprice=qtydiscprice-ten_dis_total_cal;
      var print_ten_dis=qtydiscprice;
      jQuery('#ten_per_dis').text(print_ten_dis.toFixed(2));
 }else if(qtydisc>=3){
     jQuery('#fifteen_per_dis').text(qtydiscprice.toFixed(2));
     var ten_dis_total_cal=qtydiscprice*10/100;
     qtydiscprice_ten=qtydiscprice-ten_dis_total_cal;
     jQuery('#ten_per_dis').text(qtydiscprice_ten.toFixed(2));
     var fif_dis_total_cal=qtydiscprice*15/100;
     qtydiscprice=qtydiscprice-fif_dis_total_cal;
     jQuery('#fifteen_per_dis').text(qtydiscprice.toFixed(2));
 }else{
     
 var fif_dis_total_cal=qtydiscprice*15/100;
     qtydiscprice_fifteen=qtydiscprice-fif_dis_total_cal;
     jQuery('#fifteen_per_dis').text(qtydiscprice_fifteen.toFixed(2));

     var ten_dis_total_cal=qtydiscprice*10/100;
     qtydiscprice_ten=qtydiscprice-ten_dis_total_cal;
     jQuery('#ten_per_dis').text(qtydiscprice_ten.toFixed(2));
     
 }
            qtydiscprice = parseFloat(qtydiscprice);
        //  var qtydisc = jQuery("#qty").val();
        
            total_pricebackdrop = qtydiscprice;
          // console.log("deliveryvar:"+deliveryvar);
           // console.log("delivery_charges:"+delivery_charges);
            // console.log("total_pricebackdrop:"+total_pricebackdrop);
        delivery_charges=parseFloat(delivery_charges);
             total_pricebackdrop=parseFloat(total_pricebackdrop);
    total_pricebackdrop=total_pricebackdrop*delivery_charges/100;
    // console.log("after total_pricebackdrop:"+total_pricebackdrop);
        //  backdrop pricing sections
        //  document.getElementById("brt_total").value = total_price;
             jQuery('.backdropprice .priccal').text(total_pricebackdrop.toFixed(2));
             var total_pricebackdrop = total_pricebackdrop *qtydisc;
             total_pricebackdrop =parseFloat(total_pricebackdrop.toFixed(2))
               
        //  // console.log('bd total_pricebackdrop :'+total_pricebackdrop);
        //  // console.log('bd qty '+qtydisc);  
             jQuery('.backdroppricehidden').val(total_pricebackdrop);
             jQuery('.sm_bk_wrapper .sm_item_right.price_sm').text("£"+total_pricebackdrop);
              total_pricebanner=parseFloat(total_pricebackdrop);
        //  // console.log("bd total price:"+total_pricebackdrop);
}
 if(jQuery('#backdropselect').is(":checked")){
       var qty= jQuery('#backdrop_qty').val();
       if(qty==' '){
        alert('quntity can not be empty');
        return false;
       }
       /* if(jQuery('.backdrop_size').is(':visible')){
             var size = jQuery('.backdrop_size option:selected').text();
             if(size=='custom'){
             var width = jQuery('.c_width').val();
             var height = jQuery('.c_height').val();
             var size = width+' x '+height;
             }
             else{
               var arr = size.split('x');
               var height = arr[0].replace(/([a-zA-Z ])/g, "").replace(/[()]/g, '');
               var width = arr[1].replace(/([a-zA-Z ])/g, "").replace(/[()]/g, '');
                 var size = width+' x '+height;
             }
        }*/
        if (jQuery('.backdrop_sizes').is(':visible')) {
    var sizeText = jQuery('.backdrop_sizes option:selected').text().trim();
    var size = "";

    if (jQuery('.backdrop_sizes').val() === 'custom') {
        var width = jQuery('.c_widthstandard').val();
        var height = jQuery('.c_heightstandard').val();
        size = width + ' x ' + height;
    } else {
        var arr = sizeText.split('x');
        if (arr.length === 2) {
            var width = arr[0].replace(/[^0-9.]/g, '').trim();
            var height = arr[1].replace(/[^0-9.]/g, '').trim();
            // console.log("yo width:"+width);
            // console.log("yo height:"+height);
            size = width + ' x ' + height;
        }
    }
        }else{
             var width = jQuery('.c_width').val();
             var height = jQuery('.c_height').val();
             var size = width+' x '+height;
        }
            jQuery('#bannersizebackdrop').val(size);
   
      total_pricebackdrop=total_pricebackdrop*delivery_charges/100;
      total_pricebackdrop=parseFloat(total_pricebackdrop).toFixed(2)
   // console.log('final total price :'+total_pricebackdrop);
       newprice = parseFloat(total_pricebackdrop);
       total_pricebanner= parseFloat(total_pricebackdrop);
       jQuery(".sm_bk_wrapper .sm_item_right.price_sm").text("£"+newprice.toFixed(2));

    }
 if(jQuery("input#BK_multi_add_remove").prop('checked')){
   var qty_bk = jQuery(".qty_bk").val();
   jQuery(".sm_bk_wrapper .sm_item_right.qty_sm").text(qty_bk);
   var  price_one=0;
     BK_multi_size=jQuery("select.backdrop_sizes").val();
     jQuery(".sm_bk_wrapper .sm_item_right.size_sm").text(BK_multi_size);
     // console.log(BK_multi_size);
     if(BK_multi_size=="5FT x 4FT"){
         price_one=25.16;
     }
      if(BK_multi_size=="7.5FT x 6FT"){
         price_one=56.61;
     }
      if(BK_multi_size=="10FT x 8FT"){
         price_one=100.64;
     }
      if(BK_multi_size=="6.25FT x 2FT"){
         price_one=13.21;
     }
      if(BK_multi_size=="8FT x 2.5FT"){
         price_one=25.16;
     }
      if(BK_multi_size=="9.5FT x 3FT"){
         price_one=35.85;
     }
    var tbbk_prie=parseFloat(price_one);
     qty_bk=parseFloat(qty_bk);
     
   var  tbbk_final_price=tbbk_prie*qty_bk;
   tbbk_final_price=parseFloat(tbbk_final_price);
    tbbk_final_price=tbbk_final_price*delivery_charges/100;
    tbbk_final_price=parseFloat(tbbk_final_price).toFixed(2)
     jQuery(".sm_bk_wrapper .sm_item_right.price_sm").text("£"+tbbk_final_price);
      // console.log("tbbk_final_price:"+tbbk_final_price);
     var final_price=parseFloat(total_pricebanner)+parseFloat(tbbk_final_price);
     total_pricebanner=parseFloat(final_price);
      
 }   
 if(jQuery("input#tc_add_remove").prop('checked')){
   var qty_tb = jQuery(".qty_tb").val();
jQuery(".sm_tblcloth_wrapper .sm_item_right.qty_sm").text(qty_tb);
   var  price_one=0;
     tableclothsize=jQuery("select.tbcl_size").val();
     jQuery(".sm_tblcloth_wrapper .sm_item_right.size_sm").text(tableclothsize);
     if(tableclothsize=="5FT x 2FT"){
         price_one=30;
     }
    var tbbk_prie=parseFloat(price_one);
     qty_tb=parseFloat(qty_tb);
     // console.log("qty_tb:"+qty_tb);
     // console.log("tbbk_prie:"+tbbk_prie);
   var  tbbk_final_price=tbbk_prie*qty_tb;
   tbbk_final_price=parseFloat(tbbk_final_price);
    tbbk_final_price=tbbk_final_price*delivery_charges/100;
    tbbk_final_price=parseFloat(tbbk_final_price).toFixed(2)
     jQuery(".sm_tblcloth_wrapper .sm_item_right.price_sm").text("£"+tbbk_final_price);
      // console.log("tbbk_final_price:"+tbbk_final_price);
     var final_price=parseFloat(total_pricebanner)+parseFloat(tbbk_final_price);
     total_pricebanner=parseFloat(final_price);
      
 }
 if(jQuery("input#xs_add_remove").prop('checked')){
   var qty_xs = jQuery(".qty_xs").val();
   jQuery(".sm_xstand_wrapper .sm_item_right.qty_sm").text(qty_xs);
   var  price_one=0;
     xs_size=jQuery("select.xs_size").val();
     jQuery(".sm_xstand_wrapper .sm_item_right.size_sm").text(xs_size);
     if(xs_size=="2FT X 5FT"){
         price_one=23.98;
     }
     if(xs_size=="popupstand"){
         price_one=30;
     }
    var xs_prie=parseFloat(price_one);
     qty_xs=parseFloat(qty_xs);
      // console.log("xs_prie:"+xs_prie);
       // console.log("qty_xs:"+qty_xs);
   var  tbbk_final_price=xs_prie*qty_xs;
   tbbk_final_price=parseFloat(tbbk_final_price);
    tbbk_final_price=tbbk_final_price*delivery_charges/100;
    tbbk_final_price=parseFloat(tbbk_final_price).toFixed(2)
     jQuery(".sm_xstand_wrapper .sm_item_right.price_sm").text("£"+tbbk_final_price);
      // console.log("tbbk_final_price:"+tbbk_final_price);
     var final_price=parseFloat(total_pricebanner)+parseFloat(tbbk_final_price);
     total_pricebanner=parseFloat(final_price);
      
 }    
  if(jQuery("input#sf_add_remove").prop('checked')){
   
   var qty_sf = jQuery(".qty_sf").val();
   jQuery(".sm_selfiefram_wrapper .sm_item_right.qty_sm").text(qty_sf);
   var  price_one=0;
     sf_size=jQuery("select.sf_size").val();
     jQuery(".sm_selfiefram_wrapper .sm_item_right.size_sm").text(sf_size);
     if(sf_size=="29 in X 40 in"){
         price_one=45;
     }
     if(sf_size=="21 in X 29 in"){
         price_one=30;
     }
    var xs_prie=parseFloat(price_one);
     qty_sf=parseFloat(qty_sf);
     // console.log("qty_sf:"+qty_sf);
     // console.log("xs_prie:"+xs_prie);
   var  tbbk_final_price=xs_prie*qty_sf;
   tbbk_final_price=parseFloat(tbbk_final_price);
    tbbk_final_price=tbbk_final_price*delivery_charges/100;
    tbbk_final_price=parseFloat(tbbk_final_price).toFixed(2)
     jQuery(".sm_selfiefram_wrapper .sm_item_right.price_sm").text("£"+tbbk_final_price);
      // console.log("tbbk_final_price:"+tbbk_final_price);
     var final_price=parseFloat(total_pricebanner)+parseFloat(tbbk_final_price);
     total_pricebanner=parseFloat(final_price);
      
 }   
 
 // console.log("total_pricebanner:"+total_pricebanner);
                total_pricebanner = parseFloat(total_pricebanner.toFixed(2));

  
 
     jQuery(".totalpricevalue").text("£"+total_pricebanner);
     jQuery("#ttp_cbb").val(total_pricebanner);
     // console.log("total_pricebanner_final:"+total_pricebanner);
     }
 });     

  $(document).ready(function() {
      /*  // Initialize positions
        updateArrowPositions();

        // Make the image draggable
        $("#draggableImage").draggable({
            containment: "#borderContainer",
            drag: function() {
                updateArrowPositions();
            },
            stop: function(event, ui) {
                $(".action-icon.drag").css({
                    top: ui.position.top + 10,
                    left: ui.position.left + 10
                });
            }
        });

        // Make the image resizable
        $("#draggableImage").resizable({
            containment: "#borderContainer",
            aspectRatio: true,
            handles: 'n, e, s, w, ne, se, sw, nw',
            resize: function(event, ui) {
                updateArrowPositions();
            }
        }).on('click', '.ui-resizable-handle.ui-resizable-se.ui-icon.ui-icon-gripsmall-diagonal-se', function(event) {
            event.stopPropagation(); // Prevent propagation to parent resizable element
            $("#draggableImage").draggable("option", "disabled", false).trigger("mousedown");
        });

        // Make the image rotatable
        $(".action-icon.rotate").click(function() {
            var currentRotation = ($("#draggableImage").data("rotation") || 0) + 90;
            $("#draggableImage").css("transform", "rotate(" + currentRotation + "deg)").data("rotation", currentRotation);
            updateArrowPositions();
        });

        // Make the image draggable with the drag icon
        $(".action-icon.drag").draggable({
            handle: "#draggableImage",
            containment: "#borderContainer",
            drag: function() {
                updateArrowPositions();
            }
        });*/
    });

   /* function updateArrowPositions() {
        var imagePosition = $("#draggableImage").position();
        var imageWidth = $("#draggableImage").width();
        var imageHeight = $("#draggableImage").height();

        $(".resize-arrow.n").css({
            top: imagePosition.top - 10,
            left: imagePosition.left + imageWidth / 2 - 10
        });

        $(".resize-arrow.s").css({
            top: imagePosition.top + imageHeight - 10,
            left: imagePosition.left + imageWidth / 2 - 10
        });

        $(".resize-arrow.e").css({
            top: imagePosition.top + imageHeight / 2 - 10,
            left: imagePosition.left + imageWidth - 10
        });

        $(".resize-arrow.w").css({
            top: imagePosition.top + imageHeight / 2 - 10,
            left: imagePosition.left - 10
        });

        $(".action-icon.drag").css({
            top: imagePosition.top + 10,
            left: imagePosition.left + 10
        });

        $(".action-icon.rotate").css({
            top: imagePosition.top + 10,
            left: imagePosition.left + imageWidth - 10
        });
    }*/;
// source --> https://custombirthdaybanners.co.uk/wp-content/plugins/recaptcha-woo/js/rcfwc.js?ver=1.0 
/* Woo Checkout */
jQuery( document ).ready(function() {
    jQuery( document.body ).on( 'update_checkout updated_checkout applied_coupon_in_checkout removed_coupon_in_checkout checkout_error', function() {
        if(jQuery('.g-recaptcha').length > 0) {
            if (typeof grecaptcha !== "undefined" && typeof grecaptcha.reset === "function") {
                var count = 0;
                jQuery(".g-recaptcha").each(function () {
                    grecaptcha.reset(count);
                    count++;
                });
            }
        }
    });
});

/* Woo Checkout Block */
(function() {
    document.addEventListener('DOMContentLoaded', function() {
        // Global callbacks used by auto-rendered v2 widgets in the block checkout
        window.rcfwcRecaptchaCallback = function(token) {
            try {
                if (typeof wp !== 'undefined' && wp.data) {
                    wp.data.dispatch('wc/store/checkout').__internalSetExtensionData('rcfwc', { token: token });
                }
            } catch (e) {}
        };
        window.rcfwcRecaptchaExpired = function() {
            try {
                if (typeof wp !== 'undefined' && wp.data) {
                    wp.data.dispatch('wc/store/checkout').__internalSetExtensionData('rcfwc', { token: '' });
                }
            } catch (e) {}
        };

        // Try to render explicitly if needed once the blocks mount/update
        if (typeof wp !== 'undefined' && wp.data) {
            var unsubscribe = wp.data.subscribe(function() {
                var el = document.getElementById('g-recaptcha-woo-checkout');
                if (!el) {
                    return;
                }
                // If already rendered (has inner HTML/iframe), stop listening
                if (el.innerHTML && el.innerHTML.trim() !== '') {
                    unsubscribe && unsubscribe();
                    return;
                }
                // Render explicitly with callbacks if the API is ready
                if (typeof grecaptcha !== 'undefined' && typeof grecaptcha.render === 'function') {
                    try {
                        grecaptcha.render(el, {
                            sitekey: el.getAttribute('data-sitekey'),
                            callback: rcfwcRecaptchaCallback,
                            'expired-callback': rcfwcRecaptchaExpired
                        });
                    } catch (e) {
                        // Ignore if already rendered or API not ready
                    }
                    unsubscribe && unsubscribe();
                }
            }, 'wc/store/cart');
        }
    });
})();