updatestyles: Do not update the same styles twice

This commit is contained in:
Raphael Michel
2021-05-05 22:34:43 +02:00
parent 6820044461
commit 8c101dc64c
2 changed files with 9 additions and 8 deletions

View File

@@ -52,7 +52,7 @@ class Command(BaseCommand):
if options.get('organizer'): if options.get('organizer'):
ostore = ostore.filter(object__slug=options['organizer']) ostore = ostore.filter(object__slug=options['organizer'])
for es in ostore: for es in ostore:
regenerate_organizer_css.apply_async(args=(es.object_id,)) regenerate_organizer_css.apply_async(args=(es.object_id,), kwargs={'regenerate_events': False})
estore = Event_SettingsStore.objects.filter(key="presale_css_file").order_by('-object__date_from') estore = Event_SettingsStore.objects.filter(key="presale_css_file").order_by('-object__date_from')
if options.get('event'): if options.get('event'):

View File

@@ -159,7 +159,7 @@ def regenerate_css(event):
@app.task(base=TransactionAwareTask) @app.task(base=TransactionAwareTask)
def regenerate_organizer_css(organizer_id: int): def regenerate_organizer_css(organizer_id: int, regenerate_events=True):
organizer = Organizer.objects.get(pk=organizer_id) organizer = Organizer.objects.get(pk=organizer_id)
with scope(organizer=organizer): with scope(organizer=organizer):
@@ -185,12 +185,13 @@ def regenerate_organizer_css(organizer_id: int):
if old_fname != newname: if old_fname != newname:
delete_old_file(old_fname) delete_old_file(old_fname)
non_inherited_events = set(Event_SettingsStore.objects.filter( if regenerate_events:
object__organizer=organizer, key__in=affected_keys non_inherited_events = set(Event_SettingsStore.objects.filter(
).values_list('object_id', flat=True)) object__organizer=organizer, key__in=affected_keys
for event in organizer.events.all(): ).values_list('object_id', flat=True))
if event.pk not in non_inherited_events: for event in organizer.events.all():
regenerate_css.apply_async(args=(event.pk,)) if event.pk not in non_inherited_events:
regenerate_css.apply_async(args=(event.pk,))
register_fonts = Signal() register_fonts = Signal()