Skip to content

Commit

Permalink
management command to check and assign credits for a nested event
Browse files Browse the repository at this point in the history
  • Loading branch information
jennyq committed Dec 1, 2023
1 parent 73e4307 commit 167e864
Showing 1 changed file with 38 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
from django.core.management.base import BaseCommand


class Command(BaseCommand):
"""
Check and assign credits to registrants for a nested event.
Usage:
./manage.py check_and_assign_credits --event_id=<event-id> --verbosity=2
"""
def add_arguments(self, parser):
parser.add_argument('--event_id',
dest='event_id',
default=None,
help='The id of the event to be checked')

def handle(self, *args, **options):
from tendenci.apps.events.models import Event, RegistrantChildEvent

verbosity = options['verbosity']
event_id = options['event_id']
if not Event.objects.filter(id=event_id).exists():
print('Event with event id ', event_id, "doesn't exist. Exiting")
return

event = Event.objects.get(id=event_id)
for child_event in event.all_child_events:
if verbosity >= 2:
print('Processing child event:', child_event)
for c_registrant in RegistrantChildEvent.objects.filter(
child_event=child_event,
checked_in=True):
if verbosity >= 2:
print(c_registrant.registrant)
child_event.assign_credits(c_registrant.registrant)

print('Done')

0 comments on commit 167e864

Please sign in to comment.