Remove support for non-conference speakerprofile viewing
authorMagnus Hagander <magnus@hagander.net>
Fri, 29 Dec 2017 15:42:41 +0000 (16:42 +0100)
committerMagnus Hagander <magnus@hagander.net>
Fri, 29 Dec 2017 15:42:41 +0000 (16:42 +0100)
This was the only case where conference was passed as None into the
rendering system, so we can simplify the code a bit and downstream
skinning (used by postgresql.us for example) by removing the ability.

The speaker profile is still shared. It's just mandatory to specify
which conference in the link, to get the proper skinning.

postgresqleu/confreg/views.py
postgresqleu/urls.py

index b8b615ea01dd04beedaf43f1c98e28b79faadfcf..e6e285a353e31b04761d0d021befa9267dc3aec9 100644 (file)
@@ -71,9 +71,10 @@ import json
 # if the conference is configured for jinja templates.
 #
 def render_conference_response(request, conference, pagemagic, templatename, dictionary=None):
-       # Conference can be None for pages that can be both inside and outside
-       # the framework, such as the speaker profile.
-       if conference and conference.jinjadir:
+       if not conference:
+               raise Exception("Conference has to be specified!")
+
+       if conference.jinjadir:
                # If a jinjadir is defined, then *always* use jinja.
                return render_jinja_conference_response(request, conference, pagemagic, templatename, dictionary)
 
@@ -744,7 +745,8 @@ def speakerphoto(request, speakerid):
        return HttpResponse(base64.b64decode(speakerphoto.photo), content_type='image/jpg')
 
 @login_required
-def speakerprofile(request, confurlname=None):
+def speakerprofile(request, confurlname):
+       conf = get_object_or_404(Conference, urlname=confurlname)
        speaker = conferences = callforpapers = None
        try:
                speaker = get_object_or_404(Speaker, user=request.user)
@@ -774,10 +776,6 @@ def speakerprofile(request, confurlname=None):
        else:
                form = SpeakerProfileForm(instance=speaker)
 
-       if confurlname:
-               conf = get_object_or_404(Conference, urlname=confurlname)
-       else:
-               conf = None
        return render_conference_response(request, conf, 'cfp', 'confreg/speakerprofile.html', {
                        'speaker': speaker,
                        'conferences': conferences,
index 06e85e19e8656a89a6f5fbb58f651969e72e7567..221d09d994ed742c86f2b921f2e36509d5eece5b 100644 (file)
@@ -74,7 +74,6 @@ urlpatterns = patterns('',
     (r'^events/reports/time/$', postgresqleu.confreg.reporting.timereport),
     (r'^events/([^/]+)/sessions/$', postgresqleu.confreg.views.sessionlist),
        (r'^events/speaker/(\d+)/photo/$', postgresqleu.confreg.views.speakerphoto),
-       (r'^events/speakerprofile/$', postgresqleu.confreg.views.speakerprofile),
        (r'^events/([^/]+)/speakerprofile/$', postgresqleu.confreg.views.speakerprofile),
        (r'^events/([^/]+)/callforpapers/$', postgresqleu.confreg.views.callforpapers),
        (r'^events/([^/]+)/callforpapers/(\d+|new)/$', postgresqleu.confreg.views.callforpapers_edit),