]> _ Git - physioassist-wordpress.git/commitdiff
wip #7330 @4:00
authorsoufiane <soufiane@cubedesigners.com>
Mon, 17 Feb 2025 18:02:17 +0000 (19:02 +0100)
committersoufiane <soufiane@cubedesigners.com>
Mon, 17 Feb 2025 18:02:17 +0000 (19:02 +0100)
wp-content/themes/physioassist/resources/assets/styles/common/app.styl
wp-content/themes/physioassist/resources/assets/styles/common/global.styl
wp-content/themes/physioassist/resources/views/layouts/app.blade.php
wp-content/themes/physioassist/resources/views/woocommerce/cart/cart-totals.blade.php [new file with mode: 0644]
wp-content/themes/physioassist/resources/views/woocommerce/cart/cart.blade.php [new file with mode: 0644]
wp-content/themes/physioassist/resources/views/woocommerce/cart/cart.php [deleted file]

index b931c588337955933755701f98e434dc7ce00b08..5292b862fe29d5fce2541605e130e8cbf74e49ec 100644 (file)
@@ -1,11 +1,16 @@
-.woocommerce-app
+[data-app=on]//.woocommerce-app
   *
     font-family: $fontOutfit
+  p,h1,h2,h3,h4,h5,h6,span,label,div
+    color: #1B2943
 
-  .content-inner,
-  .elementor-section.elementor-section-boxed > .elementor-container
+  .content-inner
     horizontal-spacing(16px)
 
+  .elementor-section.elementor-section-boxed > .elementor-container
+    padding: 0
+
+  // Elements hidden on mobile APP
   header.site,
   .footer-site,
   .woocommerce-breadcrumb,
   .product-frequency,
   .hide-on-mobileapp,
   .related.products,
-  .woocommerce-cart-form .product-price
+  .woocommerce-cart-form .product-price,
+  &.woocommerce div.product .woocommerce-tabs ul.tabs .additional_information_tab
     display: none
 
   // Single product
   div.product
-    *
-      color: #1B2943
     .woocommerce
       &-product-gallery
         display: flex
         gap: 24px
+        margin-bottom: 20px !important
         &__wrapper
           max-width: 107px
           width: 100%
           overflow: hidden
           [data-thumb]:not(:first-child)
             display: none
-      &-product-title
+      &-product-title__wrapper
         h1,.price
           font-size: 22px
         h1
-          font-weight: 500
+          font-weight: 600
           margin-bottom: .3em
           line-height: 30px
-        .price
+        .price *
           color: #6CC3EE
 
