nk20/apps/note/signals.py

32 lines
929 B
Python
Raw Normal View History

2020-02-18 20:30:26 +00:00
# Copyright (C) 2018-2020 by BDE ENS Paris-Saclay
2019-07-19 13:00:44 +00:00
# SPDX-License-Identifier: GPL-3.0-or-later
2020-04-05 04:40:03 +00:00
def save_user_note(instance, raw, **_kwargs):
2019-07-19 13:00:44 +00:00
"""
Hook to create and save a note when an user is updated
"""
2020-02-20 21:10:10 +00:00
if raw:
# When provisionning data, do not try to autocreate
return
2020-04-06 08:45:32 +00:00
if (instance.is_superuser or instance.profile.registration_valid) and instance.is_active:
2020-04-05 04:40:03 +00:00
# Create note only when the registration is validated
from note.models import NoteUser
NoteUser.objects.get_or_create(user=instance)
instance.note.save()
2019-07-19 13:00:44 +00:00
2020-02-20 21:10:10 +00:00
def save_club_note(instance, created, raw, **_kwargs):
2019-07-19 13:00:44 +00:00
"""
Hook to create and save a note when a club is updated
"""
2020-02-20 21:10:10 +00:00
if raw:
# When provisionning data, do not try to autocreate
return
2019-07-19 13:00:44 +00:00
if created:
from .models import NoteClub
NoteClub.objects.create(club=instance)
instance.note.save()