From dc263ee28cfd1399452dfc20f6d58cb53218f7d5 Mon Sep 17 00:00:00 2001 From: Patrick Mayr Date: Wed, 5 Mar 2025 17:51:23 +0100 Subject: [PATCH] ruff formating --- fet2020/authentications/urls.py | 2 +- fet2020/authentications/views.py | 2 +- fet2020/documents/api.py | 20 +++++++++++--------- fet2020/finance/admin.py | 5 +++-- fet2020/finance/forms.py | 12 +++++++----- fet2020/finance/models.py | 4 ++-- fet2020/finance/utils.py | 10 +++++----- fet2020/intern/models.py | 6 +++--- fet2020/posts/managers.py | 14 +++++++------- 9 files changed, 40 insertions(+), 35 deletions(-) diff --git a/fet2020/authentications/urls.py b/fet2020/authentications/urls.py index addf6232..2af909da 100644 --- a/fet2020/authentications/urls.py +++ b/fet2020/authentications/urls.py @@ -6,7 +6,7 @@ app_name = apps.AuthenticationsConfig.name urlpatterns = [ path("login/", views.AuthLoginView.as_view(), name="login"), - path("logout/", views.logoutUser, name="logout"), + path("logout/", views.logout_user, name="logout"), path( "change-password/", views.LdapPasswordChangeView.as_view(), diff --git a/fet2020/authentications/views.py b/fet2020/authentications/views.py index e83e2338..108edb36 100644 --- a/fet2020/authentications/views.py +++ b/fet2020/authentications/views.py @@ -19,7 +19,7 @@ class AuthLoginView(LoginView): @authenticated_user -def logoutUser(request): +def logout_user(request): logout(request) try: diff --git a/fet2020/documents/api.py b/fet2020/documents/api.py index 6b3ade47..eaef552c 100644 --- a/fet2020/documents/api.py +++ b/fet2020/documents/api.py @@ -1,5 +1,5 @@ import logging -import os +from pathlib import Path from urllib.parse import urljoin from django.conf import settings @@ -14,11 +14,11 @@ def get_ep_client(): ep_c = None # Get api key from settings - if not os.path.isfile(api_key_path): + if not Path(api_key_path).is_file(): logger.info("API Key file is missing. Path: %s", api_key_path) return None - with open(os.path.abspath(api_key_path)) as f: + with Path(Path(api_key_path).resolve()).open() as f: api_key = f.read() api_key = api_key.rstrip() @@ -120,13 +120,13 @@ def ep_create_new_pad(pad_id: str, text="helloworld") -> str: ep_c.createGroupPad(groupID=ep_group["groupID"], padName=pad_id, text=text) logger.info("Create new etherpad '%s'.", pad_id) - return pad_id + return pad_id def ep_get_html(pad_id: str) -> str: if not pad_id: return None - + if not (ep_c := get_ep_client()): return None @@ -135,14 +135,14 @@ def ep_get_html(pad_id: str) -> str: if not ep_pad_exists(pad_id): return None - + return ep_c.getHTML(padID=ep_group["groupID"] + "$" + pad_id)["html"] def ep_set_html(pad_id: str, html: str) -> bool: if not pad_id: return None - + if not (ep_c := get_ep_client()): return None @@ -151,7 +151,7 @@ def ep_set_html(pad_id: str, html: str) -> bool: if not ep_pad_exists(pad_id): return None - + ep_c.setHTML(padID=ep_group["groupID"] + "$" + pad_id, html=html) return True @@ -166,4 +166,6 @@ def ep_get_url(pad_id: str): if not ep_pad_exists(pad_id): return None - return urljoin(settings.ETHERPAD_CLIENT["exturl"], "p/" + ep_group["groupID"] + "$" + str(pad_id)) + return urljoin( + settings.ETHERPAD_CLIENT["exturl"], "p/" + ep_group["groupID"] + "$" + str(pad_id) + ) diff --git a/fet2020/finance/admin.py b/fet2020/finance/admin.py index 7a091222..d60c794b 100644 --- a/fet2020/finance/admin.py +++ b/fet2020/finance/admin.py @@ -108,7 +108,7 @@ class BillPeriodeFilter(admin.SimpleListFilter): if self.value(): try: - period = datetime.strptime(self.value()[:4], "%Y") + period = datetime.strptime(self.value()[:4], "%Y") # noqa: DTZ007 except Exception: # If choice is 'All', return all bills. qs = queryset @@ -671,7 +671,8 @@ class WirefAdmin(admin.ModelAdmin): else: self.message_user( request, - "Das PDF-Dokument konnte nicht generiert werden, da der Status nicht auf 'Offen' gesetzt ist.", + "Das PDF-Dokument konnte nicht generiert werden, da der Status nicht auf " + "'Offen' gesetzt ist.", messages.WARNING, ) return HttpResponseRedirect(".") diff --git a/fet2020/finance/forms.py b/fet2020/finance/forms.py index 54bdbb9e..7a5e671b 100644 --- a/fet2020/finance/forms.py +++ b/fet2020/finance/forms.py @@ -1,7 +1,7 @@ -from datetime import datetime -from dateutil.relativedelta import relativedelta +import datetime import decimal +from dateutil.relativedelta import relativedelta from django import forms from django.core.validators import ValidationError from django.db.models import Count, Q @@ -35,8 +35,10 @@ def get_cleaned_data(cleaned_data): cleaned_data["resolution"] = Resolution.objects.get( Q(id=resolution) | Q(name=resolution), ) - except Exception: - raise ValidationError({"resolution_text": "Es gibt keinen Beschluss mit dieser ID."}) + except Exception as exc: + raise ValidationError( + {"resolution_text": "Es gibt keinen Beschluss mit dieser ID."} + ) from exc # If payer is 'Me', you need name, iban and bic data. if payer == Bill.Payer.ME: @@ -575,7 +577,7 @@ class BillAdminForm(forms.ModelForm): self.fields["resolution"].queryset = self.fields["resolution"].queryset.filter( ( Q(option=Resolution.Option.FINANCE) - & Q(date__gt=datetime.now().date() - relativedelta(years=2)) + & Q(date__gt=datetime.datetime.now(tz=datetime.UTC).date() - relativedelta(years=2)) ) | Q(option=Resolution.Option.PERMANENT) ) diff --git a/fet2020/finance/models.py b/fet2020/finance/models.py index d447a11b..0651d4c5 100644 --- a/fet2020/finance/models.py +++ b/fet2020/finance/models.py @@ -162,7 +162,7 @@ class Resolution(models.Model): class Wiref(models.Model): - wiref_id = models.CharField(max_length=10, blank=True, null=True) + wiref_id = models.CharField(max_length=10, blank=True, default="") file_field = models.FileField( upload_to="uploads/finance/wiref/", @@ -253,7 +253,7 @@ class Bill(models.Model): null=True, ) - comment = models.TextField(blank=True, null=True) + comment = models.TextField(blank=True, default="") class Status(models.TextChoices): SUBMITTED = "S", "Eingereicht" diff --git a/fet2020/finance/utils.py b/fet2020/finance/utils.py index f77c4e05..6211348a 100644 --- a/fet2020/finance/utils.py +++ b/fet2020/finance/utils.py @@ -1,10 +1,10 @@ import datetime import io -import os +from pathlib import Path from django.core.files import File from pypdf import PdfReader, PdfWriter -from pypdf.constants import FieldDictionaryAttributes as FA +from pypdf.constants import FieldDictionaryAttributes as FA # noqa: N814 from .models import Bill, Fee, Wiref @@ -34,7 +34,7 @@ def generate_pdf(wiref): ) # Get budget year - today = datetime.date.today() + today = datetime.datetime.now(tz=datetime.UTC).date() if today.month < 7: budget_year = f"{today.year - 1}-{today.year}" else: @@ -55,7 +55,7 @@ def generate_pdf(wiref): ) # Write data in pdf - pdf_path = os.path.join(os.path.dirname(__file__), "static/wiref/Vorlage.pdf") + pdf_path = Path(Path(__file__).parent) / "static/wiref/Vorlage.pdf" reader = PdfReader(pdf_path) writer = PdfWriter() writer.append(reader) @@ -117,7 +117,7 @@ def generate_fee_pdf(fee: Fee): ) # Write data in pdf - pdf_path = os.path.join(os.path.dirname(__file__), "static/fee/Honorarnote-Vorlage.pdf") + pdf_path = Path(Path(__file__).parent) / "static/fee/Honorarnote-Vorlage.pdf" reader = PdfReader(pdf_path) writer = PdfWriter() writer.append(reader) diff --git a/fet2020/intern/models.py b/fet2020/intern/models.py index 9c25b66b..669633bd 100644 --- a/fet2020/intern/models.py +++ b/fet2020/intern/models.py @@ -20,7 +20,7 @@ class TopicGroup(models.Model): shortterm = models.CharField(max_length=128, unique=True, blank=True) slug = models.SlugField(unique=True) - short_description = models.TextField(null=True, blank=True) + short_description = models.TextField(blank=True, default="") order = models.PositiveSmallIntegerField( verbose_name="Reihenfolge", @@ -53,7 +53,7 @@ class Topic(models.Model): archive = models.BooleanField(default=False, verbose_name="Archiv") - description = models.TextField(blank=True, null=True) + description = models.TextField(blank=True, default="") topic_group = models.ForeignKey( TopicGroup, @@ -94,7 +94,7 @@ class Attachment(models.Model): slug = models.SlugField() - description = models.TextField(blank=True, null=True) + description = models.TextField(blank=True, default="") topic = models.ForeignKey(Topic, on_delete=models.CASCADE, verbose_name="Thema") diff --git a/fet2020/posts/managers.py b/fet2020/posts/managers.py index 9261173a..db874880 100644 --- a/fet2020/posts/managers.py +++ b/fet2020/posts/managers.py @@ -81,7 +81,7 @@ class ArticleManager(PublishedManager, models.Manager): def pinned(self, public=True): # Get date for pinned news that is max 1 month old. - post_date = datetime.date.today() + post_date = datetime.datetime.now(tz=datetime.UTC).date() __month = post_date.month __year = post_date.year @@ -95,7 +95,7 @@ class ArticleManager(PublishedManager, models.Manager): post_date = post_date.replace(year=__year, month=__month) # Get date for event posts that is max 1 day old. - event_date = datetime.date.today() - datetime.timedelta(1) + event_date = datetime.datetime.now(tz=datetime.UTC).date() - datetime.timedelta(1) return ( self.published(public) @@ -145,7 +145,7 @@ class AllEventManager(PublishedManager, models.Manager): return qs.order_by("-date") def future_events(self, public=True): - date_today = datetime.date.today() + date_today = datetime.datetime.now(tz=datetime.UTC).date() qs = self.published(public).filter(event_start__gt=date_today) return qs.reverse() @@ -166,12 +166,12 @@ class EventManager(PublishedManager, models.Manager): return qs.order_by("-date") def future_events(self, public=True): - date_today = datetime.date.today() + date_today = datetime.datetime.now(tz=datetime.UTC).date() qs = self.published(public).filter(event_start__gt=date_today) return qs.reverse() def past_events(self, public=True): - date_today = datetime.date.today() + date_today = datetime.datetime.now(tz=datetime.UTC).date() qs = self.published(public).filter(event_start__lt=date_today) return qs @@ -191,11 +191,11 @@ class FetMeetingManager(PublishedManager, models.Manager): return qs.order_by("-date") def future_events(self): - date_today = datetime.date.today() + date_today = datetime.datetime.now(tz=datetime.UTC).date() qs = self.published().filter(event_start__gt=date_today) return qs.reverse() def past_events(self): - date_today = datetime.date.today() + date_today = datetime.datetime.now(tz=datetime.UTC).date() qs = self.published().filter(event_start__lt=date_today) return qs