/home/sylamedg/www/wp-content/themes/siara-corporate-business/inc/woocommerce.php
<?php
/**
 * WooCommerce Compatibility File
 *
 * @link https://woocommerce.com/
 *
 * @package Siaracorporatebusiness
 */

if ( ! function_exists( 'siaracorporatebusiness_woocommerce_setup' ) ) {
	/**
	 * WooCommerce setup function.
	 *
	 * @link https://docs.woocommerce.com/document/third-party-custom-theme-compatibility/
	 * @link https://github.com/woocommerce/woocommerce/wiki/Enabling-product-gallery-features-(zoom,-swipe,-lightbox)
	 * @link https://github.com/woocommerce/woocommerce/wiki/Declaring-WooCommerce-support-in-themes
	 *
	 * @return void
	 */
	function siaracorporatebusiness_woocommerce_setup() {
		add_theme_support( 'woocommerce' );
		add_theme_support( 'wc-product-gallery-zoom' );
		add_theme_support( 'wc-product-gallery-lightbox' );
		add_theme_support( 'wc-product-gallery-slider' );
	}
}
add_action( 'after_setup_theme', 'siaracorporatebusiness_woocommerce_setup' );

if ( ! function_exists( 'siaracorporatebusiness_woocommerce_scripts' ) ) {
	/**
	 * WooCommerce specific scripts & stylesheets.
	 *
	 * @return void
	 */
	function siaracorporatebusiness_woocommerce_scripts() {

		$min = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';

		wp_enqueue_style( 'siaracorporatebusiness-woocommerce-style', get_template_directory_uri() . '/assets/custom/css/woocommerce' . $min . '.css', array(), _S_VERSION );
		wp_style_add_data( 'siaracorporatebusiness-woocommerce-style', 'rtl', 'replace' );
		wp_add_inline_style( 'siaracorporatebusiness-woocommerce-style', siaracorporatebusiness_get_woo_inline_css() );

		$font_path   = WC()->plugin_url() . '/assets/fonts/';
		$inline_font = '@font-face {
				font-family: "star";
				src: url("' . $font_path . 'star.eot");
				src: url("' . $font_path . 'star.eot?#iefix") format("embedded-opentype"),
					url("' . $font_path . 'star.woff") format("woff"),
					url("' . $font_path . 'star.ttf") format("truetype"),
					url("' . $font_path . 'star.svg#star") format("svg");
				font-weight: normal;
				font-style: normal;
			}';

		wp_add_inline_style( 'siaracorporatebusiness-woocommerce-style', $inline_font );
	}
}
add_action( 'wp_enqueue_scripts', 'siaracorporatebusiness_woocommerce_scripts' );

/**
 * Add 'woocommerce-active' class to the body tag.
 *
 * @param  array $classes CSS classes applied to the body tag.
 * @return array $classes modified to include 'woocommerce-active' class.
 */
function siaracorporatebusiness_woocommerce_active_body_class( $classes ) {

	$classes[] = 'woocommerce-active';

	if ( is_woocommerce() || is_checkout() || is_cart() || is_account_page() ) {
		$classes[] = 'siaracorporatebusiness-active-woocommerce-page';
	}

	return $classes;
}
add_filter( 'body_class', 'siaracorporatebusiness_woocommerce_active_body_class' );

// Remove default wrappers.
remove_action( 'woocommerce_before_main_content', 'woocommerce_output_content_wrapper', 10 );
remove_action( 'woocommerce_after_main_content', 'woocommerce_output_content_wrapper_end', 10 );

// Add new wrappers for the primary section - Note ** Sidebar not included.
add_action( 'woocommerce_before_main_content', 'siaracorporatebusiness_woocommerce_content_wrapper_start', 10 );
add_action( 'woocommerce_after_main_content', 'siaracorporatebusiness_woocommerce_content_wrapper_end', 10 );

if ( ! function_exists( 'siaracorporatebusiness_woocommerce_content_wrapper_start' ) ) {
	/**
	 * Add a opening wrapper.
	 */
	function siaracorporatebusiness_woocommerce_content_wrapper_start() {
		echo '<div id="primary" class="content-area">';
	}
}

if ( ! function_exists( 'siaracorporatebusiness_woocommerce_content_wrapper_end' ) ) {
	/**
	 * Add a closing wrapper.
	 */
	function siaracorporatebusiness_woocommerce_content_wrapper_end() {
		echo '</div><!-- #primary -->';
	}
}

// Add main wrapper to wrap the whole content and sidebar too.
add_action( 'woocommerce_before_main_content', 'siaracorporatebusiness_woocommerce_whole_wrapper_start', 5 );
// Close the wrapper after sidebar.
add_action( 'woocommerce_sidebar', 'siaracorporatebusiness_woocommerce_whole_wrapper_end', 50 );

if ( ! function_exists( 'siaracorporatebusiness_woocommerce_whole_wrapper_start' ) ) {
	/**
	 * Add a opening wrapper.
	 */
	function siaracorporatebusiness_woocommerce_whole_wrapper_start() {
		echo '<main id="site-content" role="main" class="wrapper wide-max-width">';
	}
}

if ( ! function_exists( 'siaracorporatebusiness_woocommerce_whole_wrapper_end' ) ) {
	/**
	 * Add a closing wrapper.
	 */
	function siaracorporatebusiness_woocommerce_whole_wrapper_end() {
		echo '</main><!-- #site-content -->';
	}
}

// Open a wrapper to the content of the product below the image in product listings.
add_action( 'woocommerce_shop_loop_item_title', 'siaracorporatebusiness_product_details_wrapper_start', 5 );
// Close the wrapper.
add_action( 'woocommerce_after_shop_loop_item', 'siaracorporatebusiness_product_details_wrapper_end', 15 );

