diff -r 3f4f7c540b75 -r 1b31d238ba39 app/soc/views/user/roles.py --- a/app/soc/views/user/roles.py Tue Aug 19 23:13:24 2008 +0000 +++ b/app/soc/views/user/roles.py Tue Aug 19 23:51:31 2008 +0000 @@ -17,10 +17,64 @@ """Views of a User's various Roles on the site. dashboard: dashboard view of all of a User's Roles on the site + +public: a public view of the User's Roles on the site """ __authors__ = [ '"Todd Larsen" ', ] -#TODO(tlarsen): this module is currently a placeholder for future work + +from google.appengine.api import users +from django import http +from soc.views.helpers import response_helpers + + +def dashboard(request, linkname=None, + template='soc/user/roles/dashboard.html'): + """A per-User dashboard of that User's Roles on the site. + + Args: + request: the standard django request object. + linkname: the User's site-unique "linkname" extracted from the URL + template: the template path to use for rendering the template. + + Returns: + A subclass of django.http.HttpResponse with generated template. + """ + #TODO(tlarsen): this module is currently a placeholder for future work + + # TODO: check that user is logged in and "owns" the linkname; + # if not, call public() view instead + # This might be tricky, since we want to use the same style + # of template that was passed to us, but how do we figure out + # what the equivalent public.html template is? Perhaps this + # view needs to require that, for a foo/bar/dashboard.html + # template, a corresponding foo/bar/public.html template must + # also exist... + + return response_helpers.respond(request, + template, {'template': template}) + + +def public(request, linkname=None, + template='soc/user/roles/public.html'): + """A "general public" view of a User's Roles on the site. + + Args: + request: the standard django request object. + linkname: the User's site-unique "linkname" extracted from the URL + template: the template path to use for rendering the template. + + Returns: + A subclass of django.http.HttpResponse with generated template. + """ + #TODO(tlarsen): this module is currently a placeholder for future work + + # TODO: if linkname is empty or not a vaild linkname on the site, display + # some sort of "user does not exist" page (a custom 404 page, maybe?). + + return response_helpers.respond(request, + template, {'template': template}) +