mirror of
https://github.com/frappe/erpnext.git
synced 2026-06-06 13:49:13 +00:00
[shopping-cart] cart via Jinja WIP
This commit is contained in:
@@ -5,81 +5,62 @@
|
||||
{% block script %}{% include "templates/includes/cart.js" %}{% endblock %}
|
||||
{% block style %}{% include "templates/includes/cart.css" %}{% endblock %}
|
||||
|
||||
|
||||
{% block header_actions %}
|
||||
{% if doc.items %}
|
||||
<button class="btn btn-primary btn-place-order btn-sm"
|
||||
type="button">
|
||||
{{ _("Place Order") }}</button>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% from "erpnext/templates/includes/macros.html" import item_name_and_description %}
|
||||
{% from "templates/includes/macros.html" import item_name_and_description %}
|
||||
|
||||
<div class="cart-content">
|
||||
<p class="text-muted loading">{{ _("Loading") }}...</p>
|
||||
<div id="cart-container">
|
||||
<div class="cart-header">
|
||||
<p class="pull-right"><button class="btn btn-primary btn-place-order btn-sm" type="button">
|
||||
{{ _("Place Order") }}</button></p>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<div id="cart-error" class="alert alert-danger" style="display: none;"></div>
|
||||
<div id="cart-error" class="alert alert-danger"
|
||||
style="display: none;"></div>
|
||||
<div id="cart-items">
|
||||
<div class="row cart-item-header">
|
||||
<div class="col-sm-8 col-xs-6">
|
||||
Items
|
||||
</div>
|
||||
<div class="col-sm-2 col-xs-3 text-right">
|
||||
Qty
|
||||
</div>
|
||||
<div class="col-sm-2 col-xs-3 text-right">
|
||||
Amount
|
||||
</div>
|
||||
</div>
|
||||
{% if doc.items %}
|
||||
{% for d in doc.items %}
|
||||
<div class="cart-item">
|
||||
<div class="row">
|
||||
<div class="col-sm-8 col-xs-6">
|
||||
{{ item_name_and_description(d) }}
|
||||
</div>
|
||||
<div class="col-sm-4 col-xs-6 text-right">
|
||||
<div class="item-update-cart">
|
||||
<div class="clearfix">
|
||||
<input type="text" placeholder="Qty"
|
||||
style="max-width: 60px"
|
||||
value="{{ d.qty }}"
|
||||
data-item-code="{{ d.item_code }}"
|
||||
class="text-right form-control pull-right">
|
||||
</div>
|
||||
<div class="text-right">
|
||||
<button class="btn btn-default btn-sm"
|
||||
data-item-code="{{ d.item_code }}">
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<p class="text-muted small" style="margin-top: 10px;">
|
||||
{{ _("Rate") + ': ' + d.get_formatted("rate") }}
|
||||
</p>
|
||||
<small style="margin-top: 10px;">
|
||||
{{ d.get_formatted("amount") }}</small>
|
||||
</div>
|
||||
</div>
|
||||
{% include "templates/includes/cart/cart_item_line.html" %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
<p>{{ _("Cart is Empty") }}</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div id="cart-taxes">
|
||||
</div>
|
||||
{% if doc.items %}
|
||||
<!-- taxes -->
|
||||
<div class="cart-taxes row small">
|
||||
<div class="col-sm-8"><!-- empty --></div>
|
||||
<div class="col-sm-4">
|
||||
{% include "templates/includes/order/order_taxes.html" %}
|
||||
</div>
|
||||
</div>
|
||||
<div id="cart-totals">
|
||||
</div>
|
||||
<div id="cart-addresses">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<h4>{{ _("Shipping Address") }}</h4>
|
||||
<div id="cart-shipping-address" class="panel-group"
|
||||
data-fieldname="shipping_address_name"></div>
|
||||
<button class="btn btn-default btn-sm" type="button" id="cart-add-shipping-address">
|
||||
{{ _("Manage Addresses") }}</button>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<h4>Billing Address</h4>
|
||||
<div id="cart-billing-address" class="panel-group"
|
||||
data-fieldname="customer_address"></div>
|
||||
<button class="btn btn-default btn-sm" type="button" id="cart-add-billing-address">
|
||||
{{ _("Manage Addresses") }}</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cart-addresses">
|
||||
{% include "templates/includes/cart/cart_address.html" %}
|
||||
</div>
|
||||
<p class="cart-footer text-right">
|
||||
<button class="btn btn-primary btn-place-order btn-sm" type="button">
|
||||
{{ _("Place Order") }}</button></p>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -10,5 +10,3 @@ from erpnext.shopping_cart.cart import get_cart_quotation
|
||||
|
||||
def get_context(context):
|
||||
context.update(get_cart_quotation())
|
||||
|
||||
print context
|
||||
|
||||
@@ -3,11 +3,11 @@
|
||||
<!-- <h6 class="text-muted">{{ doc._title or doc.doctype }}</h6> -->
|
||||
{% endblock %}
|
||||
|
||||
{% block style %}{% include "templates/includes/order.css" %}{% endblock %}
|
||||
{% block style %}{% include "templates/includes/order/order.css" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% from "erpnext/templates/includes/macros.html" import item_name_and_description %}
|
||||
{% from "erpnext/templates/includes/order/order_macros.html" import item_name_and_description %}
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-6">
|
||||
@@ -64,25 +64,7 @@
|
||||
<div class="order-taxes row small">
|
||||
<div class="col-sm-8"><!-- empty --></div>
|
||||
<div class="col-sm-4">
|
||||
{% if doc.taxes %}
|
||||
<div class="row">
|
||||
<div class="col-xs-6 text-right">{{ _("Net Total") }}</div>
|
||||
<div class="col-xs-6 text-right">
|
||||
{{ doc.get_formatted("net_total") }}</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% for d in doc.taxes %}
|
||||
<div class="row">
|
||||
<div class="col-xs-6 text-right">{{ d.description }}</div>
|
||||
<div class="col-xs-6 text-right">
|
||||
{{ d.get_formatted("total") }}</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
<div class="row">
|
||||
<div class="col-xs-6 text-right">{{ _("Grand Total") }}</div>
|
||||
<div class="col-xs-6 text-right">
|
||||
{{ doc.get_formatted("grand_total") }}</div>
|
||||
</div>
|
||||
{% include "erpnext/templates/includes/order/order_taxes.html" %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -9,6 +9,9 @@ from frappe import _
|
||||
def get_context(context):
|
||||
context.no_cache = 1
|
||||
context.doc = frappe.get_doc(frappe.form_dict.doctype, frappe.form_dict.name)
|
||||
if hasattr(context.doc, "set_indicator"):
|
||||
context.doc.set_indicator()
|
||||
|
||||
context.parents = frappe.form_dict.parents
|
||||
|
||||
if not context.doc.has_permission("read"):
|
||||
|
||||
Reference in New Issue
Block a user