[cleanup] [wip] portal, shopping cart cleanup
diff --git a/erpnext/templates/pages/cart.html b/erpnext/templates/pages/cart.html
index e4e4a6a..2e15728 100644
--- a/erpnext/templates/pages/cart.html
+++ b/erpnext/templates/pages/cart.html
@@ -3,53 +3,84 @@
{% block header %}<h2>{{ _("My Cart") }}</h2>{% endblock %}
{% block script %}{% include "templates/includes/cart.js" %}{% endblock %}
+{% block style %}{% include "templates/includes/cart.css" %}{% endblock %}
{% block content %}
+
+{% from "erpnext/templates/includes/macros.html" import item_name_and_description %}
+
<div class="cart-content">
- <div class="text-muted progress">{{ _("Loading") }}...</div>
- <div id="cart-container" class="hide">
- <p class="pull-right"><button class="btn btn-success btn-place-order" type="button">
- {{ _("Place Order") }}</button></p>
- <div class="clearfix"></div>
+ <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>
- <hr>
- <div class="row">
- <div class="col-md-9 col-sm-9">
- <div class="row">
- <div class="col-md-9 col-md-offset-3"><h4>{{ _("Item Details") }}</h4></div>
- </div>
- </div>
- <div class="col-md-3 col-sm-3 text-right"><h4>{{ _("Qty, Amount") }}</h4></div>
- </div><hr>
- <div id="cart-items">
- </div>
- <div id="cart-taxes">
- </div>
- <div id="cart-totals">
- </div>
- <hr>
- <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" type="button" id="cart-add-shipping-address">
- <span class="icon icon-list"></span> {{ _("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" type="button" id="cart-add-billing-address">
- <span class="icon icon-list"></span> {{ _("Manage Addresses") }}</button>
- </div>
- </div>
- <hr>
- </div>
- <p class="pull-right"><button class="btn btn-success btn-place-order" type="button">
- {{ _("Place Order") }}</button></p>
- </div>
+ <div id="cart-items">
+ {% 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>
+ </div>
+ {% endfor %}
+ {% else %}
+ <p>{{ _("Cart is Empty") }}</p>
+ {% endif %}
+ </div>
+ <div id="cart-taxes">
+ </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>
+ <p class="cart-footer text-right">
+ <button class="btn btn-primary btn-place-order btn-sm" type="button">
+ {{ _("Place Order") }}</button></p>
+ </div>
+ </div>
</div>
<!-- no-sidebar -->
diff --git a/erpnext/templates/pages/cart.py b/erpnext/templates/pages/cart.py
index fe50f0f..bb8645d 100644
--- a/erpnext/templates/pages/cart.py
+++ b/erpnext/templates/pages/cart.py
@@ -2,7 +2,13 @@
# License: GNU General Public License v3. See license.txt
from __future__ import unicode_literals
-from __future__ import unicode_literals
-
no_cache = 1
-no_sitemap = 1
\ No newline at end of file
+no_sitemap = 1
+
+import frappe
+from erpnext.shopping_cart.cart import get_cart_quotation
+
+def get_context(context):
+ context.update(get_cart_quotation())
+
+ print context
diff --git a/erpnext/templates/pages/order.html b/erpnext/templates/pages/order.html
new file mode 100644
index 0000000..c3bca5b
--- /dev/null
+++ b/erpnext/templates/pages/order.html
@@ -0,0 +1,90 @@
+{% block header %}
+<h1>{{ doc.name }}</h1>
+<!-- <h6 class="text-muted">{{ doc._title or doc.doctype }}</h6> -->
+{% endblock %}
+
+{% block style %}{% include "templates/includes/order.css" %}{% endblock %}
+
+{% block content %}
+
+{% from "erpnext/templates/includes/macros.html" import item_name_and_description %}
+
+<div class="row">
+ <div class="col-xs-6">
+ <span class="indicator {{ doc.indicator_color or "darkgrey" }}">
+ {{ doc.indicator_title or doc.status or "Submitted" }}
+ </span>
+ </div>
+ <div class="col-xs-6 text-muted text-right h6">
+ {{ doc.get_formatted("transaction_date") }}
+ </div>
+</div>
+
+{% if doc._header %}
+{{ doc._header }}
+{% endif %}
+
+<div class="order-container">
+
+ <!-- items -->
+ <div class="order-item-table">
+ <div class="row order-items order-item-header">
+ <div class="col-sm-8 col-xs-6 h6">
+ {{ _("Item") }}
+ </div>
+ <div class="col-sm-2 col-xs-3 text-right h6">
+ {{ _("Quantity") }}
+ </div>
+ <div class="col-sm-2 col-xs-3 text-right h6">
+ {{ _("Amount") }}
+ </div>
+ </div>
+ {% for d in doc.items %}
+ <div class="row order-items">
+ <div class="col-sm-8 col-xs-6">
+ {{ item_name_and_description(d) }}
+ </div>
+ <div class="col-sm-2 col-xs-3 text-right">
+ {{ d.qty }}
+ {% if d.delivered_qty != None %}
+ <p class="text-muted small">{{
+ _("Delivered: {0}").format(d.delivered_qty) }}</p>
+ {% endif %}
+ </div>
+ <div class="col-sm-2 col-xs-3 text-right">
+ {{ d.get_formatted("amount") }}
+ <p class="text-muted small">{{
+ _("Rate: {0}").format(d.get_formatted("rate")) }}</p>
+ </div>
+ </div>
+ {% endfor %}
+ </div>
+
+ <!-- taxes -->
+ <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>
+ </div>
+ </div>
+</div>
+
+{% endblock %}
diff --git a/erpnext/templates/pages/order.py b/erpnext/templates/pages/order.py
new file mode 100644
index 0000000..260490d
--- /dev/null
+++ b/erpnext/templates/pages/order.py
@@ -0,0 +1,15 @@
+# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
+# License: GNU General Public License v3. See license.txt
+
+from __future__ import unicode_literals
+import frappe
+
+from frappe import _
+
+def get_context(context):
+ context.no_cache = 1
+ context.doc = frappe.get_doc(frappe.form_dict.doctype, frappe.form_dict.name)
+ context.parents = frappe.form_dict.parents
+
+ if not context.doc.has_permission("read"):
+ frappe.throw(_("Not Permitted"), frappe.PermissionError)