/home/awneajlw/work.codestechvista.com/wp-content/themes/ignavo/includes/woocommerce/tab-ajax.php
<?php
/*************************************************
## Tab View
*************************************************/
add_action( 'wp_ajax_nopriv_tab_view', 'ignavo_tab_view_callback' );
add_action( 'wp_ajax_tab_view', 'ignavo_tab_view_callback' );
function ignavo_tab_view_callback() {
global $product;
global $woocommerce;
$catid = intval( $_POST['catid'] );
$items = intval( $_POST['items'] );
$mobile = intval( $_POST['mobile'] );
$tablet = intval( $_POST['tablet'] );
$speed = intval( $_POST['speed'] );
$post_count = intval( $_POST['post_count'] );
$dots = $_POST['dots'];
$arrows = $_POST['arrows'];
$autoplay = $_POST['autoplay'];
$autospeed = intval( $_POST['autospeed'] );
$producttype = $_POST['producttype'];
$productclass = $_POST['productclass'];
$best_selling = $_POST['best_selling'];
$featured = $_POST['featured'];
$on_sale = $_POST['on_sale'];
$stockprogressbar = $_POST['stockprogressbar'];
$stockstatus = $_POST['stockstatus'];
$shippingclass = $_POST['shippingclass'];
$countdown = $_POST['countdown'];
$product_sku = $_POST['product_sku'];
$product_brands = $_POST['product_brands'];
$productattributes = $_POST['productattributes'];
$output = '';
$output .= '<div class="site-slider-wrapper relative">';
$output .= '<div
id="'.esc_attr($catid).'"
class="'.esc_attr($productclass).'"
data-speed="'.esc_attr($speed).'"
data-items="'.esc_attr($items).'"
data-items-tablet="'.esc_attr($tablet).'"
data-items-mobile="'.esc_attr($mobile).'"
data-autoplay="'.esc_attr($autoplay).'"
data-autoplay-speed="'.esc_attr($auto_speed).'""
data-producttype="'.esc_attr($producttype).'"
data-perpage="'.esc_attr($post_count).'"
data-best_selling="'.esc_attr($best_selling).'"
data-featured="'.esc_attr($featured).'"
data-onsale="'.esc_attr($on_sale).'"
data-stockprogressbar="'.esc_attr($stockprogressbar).'"
data-countdown="'.esc_attr($countdown).'"
data-stockstatus="'.esc_attr($stockstatus).'"
data-shippingclass="'.esc_attr($shippingclass).'"
data-product_sku="'.esc_attr($product_sku).'"
data-product_brands="'.esc_attr($product_brands).'"
data-productattributes="'.esc_attr($productattributes).'"
data-margin="30"
data-margin-tablet="20"
data-margin-mobile="10"
data-slides-per-group="1"
data-slides-per-group-tablet="1"
data-slides-per-group-mobile="1"
data-direction="horizontal"
data-loop="false"
data-dots-click="true"
data-simulate-touch="true"
data-mousewheel="false"
>';
$output .= '<div class="slider-preloader">';
$output .= '<div class="preloader"></div>';
$output .= '</div>';
$output .= '<div class="swiper-wrapper">';
$args = array(
'post_type' => 'product',
'posts_per_page' => $post_count,
'order' => 'DESC',
'orderby' => 'date',
'post_status' => 'publish',
);
$args['tax_query'][] = array(
'taxonomy' => 'product_cat',
'field' => 'term_id',
'terms' => $catid,
);
if($best_selling == 'true'){
$args['meta_key'] = 'total_sales';
$args['orderby'] = 'meta_value_num';
}
if($featured == 'true'){
$args['tax_query'] = array( array(
'taxonomy' => 'product_visibility',
'field' => 'name',
'terms' => array( 'featured' ),
'operator' => 'IN',
) );
}
if($on_sale == 'true'){
$args['meta_key'] = '_sale_price';
$args['meta_value'] = array('');
$args['meta_compare'] = 'NOT IN';
}
query_posts( $loop );
$loop = new \WP_Query( $args );
if ( $loop->have_posts() ) {
while ( $loop->have_posts() ) : $loop->the_post();
global $product;
global $post;
global $woocommerce;
$output .= '<div class="swiper-slide"> ';
$output .= '<div class="'.esc_attr( implode( ' ', wc_get_product_class( '', $product->get_id()))).'"> ';
if($producttype == 'type4'){
$output .= ignavo_product_type4($stockprogressbar, $stockstatus, $shippingclass, $countdown, $product_sku, $product_brands, $productattributes);
} elseif($producttype == 'type3'){
$output .= ignavo_product_type3($stockprogressbar, $stockstatus, $shippingclass, $countdown, $product_sku, $product_brands, $productattributes);
} elseif($producttype == 'type2'){
$output .= ignavo_product_type2($stockprogressbar, $stockstatus, $shippingclass, $countdown, $product_sku, $product_brands, $productattributes);
} else {
$output .= ignavo_product_type1($stockprogressbar, $stockstatus, $shippingclass, $countdown, $product_sku, $product_brands, $productattributes);
}
$output .= '</div>';
$output .= '</div>';
endwhile;
}
wp_reset_postdata();
$output .= '</div>';
$output .= '</div>';
$output .= '<div class="site-slider-controls">';
$output .= '<div class="swiper-pagination" style="--slider-dots-offset: 24px"></div>';
$output .= '<div class="swiper-button-prev half on-hover" style=" --swiper-navigation-boxed: 1; --swiper-navigation-size: 48px; --swiper-navigation-font-size: 16px; --swiper-navigation-weight: 600; --swiper-navigation-background: #fff; --swiper-navigation-hover-background: #fff; --swiper-navigation-border: rgb(var(--colors-gray-200)); --swiper-navigation-hover-border: rgb(var(--colors-gray-300)); --swiper-navigation-radius: 50%; --swiper-navigation-shadow: var(--shadow-xs);"></div>';
$output .= '<div class="swiper-button-next half on-hover" style=" --swiper-navigation-boxed: 1; --swiper-navigation-size: 48px; --swiper-navigation-font-size: 16px; --swiper-navigation-weight: 600; --swiper-navigation-background: #fff; --swiper-navigation-hover-background: #fff; --swiper-navigation-border: rgb(var(--colors-gray-200)); --swiper-navigation-hover-border: rgb(var(--colors-gray-300)); --swiper-navigation-radius: 50%; --swiper-navigation-shadow: var(--shadow-xs);"></div>';
$output .= '</div>';
$output_escaped = $output;
echo $output_escaped;
wp_die();
}