if ( ! function_exists( 'siaracorporatebusiness_product_details_wrapper_start' ) ) {
	/**
	 * Add a opening wrapper.
	 */
	function siaracorporatebusiness_product_details_wrapper_start() {
		echo '<div class="siaracorporatebusiness-archive-products-details">';
	}
}

if ( ! function_exists( 'siaracorporatebusiness_product_details_wrapper_end' ) ) {
	/**
	 * Add a closing wrapper.
	 */
	function siaracorporatebusiness_product_details_wrapper_end() {
		echo '</div><!-- siaracorporatebusiness-archive-products-details -->';
	}
}

/*
Default image size in gallery thumbnail
*------------------------------------------*/
add_filter(
	'woocommerce_gallery_thumbnail_size',
	function( $size ) {
		return 'woocommerce_thumbnail';
	}
);


if ( ! function_exists( 'siaracorporatebusiness_woocommerce_cart_link_fragment' ) ) {
	/**
	 * Cart Fragments.
	 *
	 * Ensure cart contents update when products are added to the cart via AJAX.
	 *
	 * @param array $fragments Fragments to refresh via AJAX.
	 * @return array Fragments to refresh via AJAX.
	 */
	function siaracorporatebusiness_woocommerce_cart_link_fragment( $fragments ) {
		ob_start();
		siaracorporatebusiness_woocommerce_cart_link();
		$fragments['a.cart-contents'] = ob_get_clean();

		return $fragments;
	}
}
add_filter( 'woocommerce_add_to_cart_fragments', 'siaracorporatebusiness_woocommerce_cart_link_fragment' );

if ( ! function_exists( 'siaracorporatebusiness_woocommerce_cart_link' ) ) {
	/**
	 * Cart Link.
	 *
	 * Displayed a link to the cart including the number of items present and the cart total.
	 *
	 * @return void
	 */
	function siaracorporatebusiness_woocommerce_cart_link() {
		?>
		<a class="cart-contents" href="javascript:void(0)">
			<?php siaracorporatebusiness_the_theme_svg( 'cart' ); ?>
			<span class="siaracorporatebusiness-woo-counter"><?php echo wp_kses_data( WC()->cart->get_cart_contents_count() ); ?></span>
		</a>
		<?php
	}
}

if ( ! function_exists( 'siaracorporatebusiness_woocommerce_header_cart' ) ) {
	/**
	 * Display Header Cart.
	 *
	 * @return void
	 */
	function siaracorporatebusiness_woocommerce_header_cart() {
		if ( is_cart() ) {
			$class = 'current-menu-item';
		} else {
			$class = '';
		}
		?>
		<ul id="site-header-cart" class="siaracorporatebusiness-cart site-header-cart reset-list-style" aria-hidden="true">
			<li class="<?php echo esc_attr( $class ); ?>">
				<?php siaracorporatebusiness_woocommerce_cart_link(); ?>
			</li>
			<li>
				<?php
				$instance = array(
					'title' => '',
				);

				the_widget( 'WC_Widget_Cart', $instance );
				?>
			</li>
		</ul>
		<?php
	}
}
/*
Add product added to cart message to fragment data
*/
if ( ! function_exists( 'siaracorporatebusiness_add_to_cart_fragments' ) ) {
	function siaracorporatebusiness_add_to_cart_fragments( $data ) {
		$product       = isset( $_REQUEST['product_id'] ) ? wc_get_product( $_REQUEST['product_id'] ) : false;
		$product_image = $product_title = '';

		if ( $product ) {
			$product_image = $product->get_image();
			$product_title = sprintf( __( '%s has been added to your cart.', 'siara-corporate-business' ), '<strong>' . $product->get_title() . '</strong>' );
		} else {
			$product_title = __( 'Product Added to cart', 'siara-corporate-business' );
		}

		ob_start();
		?>
		<div class="siaracorporatebusiness-product-notification-wrapper">
			<div class="header">
				<h3><?php esc_html_e( 'Cart Items', 'siara-corporate-business' ); ?></h3>
			</div>
			<div class="details">
				<div class="image">
					<?php echo $product_image; ?>
				</div>
				<div class="title">
					<?php echo $product_title; ?>
				</div>
			</div>
			<div class="view-cart">
				<a href="<?php echo esc_url( get_permalink( wc_get_page_id( 'cart' ) ) ); ?>">
					<?php esc_html_e( 'View Cart', 'siara-corporate-business' ); ?>
				</a>
			</div>
		</div>

		<?php
		$data['siaracorporatebusiness_added_to_cart_msg'] = ob_get_clean();

		return $data;
	}
}
// add_filter( 'woocommerce_add_to_cart_fragments', 'siaracorporatebusiness_add_to_cart_fragments' );

// Enable/Disable breadcrumb.
if ( ! function_exists( 'siaracorporatebusiness_woo_breadcrumb' ) ) {
	function siaracorporatebusiness_woo_breadcrumb() {
		if ( is_shop() || is_product_category() ) {
			if ( get_theme_mod( 'shop_page_disable_breadcrumb' ) ) {
				remove_action( 'woocommerce_before_main_content', 'woocommerce_breadcrumb', 20, 0 );
			}
		}
		if ( is_product() ) {
			if ( get_theme_mod( 'product_page_disable_breadcrumb' ) ) {
				remove_action( 'woocommerce_before_main_content', 'woocommerce_breadcrumb', 20, 0 );
			}
		}
	}
}
add_action( 'wp', 'siaracorporatebusiness_woo_breadcrumb' );