aboutsummaryrefslogtreecommitdiffstats
path: root/servo
diff options
context:
space:
mode:
authorFilipp Lepalaan <filipp@mac.com>2015-10-08 10:49:01 +0300
committerFilipp Lepalaan <filipp@mac.com>2015-10-08 10:49:01 +0300
commitba1315d8a611f1b891cfd6610fbd053077357cb7 (patch)
tree23988641efd2fefaf9af4cbe3b2f26a143bc6558 /servo
parent2a7251afa0438b1472c66932a4c22d378ae15c28 (diff)
downloadServo-ba1315d8a611f1b891cfd6610fbd053077357cb7.tar.gz
Servo-ba1315d8a611f1b891cfd6610fbd053077357cb7.tar.bz2
Servo-ba1315d8a611f1b891cfd6610fbd053077357cb7.zip
Add Dispatch & Close
Diffstat (limited to 'servo')
-rw-r--r--servo/forms/invoices.py6
-rwxr-xr-xservo/templates/orders/dispatch.html5
-rw-r--r--servo/views/invoices.py5
3 files changed, 16 insertions, 0 deletions
diff --git a/servo/forms/invoices.py b/servo/forms/invoices.py
index 509b291..dbff182 100644
--- a/servo/forms/invoices.py
+++ b/servo/forms/invoices.py
@@ -34,6 +34,12 @@ class InvoiceForm(forms.ModelForm):
}
localized_fields = ('total_net', 'total_tax', 'total_gross')
+ close = forms.BooleanField(
+ initial=False,
+ required=False,
+ widget=forms.HiddenInput
+ )
+
class InvoiceSearchForm(forms.Form):
state = forms.ChoiceField(
diff --git a/servo/templates/orders/dispatch.html b/servo/templates/orders/dispatch.html
index 41126c7..8802dca 100755
--- a/servo/templates/orders/dispatch.html
+++ b/servo/templates/orders/dispatch.html
@@ -12,6 +12,7 @@
</div>
<form method="post" action="" accept-charset="utf8">
{% csrf_token %}
+ {{ form.close }}
{{ formset.management_form }}
<div class="row-fluid">
<div class="span3">
@@ -92,6 +93,7 @@
<div class="form-actions">
<div class="pull-right">
<a class="btn btn-default" href="{{ order.get_absolute_url }}">{% trans "Cancel" %}</a>
+ <button type="submit" class="btn btn-default" id="btn_dispatch_close">{% trans "Dispatch and Close" %}</button>
<button type="submit" class="btn btn-primary">{% trans "Dispatch" %}</button>
</div>
</div>
@@ -108,6 +110,9 @@
{% block media %}
<script type="text/javascript">
+ $('#btn_dispatch_close').click(function(){
+ $('#id_invoice-close').val('True');
+ })
$('.clonerow').click(function() {
cloneMore('.formrow:last', 'payment', true);
});
diff --git a/servo/views/invoices.py b/servo/views/invoices.py
index 2fb7b26..6b77c8b 100644
--- a/servo/views/invoices.py
+++ b/servo/views/invoices.py
@@ -159,6 +159,11 @@ def create_invoice(request, order_id=None, numbers=None):
messages.success(request, _(u'Order %s dispatched') % order.code)
except Exception as e:
messages.error(request, e)
+
+ if form.cleaned_data.get('close'):
+ order.close(request.user)
+ messages.success(request, _(u'Order %s closed') % order.code)
+
return redirect(order)
else:
messages.error(request, form.errors)