/
var
/
www
/
barefootlaw.org
/
wp-content
/
themes
/
barefoot
/
inc
/
woocommerce
/
functions
/
Upload File
HOME
<?php /** * Init ob_start buffers for WooCommerce Templates * * @package Aisconverse * @subpackage Covercase * @since Covercase 1.0 */ if ( ! function_exists( 'covercase_woo_before_mini_cart' ) ) { /** * Start Filtrate WooCommerce Widget Mini Cart * * @since Covercase 1.0 */ function covercase_woo_before_mini_cart() { ob_start(); } add_action( 'woocommerce_before_mini_cart', 'covercase_woo_before_mini_cart' ); } if ( ! function_exists( 'covercase_woo_after_mini_cart' ) ) { /** * End Filtrate WooCommerce Widget Mini Cart * * @since Covercase 1.0 */ function covercase_woo_after_mini_cart() { ob_end_clean(); if ( ! WC()->cart->is_empty() ) : ?> <ul class="woocommerce-mini-cart cart_list product_list_widget"> <?php do_action( 'woocommerce_before_mini_cart_contents' ); foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) { $_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key ); $product_id = apply_filters( 'woocommerce_cart_item_product_id', $cart_item['product_id'], $cart_item, $cart_item_key ); if ( $_product && $_product->exists() && $cart_item['quantity'] > 0 && apply_filters( 'woocommerce_widget_cart_item_visible', true, $cart_item, $cart_item_key ) ) { $product_name = apply_filters( 'woocommerce_cart_item_name', $_product->get_name(), $cart_item, $cart_item_key ); $thumbnail = apply_filters( 'woocommerce_cart_item_thumbnail', $_product->get_image(), $cart_item, $cart_item_key ); $product_price = apply_filters( 'woocommerce_cart_item_price', WC()->cart->get_product_price( $_product ), $cart_item, $cart_item_key ); $product_permalink = apply_filters( 'woocommerce_cart_item_permalink', $_product->is_visible() ? $_product->get_permalink( $cart_item ) : '', $cart_item, $cart_item_key ); ?> <li class="woocommerce-mini-cart-item <?php echo esc_attr( apply_filters( 'woocommerce_mini_cart_item_class', 'mini_cart_item', $cart_item, $cart_item_key ) ); ?>"> <?php echo apply_filters( 'woocommerce_cart_item_remove_link', sprintf( '<a href="%s" class="remove remove_from_cart_button" aria-label="%s" data-product_id="%s" data-cart_item_key="%s" data-product_sku="%s"><i class="cov-pm-close" aria-hidden="true"></i></a>', esc_url( wc_get_cart_remove_url( $cart_item_key ) ), __( 'Remove this item', 'covercase' ), esc_attr( $product_id ), esc_attr( $cart_item_key ), esc_attr( $_product->get_sku() ) ), $cart_item_key ); ?> <div class="clearfix"> <div class="widget_shopping_cart_thumb"> <?php if ( ! $_product->is_visible() ) : ?> <?php echo str_replace( array( 'http:', 'https:' ), '', $thumbnail ); ?> <?php else : ?> <a href="<?php echo esc_url( $product_permalink ); ?>"> <?php echo str_replace( array( 'http:', 'https:' ), '', $thumbnail ); ?> </a> <?php endif; ?> </div> <div class="widget_shopping_cart_desc"> <a href="<?php echo esc_url( $product_permalink ); ?>"><?php echo esc_html( $product_name ); ?></a> <?php echo wc_get_formatted_cart_item_data( $cart_item ); ?> <?php echo apply_filters( 'woocommerce_widget_cart_item_quantity', '<span class="quantity">' . sprintf( '%s × %s', $cart_item['quantity'], $product_price ) . '</span>', $cart_item, $cart_item_key ); ?> </div> </div> </li> <?php } } do_action( 'woocommerce_mini_cart_contents' ); ?> </ul> <p class="woocommerce-mini-cart__total total"><strong><?php _e( 'Subtotal:', 'covercase' ); ?></strong><?php echo WC()->cart->get_cart_subtotal(); ?></p> <?php do_action( 'woocommerce_widget_shopping_cart_before_buttons' ); ?> <p class="woocommerce-mini-cart__buttons buttons"><?php do_action( 'woocommerce_widget_shopping_cart_buttons' ); ?></p> <?php else : ?> <p class="woocommerce-mini-cart__empty-message"><?php _e( 'No products in the cart.', 'covercase' ); ?></p> <div class="quick-cart-section"> <p class="woocommerce-mini-cart__empty-message"><?php _e( 'Your shopping cart is currently empty. Please, continue shopping by returning to the shop. ', 'covercase' ); ?></p> <p class="woocommerce-mini-cart__total total"><strong><?php _e( 'Subtotal:', 'covercase' ); ?></strong><?php echo WC()->cart->get_cart_subtotal(); ?></p> </div> <?php endif; } add_action( 'woocommerce_after_mini_cart', 'covercase_woo_after_mini_cart' ); } if ( ! function_exists( 'covercase_woo_widget_product_item_start' ) ) { /** * Start Filtrate WooCommerce Content Product Widget Item * * @since Covercase 1.0 */ function covercase_woo_widget_product_item_start() { ob_start(); } add_action( 'woocommerce_widget_product_item_start', 'covercase_woo_widget_product_item_start' ); } if ( ! function_exists( 'covercase_woo_widget_product_item_end' ) ) { /** * End Filtrate WooCommerce Content Product Widget Item * * @since Covercase 1.0 */ function covercase_woo_widget_product_item_end() { ob_end_clean(); global $product; $show_rating = true; ?> <div class="clearfix"> <div class="widget_shopping_cart_thumb"> <a href="<?php echo esc_url( $product->get_permalink() ); ?>"> <?php printf('%s', $product->get_image()); ?> </a> </div> <div class="widget_shopping_cart_desc"> <a href="<?php echo esc_url( $product->get_permalink() ); ?>"><?php printf('%s', $product->get_name() ); ?></a> <?php if ( ! empty( $show_rating ) ) : ?> <?php echo wc_get_rating_html( $product->get_average_rating() ); ?> <?php endif; ?> <?php printf('%s', $product->get_price_html()); ?> </div> </div> <?php } add_action( 'woocommerce_widget_product_item_end', 'covercase_woo_widget_product_item_end' ); } if ( ! function_exists( 'covercase_woo_before_cart' ) ) { /** * Start Filtrate WooCommerce Table Cart Page * * @since Covercase 1.0 */ function covercase_woo_before_cart() { ob_start(); } add_action( 'woocommerce_before_cart', 'covercase_woo_before_cart' ); } // Removed cross sell products remove_action( 'woocommerce_cart_collaterals', 'woocommerce_cross_sell_display' ); // Move `Proceed to checkout` on cart page remove_action( 'woocommerce_proceed_to_checkout', 'woocommerce_button_proceed_to_checkout', 20 ); add_action( 'woocommerce_goto_checkout', 'woocommerce_button_proceed_to_checkout', 25 ); // Force metadata to be shown!!!! in Cart page add_filter( 'woocommerce_is_attribute_in_product_name', '__return_false' ); if ( ! function_exists( 'covercase_woo_after_cart' ) ) { /** * End Filtrate WooCommerce Table Cart Page * * @since Covercase 1.0 */ function covercase_woo_after_cart() { ob_end_clean(); ?> <form class="woocommerce-cart-form" action="<?php echo esc_url( wc_get_cart_url() ); ?>" method="post"> <?php do_action( 'woocommerce_before_cart_table' ); ?> <div class="table-responsive shop-table-responsive"> <table class="table shop_table shop_table_responsive cart woocommerce-cart-form__contents" cellspacing="0"> <thead> <tr> <th class="product-name" colspan="2"><?php esc_html_e( 'Product', 'covercase' ); ?></th> <th class="product-price"><?php esc_html_e( 'Price', 'covercase' ); ?></th> <th class="product-quantity"><?php esc_html_e( 'Quantity', 'covercase' ); ?></th> <th class="product-subtotal"><?php esc_html_e( 'Total', 'covercase' ); ?></th> <th class="product-remove"> </th> </tr> </thead> <tbody> <?php do_action( 'woocommerce_before_cart_contents' ); ?> <?php foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) { $_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key ); $product_id = apply_filters( 'woocommerce_cart_item_product_id', $cart_item['product_id'], $cart_item, $cart_item_key ); if ( $_product && $_product->exists() && $cart_item['quantity'] > 0 && apply_filters( 'woocommerce_cart_item_visible', true, $cart_item, $cart_item_key ) ) { $product_permalink = apply_filters( 'woocommerce_cart_item_permalink', $_product->is_visible() ? $_product->get_permalink( $cart_item ) : '', $cart_item, $cart_item_key ); ?> <tr class="woocommerce-cart-form__cart-item <?php echo esc_attr( apply_filters( 'woocommerce_cart_item_class', 'cart_item', $cart_item, $cart_item_key ) ); ?>"> <td class="product-thumbnail"> <?php $thumbnail = apply_filters( 'woocommerce_cart_item_thumbnail', $_product->get_image(), $cart_item, $cart_item_key ); preg_match( '@src="([^"]+)"@', $thumbnail, $match ); $src = array_pop( $match ); $thumbnail = '<span class="product-cart-thumbnail" style="background-image: url(' . esc_url( $src ) . ')"></span>'; if ( ! $product_permalink ) { printf('%s', $thumbnail); } else { printf( '<a href="%s">%s</a>', esc_url( $product_permalink ), $thumbnail ); } ?> </td> <td class="product-name" data-title="<?php esc_attr_e( 'Product', 'covercase' ); ?>"> <?php if ( ! $product_permalink ) { echo apply_filters( 'woocommerce_cart_item_name', $_product->get_title(), $cart_item, $cart_item_key ) . ' '; } else { echo apply_filters( 'woocommerce_cart_item_name', sprintf( '<a href="%s">%s</a>', esc_url( $product_permalink ), $_product->get_title() ), $cart_item, $cart_item_key ); } // Meta data. echo wc_get_formatted_cart_item_data( $cart_item ); // Backorder notification. if ( $_product->backorders_require_notification() && $_product->is_on_backorder( $cart_item['quantity'] ) ) { echo '<p class="backorder_notification">' . esc_html__( 'Available on backorder', 'covercase' ) . '</p>'; } ?></td> <td class="product-price" data-title="<?php esc_attr_e( 'Price', 'covercase' ); ?>"> <?php echo apply_filters( 'woocommerce_cart_item_price', WC()->cart->get_product_price( $_product ), $cart_item, $cart_item_key ); ?> </td> <td class="product-quantity" data-title="<?php esc_attr_e( 'Quantity', 'covercase' ); ?>"><?php if ( $_product->is_sold_individually() ) { $product_quantity = sprintf( '1 <input type="hidden" name="cart[%s][qty]" value="1" />', $cart_item_key ); } else { $product_quantity = woocommerce_quantity_input( array( 'input_name' => "cart[{$cart_item_key}][qty]", 'input_value' => $cart_item['quantity'], 'max_value' => $_product->get_max_purchase_quantity(), 'min_value' => '0', 'product_name' => $_product->get_name(), ), $_product, false ); } echo apply_filters( 'woocommerce_cart_item_quantity', $product_quantity, $cart_item_key, $cart_item ); ?></td> <td class="product-subtotal" data-title="<?php esc_attr_e( 'Total', 'covercase' ); ?>"> <?php echo apply_filters( 'woocommerce_cart_item_subtotal', WC()->cart->get_product_subtotal( $_product, $cart_item['quantity'] ), $cart_item, $cart_item_key ); ?> </td> <td class="product-remove"> <?php // @codingStandardsIgnoreLine echo apply_filters( 'woocommerce_cart_item_remove_link', sprintf( '<a href="%s" class="remove" aria-label="%s" data-product_id="%s" data-product_sku="%s"><i class="cov-pm-close" aria-hidden="true"></i></a>', esc_url( wc_get_cart_remove_url( $cart_item_key ) ), __( 'Remove this item', 'covercase' ), esc_attr( $product_id ), esc_attr( $_product->get_sku() ) ), $cart_item_key ); ?> </td> </tr> <tr><td class="woo-table-pattern" colspan="6"><div></div></td></tr> <?php } } ?> </tbody> </table> </div> <?php do_action( 'woocommerce_after_cart_table' ); ?> <?php do_action( 'woocommerce_cart_contents' ); ?> <div class="woo-cart-updates"> <button type="submit" class="button" name="update_cart" value="<?php esc_attr_e( 'Update cart', 'covercase' ); ?>"><?php esc_html_e( 'Update cart', 'covercase' ); ?></button> </div> <div class="woo-cart-contents row"> <div class="col-lg-6"> <?php if ( wc_coupons_enabled() ) { ?> <div class="coupon"> <div class="coupon__form"><input type="text" name="coupon_code" class="input-text" id="coupon_code" value="" placeholder="<?php esc_attr_e( 'Coupon code', 'covercase' ); ?>"></div> <input type="submit" class="button" name="apply_coupon" value="<?php esc_attr_e( 'Apply coupon', 'covercase' ); ?>"> <?php do_action( 'woocommerce_cart_coupon' ); ?> </div> <?php } ?> <?php do_action( 'woocommerce_cart_actions' ); ?> <?php wp_nonce_field( 'woocommerce-cart' ); ?> </div> </div> <?php do_action( 'woocommerce_after_cart_contents' ); ?> </form> <div class="woo-cart-collaterals row"> <div class="col-lg-6"></div> <div class="col-lg-6"> <div class="cart-collaterals"> <?php /** * Cart collaterals hook. * * @hooked woocommerce_cart_totals - 10 */ do_action( 'woocommerce_cart_collaterals' ); ?> </div> </div> </div> <div class="woo-cart-goto-checkout"> <?php /** * Cart collaterals hook. * * @hooked woocommerce_button_proceed_to_checkout - 25 */ do_action( 'woocommerce_goto_checkout' ); ?> </div> <?php } add_action( 'woocommerce_after_cart', 'covercase_woo_after_cart' ); } if ( ! function_exists( 'covercase_woo_before_cart_totals' ) ) { /** * Start Filtrate WooCommerce Total Cart Page * * @since Covercase 1.0 */ function covercase_woo_before_cart_totals() { ob_start(); } add_action( 'woocommerce_before_cart_totals', 'covercase_woo_before_cart_totals' ); } if ( ! function_exists( 'covercase_woo_after_cart_totals' ) ) { /** * End Filtrate WooCommerce Total Cart Page * * @since Covercase 1.0 */ function covercase_woo_after_cart_totals() { ob_end_clean(); ?> <div class="table-responsive"> <table cellspacing="0" class="table shop_table shop_table_responsive"> <tr class="cart-subtotal"> <th><?php _e( 'Subtotal', 'covercase' ); ?></th> <td data-title="<?php esc_attr_e( 'Subtotal', 'covercase' ); ?>"><?php wc_cart_totals_subtotal_html(); ?></td> </tr> <?php foreach ( WC()->cart->get_coupons() as $code => $coupon ) : ?> <tr class="cart-discount coupon-<?php echo esc_attr( sanitize_title( $code ) ); ?>"> <th><?php wc_cart_totals_coupon_label( $coupon ); ?></th> <td data-title="<?php echo esc_attr( wc_cart_totals_coupon_label( $coupon, false ) ); ?>"><?php wc_cart_totals_coupon_html( $coupon ); ?></td> </tr> <?php endforeach; ?> <?php if ( WC()->cart->needs_shipping() && WC()->cart->show_shipping() ) : ?> <?php do_action( 'woocommerce_cart_totals_before_shipping' ); ?> <?php wc_cart_totals_shipping_html(); ?> <?php do_action( 'woocommerce_cart_totals_after_shipping' ); ?> <?php elseif ( WC()->cart->needs_shipping() && 'yes' === get_option( 'woocommerce_enable_shipping_calc' ) ) : ?> <tr class="shipping"> <th><?php _e( 'Shipping', 'covercase' ); ?></th> <td data-title="<?php esc_attr_e( 'Shipping', 'covercase' ); ?>"><?php woocommerce_shipping_calculator(); ?></td> </tr> <?php endif; ?> <?php foreach ( WC()->cart->get_fees() as $fee ) : ?> <tr class="fee"> <th><?php echo esc_html( $fee->name ); ?></th> <td data-title="<?php echo esc_attr( $fee->name ); ?>"><?php wc_cart_totals_fee_html( $fee ); ?></td> </tr> <?php endforeach; ?> <?php if ( wc_tax_enabled() && ! WC()->cart->display_prices_including_tax() ) : $taxable_address = WC()->customer->get_taxable_address(); $estimated_text = WC()->customer->is_customer_outside_base() && ! WC()->customer->has_calculated_shipping() ? sprintf( ' <small>' . __( '(estimated for %s)', 'covercase' ) . '</small>', WC()->countries->estimated_for_prefix( $taxable_address[0] ) . WC()->countries->countries[ $taxable_address[0] ] ) : ''; if ( 'itemized' === get_option( 'woocommerce_tax_total_display' ) ) : ?> <?php foreach ( WC()->cart->get_tax_totals() as $code => $tax ) : ?> <tr class="tax-rate tax-rate-<?php echo sanitize_title( $code ); ?>"> <th><?php echo esc_html( $tax->label ) . $estimated_text; ?></th> <td data-title="<?php echo esc_attr( $tax->label ); ?>"><?php echo wp_kses_post( $tax->formatted_amount ); ?></td> </tr> <?php endforeach; ?> <?php else : ?> <tr class="tax-total"> <th><?php echo esc_html( WC()->countries->tax_or_vat() ) . $estimated_text; ?></th> <td data-title="<?php echo esc_attr( WC()->countries->tax_or_vat() ); ?>"><?php wc_cart_totals_taxes_total_html(); ?></td> </tr> <?php endif; ?> <?php endif; ?> <?php do_action( 'woocommerce_cart_totals_before_order_total' ); ?> <tr class="order-total"> <th><?php _e( 'Total', 'covercase' ); ?></th> <td data-title="<?php esc_attr_e( 'Total', 'covercase' ); ?>"><?php wc_cart_totals_order_total_html(); ?></td> </tr> <?php do_action( 'woocommerce_cart_totals_after_order_total' ); ?> </table> </div> <?php } add_action( 'woocommerce_after_cart_totals', 'covercase_woo_after_cart_totals' ); } if ( ! function_exists( 'covercase_woo_before_checkout_billing_form' ) ) { function covercase_woo_before_checkout_billing_form() { /** * Start Filtrate WooCommerce Billing Form * * @since Covercase 1.0 */ ob_start(); } add_action( 'woocommerce_before_checkout_billing_form', 'covercase_woo_before_checkout_billing_form' ); } if ( ! function_exists( 'covercase_woo_after_checkout_billing_form' ) ) { /** * End Filtrate WooCommerce Billing Form * * @since Covercase 1.0 */ function covercase_woo_after_checkout_billing_form( $checkout ) { ob_end_clean(); ob_start(); ?> <div class="row "> <?php $fields = $checkout->get_checkout_fields( 'billing' ); $col = 0; $total = 0; foreach ( $fields as $key => $field ) { $col ++; $total ++; if ( 1 === $col ) { echo '<div class="col-md-6"><div class="woocommerce-billing-fields__field-wrapper row">'; } if ( isset( $field['country_field'], $fields[ $field['country_field'] ] ) ) { $field['country'] = $checkout->get_value( $field['country_field'] ); } woocommerce_form_field( $key, $field, $checkout->get_value( $key ) ); if ( 6 === $col || count( $fields ) === $total ) { echo '</div></div>'; $col = 0; } } ?> </div> <?php $form = ob_get_clean(); echo covercase_balance_tags( $form ); } add_action( 'woocommerce_after_checkout_billing_form', 'covercase_woo_after_checkout_billing_form' ); } if ( ! function_exists( 'covercase_woo_before_checkout_registration_form' ) ) { /** * Start Filtrate WooCommerce Registration Cart Form * * @since Covercase 1.0 */ function covercase_woo_before_checkout_registration_form() { ob_start(); } add_action( 'woocommerce_before_checkout_registration_form', 'covercase_woo_before_checkout_registration_form' ); } if ( ! function_exists( 'covercase_woo_after_checkout_registration_form' ) ) { /** * End Filtrate WooCommerce Registration Cart Form * * @since Covercase 1.0 */ function covercase_woo_after_checkout_registration_form( $checkout ) { ob_end_clean(); ?> <?php if ( $checkout->get_checkout_fields( 'account' ) ) : ?> <div class="create-account"> <div class="row"> <div class="col-md-6"> <div class="create-account__body"> <?php echo '<p class="woo-reg-info">' . __( 'Create an account by entering the information below. If you are a returning customer please login at the top of the page.', 'covercase' ) . '</p>'; foreach ( $checkout->get_checkout_fields( 'account' ) as $key => $field ) : ?> <?php woocommerce_form_field( $key, $field, $checkout->get_value( $key ) ); ?> <?php endforeach; ?> </div> </div> </div> </div> <?php endif; } add_action( 'woocommerce_after_checkout_registration_form', 'covercase_woo_after_checkout_registration_form' ); } // Remove coupon form form checkout page remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10 ); if ( ! function_exists( 'covercase_woo_before_template_part' ) ) { /** * Hard Buffer for WooCommerce templates * * @since Covercase 1.0 */ function covercase_woo_before_template_part( $template_name, $template_path, $located, $args ) { $bufferfor = array( 'thankyou', 'form-shipping' ); $current_template = str_replace( '.php', '', basename( $template_name ) ); if ( in_array( $current_template, $bufferfor ) ) { ob_start(); } } add_action( 'woocommerce_before_template_part', 'covercase_woo_before_template_part', 15, 4 ); } if ( ! function_exists( 'covercase_woo_after_template_part' ) ) { /** * Hard Buffer for WooCommerce templates * * @since Covercase 1.0 */ function covercase_woo_after_template_part( $template_name, $template_path, $located, $args ) { if ( strpos( $template_name, 'thankyou' ) !== false ) { ob_end_clean(); // Thx template filtrate $order = isset( $args['order'] ) ? $args['order'] : ''; if ( $order ) { ?> <div class="woocommerce-order"> <?php if ( $order ) : ?> <?php if ( $order->has_status( 'failed' ) ) : ?> <div class="row"> <div class="col-sm-12 col-md-9 mx-auto"> <p class="woo-ch-page-title woocommerce-notice woocommerce-notice--error woocommerce-thankyou-order-failed"> <span><?php _e( 'Unfortunately your order cannot be processed as the originating bank/merchant has declined your transaction. Please attempt your purchase again.', 'covercase' ); ?></span> </p> </div> </div> <p class="woocommerce-notice woocommerce-notice--error woocommerce-thankyou-order-failed-actions text-center" style="padding-top: 40px;"> <a href="<?php echo esc_url( $order->get_checkout_payment_url() ); ?>" class="button pay"><?php _e( 'Pay', 'covercase' ) ?></a> <?php if ( is_user_logged_in() ) : ?> <a href="<?php echo esc_url( wc_get_page_permalink( 'myaccount' ) ); ?>" class="button pay"><?php _e( 'My account', 'covercase' ); ?></a> <?php endif; ?> </p> <?php else : ?> <div class="row"> <div class="col-sm-12 col-md-9 mx-auto"> <p class="woo-ch-page-title woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received"> <span><?php echo apply_filters( 'woocommerce_thankyou_order_received_text', __( 'Thank you. Your order has been received.', 'covercase' ), $order ); ?></span> </p> </div> </div> <div class="woo-thx-details woocommerce-order-overview woocommerce-thankyou-order-details order_details row justify-content-center"> <div class="col-md-6 col-lg-3 woocommerce-order-overview__order order"> <?php _e( 'Order number:', 'covercase' ); ?> <div class="woo-devider"></div> <strong><?php printf('%s', $order->get_order_number()); ?></strong> </div> <div class="col-md-6 col-lg-3 woocommerce-order-overview__date date"> <?php _e( 'Date:', 'covercase' ); ?> <div class="woo-devider"></div> <strong><?php echo wc_format_datetime( $order->get_date_created() ); ?></strong> </div> <?php if ( is_user_logged_in() && $order->get_user_id() === get_current_user_id() && $order->get_billing_email() ) : ?> <div class="col-md-6 col-lg-3 woocommerce-order-overview__email email"> <?php _e( 'Email:', 'covercase' ); ?> <div class="woo-devider"></div> <strong><?php printf('%s', $order->get_billing_email()); ?></strong> </div> <?php endif; ?> <div class="col-md-6 col-lg-3 woocommerce-order-overview__total total"> <?php _e( 'Total:', 'covercase' ); ?> <div class="woo-devider"></div> <strong><?php printf('%s', $order->get_formatted_order_total()); ?></strong> </div> <?php if ( $order->get_payment_method_title() ) : ?> <div class="col-md-6 col-lg-3 woocommerce-order-overview__payment-method method"> <?php _e( 'Payment method:', 'covercase' ); ?> <div class="woo-devider"></div> <strong><?php echo wp_kses_post( $order->get_payment_method_title() ); ?></strong> </div> <?php endif; ?> </div> <?php endif; ?> <?php do_action( 'woocommerce_thankyou_' . $order->get_payment_method(), $order->get_id() ); ?> <?php do_action( 'woocommerce_thankyou', $order->get_id() ); ?> <?php else : ?> <div class="row"> <div class="col-sm-12 col-md-9 mx-auto"> <p class="woo-ch-page-title woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received"> <span><?php echo apply_filters( 'woocommerce_thankyou_order_received_text', __( 'Thank you. Your order has been received.', 'covercase' ), null ); ?></span> </p> </div> </div> <?php endif; ?> </div> <?php } } if ( strpos( $template_name, 'form-shipping' ) !== false ) { ob_end_clean(); // Checkout template filtrate $checkout = isset( $args['checkout'] ) ? $args['checkout'] : ''; if ( $checkout ) { ?> <div class="woocommerce-shipping-fields"> <?php if ( true === WC()->cart->needs_shipping_address() ) : ?> <div class="row align-items-center"> <div class="col-sm-6"> <h3><?php _e( 'Shipping Details', 'covercase' ); ?></h3> </div> <div class="col-sm-6"> <div id="ship-to-different-address"> <label class="woocommerce-form__label woocommerce-form__label-for-checkbox checkbox"> <input id="ship-to-different-address-checkbox" class="woocommerce-form__input woocommerce-form__input-checkbox input-checkbox" <?php checked( apply_filters( 'woocommerce_ship_to_different_address_checked', 'shipping' === get_option( 'woocommerce_ship_to_destination' ) ? 1 : 0 ), 1 ); ?> type="checkbox" name="ship_to_different_address" value="1"/> <span><?php _e( 'Ship to a different address?', 'covercase' ); ?></span> </label> </div> </div> </div> <div class="shipping_address"> <?php do_action( 'woocommerce_before_checkout_shipping_form', $checkout ); ?> <div class="row"> <?php $fields = $checkout->get_checkout_fields( 'shipping' ); $col = 0; $total = 0; foreach ( $fields as $key => $field ) { $col ++; $total ++; if ( 1 === $col ) { echo '<div class="col-md-6"><div class="woocommerce-shipping-fields__field-wrapper row">'; } if ( isset( $field['country_field'], $fields[ $field['country_field'] ] ) ) { $field['country'] = $checkout->get_value( $field['country_field'] ); } woocommerce_form_field( $key, $field, $checkout->get_value( $key ) ); if ( 5 === $col || count( $fields ) === $total ) { echo '</div></div>'; $col = 0; } } ?> </div> <?php do_action( 'woocommerce_after_checkout_shipping_form', $checkout ); ?> </div> <?php endif; ?> </div> <div class="woocommerce-additional-fields"> <?php do_action( 'woocommerce_before_order_notes', $checkout ); ?> <?php if ( apply_filters( 'woocommerce_enable_order_notes_field', 'yes' === get_option( 'woocommerce_enable_order_comments', 'yes' ) ) ) : ?> <?php if ( ! WC()->cart->needs_shipping() || wc_ship_to_billing_address_only() ) : ?> <h3><?php _e( 'Additional information', 'covercase' ); ?></h3> <?php endif; ?> <div class="row woocommerce-additional-fields__field-wrapper"> <?php foreach ( $checkout->get_checkout_fields( 'order' ) as $key => $field ) : ?> <?php woocommerce_form_field( $key, $field, $checkout->get_value( $key ) ); ?> <?php endforeach; ?> </div> <?php endif; ?> <?php do_action( 'woocommerce_after_order_notes', $checkout ); ?> </div> <?php } } } add_action( 'woocommerce_after_template_part', 'covercase_woo_after_template_part', 15, 4 ); } /*Override Single add product*/ remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation_add_to_cart_button', 20 ); if ( ! function_exists( 'covercase_woo_single_variation_add_to_cart_button' ) ) { /** * Override Single Add Product template * * @since Covercase 1.0 */ function covercase_woo_single_variation_add_to_cart_button() { global $product; ?> <div class="woocommerce-variation-add-to-cart variations_button"> <?php /** * @since 3.0.0. */ do_action( 'woocommerce_before_add_to_cart_quantity' ); woocommerce_quantity_input( array( 'min_value' => apply_filters( 'woocommerce_quantity_input_min', $product->get_min_purchase_quantity(), $product ), 'max_value' => apply_filters( 'woocommerce_quantity_input_max', $product->get_max_purchase_quantity(), $product ), 'input_value' => isset( $_POST['quantity'] ) ? wc_stock_amount( $_POST['quantity'] ) : $product->get_min_purchase_quantity(), ) ); /** * @since 3.0.0. */ do_action( 'woocommerce_after_add_to_cart_quantity' ); ?> <button type="submit" class="single_add_to_cart_button button alt"><?php echo esc_html( $product->single_add_to_cart_text() ); ?></button> <?php if ( function_exists( 'basement_post_share' ) ) { /** * Displays Share Block For Single Product * * @package Aisconverse * @subpackage Covercase * @since Covercase 1.0 */ basement_post_share( true, 'dropdown', true ); } ?> </div> <input type="hidden" name="add-to-cart" value="<?php echo absint( $product->get_id() ); ?>"/> <input type="hidden" name="product_id" value="<?php echo absint( $product->get_id() ); ?>"/> <input type="hidden" name="variation_id" class="variation_id" value="0"/> <?php } add_action( 'woocommerce_single_variation', 'covercase_woo_single_variation_add_to_cart_button', 21 ); } /*Override Grouped add product*/ remove_action( 'woocommerce_grouped_add_to_cart', 'woocommerce_grouped_add_to_cart', 30 ); if ( ! function_exists( 'covercase_woo_grouped_add_to_cart' ) ) { /** * Override Grouped Add Product template * * @since Covercase 1.0 */ function covercase_woo_grouped_add_to_cart() { global $product, $post; $grouped_products = array_filter( array_map( 'wc_get_product', $product->get_children() ), 'wc_products_array_filter_visible_grouped' ); $grouped_product = $product; $quantites_required = false; ?> <form class="cart" action="<?php echo esc_url( get_permalink() ); ?>" method="post" enctype='multipart/form-data'> <table cellspacing="0" class="woocommerce-grouped-product-list group_table"> <tbody> <?php $quantites_required = false; $previous_post = $post; $grouped_product_columns = apply_filters( 'woocommerce_grouped_product_columns', array( 'quantity', 'label', 'price', ), $product ); foreach ( $grouped_products as $grouped_product ) { $post_object = get_post( $grouped_product->get_id() ); $quantites_required = $quantites_required || ( $grouped_product->is_purchasable() && ! $grouped_product->has_options() ); $post = $post_object; // WPCS: override ok. setup_postdata( $post ); echo '<tr id="product-' . esc_attr( get_the_ID() ) . '" class="woocommerce-grouped-product-list-item ' . esc_attr( implode( ' ', get_post_class() ) ) . '">'; // Output columns for each product. foreach ( $grouped_product_columns as $column_id ) { do_action( 'woocommerce_grouped_product_list_before_' . $column_id, $grouped_product ); switch ( $column_id ) { case 'quantity': ob_start(); if ( ! $grouped_product->is_purchasable() || $grouped_product->has_options() || ! $grouped_product->is_in_stock() ) { ?> <a href="<?php echo esc_url( $product->add_to_cart_url() ); ?>" class=" single_add_to_cart_button button button--only-icon alt" title="<?php esc_attr_e( 'Add to cart', 'covercase' ); ?>"></a> <?php } elseif ( $grouped_product->is_sold_individually() ) { echo '<input type="checkbox" name="' . esc_attr( 'quantity[' . $grouped_product->get_id() . ']' ) . '" value="1" class="wc-grouped-product-add-to-cart-checkbox" />'; } else { do_action( 'woocommerce_before_add_to_cart_quantity' ); woocommerce_quantity_input( array( 'input_name' => 'quantity[' . $grouped_product->get_id() . ']', 'input_value' => isset( $_POST['quantity'][ $grouped_product->get_id() ] ) ? wc_stock_amount( wc_clean( wp_unslash( $_POST['quantity'][ $grouped_product->get_id() ] ) ) ) : 0, // WPCS: CSRF ok, input var okay, sanitization ok. 'min_value' => apply_filters( 'woocommerce_quantity_input_min', 0, $grouped_product ), 'max_value' => apply_filters( 'woocommerce_quantity_input_max', $grouped_product->get_max_purchase_quantity(), $grouped_product ), ) ); do_action( 'woocommerce_after_add_to_cart_quantity' ); } $value = ob_get_clean(); break; case 'label': $value = '<label for="product-' . esc_attr( $grouped_product->get_id() ) . '">'; $value .= $grouped_product->is_visible() ? '<a href="' . esc_url( apply_filters( 'woocommerce_grouped_product_list_link', get_permalink( $grouped_product->get_id() ), $grouped_product->get_id() ) ) . '">' . $grouped_product->get_name() . '</a>' : $grouped_product->get_name(); $value .= '</label>'; $value .= $grouped_product->get_price_html() . wc_get_stock_html( $grouped_product ); break; default: $value = ''; break; } echo '<td class="woocommerce-grouped-product-list-item__' . esc_attr( $column_id ) . '">' . apply_filters( 'woocommerce_grouped_product_list_column_' . $column_id, $value, $grouped_product ) . '</td>'; // WPCS: XSS ok. do_action( 'woocommerce_grouped_product_list_after_' . $column_id, $grouped_product ); } echo '</tr>'; } $post = $previous_post; // WPCS: override ok. setup_postdata( $post ); ?> </tbody> </table> <input type="hidden" name="add-to-cart" value="<?php echo esc_attr( $product->get_id() ); ?>"/> <?php if ( $quantites_required ) : ?> <?php do_action( 'woocommerce_before_add_to_cart_button' ); ?> <button type="submit" class="single_add_to_cart_button button alt"><?php echo esc_html( $product->single_add_to_cart_text() ); ?></button> <?php do_action( 'woocommerce_after_add_to_cart_button' ); ?> <?php endif; ?> </form> <?php } add_action( 'woocommerce_grouped_add_to_cart', 'covercase_woo_grouped_add_to_cart', 31 ); } /*Override External add product*/ remove_action( 'woocommerce_external_add_to_cart', 'woocommerce_external_add_to_cart', 30 ); if ( ! function_exists( 'covercase_woo_external_add_to_cart' ) ) { /** * Override External Add Product template * * @since Covercase 1.0 */ function covercase_woo_external_add_to_cart() { global $product; if ( ! $product->add_to_cart_url() ) { return; } $product_url = $product->add_to_cart_url(); $button_text = $product->single_add_to_cart_text(); do_action( 'woocommerce_before_add_to_cart_button' ); ?> <div class="woo-external-tocart cart"> <a href="<?php echo esc_url( $product_url ); ?>" rel="nofollow" class="single_add_to_cart_button button alt"><?php echo esc_html( $button_text ); ?></a> <?php do_action( 'woocommerce_after_add_to_cart_button' ); ?> </div> <?php } add_action( 'woocommerce_external_add_to_cart', 'covercase_woo_external_add_to_cart', 31 ); } /*Override Variable add product*/ remove_action( 'woocommerce_variable_add_to_cart', 'woocommerce_variable_add_to_cart', 30 ); if ( ! function_exists( 'covercase_woo_variable_add_to_cart' ) ) { /** * Override Variable Add Product template * * @since Covercase 1.0 */ function covercase_woo_variable_add_to_cart() { global $product; // Enqueue variation scripts. wp_enqueue_script( 'wc-add-to-cart-variation' ); // Get Available variations? $get_variations = count( $product->get_children() ) <= apply_filters( 'woocommerce_ajax_variation_threshold', 30, $product ); $available_variations = $get_variations ? $product->get_available_variations() : false; $attributes = $product->get_variation_attributes(); $selected_attributes = $product->get_default_attributes(); $attribute_keys = array_keys( $attributes ); do_action( 'woocommerce_before_add_to_cart_form' ); ?> <form class="variations_form cart" action="<?php echo esc_url( get_permalink() ); ?>" method="post" enctype='multipart/form-data' data-product_id="<?php echo absint( $product->get_id() ); ?>" data-product_variations="<?php echo htmlspecialchars( wp_json_encode( $available_variations ) ) ?>"> <?php do_action( 'woocommerce_before_variations_form' ); ?> <?php if ( empty( $available_variations ) && false !== $available_variations ) : ?> <div class="woocommerce-product-stock"> <p class="stock out-of-stock"><?php _e( 'Out of stock', 'covercase' ); ?></p> </div> <?php else : ?> <table class="variations" cellspacing="0"> <tbody> <?php foreach ( $attributes as $attribute_name => $options ) : ?> <tr> <td class="label"><label for="<?php echo sanitize_title( $attribute_name ); ?>"><?php echo wc_attribute_label( $attribute_name ); ?></label></td> <td class="value"> <?php $selected = isset( $_REQUEST[ 'attribute_' . sanitize_title( $attribute_name ) ] ) ? wc_clean( stripslashes( urldecode( $_REQUEST[ 'attribute_' . sanitize_title( $attribute_name ) ] ) ) ) : $product->get_variation_default_attribute( $attribute_name ); wc_dropdown_variation_attribute_options( array( 'options' => $options, 'attribute' => $attribute_name, 'product' => $product, 'selected' => $selected ) ); echo end( $attribute_keys ) === $attribute_name ? apply_filters( 'woocommerce_reset_variations_link', '<a class="reset_variations" href="#">' . esc_html__( 'Clear', 'covercase' ) . '</a>' ) : ''; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php do_action( 'woocommerce_before_add_to_cart_button' ); ?> <div class="single_variation_wrap"> <?php /** * woocommerce_before_single_variation Hook. */ do_action( 'woocommerce_before_single_variation' ); /** * woocommerce_single_variation hook. Used to output the cart button and placeholder for variation data. * * @since 2.4.0 * @hooked woocommerce_single_variation - 10 Empty div for variation data. * @hooked woocommerce_single_variation_add_to_cart_button - 20 Qty and cart button. */ do_action( 'woocommerce_single_variation' ); /** * woocommerce_after_single_variation Hook. */ do_action( 'woocommerce_after_single_variation' ); ?> </div> <?php do_action( 'woocommerce_after_add_to_cart_button' ); ?> <?php endif; ?> <?php do_action( 'woocommerce_after_variations_form' ); ?> </form> <?php do_action( 'woocommerce_after_add_to_cart_form' ); } add_action( 'woocommerce_variable_add_to_cart', 'covercase_woo_variable_add_to_cart', 31 ); } /*Account filtration*/ if ( ! function_exists( 'covercase_woo_account_filtrate_before' ) ) { /** * Start Override My Account page content * * @since Covercase 1.0 */ function covercase_woo_account_filtrate_before() { if ( is_account_page() && is_user_logged_in() ) { ob_start(); } } add_action( 'basement_before_content', 'covercase_woo_account_filtrate_before', 19 ); } if ( ! function_exists( 'covercase_woo_account_filtrate_after' ) ) { /** * End Override My Account page content * * @since Covercase 1.0 */ function covercase_woo_account_filtrate_after() { if ( is_account_page() && is_user_logged_in() ) { $content = ob_get_clean(); $notices = ''; // Get Success notices preg_match( '/woocommerce-message"\s+role="alert">(.*?)<\/div/is', $content, $success_match ); if ( $success_match ) { $success_notice = array_pop( $success_match ); $notices .= '<div class="woocommerce-message" role="alert">' . $success_notice . '</div>'; } // Get Error notices preg_match( '/woocommerce-error"\s+role="alert">(.*?)<\/ul/is', $content, $error_match ); if ( $error_match ) { $error_notice = array_pop( $error_match ); $notices .= '<ul class="woocommerce-error" role="alert">' . $error_notice . '</ul>'; } // Get Info notices preg_match( '/woocommerce-info">(.*?)<\/div/is', $content, $info_match ); if ( $info_match ) { $info_notice = array_pop( $info_match ); $notices .= '<div class="woocommerce-info">' . $info_notice . '</div>'; } printf( '%s', $notices ); echo '<div class="page-content-cell maincontent col-12 woocommerce_my_account_shortcode">'; echo do_shortcode( '[woocommerce_my_account]' ); echo '</div>'; } } add_action( 'basement_after_content', 'covercase_woo_account_filtrate_after', 21 ); } /*Login form*/ if ( ! function_exists( 'covercase_woo_before_customer_login_form' ) ) { /** * Start Override Login Form * * @since Covercase 1.0 */ function covercase_woo_before_customer_login_form() { ob_start(); } add_action( 'woocommerce_before_customer_login_form', 'covercase_woo_before_customer_login_form' ); } if ( ! function_exists( 'covercase_woo_after_customer_login_form' ) ) { /** * End Override Login Form * * @since Covercase 1.0 */ function covercase_woo_after_customer_login_form() { ob_end_clean(); $is_register = isset( $_GET['registration'] ) ? $_GET['registration'] : ''; ?> <div class="woo-account-forms"> <?php if ( 'yes' !== $is_register ) : ?> <h2><?php esc_html_e( 'Login', 'covercase' ); ?></h2> <form class="woocommerce-form woocommerce-form-login login js-login-form" method="post"> <?php do_action( 'woocommerce_login_form_start' ); ?> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide"> <input required placeholder="<?php echo esc_attr( 'Username or email address', 'covercase' ); ?>" type="text" class="woocommerce-Input woocommerce-Input--text input-text" name="username" id="username" value="<?php echo ( ! empty( $_POST['username'] ) ) ? esc_attr( wp_unslash( $_POST['username'] ) ) : ''; ?>"/><?php // @codingStandardsIgnoreLine ?> </p> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide"> <input required placeholder="<?php echo esc_attr( 'Password', 'covercase' ); ?>" class="woocommerce-Input woocommerce-Input--text input-text" type="password" name="password" id="password"/> </p> <?php do_action( 'woocommerce_login_form' ); ?> <?php wp_nonce_field( 'woocommerce-login', 'woocommerce-login-nonce' ); ?> <div class="woo-account-forms__helpers"> <div class="row align-items-center"> <div class="col-6"> <label class="woocommerce-form__label woocommerce-form__label-for-checkbox inline"> <input class="woocommerce-form__input woocommerce-form__input-checkbox" name="rememberme" type="checkbox" id="rememberme" value="forever"/> <span><?php esc_html_e( 'Remember me', 'covercase' ); ?></span> </label> </div> <div class="col-6 text-right"> <p class="woocommerce-LostPassword lost_password"> <a href="<?php echo esc_url( wp_lostpassword_url() ); ?>"><?php esc_html_e( 'Forgot Password?', 'covercase' ); ?></a> </p> </div> </div> </div> <p class="form-row form-row-submit-area"> <button type="submit" name="login" value="<?php esc_attr_e( 'Login', 'covercase' ); ?>"><?php esc_html_e( 'Login', 'covercase' ); ?></button> </p> <?php if ( get_option( 'woocommerce_enable_myaccount_registration' ) === 'yes' ) : ?> <p class="woo-account-forms__noregister"> <a href="<?php echo esc_url( wc_get_page_permalink( 'myaccount' ) ); ?>/?registration=yes" title="<?php esc_attr_e( 'Don\'t have an account?', 'covercase' ); ?>"><?php _e( 'Don\'t have an account?', 'covercase' ); ?></a> </p> <?php endif; ?> <?php do_action( 'woocommerce_login_form_end' ); ?> </form> <?php endif; ?> <?php if ( get_option( 'woocommerce_enable_myaccount_registration' ) === 'yes' && 'yes' === $is_register ) : ?> <h2><?php esc_html_e( 'Register', 'covercase' ); ?></h2> <form method="post" class="register js-login-form"> <?php do_action( 'woocommerce_register_form_start' ); ?> <?php if ( 'no' === get_option( 'woocommerce_registration_generate_username' ) ) : ?> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide"> <input placeholder="<?php echo esc_attr( 'Username', 'covercase' ); ?>" required type="text" class="woocommerce-Input woocommerce-Input--text input-text" name="username" id="reg_username" value="<?php echo ( ! empty( $_POST['username'] ) ) ? esc_attr( wp_unslash( $_POST['username'] ) ) : ''; ?>"/><?php // @codingStandardsIgnoreLine ?> </p> <?php endif; ?> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide"> <input placeholder="<?php echo esc_attr( 'Email address', 'covercase' ); ?>" required type="email" class="woocommerce-Input woocommerce-Input--text input-text" name="email" id="reg_email" value="<?php echo ( ! empty( $_POST['email'] ) ) ? esc_attr( wp_unslash( $_POST['email'] ) ) : ''; ?>"/><?php // @codingStandardsIgnoreLine ?> </p> <?php if ( 'no' === get_option( 'woocommerce_registration_generate_password' ) ) : ?> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide"> <input placeholder="<?php echo esc_attr( 'Password', 'covercase' ); ?>" required type="password" class="woocommerce-Input woocommerce-Input--text input-text" name="password" id="reg_password"/> </p> <?php endif; ?> <?php do_action( 'woocommerce_register_form' ); ?> <?php wp_nonce_field( 'woocommerce-register', 'woocommerce-register-nonce' ); ?> <p class="woocommerce-FormRow form-row form-row-submit-area"> <button type="submit" name="register" value="<?php esc_attr_e( 'Register', 'covercase' ); ?>"><?php esc_html_e( 'Register', 'covercase' ); ?></button> </p> <p class="woo-account-forms__gologin"> <a href="<?php echo esc_url( wc_get_page_permalink( 'myaccount' ) ); ?>" title="<?php esc_attr_e( 'Back to login page', 'covercase' ); ?>"><?php _e( 'Back to login page', 'covercase' ); ?></a> </p> <?php do_action( 'woocommerce_register_form_end' ); ?> </form> <?php endif; ?> </div> <?php } add_action( 'woocommerce_after_customer_login_form', 'covercase_woo_after_customer_login_form' ); } /*Main account wrapper content*/ remove_action( 'woocommerce_account_content', 'woocommerce_account_content' ); if ( ! function_exists( 'covercase_woo_account_content' ) ) { /** * User Dashboard panel * * @since Covercase 1.0 */ function covercase_woo_account_content() { global $wp; if ( ! empty( $wp->query_vars ) ) { foreach ( $wp->query_vars as $key => $value ) { // Ignore pagename param. if ( 'pagename' === $key ) { continue; } if ( has_action( 'woocommerce_account_' . $key . '_endpoint' ) ) { do_action( 'woocommerce_account_' . $key . '_endpoint', $value ); return; } } } $current_user = get_user_by( 'id', get_current_user_id() ); ?> <div class="woo-dashboard-table"> <div class="row"> <div class="col-lg-7"> <?php _e( 'Welcome back', 'covercase' ); ?> </div> <div class="col-lg-5"> <div class="woo-dashboard-table__user"><?php echo esc_html( $current_user->display_name ); ?></div> </div> </div> <div class="row"> <div class="col-lg-7"> <?php _e( 'From your account dashboard you can', 'covercase' ); ?> </div> <div class="col-lg-5"> <div class="woo-dashboard-table__orders"> <?php printf( __( '<a href="%1$s">Recent orders</a><br><a href="%2$s">Manage your shipping and billing addresses</a><br> <a href="%3$s">Edit your password and account details</a>.', 'covercase' ), esc_url( wc_get_endpoint_url( 'orders' ) ), esc_url( wc_get_endpoint_url( 'edit-address' ) ), esc_url( wc_get_endpoint_url( 'edit-account' ) ) ); ?> </div> </div> </div> <div class="row"> <div class="col-lg-7"> <?php printf( __( 'Not %s? ', 'covercase' ), esc_html( $current_user->display_name ) ); ?> </div> <div class="col-lg-5"><a href="<?php echo esc_url( wc_logout_url( wc_get_page_permalink( 'myaccount' ) ) ) ?>"><?php _e( 'Sign out', 'covercase' ) ?></a></div> </div> </div> <?php /** * My Account dashboard. * * @since 2.6.0 */ do_action( 'woocommerce_account_dashboard' ); /** * Deprecated woocommerce_before_my_account action. * * @deprecated 2.6.0 */ do_action( 'woocommerce_before_my_account' ); /** * Deprecated woocommerce_after_my_account action. * * @deprecated 2.6.0 */ do_action( 'woocommerce_after_my_account' ); /* Omit closing PHP tag at the end of PHP files to avoid "headers already sent" issues. */ } add_action( 'woocommerce_account_content', 'covercase_woo_account_content' ); } /*Download page section*/ if ( ! function_exists( 'covercase_woo_before_account_downloads' ) ) { /** * Start filtrate account downloads * * @since Covercase 1.0 */ function covercase_woo_before_account_downloads() { ob_start(); } add_action( 'woocommerce_before_account_downloads', 'covercase_woo_before_account_downloads' ); } if ( ! function_exists( 'covercase_woo_after_account_downloads' ) ) { /** * End filtrate account downloads * * @since Covercase 1.0 */ function covercase_woo_after_account_downloads( $has_downloads ) { ob_end_clean(); $downloads = WC()->customer->get_downloadable_products(); if ( $has_downloads ) { ?> <?php do_action( 'woocommerce_before_available_downloads' ); ?> <?php do_action( 'woocommerce_available_downloads', $downloads ); ?> <?php do_action( 'woocommerce_after_available_downloads' ); ?> <?php } else { ?> <div class="woo-no-orders"> <div class="woo-no-orders__body"> <?php esc_html_e( 'No downloads available yet.', 'covercase' ); ?> </div> <a class="woocommerce-Button button" href="<?php echo esc_url( apply_filters( 'woocommerce_return_to_shop_redirect', wc_get_page_permalink( 'shop' ) ) ); ?>"> <?php esc_html_e( 'Return to shop', 'covercase' ) ?> </a> </div> <?php } } add_action( 'woocommerce_after_account_downloads', 'covercase_woo_after_account_downloads' ); } /*Edit account page section*/ if ( ! function_exists( 'covercase_woo_before_edit_account_form' ) ) { /** * Start filtrate edit account section * * @since Covercase 1.0 */ function covercase_woo_before_edit_account_form() { ob_start(); } add_action( 'woocommerce_before_edit_account_form', 'covercase_woo_before_edit_account_form' ); } if ( ! function_exists( 'covercase_woo_after_edit_account_form' ) ) { /** * End filtrate edit account section * * @since Covercase 1.0 */ function covercase_woo_after_edit_account_form() { ob_end_clean(); $user = get_user_by( 'id', get_current_user_id()); ?> <form class="woocommerce-EditAccountForm edit-account js-login-form" action="" method="post"> <?php do_action( 'woocommerce_edit_account_form_start' ); ?> <div class="woocommerce-EditAccountForm__row"> <div class="row"> <div class="col-sm-5"> <div class="account-label"><?php _e( 'Personal information', 'covercase' ); ?></div> </div> <div class="col-sm-7"> <p class="woocommerce-form-row woocommerce-form-row--first form-row form-row-first"> <input required placeholder="<?php echo esc_attr( 'Name', 'covercase' ); ?>" type="text" class="woocommerce-Input woocommerce-Input--text input-text" name="account_first_name" id="account_first_name" value="<?php echo esc_attr( $user->first_name ); ?>"/> </p> <p class="woocommerce-form-row woocommerce-form-row--last form-row form-row-last"> <input required placeholder="<?php echo esc_attr( 'Surname', 'covercase' ); ?>" type="text" class="woocommerce-Input woocommerce-Input--text input-text" name="account_last_name" id="account_last_name" value="<?php echo esc_attr( $user->last_name ); ?>"/> </p> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide"> <input required placeholder="<?php echo esc_attr( 'Email address', 'covercase' ); ?>" type="email" class="woocommerce-Input woocommerce-Input--email input-text" name="account_email" id="account_email" value="<?php echo esc_attr( $user->user_email ); ?>"/> </p> </div> </div> </div> <div class="woocommerce-EditAccountForm__row"> <div class="row"> <div class="col-sm-5"> <div class="account-label"><?php esc_html_e( 'Password change', 'covercase' ); ?></div> </div> <div class="col-sm-7"> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide"> <input placeholder="<?php echo esc_attr( 'Current password', 'covercase' ); ?>" type="password" class="woocommerce-Input woocommerce-Input--password input-text" name="password_current" id="password_current"/> </p> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide"> <input placeholder="<?php echo esc_attr( 'New password', 'covercase' ); ?>" type="password" class="woocommerce-Input woocommerce-Input--password input-text" name="password_1" id="password_1"/> </p> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide"> <input placeholder="<?php echo esc_attr( 'Confirm new password', 'covercase' ); ?>" type="password" class="woocommerce-Input woocommerce-Input--password input-text" name="password_2" id="password_2"/> </p> </div> </div> </div> <?php do_action( 'woocommerce_edit_account_form' ); ?> <?php wp_nonce_field( 'save_account_details' ); ?> <input type="hidden" name="action" value="save_account_details"/> <p class="submit-area"> <button type="submit" class="woocommerce-Button button" name="save_account_details" value="<?php esc_attr_e( 'Save changes', 'covercase' ); ?>"><?php esc_html_e( 'Save changes', 'covercase' ); ?></button> </p> <?php do_action( 'woocommerce_edit_account_form_end' ); ?> </form> <?php } add_action( 'woocommerce_after_edit_account_form', 'covercase_woo_after_edit_account_form' ); }