From 2c9b1125626aaec4254e73fd2fc60a1d04ee48b2 Mon Sep 17 00:00:00 2001
From: Oliver Walters <oliver.henry.walters@gmail.com>
Date: Thu, 23 Apr 2020 21:48:39 +1000
Subject: [PATCH] PEP fixes

---
 InvenTree/InvenTree/status_codes.py         |  1 +
 InvenTree/company/views.py                  |  1 -
 InvenTree/order/views.py                    |  2 +-
 InvenTree/part/templatetags/status_codes.py | 17 +++++++++++++----
 InvenTree/part/views.py                     |  1 -
 InvenTree/templates/table_filters.html      |  2 ++
 6 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/InvenTree/InvenTree/status_codes.py b/InvenTree/InvenTree/status_codes.py
index f1367b9c65..754a666d96 100644
--- a/InvenTree/InvenTree/status_codes.py
+++ b/InvenTree/InvenTree/status_codes.py
@@ -140,6 +140,7 @@ class SalesOrderStatus(StatusCode):
         RETURNED: "warning",
     }
 
+
 class StockStatus(StatusCode):
 
     OK = 10  # Item is OK
diff --git a/InvenTree/company/views.py b/InvenTree/company/views.py
index 5fe784ddc4..3f8cde21d3 100644
--- a/InvenTree/company/views.py
+++ b/InvenTree/company/views.py
@@ -13,7 +13,6 @@ from django.urls import reverse
 from django.forms import HiddenInput
 
 from InvenTree.views import AjaxCreateView, AjaxUpdateView, AjaxDeleteView
-from InvenTree.status_codes import PurchaseOrderStatus
 from InvenTree.helpers import str2bool
 
 from common.models import Currency
diff --git a/InvenTree/order/views.py b/InvenTree/order/views.py
index 9f150246b7..8242b98daf 100644
--- a/InvenTree/order/views.py
+++ b/InvenTree/order/views.py
@@ -412,7 +412,7 @@ class SalesOrderCancel(AjaxUpdateView):
         valid = False
 
         if not confirm:
-            forms.errors['confirm'] = [_('Confirm order cancellation')]
+            form.errors['confirm'] = [_('Confirm order cancellation')]
         else:
             valid = True
 
diff --git a/InvenTree/part/templatetags/status_codes.py b/InvenTree/part/templatetags/status_codes.py
index 6ede4415e2..704bcd3b7c 100644
--- a/InvenTree/part/templatetags/status_codes.py
+++ b/InvenTree/part/templatetags/status_codes.py
@@ -30,7 +30,16 @@ def build_status(key, *args, **kwargs):
     return mark_safe(BuildStatus.render(key))
 
 
-@register.simple_tag
-def sales_order_codes(*args, **kwargs):
-    print("doing")
-    return "hello world"
\ No newline at end of file
+@register.simple_tag(takes_context=True)
+def load_status_codes(context):
+    """
+    Make the various StatusCodes available to the page context
+    """
+
+    context['purchase_order_status_codes'] = PurchaseOrderStatus.list()
+    context['sales_order_status_codes'] = SalesOrderStatus.list()
+    context['stock_status_codes'] = StockStatus.list()
+    context['build_status_codes'] = BuildStatus.list()
+
+    # Need to return something as the result is rendered to the page
+    return ''
diff --git a/InvenTree/part/views.py b/InvenTree/part/views.py
index fd38356fea..458696b75c 100644
--- a/InvenTree/part/views.py
+++ b/InvenTree/part/views.py
@@ -38,7 +38,6 @@ from InvenTree.views import AjaxView, AjaxCreateView, AjaxUpdateView, AjaxDelete
 from InvenTree.views import QRCodeView
 
 from InvenTree.helpers import DownloadFile, str2bool
-from InvenTree.status_codes import PurchaseOrderStatus, BuildStatus
 
 
 class PartIndex(ListView):
diff --git a/InvenTree/templates/table_filters.html b/InvenTree/templates/table_filters.html
index 31264f461a..ccaea8ecab 100644
--- a/InvenTree/templates/table_filters.html
+++ b/InvenTree/templates/table_filters.html
@@ -1,6 +1,8 @@
 {% load i18n %}
 {% load status_codes %}
 
+{% load_status_codes %}
+
 <script type='text/javascript'>
 
 {% include "status_codes.html" with label='stock' options=stock_status_codes %}