X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/7a8610e5869654bd2e8351b34b9e722ce6de73bd..b09ddc60e118508d96906f26ecb0e1709ca89f1b:/src/funding/models.py diff --git a/src/funding/models.py b/src/funding/models.py index 12fa0ca3e..36221f156 100644 --- a/src/funding/models.py +++ b/src/funding/models.py @@ -1,7 +1,7 @@ # This file is part of Wolne Lektury, licensed under GNU Affero GPLv3 or later. # Copyright © Fundacja Wolne Lektury. See NOTICE for more information. # -from datetime import date, datetime +from datetime import date from urllib.parse import urlencode from django.conf import settings from django.contrib.sites.models import Site @@ -11,8 +11,8 @@ from django.dispatch import receiver from django.template.loader import render_to_string from django.urls import reverse from django.utils.html import mark_safe -from django.utils.timezone import utc -from django.utils.translation import override +from django.utils.timezone import now +from django.utils.translation import gettext_lazy as _, override from catalogue.models import Book from catalogue.utils import get_random_hash from polls.models import Poll @@ -161,7 +161,7 @@ class Offer(models.Model): 'remaining': self.remaining(), 'current': self.current(), }) - self.notified_end = datetime.utcnow().replace(tzinfo=utc) + self.notified_end = now() self.save() def notify_near(self, force=False): @@ -179,7 +179,7 @@ class Offer(models.Model): 'sum': sum_, 'need': need, }) - self.notified_near = datetime.utcnow().replace(tzinfo=utc) + self.notified_near = now() self.save() def notify_published(self): @@ -372,11 +372,25 @@ class PayUNotification(club.payu.models.Notification): class Spent(models.Model): """ Some of the remaining money spent on a book. """ - book = models.ForeignKey(Book, models.PROTECT, null=True, blank=True) - link = models.URLField(blank=True, help_text='zamiast książki, np. kolekcja') + book = models.ForeignKey( + Book, models.PROTECT, null=True, blank=True, + verbose_name='książka', + help_text='Książka, na którą zostały wydatkowane środki. ' + 'Powinny tu być uwzględnione zarówno książki na które zbierano środki, jak i dodatkowe książki ' + 'sfinansowane z nadwyżek ze zbiórek.' + ) + link = models.URLField( + blank=True, + help_text="Jeśli wydatek nie dotyczy pojedynczej książki, to zamiast pola „Książka” " + "powinien zostać uzupełniony link do sfinansowanego obiektu (np. kolekcji)." + ) amount = models.DecimalField('kwota', decimal_places=2, max_digits=10) timestamp = models.DateField('kiedy') - annotation = models.CharField('adnotacja', max_length=255, blank=True, help_text="np. 'audiobook'") + annotation = models.CharField( + 'adnotacja', max_length=255, blank=True, + help_text="Adnotacja pojawi się w nawiasie w rozliczeniu, by wyjaśnić sytuację w której " + "do tej samej książki może być przypisany więcej niż jeden wydatek. " + "Np. osobny wydatek na audiobook może mieć adnotację „audiobook”.") class Meta: verbose_name = 'pieniądze wydane na książkę' @@ -384,5 +398,5 @@ class Spent(models.Model): ordering = ['-timestamp'] def __str__(self): - return "Spent: %s" % str(self.book) + return "Wydane na: %s" % str(self.book or self.link)