X-Git-Url: https://git.mdrn.pl/django-cas-provider.git/blobdiff_plain/7de1822447fb622522fdce31d0f0e02fa3cdcbd5..5f7036c4efc9088433ed9cf10aec91aac958ea69:/cas_provider/views.py?ds=sidebyside diff --git a/cas_provider/views.py b/cas_provider/views.py index e896fba..6632722 100644 --- a/cas_provider/views.py +++ b/cas_provider/views.py @@ -169,7 +169,7 @@ def validate(request): username = ticket.user.username ticket.delete() - results = signals.on_cas_collect_histories.send(sender=validate, for_email=ticket.user.email) + results = signals.on_cas_collect_histories.send(sender=validate, for_user=ticket.user) histories = '\n'.join('\n'.join(rs) for rc, rs in results) logger.info('Validated %s %s', username, "(also %s)" % histories if histories else '') return HttpResponse("yes\n%s\n%s" % (username, histories)) @@ -337,9 +337,15 @@ def auth_success_response(user, pgt, proxies): username.text = user.username attrs = {} - for receiver, response in signals.cas_collect_custom_attributes.send(user): - if response: - attrs.update(response) + for receiver, custom in signals.cas_collect_custom_attributes.send(sender=auth_success_response, user=user): + if custom: + attrs.update(custom) + + identifiers = [i for sr, rr in signals.on_cas_collect_histories.send(sender=validate, for_user=user) + for i in rr] + + if identifiers: + attrs['identifiers'] = identifiers if attrs: formatter = get_callable(settings.CAS_CUSTOM_ATTRIBUTES_FORMATER)