Require a login instead of throwing an exception when an anonymous

user visits.

Handle a lack of UserMap or an incorrect PersonOrOrgInfo by
passing None to the template.
 - Legacy-Id: 234
This commit is contained in:
Bill Fenner 2007-06-05 15:10:15 +00:00
parent 5c9e46027b
commit 595c656afc

View file

@ -1,14 +1,16 @@
from django.http import HttpResponse,HttpResponseRedirect
from django import newforms as forms
from django.template import RequestContext from django.template import RequestContext
from django.shortcuts import render_to_response from django.shortcuts import render_to_response
from ietf.idtracker.models import PersonOrOrgInfo from ietf.idtracker.models import PersonOrOrgInfo
from django.contrib.auth.decorators import login_required
from django.core.exceptions import ObjectDoesNotExist
@login_required
def my(request, addr=None): def my(request, addr=None):
if request.user: try:
person = request.user.get_profile().person profile = request.user.get_profile()
else: person = profile.person
person = PersonOrOrgInfo.objects.distinct().get(emailaddresses__email_address=addr) except ObjectDoesNotExist:
person = None
return render_to_response('my/my.html', { return render_to_response('my/my.html', {
'me': person, 'me': person,
}, context_instance=RequestContext(request)) }, context_instance=RequestContext(request))