diff -r b3bf833c4580 -r 3d40190f35b6 app/soc/views/helper/redirects.py --- a/app/soc/views/helper/redirects.py Wed Jan 21 21:41:36 2009 +0000 +++ b/app/soc/views/helper/redirects.py Wed Jan 21 22:21:40 2009 +0000 @@ -22,6 +22,9 @@ ] +from google.appengine.ext import db + + def getInviteRedirect(entity, params): """Returns the invitation redirect for the specified entity. """ @@ -99,3 +102,22 @@ return '/%s/applicant/%s' % ( params['url_name'], entity.link_id) + +def getToSRedirect(presence): + """Returns link to 'show' the ToS Document if it exists, None otherwise. + + Args: + presence: Presence entity that may or may not have a tos property + """ + if not presence: + return None + + try: + tos_doc = presence.tos + except db.Error: + return None + + if not tos_doc: + return None + + return getPublicRedirect(tos_doc, {'url_name': 'document'})