diff --git a/expenses_claim/__init__.py b/expenses_claim/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/expenses_claim/admin.py b/expenses_claim/admin.py deleted file mode 100644 index 8c38f3f..0000000 --- a/expenses_claim/admin.py +++ /dev/null @@ -1,3 +0,0 @@ -from django.contrib import admin - -# Register your models here. diff --git a/expenses_claim/apps.py b/expenses_claim/apps.py deleted file mode 100644 index 677ef5c..0000000 --- a/expenses_claim/apps.py +++ /dev/null @@ -1,5 +0,0 @@ -from django.apps import AppConfig - - -class ExpensesClaimConfig(AppConfig): - name = 'expenses_claim' diff --git a/expenses_claim/forms.py b/expenses_claim/forms.py deleted file mode 100644 index 0c40442..0000000 --- a/expenses_claim/forms.py +++ /dev/null @@ -1,30 +0,0 @@ -"""Expenses claim form.""" - -from django import forms -from string import ascii_uppercase - - -class ExpensesClaim(forms.Form): - """Expenses claim form""" - - name = forms.CharField(label='Nimi', max_length=100) - iban = forms.CharField(label='IBAN', max_length=100) - amount = forms.DecimalField(label="Summa", decimal_places=2) - - def clean_iban(self): - """Validate IBAN.""" - data = self.cleaned_data['iban'] - # Remove spaces. - data = data.replace(" ", "") - # Move first 4 symbols to the end of the string. - data = data[4:] + data[0:4] - LETTERS = {letter: str(index) for index, - letter in enumerate(ascii_uppercase, start=10)} - data = data.upper() - # Replace all letters with numbers, so that A=10, B=11, ..., Z=35. - data = [LETTERS[char] if char in LETTERS else char for char in data] - data = ''.join(data) - # If data modulo 97 != 1 the IBAN number is invalid. - if int(data) % 97 != 1: - raise forms.ValidationError("Invalid IBAN number!") - return data diff --git a/expenses_claim/migrations/__init__.py b/expenses_claim/migrations/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/expenses_claim/models.py b/expenses_claim/models.py deleted file mode 100644 index 71a8362..0000000 --- a/expenses_claim/models.py +++ /dev/null @@ -1,3 +0,0 @@ -from django.db import models - -# Create your models here. diff --git a/expenses_claim/templates/claim.html b/expenses_claim/templates/claim.html deleted file mode 100644 index 2ac03ad..0000000 --- a/expenses_claim/templates/claim.html +++ /dev/null @@ -1,7 +0,0 @@ -Dis is claim - -
diff --git a/expenses_claim/tests.py b/expenses_claim/tests.py deleted file mode 100644 index da4307c..0000000 --- a/expenses_claim/tests.py +++ /dev/null @@ -1,54 +0,0 @@ -from django.test import TestCase -from .forms import ExpensesClaim - - -class ExpensesClaimTest(TestCase): - """Test expenses claim form.""" - - def test_valid_data1(self): - form = ExpensesClaim({ - 'name': "John Doe", - 'iban': "FI37 1590 3000 0007 76", - 'amount': 12.54 - }) - self.assertTrue(form.is_valid()) - - def test_valid_data2(self): - form = ExpensesClaim({ - 'name': "John Cena", - 'iban': "AL35202111090000000001234567", - 'amount': 12 - }) - self.assertTrue(form.is_valid()) - - def test_valid_data3(self): - form = ExpensesClaim({ - 'name': "John Wayne", - 'iban': "BR1500000000000010932840814P2", - 'amount': 12.0 - }) - self.assertTrue(form.is_valid()) - - def test_invalid_iban(self): - form = ExpensesClaim({ - 'name': "John Lennon", - 'iban': "FI3734 1590 3000 0007 76", - 'amount': 12.54 - }) - self.assertFalse(form.is_valid()) - - def test_invalid_amount(self): - form = ExpensesClaim({ - 'name': "John Kenedy", - 'iban': "FI37 1590 3000 0007 76", - 'amount': "asd" - }) - self.assertFalse(form.is_valid()) - - def test_invalid_amount_decimal_places(self): - form = ExpensesClaim({ - 'name': "John Travolta", - 'iban': "FI37 1590 3000 0007 76", - 'amount': 12.544 - }) - self.assertFalse(form.is_valid()) diff --git a/expenses_claim/urls.py b/expenses_claim/urls.py deleted file mode 100644 index b7883da..0000000 --- a/expenses_claim/urls.py +++ /dev/null @@ -1,9 +0,0 @@ -"""Expenses claim urls.""" - -from django.conf.urls import url -from .views import claim - - -urlpatterns = [ - url(r'^new', claim) -] diff --git a/expenses_claim/views.py b/expenses_claim/views.py deleted file mode 100644 index d6ee399..0000000 --- a/expenses_claim/views.py +++ /dev/null @@ -1,22 +0,0 @@ -"""Expenses claim views.""" - -from django.shortcuts import render -from django.views.decorators.http import require_http_methods -from django.http import HttpResponse -from .forms import ExpensesClaim - - -# Allow only GET or POST -@require_http_methods(["GET", "POST"]) -def claim(request): - """Render expenses claim form.""" - - if request.method == 'POST': - form = ExpensesClaim(request.POST) - if form.is_valid(): - return HttpResponse() - - elif request.method == 'GET': - form = ExpensesClaim() - - return render(request, 'claim.html', {'form': form}) diff --git a/sikweb/base.py b/sikweb/base.py index 3e56866..ba33914 100644 --- a/sikweb/base.py +++ b/sikweb/base.py @@ -105,7 +105,6 @@ INSTALLED_APPS = [ 'phonenumber_field', 'import_export', 'django_filters', - 'expenses_claim', ] IMPORT_EXPORT_USE_TRANSACTIONS = True diff --git a/sikweb/urls.py b/sikweb/urls.py index 5a721db..a73f055 100644 --- a/sikweb/urls.py +++ b/sikweb/urls.py @@ -27,7 +27,6 @@ import webapp.urls import infoscreen.urls import members.urls import coffee_scale.urls -import expenses_claim.urls favicon_view = RedirectView.as_view( url='static/img/favicon.png', permanent=True) @@ -40,7 +39,6 @@ urlpatterns = [ url(r'^coffee/', include('coffee_scale.urls')), url(r'^kaehmy/', include('kaehmy.urls')), url(r'^ohlhafv/', include('ohlhafv.urls')), - url(r'^expenses/', include('expenses_claim.urls')), # favourite icon url(r'^favicon\.ico$', favicon_view),