{% if shopping_cart and shopping_cart.cart_settings.enabled %} {% set cart_settings = shopping_cart.cart_settings %} {% set product_info = shopping_cart.product_info %} <div class="item-cart row mt-2" data-variant-item-code="{{ item_code }}"> <div class="col-md-12"> {% if cart_settings.show_price and product_info.price %} <h4> {{ product_info.price.formatted_price_sales_uom }} <small class="text-muted">({{ product_info.price.formatted_price }} / {{ product_info.uom }})</small> </h4> {% endif %} {% if cart_settings.show_stock_availability %} <div> {% if product_info.in_stock == 0 %} <span class="text-danger"> {{ _('Not in stock') }} </span> {% elif product_info.in_stock == 1 %} <span class="text-success"> {{ _('In stock') }} {% if product_info.show_stock_qty and product_info.stock_qty %} ({{ product_info.stock_qty[0][0] }}) {% endif %} </span> {% endif %} </div> {% endif %} {% if product_info.price and (cart_settings.allow_items_not_in_stock or product_info.in_stock) %} <div class="mt-3"> <a href="/cart" class="btn btn-light btn-view-in-cart {% if not product_info.qty %}hidden{% endif %}" role="button" > {{ _("View in Cart") }} </a> <button data-item-code="{{item_code}}" class="btn btn-outline-primary btn-add-to-cart {% if product_info.qty %}hidden{% endif %}" > {{ _("Add to Cart") }} </button> </div> {% endif %} </div> </div> <script> frappe.ready(() => { $('.page_content').on('click', '.btn-add-to-cart', (e) => { const $btn = $(e.currentTarget); $btn.prop('disabled', true); const item_code = $btn.data('item-code'); erpnext.shopping_cart.update_cart({ item_code, qty: 1, callback(r) { $btn.prop('disabled', false); if (r.message) { $('.btn-add-to-cart, .btn-view-in-cart').toggleClass('hidden'); } } }); }); }); </script> {% endif %}