1 from django.db.models import signals
2 from django.dispatch import dispatcher
3 from django.conf import settings
4 from xerxes.influences.models import Character,Influence
5 from xerxes.tools.notify import notify
6 from django.contrib.auth.models import Group
7 from threadedcomments.models import ThreadedComment
9 def character_saved(**kwargs):
10 instance = kwargs['instance']
11 created = kwargs['created']
12 if (not settings.DEBUG):
13 notify([instance.player, 'lextalionis@evolution-events.nl'], 'influences/email/character_changed.html', {'character' : instance, 'created' : created})
15 signals.post_save.connect(character_saved, sender=Character)
17 def influence_saved(**kwargs):
18 instance = kwargs['instance']
19 created = kwargs['created']
20 recipients = ['lextalionis@evolution-events.nl']
21 recipients.extend(instance.related_players.keys())
22 if (not settings.DEBUG):
23 recipients = ['lextalionis@evolution-events.nl']
24 if instance.status == 'D':
25 recipients.append(instance.character.player)
26 notify(recipients, 'influences/email/influence_changed.html', {'influence' : instance, 'created' : created})
28 signals.post_save.connect(influence_saved, sender=Influence)
30 def comment_saved(**kwargs):
34 comment = kwargs['instance']
36 # We don't support comment editing, but let's check this anyway
37 if not kwargs['created']:
40 object = comment.content_object
41 if isinstance(object, Influence):
42 recipients = ['lextalionis@evolution-events.nl']
44 recipients.extend(object.related_players.keys())
48 'influences/email/influence_comment_added.html',
51 'commenter' : comment.user
55 signals.post_save.connect(comment_saved, sender=ThreadedComment)
57 # vim: set sts=4 sw=4 expandtab: