diff --git a/fet2020/members/admin.py b/fet2020/members/admin.py index 3e89f891..ec6a4b32 100644 --- a/fet2020/members/admin.py +++ b/fet2020/members/admin.py @@ -1,8 +1,8 @@ from django.contrib import admin from django.utils.translation import gettext as _ -from .models import Member, Job, JobGroup, JobMember -from .forms import MemberForm, JobForm, JobGroupForm +from .forms import JobForm, JobGroupForm, MemberForm +from .models import Job, JobGroup, JobMember, Member class MemberRoleFilter(admin.SimpleListFilter): diff --git a/fet2020/members/forms.py b/fet2020/members/forms.py index 7029ac02..c63d9fc9 100644 --- a/fet2020/members/forms.py +++ b/fet2020/members/forms.py @@ -1,8 +1,8 @@ +from ckeditor_uploader.widgets import CKEditorUploadingWidget + from django import forms from django.utils.translation import gettext_lazy as _ -from ckeditor_uploader.widgets import CKEditorUploadingWidget - from .models import Member, Job, JobGroup diff --git a/fet2020/members/managers.py b/fet2020/members/managers.py index 69968560..073ed7c7 100644 --- a/fet2020/members/managers.py +++ b/fet2020/members/managers.py @@ -1,9 +1,9 @@ +from datetime import timedelta + from django.db import models from django.db.models import Q from django.utils import timezone -from datetime import timedelta - class ActiveJobMemberManager(models.Manager): """return a list of active member, and members who are still working.""" diff --git a/fet2020/members/models.py b/fet2020/members/models.py index 4673c13e..d89afc40 100644 --- a/fet2020/members/models.py +++ b/fet2020/members/models.py @@ -1,12 +1,13 @@ import logging +from easy_thumbnails.fields import ThumbnailerImageField + from django.contrib.auth.models import User from django.core.validators import ValidationError, validate_email from django.db import models from django.urls import reverse from django.utils.text import slugify from django.utils.translation import gettext_lazy as _ -from easy_thumbnails.fields import ThumbnailerImageField from .managers import ( ActiveJobMemberManager, @@ -40,7 +41,7 @@ class Member(models.Model): max_length=128, validators=[validate_email, validate_domainonly_email], error_messages={ - 'unique': _("Diese Mailadresse existiert schon."), + "unique": _("Diese Mailadresse existiert schon."), }, ) diff --git a/fet2020/members/serializers.py b/fet2020/members/serializers.py index 3a624b70..a15213d0 100644 --- a/fet2020/members/serializers.py +++ b/fet2020/members/serializers.py @@ -1,7 +1,7 @@ -from .models import Member, Job, JobGroup, JobMember - from rest_framework import serializers +from .models import Member, Job, JobGroup, JobMember + class MemberSerializer(serializers.HyperlinkedModelSerializer): class Meta: diff --git a/fet2020/members/tests.py b/fet2020/members/tests.py index dbb89903..6fd3941b 100644 --- a/fet2020/members/tests.py +++ b/fet2020/members/tests.py @@ -3,12 +3,13 @@ import os from django.core.files.uploadedfile import SimpleUploadedFile from django.test import TestCase -from .models import Member, Job, JobGroup -from .forms import MemberForm, JobForm, JobGroupForm +from .forms import JobForm, JobGroupForm, MemberForm +from .models import Job, JobGroup, Member image_path = os.path.join(os.path.dirname(__file__), "tests/files/peter.jpg") + class MemberTestCase(TestCase): def setUp(self): member = Member() @@ -89,8 +90,7 @@ class MemberFormTestCase(TestCase): self.assertFalse(form.is_valid()) self.assertEqual( - form.errors.as_data()['__all__'][0].message, - "Es fehlt das Profilbild." + form.errors.as_data()["__all__"][0].message, "Es fehlt das Profilbild." ) def test_form_wrong_mailaccount(self): @@ -113,8 +113,8 @@ class MemberFormTestCase(TestCase): self.assertFalse(form.is_valid()) self.assertEqual( - form.errors.as_data()['mailaccount'][0].message, - "In der Mailadresse fehlt die richtige Domäne." + form.errors.as_data()["mailaccount"][0].message, + "In der Mailadresse fehlt die richtige Domäne.", ) def test_form_wrong_domain(self): @@ -137,8 +137,8 @@ class MemberFormTestCase(TestCase): self.assertFalse(form.is_valid()) self.assertEqual( - form.errors.as_data()['mailaccount'][0].message, - "Gib eine gültige E-Mail Adresse an." + form.errors.as_data()["mailaccount"][0].message, + "Gib eine gültige E-Mail Adresse an.", ) def test_form_wrong_phone_number(self): @@ -160,11 +160,11 @@ class MemberFormTestCase(TestCase): files={"image": image}, ) - self.assertFalse(form.is_valid()) + self.assertFalse(form.is_valid()) self.assertEqual( - form.errors.as_data()['phone'][0].message, + form.errors.as_data()["phone"][0].message, "Telefonnummer muss in diesem Format +999999999999 eingegeben werden. " - "Bis zu 15 Zahlen sind erlaubt." + "Bis zu 15 Zahlen sind erlaubt.", ) diff --git a/fet2020/members/validators.py b/fet2020/members/validators.py index 9d3c3f80..a2fd8b89 100644 --- a/fet2020/members/validators.py +++ b/fet2020/members/validators.py @@ -16,10 +16,12 @@ def validate_domainonly_email(value): if not "fet.at" in value: raise ValidationError(_("In der Mailadresse fehlt die richtige Domäne.")) + def validate_file_size(value): if value.size > 10 * 1024 * 1024: raise ValidationError(_("Die maximale Dateigröße ist 10MB.")) + def validate_image_dimension(value): if value.height < 150 or value.width < 150: raise ValidationError( @@ -27,5 +29,5 @@ def validate_image_dimension(value): params={ "height": value.height, "width": value.width, - } + }, ) diff --git a/fet2020/members/views.py b/fet2020/members/views.py index b3d7a884..aad2f9be 100644 --- a/fet2020/members/views.py +++ b/fet2020/members/views.py @@ -1,11 +1,10 @@ import logging +from collections import deque from django.http import Http404 from django.shortcuts import render -from collections import deque from core.models import CustomFlatPage - from .models import Member, JobMember, JobGroup logger = logging.getLogger(__name__)