<?php
/**
 * Subscription Product Add to Cart
 *
 * @author  Prospress
 * @package WooCommerce-Subscriptions/Templates
 * @version 2.0.18
 */

if ( ! defined( 'WFACP_TEMPLATE_DIR' ) ) {
	return '';
}

global $product, $wfacp_qv_data;

$page_settings = WFACP_Common::get_page_settings( WFACP_Common::get_id() );
if ( wc_string_to_bool( $page_settings['hide_quantity_switcher'] ) ) {
	return;
}

// Bail if the product isn't purchasable and that's not because it's limited
if ( ! $product->is_purchasable() && ( ! is_user_logged_in() || 'no' == wcs_get_product_limitation( $product ) ) ) {
	return;
}

$user_id = get_current_user_id();

if ( wcs_is_woocommerce_pre( '3.0' ) ) :
	$availability = $product->get_availability();
	if ( $availability['availability'] ) :
		echo wp_kses_post( apply_filters( 'woocommerce_stock_html', '<p class="stock ' . $availability['class'] . '">' . $availability['availability'] . '</p>', $availability['availability'] ) );
	endif;
else :
	echo wp_kses_post( wc_get_stock_html( $product ) );
endif;

$btn_name = esc_html( $product->single_add_to_cart_text() );
if ( isset( $wfacp_qv_data['cart_key'] ) && '' != $wfacp_qv_data['cart_key'] ) {
	$btn_name = __( 'Update', 'woocommerce' );
}

if ( ! $product->is_in_stock() ) : ?>
    <link itemprop="availability" href="http://schema.org/OutOfStock">
<?php else : ?>

    <link itemprop="availability" href="http://schema.org/InStock">

	<?php do_action( 'woocommerce_before_add_to_cart_form' ); ?>

	<?php if ( ! $product->is_purchasable() && 0 != $user_id && 'no' != wcs_get_product_limitation( $product ) && wcs_is_product_limited_for_user( $product, $user_id ) ) : ?>
		<?php $resubscribe_link = wcs_get_users_resubscribe_link_for_product( $product->get_id() ); ?>
		<?php if ( ! empty( $resubscribe_link ) && 'any' == wcs_get_product_limitation( $product ) && wcs_user_has_subscription( $user_id, $product->get_id(), wcs_get_product_limitation( $product ) ) && ! wcs_user_has_subscription( $user_id, $product->get_id(), 'active' ) && ! wcs_user_has_subscription( $user_id, $product->get_id(), 'on-hold' ) ) : // customer has an inactive subscription, maybe offer the renewal button ?>
            <a href="<?php echo esc_url( $resubscribe_link ); ?>" class="button product-resubscribe-link"><?php esc_html_e( 'Resubscribe', 'woocommerce-subscriptions' ); ?></a>
		<?php else : ?>
            <p class="limited-subscription-notice notice"><?php esc_html_e( 'You have an active subscription to this product already.', 'woocommerce-subscriptions' ); ?></p>
		<?php endif; ?>
	<?php else : ?>
        <form class="cart" method="post" enctype='multipart/form-data'>

			<?php do_action( 'woocommerce_before_add_to_cart_button' ); ?>

            <input type="hidden" name="add-to-cart" value="<?php echo esc_attr( $product->get_id() ); ?>"/>

			<?php
			if ( ! $product->is_sold_individually() ) {
				woocommerce_quantity_input( array(
					'min_value' => apply_filters( 'woocommerce_quantity_input_min', 1, $product ),
					'max_value' => apply_filters( 'woocommerce_quantity_input_max', $product->backorders_allowed() ? '' : $product->get_stock_quantity(), $product ),
				) );
			}
			?>

            <button type="button" name="wfacp_update" class="wfacp_single_add_to_cart_button button alt" id="wfacp_update_item"><?php echo $btn_name; ?></button>

			<?php do_action( 'woocommerce_after_add_to_cart_button' ); ?>

        </form>
	<?php endif; ?>

	<?php do_action( 'woocommerce_after_add_to_cart_form' ); ?>

<?php endif; ?>
