From: deyk Date: Tue, 24 Jan 2012 23:20:10 +0000 (-0800) Subject: Removed accounts dependency, using a signal instead. X-Git-Tag: 22.4~50 X-Git-Url: https://git.mdrn.pl/django-cas-provider.git/commitdiff_plain/be35c17e626b5a0e64ce6e800516cc2610584420?ds=sidebyside;hp=08d3502c8f9a169713122c681d86eb16d9f8c1e6 Removed accounts dependency, using a signal instead. --- diff --git a/cas_provider/signals.py b/cas_provider/signals.py new file mode 100644 index 0000000..be5e2a9 --- /dev/null +++ b/cas_provider/signals.py @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +"""cas_provider.signals -- signal definitions for cas_provider +""" +from django import dispatch + + +on_cas_collect_histories = dispatch.Signal(providing_args=["for_email"]) diff --git a/cas_provider/views.py b/cas_provider/views.py index 7204ae2..ff7dcd7 100644 --- a/cas_provider/views.py +++ b/cas_provider/views.py @@ -14,9 +14,7 @@ from models import ServiceTicket from utils import create_service_ticket from exceptions import SameEmailMismatchedPasswords -#FIXME: Remove this dependency -from accounts.models import IdentifierHistory -from django.contrib.auth.models import User +from . import signals __all__ = ['login', 'validate', 'logout'] @@ -139,9 +137,8 @@ def validate(request): username = ticket.user.username ticket.delete() - histories = IdentifierHistory.objects.filter(user__email__iexact=ticket.user.email) - histories = '\n'.join(histories.values_list('identifier', flat=True)) - histories = '%s\n' % histories if histories else '' + results = signals.on_cas_collect_histories.send(sender=validate, for_email=ticket.user.email) + histories = '\n'.join('\n'.join(rs) for rc, rs in results) return HttpResponse("yes\n%s\n%s" % (username, histories))