Changeset - 25608b1653e7
[Not reviewed]
0 2 1
Christopher Neugebauer - 8 years ago 2016-09-02 04:33:23
chrisjrn@gmail.com
Moves reports forms into reporting sub package
3 files changed with 17 insertions and 14 deletions:
0 comments (0 inline, 0 general)
registrasion/forms.py
Show inline comments
...
 
@@ -326,37 +326,24 @@ class _ItemQuantityProductsFormSet(_HasProductsFields, forms.BaseFormSet):
 
                        _ItemQuantityProductsForm.CHOICE_FIELD,
 
                        "You may only choose each product type once.",
 
                    )
 
                    form.add_error(
 
                        _ItemQuantityProductsForm.QUANTITY_FIELD,
 
                        "You may only choose each product type once.",
 
                    )
 
                products.add(product)
 
                yield product, quantity
 

	
 
        for product in (all_products - products):
 
            yield product, 0
 

	
 
    def add_product_error(self, product, error):
 
        for form in self.forms:
 
            form.add_product_error(product, error)
 

	
 

	
 
class VoucherForm(forms.Form):
 
    voucher = forms.CharField(
 
        label="Voucher code",
 
        help_text="If you have a voucher code, enter it here",
 
        required=False,
 
    )
 

	
 

	
 
# Staff-facing forms.
 

	
 
class ProductAndCategoryForm(forms.Form):
 
    product = forms.ModelMultipleChoiceField(
 
        queryset=inventory.Product.objects.all(),
 
        required=False,
 
    )
 
    category = forms.ModelMultipleChoiceField(
 
        queryset=inventory.Category.objects.all(),
 
        required=False,
 
    )
registrasion/reporting/forms.py
Show inline comments
 
new file 100644
 
from registrasion.models import inventory
 

	
 
from django import forms
 

	
 
# Staff-facing forms.
 

	
 
class ProductAndCategoryForm(forms.Form):
 
    product = forms.ModelMultipleChoiceField(
 
        queryset=inventory.Product.objects.all(),
 
        required=False,
 
    )
 
    category = forms.ModelMultipleChoiceField(
 
        queryset=inventory.Category.objects.all(),
 
        required=False,
 
    )
registrasion/reporting/views.py
Show inline comments
 
import forms
 

	
 
from django.contrib.auth.decorators import user_passes_test
 
from django.core.urlresolvers import reverse
 
from django.db import models
 
from django.db.models import F, Q
 
from django.db.models import Sum
 
from django.db.models import Case, When, Value
 
from django.shortcuts import render
 

	
 
from registrasion import forms
 
from registrasion.models import commerce
 
from registrasion import views
 

	
 
from reports import get_all_reports
 
from reports import Report
 
from reports import report_view
 

	
 

	
 
@user_passes_test(views._staff_only)
 
def reports_list(request):
 
    ''' Lists all of the reports currently available. '''
 

	
 
    reports = []
 

	
 
    for report in get_all_reports():
 
        reports.append({
 
            "name": report.__name__,
 
            "url": reverse(report),
 
            "description": report.__doc__,
 
        })
 

	
 
    reports.sort(key=lambda report: report["name"])
 

	
 
    ctx = {
0 comments (0 inline, 0 general)