1
0
mirror of https://gitlab.crans.org/bde/nk20-scripts synced 2025-02-27 02:16:32 +00:00

Compare commits

..

No commits in common. "d7715fa81a1d8dd8ad6113dd75bc0a809414dc8b" and "c518b3dddbfa3147ba4af5712519e87b8e963cae" have entirely different histories.

View File

@ -10,7 +10,7 @@ from member.models import Club, Membership
class Command(BaseCommand): class Command(BaseCommand):
help = "Get mailing list registrations from the last wei. " \ help = "Get mailing list registrations from the last wei. " \
"Usage: manage.py extract_ml_registrations -t {events,art,sport} -t {fr, en} -y {0, 1, ...}. " \ "Usage: manage.py extract_ml_registrations -t {events,art,sport} -t {fr, en}. " \
"You can write this into a file with a pipe, then paste the document into your mail manager." "You can write this into a file with a pipe, then paste the document into your mail manager."
def add_arguments(self, parser): def add_arguments(self, parser):
@ -19,8 +19,6 @@ class Command(BaseCommand):
parser.add_argument('--lang', '-l', type=str, choices=['fr', 'en'], default='fr', parser.add_argument('--lang', '-l', type=str, choices=['fr', 'en'], default='fr',
help='Select the registred users of the ML of the given language. Useful only for the ' help='Select the registred users of the ML of the given language. Useful only for the '
'events mailing list.') 'events mailing list.')
parser.add_argument('--years', '-y', type=int, default=0,
help='Select the cumulative registred users of a membership from years ago. 0 means the current users')
def handle(self, *args, **options): def handle(self, *args, **options):
# TODO: Improve the mailing list extraction system, and link it automatically with Mailman. # TODO: Improve the mailing list extraction system, and link it automatically with Mailman.
@ -30,12 +28,10 @@ class Command(BaseCommand):
return return
if options["type"] == "members": if options["type"] == "members":
today_date = date.today()
selected_date = date(today_date.year - options["years"], today_date.month, today_date.day)
for membership in Membership.objects.filter( for membership in Membership.objects.filter(
club__name="BDE", club__name="BDE",
date_start__lte=today_date, date_start__lte=date.today(),
date_end__gte=selected_date, date_end__gte=date.today(),
).all(): ).all():
self.stdout.write(membership.user.email) self.stdout.write(membership.user.email)
return return