-    form.cart
-      display: flex
-      flex-direction: column
-      .frequency
-        text-align: left !important
-        margin-left: 0 !important
-      button[type="submit"]
-        width: max-content
+      &-product-details__short-description p
+        font-size: 18px !important
+        font-weight: 400
+
+      &-tabs
+        p
+          font-size: 18px
+
+  .woocommerce
+    div.product .woocommerce
+      &-tabs
+        .tabs,.description_tab
+          margin: 0
+          padding: 0
+          &:after,&:before
+            display: none
+        ul.tabs
+          li
+            background: transparent !important
+            color: #8E94A1
+          a
+            padding: 0
+            font-weight: 400
+        .description_tab
+          border: 0
+        .additional_information_tab
+          display: none !important
+
+      &-Tabs-panel--description
+        font-size: 18px
+        font-weight: 400
+        margin-top: -10px
+
+    .qib-container
+      margin-bottom: 23px
+
+  form.cart
+    display: flex
+    flex-direction: column
+    .frequency
+      text-align: left !important
+      margin-left: 0 !important
+    button[type="submit"]
+      width: max-content
 
   // Quantity button
   .qib
       align-items: center
       .quantity input.qty:not(#qib_id):not(#qib_id)
         border: 0
+        font-size: 18px
     &-button
       &:before,&:after
         background-color: #fff
 
   //
   .wps_sfw_subscription_wrapper
-    margin-top: 10px
+    margin-top: 8px
+    margin-bottom: 20px
     label
       font-size: 18px
     input
       margin-right: 11px
       width: 18px
       height: 18px
+      color: currentColor
+      border: 0.063em solid currentColor
+      border-radius: 50%
+      vertical-align: middle
+      appearance: none
+      display: inline-flex
+      align-items: center
+      justify-content: center
+      &::before
+        content: ""
+        width: 0.75em
+        height: 0.75em
+        border-radius: 50%
+        transform: scale(0)
+        transition: 120ms transform ease-in-out
+        background-color: #93C7C2
+      &:checked::before
+        transform: scale(1)
 
   form.cart button[type='submit']:not(#qib_id):not(#qib_id):not(_):not(_)
     width: 100%
   .frequency,
   .product-frequency,
   .hide-on-desktop
-    display block !important
+    display: block !important
+
+  body.panier,
+  body.cart
+    font-size: 18px
+    .woocommerce-cart
+      &-form__wrapper
+        display: flex
+        gap: 22px
+        padding-bottom: 24px
+        margin-bottom: 24px
+        border-bottom: 1px solid #E3E4E7
+      &-form .product-thumbnail
+        width: 60px
+        flex-shrink: 0
+        img
+          border-radius: 5px
+
+    .product-name
+      line-height: normal
+      margin-bottom: 14px
+      font-weight: 400
+
+    .product-frequency
+      border-bottom: 1px solid #E3E4E7
+      .wps_sfw_subscription_wrapper
+        margin-bottom: 13px
+
+    .product-subtotal
+      margin-top: 13px
+      line-height: normal
+      display: flex
+      align-items: center
+      .label
+        margin-right: auto
index 1c837e7c7e9b1e8f4ee1614b31c9d3fcf7221fc9..1756fd27ee74f0aabd664013cfa388b910161fff 100644 (file)
@@ -3,7 +3,8 @@ html
   height: 100%
   font-size: $font-size-base // This value won't be converted to REMs due to exception in font-size() mixin
   +below(600px)
-    font-size: 14px
+    &:not([data-app=on])
+      font-size: 14px
 
 *,
 *::before,
@@ -18,6 +19,8 @@ body
   margin: 0
   padding: 0
   min-width: 320px
+  [data-app=on] &
+    background-color: #f8fbff
 
 a
   color: $colors.light-blue
index cd4f48f2206a95ef864a635317442321ba3374f4..1134f81947d6fee2ab10d3dd6733861670bf0320 100644 (file)
@@ -1,8 +1,9 @@
 <!doctype html>
-<html @php(language_attributes()) class="no-js">
+@php($app = filter_input(INPUT_GET, 'app', FILTER_SANITIZE_STRING))
+<html @php(language_attributes()) class="no-js" data-app="<?php echo $app == 'true' ? esc_attr('on'): '' ?>">
   @include('partials.head')
   {{-- When not using the hero image header template the compact header is set --}}
-  <body @php(body_class( is_page_template('views/template-transparent-header.blade.php') ? '' : 'header-compact' ))>
+  <body @php(body_class( (is_page_template('views/template-transparent-header.blade.php') ? '' : 'header-compact')))>
 
     <!-- Google Tag Manager (noscript) -->
     <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M3NHJ8X"
diff --git a/wp-content/themes/physioassist/resources/views/woocommerce/cart/cart-totals.blade.php b/wp-content/themes/physioassist/resources/views/woocommerce/cart/cart-totals.blade.php
new file mode 100644 (file)
index 0000000..f9c2605
--- /dev/null
@@ -0,0 +1,195 @@
+<?php
+/**
+ * Cart totals
+ *
+ * This template can be overridden by copying it to yourtheme/woocommerce/cart/cart-totals.php.
+ *
+ * HOWEVER, on occasion WooCommerce will need to update template files and you
+ * (the theme developer) will need to copy the new files to your theme to
+ * maintain compatibility. We try to do this as little as possible, but it does
+ * happen. When this occurs the version of the template file will be bumped and
+ * the readme will list any important changes.
+ *
+ * @see     https://woocommerce.com/document/template-structure/
+ * @package WooCommerce\Templates
+ * @version 2.3.6
+ */
+
+defined( 'ABSPATH' ) || exit;
+
+?>
+<div class="cart_totals <?php echo ( WC()->customer->has_calculated_shipping() ) ? 'calculated_shipping' : ''; ?>">
+
+  <?php do_action( 'woocommerce_before_cart_totals' ); ?>
+
+  <h2><?php esc_html_e( 'Cart totals', 'woocommerce' ); ?></h2>
+  @php($app = filter_input(INPUT_GET, 'app', FILTER_SANITIZE_STRING))
+  <?php if($app == true) { ?>
+
+  <div class="">
+    <div class="cart-subtotal">
+      <div><?php esc_html_e( 'Subtotal', 'woocommerce' ); ?></div>
+      <div data-title="<?php esc_attr_e( 'Subtotal', 'woocommerce' ); ?>"><?php wc_cart_totals_subtotal_html(); ?></div>
+    </div>
+
+      <?php foreach ( WC()->cart->get_coupons() as $code => $coupon ) : ?>
+    <div class="cart-discount coupon-<?php echo esc_attr( sanitize_title( $code ) ); ?>">
+      <div><?php wc_cart_totals_coupon_label( $coupon ); ?></div>
+      <div data-title="<?php echo esc_attr( wc_cart_totals_coupon_label( $coupon, false ) ); ?>"><?php wc_cart_totals_coupon_html( $coupon ); ?></div>
+    </div>
+    <?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' ) ) : ?>
+
+    <div class="shipping">
+      <div><?php esc_html_e( 'Shipping', 'woocommerce' ); ?></div>
+      <div data-title="<?php esc_attr_e( 'Shipping', 'woocommerce' ); ?>"><?php woocommerce_shipping_calculator(); ?></div>
+    </div>
+
+    <?php endif; ?>
+
+      <?php foreach ( WC()->cart->get_fees() as $fee ) : ?>
+    <div class="fee">
+      <div><?php echo esc_html( $fee->name ); ?></div>
+      <div data-title="<?php echo esc_attr( $fee->name ); ?>"><?php wc_cart_totals_fee_html( $fee ); ?></div>
+    </div>
+    <?php endforeach; ?>
+
+      <?php
+    if ( wc_tax_enabled() && ! WC()->cart->display_prices_including_tax() ) {
+      $taxable_address = WC()->customer->get_taxable_address();
+      $estimated_text  = '';
+
+      if ( WC()->customer->is_customer_outside_base() && ! WC()->customer->has_calculated_shipping() ) {
+        /* translators: %s location. */
+        $estimated_text = sprintf( ' <small>' . esc_html__( '(estimated for %s)', 'woocommerce' ) . '</small>', WC()->countries->estimated_for_prefix( $taxable_address[0] ) . WC()->countries->countries[ $taxable_address[0] ] );
+      }
+
+    if ( 'itemized' === get_option( 'woocommerce_tax_total_display' ) ) {
+    foreach ( WC()->cart->get_tax_totals() as $code => $tax ) { // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
+      ?>
+    <div class="tax-rate tax-rate-<?php echo esc_attr( sanitize_title( $code ) ); ?>">
+      <div><?php echo esc_html( $tax->label ) . $estimated_text; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></div>
+      <div data-title="<?php echo esc_attr( $tax->label ); ?>"><?php echo wp_kses_post( $tax->formatted_amount ); ?></div>
+    </div>
+      <?php
+    }
+    } else {
+      ?>
+    <div class="tax-total">
+      <div><?php echo esc_html( WC()->countries->tax_or_vat() ) . $estimated_text; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></div>
+      <div data-title="<?php echo esc_attr( WC()->countries->tax_or_vat() ); ?>"><?php wc_cart_totals_taxes_total_html(); ?></div>
+    </div>
+      <?php
+    }
+    }
+      ?>
+
+      <?php do_action( 'woocommerce_cart_totals_before_order_total' ); ?>
+
+      <div class="order-total">
+        <div><?php esc_html_e( 'Total', 'woocommerce' ); ?></div>
+        <div data-title="<?php esc_attr_e( 'Total', 'woocommerce' ); ?>"><?php wc_cart_totals_order_total_html(); ?></div>
+      </div>
+
+      <?php do_action( 'woocommerce_cart_totals_after_order_total' ); ?>
+  </div>
+
+  <?php }else{ ?>
+
+  <table cellspacing="0" class="shop_table shop_table_responsive">
+
+    <tr class="cart-subtotal">
+      <th><?php esc_html_e( 'Subtotal', 'woocommerce' ); ?></th>
+      <td data-title="<?php esc_attr_e( 'Subtotal', 'woocommerce' ); ?>"><?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 esc_html_e( 'Shipping', 'woocommerce' ); ?></th>
+      <td data-title="<?php esc_attr_e( 'Shipping', 'woocommerce' ); ?>"><?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  = '';
+
+      if ( WC()->customer->is_customer_outside_base() && ! WC()->customer->has_calculated_shipping() ) {
+        /* translators: %s location. */
+        $estimated_text = sprintf( ' <small>' . esc_html__( '(estimated for %s)', 'woocommerce' ) . '</small>', WC()->countries->estimated_for_prefix( $taxable_address[0] ) . WC()->countries->countries[ $taxable_address[0] ] );
+      }
+
+    if ( 'itemized' === get_option( 'woocommerce_tax_total_display' ) ) {
+    foreach ( WC()->cart->get_tax_totals() as $code => $tax ) { // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
+      ?>
+    <tr class="tax-rate tax-rate-<?php echo esc_attr( sanitize_title( $code ) ); ?>">
+      <th><?php echo esc_html( $tax->label ) . $estimated_text; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></th>
+      <td data-title="<?php echo esc_attr( $tax->label ); ?>"><?php echo wp_kses_post( $tax->formatted_amount ); ?></td>
+    </tr>
+      <?php
+    }
+    } else {
+      ?>
+    <tr class="tax-total">
+      <th><?php echo esc_html( WC()->countries->tax_or_vat() ) . $estimated_text; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></th>
+      <td data-title="<?php echo esc_attr( WC()->countries->tax_or_vat() ); ?>"><?php wc_cart_totals_taxes_total_html(); ?></td>
+    </tr>
+      <?php
+    }
+    }
+    ?>
+
+    <?php do_action( 'woocommerce_cart_totals_before_order_total' ); ?>
+
+    <tr class="order-total">
+      <th><?php esc_html_e( 'Total', 'woocommerce' ); ?></th>
+      <td data-title="<?php esc_attr_e( 'Total', 'woocommerce' ); ?>"><?php wc_cart_totals_order_total_html(); ?></td>
+    </tr>
+
+    <?php do_action( 'woocommerce_cart_totals_after_order_total' ); ?>
+
+  </table>
+
+  <?php } ?>
+
+  <div class="wc-proceed-to-checkout">
+    <?php do_action( 'woocommerce_proceed_to_checkout' ); ?>
+  </div>
+
+  <?php do_action( 'woocommerce_after_cart_totals' ); ?>
+
+</div>
diff --git a/wp-content/themes/physioassist/resources/views/woocommerce/cart/cart.blade.php b/wp-content/themes/physioassist/resources/views/woocommerce/cart/cart.blade.php
new file mode 100644 (file)
index 0000000..7c79372
--- /dev/null
@@ -0,0 +1,323 @@
+<?php
+/**
+ * Cart Page
+ *
+ * This template can be overridden by copying it to yourtheme/woocommerce/cart/cart.php.
+ *
+ * HOWEVER, on occasion WooCommerce will need to update template files and you
+ * (the theme developer) will need to copy the new files to your theme to
+ * maintain compatibility. We try to do this as little as possible, but it does
+ * happen. When this occurs the version of the template file will be bumped and
+ * the readme will list any important changes.
+ *
+ * @see     https://woocommerce.com/document/template-structure/
+ * @package WooCommerce\Templates
+ * @version 7.9.0
+ */
+
+defined( 'ABSPATH' ) || exit;
+
+do_action( 'woocommerce_before_cart' ); ?>
+
+<form class="woocommerce-cart-form" action="<?php echo esc_url( wc_get_cart_url() ); ?>" method="post">
+    <?php do_action( 'woocommerce_before_cart_table' ); ?>
+    @php($app = filter_input(INPUT_GET, 'app', FILTER_SANITIZE_STRING))
+    <div class="woocommerce-cart-form__wrapper">
+       <?php if($app == "true") {
+        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 );
+          /**
+           * Filter the product name.
+           *
+           * @since 2.1.0
+           * @param string $product_name Name of the product in the cart.
+           * @param array $cart_item The product in the cart.
+           * @param string $cart_item_key Key for the product in the cart.
+           */
+          $product_name = apply_filters( 'woocommerce_cart_item_name', $_product->get_name(), $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 );
+          ?>
+          <div class="product-thumbnail">
+              <?php
+              $thumbnail = apply_filters( 'woocommerce_cart_item_thumbnail', $_product->get_image(), $cart_item, $cart_item_key );
+              echo $thumbnail; // PHPCS: XSS ok.
+              ?>
+            </div>
+
+            <div class="woocommerce-cart-form__cart-item <?php echo esc_attr( apply_filters( 'woocommerce_cart_item_class', 'cart_item', $cart_item, $cart_item_key ) ); ?>">
+
+            <div class="product-name" data-title="<?php esc_attr_e( 'Product', 'woocommerce' ); ?>">
+                <?php
+                echo wp_kses_post( $product_name . '&nbsp;' );
+
+                do_action( 'woocommerce_after_cart_item_name', $cart_item, $cart_item_key );
+
+                // Meta data.
+                echo wc_get_formatted_cart_item_data( $cart_item ); // PHPCS: XSS ok.
+
+                // Backorder notification.
+                if ( $_product->backorders_require_notification() && $_product->is_on_backorder( $cart_item['quantity'] ) ) {
+                  echo wp_kses_post( apply_filters( 'woocommerce_cart_item_backorder_notification', '<p class="backorder_notification">' . esc_html__( 'Available on backorder', 'woocommerce' ) . '</p>', $product_id ) );
+                }
+                ?>
+            </div>
+
+            <div class="product-price" data-title="<?php esc_attr_e( 'Price', 'woocommerce' ); ?>">
+                <?php
+                echo apply_filters( 'woocommerce_cart_item_price', WC()->cart->get_product_price( $_product ), $cart_item, $cart_item_key ); // PHPCS: XSS ok.
+                ?>
+            </div>
+
+            <div class="product-quantity" data-title="<?php esc_attr_e( 'Quantity', 'woocommerce' ); ?>">
+                <?php
+                if ( $_product->is_sold_individually() ) {
+                  $min_quantity = 1;
+                  $max_quantity = 1;
+                } else {
+                  $min_quantity = 0;
+                  $max_quantity = $_product->get_max_purchase_quantity();
+                }
+
+                $product_quantity = woocommerce_quantity_input(
+                  array(
+                    'input_name'   => "cart[{$cart_item_key}][qty]",
+                    'input_value'  => $cart_item['quantity'],
+                    'max_value'    => $max_quantity,
+                    'min_value'    => $min_quantity,
+                    'product_name' => $product_name,
+                  ),
+                  $_product,
+                  false
+                );
+
+                echo apply_filters( 'woocommerce_cart_item_quantity', $product_quantity, $cart_item_key, $cart_item ); // PHPCS: XSS ok.
+                ?>
+            </div>
+              <?php
+            if ( wps_sfw_check_product_is_subscription( $cart_item['data'] )) {
+              $wps_skip_creating_subscription = apply_filters( 'wps_skip_creating_subscription', true, $cart_item );
+              ?>
+            <div class="product-frequency" data-title="<?php esc_attr_e( 'Frequency', 'woocommerce' ); ?>">
+                <?php do_action('woocommerce_after_add_to_cart_quantity', $wps_skip_creating_subscription, $product_id); ?>
+            </div>
+              <?php
+            }
+              ?>
+            <div class="product-subtotal" data-title="<?php esc_attr_e( 'Subtotal', 'woocommerce' ); ?>">
+              <p class="label"><?php esc_attr_e( 'Subtotal', 'woocommerce' ); ?></p>
+              <?php
+              echo apply_filters( 'woocommerce_cart_item_subtotal', WC()->cart->get_product_subtotal( $_product, $cart_item['quantity'] ), $cart_item, $cart_item_key ); // PHPCS: XSS ok.
+              ?>
+          </div>
+                <?php do_action( 'woocommerce_cart_contents' ); ?>
+              <div <?php echo (filter_input(INPUT_GET, 'app', FILTER_SANITIZE_STRING) === "true" ? "style=display:none;" : "") ?>>
+                    <?php if ( wc_coupons_enabled() ) { ?>
+                  <div class="coupon">
+                    <label for="coupon_code" class="screen-reader-text"><?php esc_html_e( 'Coupon:', 'woocommerce' ); ?></label> <input type="text" name="coupon_code" class="input-text" id="coupon_code" value="" placeholder="<?php esc_attr_e( 'Coupon code', 'woocommerce' ); ?>" /> <button type="submit" class="button<?php echo esc_attr( wc_wp_theme_get_element_class_name( 'button' ) ? ' ' . wc_wp_theme_get_element_class_name( 'button' ) : '' ); ?>" name="apply_coupon" value="<?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?>"><?php esc_html_e( 'Apply coupon', 'woocommerce' ); ?></button>
+                      <?php do_action( 'woocommerce_cart_coupon' ); ?>
+                  </div>
+                  <?php } ?>
+
+                  <button type="submit" class="button<?php echo esc_attr( wc_wp_theme_get_element_class_name( 'button' ) ? ' ' . wc_wp_theme_get_element_class_name( 'button' ) : '' ); ?>" name="update_cart" value="<?php esc_attr_e( 'Update cart', 'woocommerce' ); ?>"><?php esc_html_e( 'Update cart', 'woocommerce' ); ?></button>
+
+                    <?php do_action( 'woocommerce_cart_actions' ); ?>
+
+                    <?php wp_nonce_field( 'woocommerce-cart', 'woocommerce-cart-nonce' ); ?>
+              </div>
+                <?php
+                ?>
+                <?php do_action( 'woocommerce_after_cart_contents' ); ?>
+        </div>
+          <?php
+        }
+        }
+        ?>
+      </div>
+      <?php }else{ ?>
+
+      <table class="shop_table shop_table_responsive cart woocommerce-cart-form__contents" cellspacing="0">
+        <thead>
+        <tr>
+          <th class="product-remove"><span class="screen-reader-text"><?php esc_html_e( 'Remove item', 'woocommerce' ); ?></span></th>
+          <th class="product-thumbnail"><span class="screen-reader-text"><?php esc_html_e( 'Thumbnail image', 'woocommerce' ); ?></span></th>
+          <th class="product-name"><?php esc_html_e( 'Product', 'woocommerce' ); ?></th>
+          <th class="product-price"><?php esc_html_e( 'Price', 'woocommerce' ); ?></th>
+          <th class="product-quantity"><?php esc_html_e( 'Quantity', 'woocommerce' ); ?></th>
+          <th class="product-frequency"><?php esc_html_e( 'Frequency', 'woocommerce' ); ?></th>
+          <th class="product-subtotal"><?php esc_html_e( 'Subtotal', 'woocommerce' ); ?></th>
+        </tr>
+        </thead>
+        <tbody>
+        <?php do_action( 'woocommerce_before_cart_contents' ); ?>
+
+        <?php
+        foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
+          //print_r($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 );
+            /**
+             * Filter the product name.
+             *
+             * @since 2.1.0
+             * @param string $product_name Name of the product in the cart.
+             * @param array $cart_item The product in the cart.
+             * @param string $cart_item_key Key for the product in the cart.
+             */
+            $product_name = apply_filters( 'woocommerce_cart_item_name', $_product->get_name(), $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-remove">
+                        <?php
+                        echo apply_filters( // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+                            'woocommerce_cart_item_remove_link',
+                            sprintf(
+                                '<a href="%s" class="remove" aria-label="%s" data-product_id="%s" data-product_sku="%s">&times;</a>',
+                                esc_url( wc_get_cart_remove_url( $cart_item_key ) ),
+                                /* translators: %s is the product name */
+                                esc_attr( sprintf( __( 'Remove %s from cart', 'woocommerce' ), wp_strip_all_tags( $product_name ) ) ),
+                                esc_attr( $product_id ),
+                                esc_attr( $_product->get_sku() )
+                            ),
+                            $cart_item_key
+                        );
+                        ?>
+                    </td>
+
+                    <td class="product-thumbnail">
+                        <?php
+                        $thumbnail = apply_filters( 'woocommerce_cart_item_thumbnail', $_product->get_image(), $cart_item, $cart_item_key );
+
+                        if ( ! $product_permalink ) {
+                            echo $thumbnail; // PHPCS: XSS ok.
+                        } else {
+                            printf( '<a href="%s">%s</a>', esc_url( $product_permalink ), $thumbnail ); // PHPCS: XSS ok.
+                        }
+                        ?>
+                    </td>
+
+                    <td class="product-name" data-title="<?php esc_attr_e( 'Product', 'woocommerce' ); ?>">
+                        <?php
+                        if ( ! $product_permalink ) {
+                            echo wp_kses_post( $product_name . '&nbsp;' );
+                        } else {
+                            /**
+                             * This filter is documented above.
+                             *
+                             * @since 2.1.0
+                             */
+                            echo wp_kses_post( apply_filters( 'woocommerce_cart_item_name', sprintf( '<a href="%s">%s</a>', esc_url( $product_permalink ), $_product->get_name() ), $cart_item, $cart_item_key ) );
+                        }
+
+                        do_action( 'woocommerce_after_cart_item_name', $cart_item, $cart_item_key );
+
+                        // Meta data.
+                        echo wc_get_formatted_cart_item_data( $cart_item ); // PHPCS: XSS ok.
+
+                        // Backorder notification.
+                        if ( $_product->backorders_require_notification() && $_product->is_on_backorder( $cart_item['quantity'] ) ) {
+                            echo wp_kses_post( apply_filters( 'woocommerce_cart_item_backorder_notification', '<p class="backorder_notification">' . esc_html__( 'Available on backorder', 'woocommerce' ) . '</p>', $product_id ) );
+                        }
+                        ?>
+                    </td>
+
+                    <td class="product-price" data-title="<?php esc_attr_e( 'Price', 'woocommerce' ); ?>">
+                        <?php
+                        echo apply_filters( 'woocommerce_cart_item_price', WC()->cart->get_product_price( $_product ), $cart_item, $cart_item_key ); // PHPCS: XSS ok.
+                        ?>
+                    </td>
+
+                    <td class="product-quantity" data-title="<?php esc_attr_e( 'Quantity', 'woocommerce' ); ?>">
+                        <?php
+                        if ( $_product->is_sold_individually() ) {
+                            $min_quantity = 1;
+                            $max_quantity = 1;
+                        } else {
+                            $min_quantity = 0;
+                            $max_quantity = $_product->get_max_purchase_quantity();
+                        }
+
+                        $product_quantity = woocommerce_quantity_input(
+                            array(
+                                'input_name'   => "cart[{$cart_item_key}][qty]",
+                                'input_value'  => $cart_item['quantity'],
+                                'max_value'    => $max_quantity,
+                                'min_value'    => $min_quantity,
+                                'product_name' => $product_name,
+                            ),
+                            $_product,
+                            false
+                        );
+
+                        echo apply_filters( 'woocommerce_cart_item_quantity', $product_quantity, $cart_item_key, $cart_item ); // PHPCS: XSS ok.
+                        ?>
+                    </td>
+                    <?php
+                    if ( wps_sfw_check_product_is_subscription( $cart_item['data'] )) {
+                      $wps_skip_creating_subscription = apply_filters( 'wps_skip_creating_subscription', true, $cart_item );
+                      ?>
+                      <td class="product-frequency" data-title="<?php esc_attr_e( 'Frequency', 'woocommerce' ); ?>">
+                        <?php do_action('woocommerce_after_add_to_cart_quantity', $wps_skip_creating_subscription, $product_id); ?>
+                      </td>
+                      <?php
+                    }
+                    ?>
+                    <td class="product-subtotal" data-title="<?php esc_attr_e( 'Subtotal', 'woocommerce' ); ?>">
+                        <?php
+                        echo apply_filters( 'woocommerce_cart_item_subtotal', WC()->cart->get_product_subtotal( $_product, $cart_item['quantity'] ), $cart_item, $cart_item_key ); // PHPCS: XSS ok.
+                        ?>
+                    </td>
+                </tr>
+                <?php
+            }
+        }
+        ?>
+
+        <?php do_action( 'woocommerce_cart_contents' ); ?>
+        <tr <?php echo (filter_input(INPUT_GET, 'app', FILTER_SANITIZE_STRING) === "true" ? "style=display:none;" : "") ?>>
+            <td colspan="7" class="actions">
+
+                <?php if ( wc_coupons_enabled() ) { ?>
+                    <div class="coupon">
+                        <label for="coupon_code" class="screen-reader-text"><?php esc_html_e( 'Coupon:', 'woocommerce' ); ?></label> <input type="text" name="coupon_code" class="input-text" id="coupon_code" value="" placeholder="<?php esc_attr_e( 'Coupon code', 'woocommerce' ); ?>" /> <button type="submit" class="button<?php echo esc_attr( wc_wp_theme_get_element_class_name( 'button' ) ? ' ' . wc_wp_theme_get_element_class_name( 'button' ) : '' ); ?>" name="apply_coupon" value="<?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?>"><?php esc_html_e( 'Apply coupon', 'woocommerce' ); ?></button>
+                        <?php do_action( 'woocommerce_cart_coupon' ); ?>
+                    </div>
+                <?php } ?>
+
+                <button type="submit" class="button<?php echo esc_attr( wc_wp_theme_get_element_class_name( 'button' ) ? ' ' . wc_wp_theme_get_element_class_name( 'button' ) : '' ); ?>" name="update_cart" value="<?php esc_attr_e( 'Update cart', 'woocommerce' ); ?>"><?php esc_html_e( 'Update cart', 'woocommerce' ); ?></button>
+
+                <?php do_action( 'woocommerce_cart_actions' ); ?>
+
+                <?php wp_nonce_field( 'woocommerce-cart', 'woocommerce-cart-nonce' ); ?>
+            </td>
+        </tr>
+        <?php
+        ?>
+        <?php do_action( 'woocommerce_after_cart_contents' ); ?>
+        </tbody>
+    </table>
+    <?php } ?>
+    <?php do_action( 'woocommerce_after_cart_table' ); ?>
+</form>
+
+<?php do_action( 'woocommerce_before_cart_collaterals' ); ?>
+
+<div class="cart-collaterals">
+    <?php
+    /**
+     * Cart collaterals hook.
+     *
+     * @hooked woocommerce_cross_sell_display
+     * @hooked woocommerce_cart_totals - 10
+     */
+    do_action( 'woocommerce_cart_collaterals' );
+    ?>
+</div>
+
+<?php do_action( 'woocommerce_after_cart' ); ?>
diff --git a/wp-content/themes/physioassist/resources/views/woocommerce/cart/cart.php b/wp-content/themes/physioassist/resources/views/woocommerce/cart/cart.php
deleted file mode 100644 (file)
index 1b9350d..0000000
+++ /dev/null
@@ -1,207 +0,0 @@
-<?php
-/**
- * Cart Page
- *
- * This template can be overridden by copying it to yourtheme/woocommerce/cart/cart.php.
- *
- * HOWEVER, on occasion WooCommerce will need to update template files and you
- * (the theme developer) will need to copy the new files to your theme to
- * maintain compatibility. We try to do this as little as possible, but it does
- * happen. When this occurs the version of the template file will be bumped and
- * the readme will list any important changes.
- *
- * @see     https://woocommerce.com/document/template-structure/
- * @package WooCommerce\Templates
- * @version 7.9.0
- */
-
-defined( 'ABSPATH' ) || exit;
-
-do_action( 'woocommerce_before_cart' ); ?>
-
-<form class="woocommerce-cart-form" action="<?php echo esc_url( wc_get_cart_url() ); ?>" method="post">
-    <?php do_action( 'woocommerce_before_cart_table' ); ?>
-
-    <table class="shop_table shop_table_responsive cart woocommerce-cart-form__contents" cellspacing="0">
-        <thead>
-        <tr>
-            <th class="product-remove"><span class="screen-reader-text"><?php esc_html_e( 'Remove item', 'woocommerce' ); ?></span></th>
-            <th class="product-thumbnail"><span class="screen-reader-text"><?php esc_html_e( 'Thumbnail image', 'woocommerce' ); ?></span></th>
-            <th class="product-name"><?php esc_html_e( 'Product', 'woocommerce' ); ?></th>
-            <th class="product-price"><?php esc_html_e( 'Price', 'woocommerce' ); ?></th>
-            <th class="product-quantity"><?php esc_html_e( 'Quantity', 'woocommerce' ); ?></th>
-            <th class="product-frequency">Fréquence</th>
-            <th class="product-subtotal"><?php esc_html_e( 'Subtotal', 'woocommerce' ); ?></th>
-        </tr>
-        </thead>
-        <tbody>
-        <?php do_action( 'woocommerce_before_cart_contents' ); ?>
-
-        <?php
-        foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
-          //print_r($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 );
-            /**
-             * Filter the product name.
-             *
-             * @since 2.1.0
-             * @param string $product_name Name of the product in the cart.
-             * @param array $cart_item The product in the cart.
-             * @param string $cart_item_key Key for the product in the cart.
-             */
-            $product_name = apply_filters( 'woocommerce_cart_item_name', $_product->get_name(), $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-remove">
-                        <?php
-                        echo apply_filters( // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
-                            'woocommerce_cart_item_remove_link',
-                            sprintf(
-                                '<a href="%s" class="remove" aria-label="%s" data-product_id="%s" data-product_sku="%s">&times;</a>',
-                                esc_url( wc_get_cart_remove_url( $cart_item_key ) ),
-                                /* translators: %s is the product name */
-                                esc_attr( sprintf( __( 'Remove %s from cart', 'woocommerce' ), wp_strip_all_tags( $product_name ) ) ),
-                                esc_attr( $product_id ),
-                                esc_attr( $_product->get_sku() )
-                            ),
-                            $cart_item_key
-                        );
-                        ?>
-                    </td>
-
-                    <td class="product-thumbnail">
-                        <?php
-                        $thumbnail = apply_filters( 'woocommerce_cart_item_thumbnail', $_product->get_image(), $cart_item, $cart_item_key );
-
-                        if ( ! $product_permalink ) {
-                            echo $thumbnail; // PHPCS: XSS ok.
-                        } else {
-                            printf( '<a href="%s">%s</a>', esc_url( $product_permalink ), $thumbnail ); // PHPCS: XSS ok.
-                        }
-                        ?>
-                    </td>
-
-                    <td class="product-name" data-title="<?php esc_attr_e( 'Product', 'woocommerce' ); ?>">
-                        <?php
-                        if ( ! $product_permalink ) {
-                            echo wp_kses_post( $product_name . '&nbsp;' );
-                        } else {
-                            /**
-                             * This filter is documented above.
-                             *
-                             * @since 2.1.0
-                             */
-                            echo wp_kses_post( apply_filters( 'woocommerce_cart_item_name', sprintf( '<a href="%s">%s</a>', esc_url( $product_permalink ), $_product->get_name() ), $cart_item, $cart_item_key ) );
-                        }
-
-                        do_action( 'woocommerce_after_cart_item_name', $cart_item, $cart_item_key );
-
-                        // Meta data.
-                        echo wc_get_formatted_cart_item_data( $cart_item ); // PHPCS: XSS ok.
-
-                        // Backorder notification.
-                        if ( $_product->backorders_require_notification() && $_product->is_on_backorder( $cart_item['quantity'] ) ) {
-                            echo wp_kses_post( apply_filters( 'woocommerce_cart_item_backorder_notification', '<p class="backorder_notification">' . esc_html__( 'Available on backorder', 'woocommerce' ) . '</p>', $product_id ) );
-                        }
-                        ?>
-                    </td>
-
-                    <td class="product-price" data-title="<?php esc_attr_e( 'Price', 'woocommerce' ); ?>">
-                        <?php
-                        echo apply_filters( 'woocommerce_cart_item_price', WC()->cart->get_product_price( $_product ), $cart_item, $cart_item_key ); // PHPCS: XSS ok.
-                        ?>
-                    </td>
-
-                    <td class="product-quantity" data-title="<?php esc_attr_e( 'Quantity', 'woocommerce' ); ?>">
-                        <?php
-                        if ( $_product->is_sold_individually() ) {
-                            $min_quantity = 1;
-                            $max_quantity = 1;
-                        } else {
-                            $min_quantity = 0;
-                            $max_quantity = $_product->get_max_purchase_quantity();
-                        }
-
-                        $product_quantity = woocommerce_quantity_input(
-                            array(
-                                'input_name'   => "cart[{$cart_item_key}][qty]",
-                                'input_value'  => $cart_item['quantity'],
-                                'max_value'    => $max_quantity,
-                                'min_value'    => $min_quantity,
-                                'product_name' => $product_name,
-                            ),
-                            $_product,
-                            false
-                        );
-
-                        echo apply_filters( 'woocommerce_cart_item_quantity', $product_quantity, $cart_item_key, $cart_item ); // PHPCS: XSS ok.
-                        ?>
-                    </td>
-                    <?php
-                    if ( wps_sfw_check_product_is_subscription( $cart_item['data'] )) {
-                      $wps_skip_creating_subscription = apply_filters( 'wps_skip_creating_subscription', true, $cart_item );
-                      ?>
-                      <td class="product-frequency" data-title="<?php esc_attr_e( 'Frequency', 'woocommerce' ); ?>">
-                        <?php do_action('woocommerce_after_add_to_cart_quantity', $wps_skip_creating_subscription, $product_id); ?>
-                      </td>
-                      <?php
-                    }
-                    ?>
-                    <td class="product-subtotal" data-title="<?php esc_attr_e( 'Subtotal', 'woocommerce' ); ?>">
-                        <?php
-                        echo apply_filters( 'woocommerce_cart_item_subtotal', WC()->cart->get_product_subtotal( $_product, $cart_item['quantity'] ), $cart_item, $cart_item_key ); // PHPCS: XSS ok.
-                        ?>
-                    </td>
-                </tr>
-                <?php
-            }
-        }
-        ?>
-
-        <?php do_action( 'woocommerce_cart_contents' ); ?>
-        <tr <?php echo (filter_input(INPUT_GET, 'app', FILTER_SANITIZE_STRING) === "true" ? "style=display:none;" : "") ?>>
-            <td colspan="7" class="actions">
-
-                <?php if ( wc_coupons_enabled() ) { ?>
-                    <div class="coupon">
-                        <label for="coupon_code" class="screen-reader-text"><?php esc_html_e( 'Coupon:', 'woocommerce' ); ?></label> <input type="text" name="coupon_code" class="input-text" id="coupon_code" value="" placeholder="<?php esc_attr_e( 'Coupon code', 'woocommerce' ); ?>" /> <button type="submit" class="button<?php echo esc_attr( wc_wp_theme_get_element_class_name( 'button' ) ? ' ' . wc_wp_theme_get_element_class_name( 'button' ) : '' ); ?>" name="apply_coupon" value="<?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?>"><?php esc_html_e( 'Apply coupon', 'woocommerce' ); ?></button>
-                        <?php do_action( 'woocommerce_cart_coupon' ); ?>
-                    </div>
-                <?php } ?>
-
-                <button type="submit" class="button<?php echo esc_attr( wc_wp_theme_get_element_class_name( 'button' ) ? ' ' . wc_wp_theme_get_element_class_name( 'button' ) : '' ); ?>" name="update_cart" value="<?php esc_attr_e( 'Update cart', 'woocommerce' ); ?>"><?php esc_html_e( 'Update cart', 'woocommerce' ); ?></button>
-
-                <?php do_action( 'woocommerce_cart_actions' ); ?>
-
-                <?php wp_nonce_field( 'woocommerce-cart', 'woocommerce-cart-nonce' ); ?>
-            </td>
-        </tr>
-        <?php
-        ?>
-        <?php do_action( 'woocommerce_after_cart_contents' ); ?>
-        </tbody>
-    </table>
-
-    <?php do_action( 'woocommerce_after_cart_table' ); ?>
-</form>
-
-<?php do_action( 'woocommerce_before_cart_collaterals' ); ?>
-
-<div class="cart-collaterals">
-    <?php
-    /**
-     * Cart collaterals hook.
-     *
-     * @hooked woocommerce_cross_sell_display
-     * @hooked woocommerce_cart_totals - 10
-     */
-    do_action( 'woocommerce_cart_collaterals' );
-    ?>
-</div>
-
-<?php do_action( 'woocommerce_after_cart' ); ?>