app/soc/views/helper/redirects.py
author Lennard de Rijk <ljvderijk@gmail.com>
Sun, 25 Oct 2009 18:43:23 -0700
changeset 3050 5f135cfac194
parent 2971 4337dfc33633
permissions -rw-r--r--
Reworked the redirects to work with the new Request model. Also made use of the collection of Role Views in the Role View in combination with the role property in the Request model, to facilitate the redirects.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
611
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     1
#!/usr/bin/python2.5
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     2
#
1308
35b75ffcbb37 Partially reverted "Update the copyright notice for 2009."
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1307
diff changeset
     3
# Copyright 2008 the Melange authors.
611
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     4
#
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     5
# Licensed under the Apache License, Version 2.0 (the "License");
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     6
# you may not use this file except in compliance with the License.
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     7
# You may obtain a copy of the License at
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     8
#
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     9
#   http://www.apache.org/licenses/LICENSE-2.0
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    10
#
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    11
# Unless required by applicable law or agreed to in writing, software
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    12
# distributed under the License is distributed on an "AS IS" BASIS,
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    13
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    14
# See the License for the specific language governing permissions and
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    15
# limitations under the License.
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    16
639
1f92bd41b914 Some docstring fixes in few modules (soc.views.helper soc.views.models.base).
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 620
diff changeset
    17
"""Redirect related methods.
611
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    18
"""
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    19
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    20
__authors__ = [
2777
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
    21
  '"Daniel Hans" <daniel.m.hans@gmail.com>',
611
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    22
  '"Sverre Rabbelier" <sverre@rabbelier.nl>',
985
f0b02777f403 Added getListRequestsRedirect to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 981
diff changeset
    23
  '"Lennard de Rijk" <ljvderijk@gmail.com>',
611
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    24
  ]
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    25
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    26
891
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
    27
from google.appengine.ext import db
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
    28
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
    29
1224
72dc2b552b10 Added a new redirect for apply accesstype.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1146
diff changeset
    30
def getApplyRedirect(entity, params):
72dc2b552b10 Added a new redirect for apply accesstype.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1146
diff changeset
    31
  """Returns the apply redirect for the specified entity.
72dc2b552b10 Added a new redirect for apply accesstype.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1146
diff changeset
    32
  """
72dc2b552b10 Added a new redirect for apply accesstype.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1146
diff changeset
    33
72dc2b552b10 Added a new redirect for apply accesstype.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1146
diff changeset
    34
  result ='/%s/apply/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
    35
      params['url_name'], entity.key().id_or_name())
1224
72dc2b552b10 Added a new redirect for apply accesstype.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1146
diff changeset
    36
72dc2b552b10 Added a new redirect for apply accesstype.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1146
diff changeset
    37
  return result
72dc2b552b10 Added a new redirect for apply accesstype.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1146
diff changeset
    38
2777
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
    39
654
68bafa9f719f Fixed the 'New Host' link
Sverre Rabbelier <srabbelier@gmail.com>
parents: 652
diff changeset
    40
def getInviteRedirect(entity, params):
667
f96095df1433 Some more import sorting fixes and docstring typos in program modules and soc.views.helper.redirects module.
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 654
diff changeset
    41
  """Returns the invitation redirect for the specified entity.
654
68bafa9f719f Fixed the 'New Host' link
Sverre Rabbelier <srabbelier@gmail.com>
parents: 652
diff changeset
    42
  """
68bafa9f719f Fixed the 'New Host' link
Sverre Rabbelier <srabbelier@gmail.com>
parents: 652
diff changeset
    43
68bafa9f719f Fixed the 'New Host' link
Sverre Rabbelier <srabbelier@gmail.com>
parents: 652
diff changeset
    44
  result ='/%s/invite/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
    45
      params['url_name'], entity.key().id_or_name())
654
68bafa9f719f Fixed the 'New Host' link
Sverre Rabbelier <srabbelier@gmail.com>
parents: 652
diff changeset
    46
68bafa9f719f Fixed the 'New Host' link
Sverre Rabbelier <srabbelier@gmail.com>
parents: 652
diff changeset
    47
  return result
68bafa9f719f Fixed the 'New Host' link
Sverre Rabbelier <srabbelier@gmail.com>
parents: 652
diff changeset
    48
667
f96095df1433 Some more import sorting fixes and docstring typos in program modules and soc.views.helper.redirects module.
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 654
diff changeset
    49
652
02323664d532 Cleanups in preparation of general selector view
Sverre Rabbelier <srabbelier@gmail.com>
parents: 643
diff changeset
    50
def getCreateRedirect(entity, params):
1224
72dc2b552b10 Added a new redirect for apply accesstype.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1146
diff changeset
    51
  """Returns the create redirect for the specified entity.
643
b57d538a9dd3 Added programs
Sverre Rabbelier <srabbelier@gmail.com>
parents: 639
diff changeset
    52
  """
b57d538a9dd3 Added programs
Sverre Rabbelier <srabbelier@gmail.com>
parents: 639
diff changeset
    53
b57d538a9dd3 Added programs
Sverre Rabbelier <srabbelier@gmail.com>
parents: 639
diff changeset
    54
  result ='/%s/create/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
    55
      params['url_name'], entity.key().id_or_name())
643
b57d538a9dd3 Added programs
Sverre Rabbelier <srabbelier@gmail.com>
parents: 639
diff changeset
    56
b57d538a9dd3 Added programs
Sverre Rabbelier <srabbelier@gmail.com>
parents: 639
diff changeset
    57
  return result
620
e74e0b74625f Put the redirects in the views/helper/redirects.py module.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 611
diff changeset
    58
667
f96095df1433 Some more import sorting fixes and docstring typos in program modules and soc.views.helper.redirects module.
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 654
diff changeset
    59
611
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    60
def getEditRedirect(entity, params):
620
e74e0b74625f Put the redirects in the views/helper/redirects.py module.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 611
diff changeset
    61
  """Returns the edit redirect for the specified entity.
611
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    62
  """
2ec30182e5f1 Move parameter construction into a seperate module
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    63
698
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
    64
  return '/%s/edit/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
    65
      params['url_name'], entity.key().id_or_name())
698
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
    66
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
    67
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
    68
def getPublicRedirect(entity, params):
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
    69
  """Returns the public redirect for the specified entity.
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
    70
  """
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
    71
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
    72
  return '/%s/show/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
    73
      params['url_name'], entity.key().id_or_name())
885
f46b689e19eb Changed the redirect in club application overview to the correct page.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 858
diff changeset
    74
f46b689e19eb Changed the redirect in club application overview to the correct page.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 858
diff changeset
    75
1340
06ffdc68ab1b Add an admin redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1323
diff changeset
    76
def getAdminRedirect(entity, params):
06ffdc68ab1b Add an admin redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1323
diff changeset
    77
  """Returns the public redirect for the specified entity.
06ffdc68ab1b Add an admin redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1323
diff changeset
    78
  """
06ffdc68ab1b Add an admin redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1323
diff changeset
    79
06ffdc68ab1b Add an admin redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1323
diff changeset
    80
  return '/%s/admin/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
    81
      params['url_name'], entity.key().id_or_name())
1340
06ffdc68ab1b Add an admin redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1323
diff changeset
    82
06ffdc68ab1b Add an admin redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1323
diff changeset
    83
1323
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    84
def getListRedirect(entity, params):
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    85
  """Returns the public redirect for the specified entity.
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    86
  """
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    87
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    88
  return '/%s/list/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
    89
      params['url_name'], entity.key().id_or_name())
1323
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    90
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    91
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    92
def getPublicListRedirect(entity, params):
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    93
  """Returns the public redirect for the specified entity.
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    94
  """
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    95
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    96
  return '/%s/list_public/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
    97
      params['url_name'], entity.key().id_or_name())
1323
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    98
a666374587df Add a getListRedirect and getListPublicRedirect function
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1316
diff changeset
    99
858
e79e7a22326f Add an export() view, and implement it as text/text for Document.
Todd Larsen <tlarsen@google.com>
parents: 797
diff changeset
   100
def getExportRedirect(entity, params):
e79e7a22326f Add an export() view, and implement it as text/text for Document.
Todd Larsen <tlarsen@google.com>
parents: 797
diff changeset
   101
  """Returns the export redirect for the specified entity.
e79e7a22326f Add an export() view, and implement it as text/text for Document.
Todd Larsen <tlarsen@google.com>
parents: 797
diff changeset
   102
  """
e79e7a22326f Add an export() view, and implement it as text/text for Document.
Todd Larsen <tlarsen@google.com>
parents: 797
diff changeset
   103
e79e7a22326f Add an export() view, and implement it as text/text for Document.
Todd Larsen <tlarsen@google.com>
parents: 797
diff changeset
   104
  return '/%s/export/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   105
      params['url_name'], entity.key().id_or_name())
858
e79e7a22326f Add an export() view, and implement it as text/text for Document.
Todd Larsen <tlarsen@google.com>
parents: 797
diff changeset
   106
885
f46b689e19eb Changed the redirect in club application overview to the correct page.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 858
diff changeset
   107
923
5a10f6db154b Hook up the 'home' view for site and program
Sverre Rabbelier <srabbelier@gmail.com>
parents: 920
diff changeset
   108
def getHomeRedirect(entity, params):
946
db4134853d64 Add missing dots in soc.views.helper.redirects module function docstrings.
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 940
diff changeset
   109
  """Returns the home redirect for the specified entity.
923
5a10f6db154b Hook up the 'home' view for site and program
Sverre Rabbelier <srabbelier@gmail.com>
parents: 920
diff changeset
   110
  """
5a10f6db154b Hook up the 'home' view for site and program
Sverre Rabbelier <srabbelier@gmail.com>
parents: 920
diff changeset
   111
5a10f6db154b Hook up the 'home' view for site and program
Sverre Rabbelier <srabbelier@gmail.com>
parents: 920
diff changeset
   112
  return '/%s/home/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   113
      params['url_name'], entity.key().id_or_name())
923
5a10f6db154b Hook up the 'home' view for site and program
Sverre Rabbelier <srabbelier@gmail.com>
parents: 920
diff changeset
   114
2434
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   115
797
0bc3f950d7cf Added basic review functionality for club applications.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 698
diff changeset
   116
def getReviewRedirect(entity, params):
946
db4134853d64 Add missing dots in soc.views.helper.redirects module function docstrings.
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 940
diff changeset
   117
  """Returns the redirect to review the specified entity.
797
0bc3f950d7cf Added basic review functionality for club applications.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 698
diff changeset
   118
  """
2434
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   119
797
0bc3f950d7cf Added basic review functionality for club applications.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 698
diff changeset
   120
  return '/%s/review/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   121
      params['url_name'], entity.key().id_or_name())
698
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
   122
2434
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   123
1238
af56ae7397ab Added scoped group_app listing.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1229
diff changeset
   124
def getReviewOverviewRedirect(entity, params):
2434
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   125
  """Returns the redirect to the review_overview using the
1238
af56ae7397ab Added scoped group_app listing.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1229
diff changeset
   126
     keyname of the specified entity.
af56ae7397ab Added scoped group_app listing.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1229
diff changeset
   127
  """
1254
6be0286ef003 Added new redirect for the new list views for group_app's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1238
diff changeset
   128
1238
af56ae7397ab Added scoped group_app listing.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1229
diff changeset
   129
  return '/%s/review_overview/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   130
      params['url_name'], entity.key().id_or_name())
698
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
   131
2777
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   132
698
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
   133
def getCreateRequestRedirect(entity, params):
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
   134
  """Returns the create request redirect for the specified entity.
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
   135
  """
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
   136
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
   137
  result ='/request/create/%s/%s/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   138
      params['group_scope'], params['url_name'], entity.key().id_or_name())
698
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
   139
a953f0676699 Added a public redirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 676
diff changeset
   140
  return result
620
e74e0b74625f Put the redirects in the views/helper/redirects.py module.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 611
diff changeset
   141
e74e0b74625f Put the redirects in the views/helper/redirects.py module.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 611
diff changeset
   142
1006
6abf12b9e646 Added a sidebar link for all users that accepted the ToS to a view that allows you to choose a club which you want to become a member for.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1005
diff changeset
   143
def getRequestRedirectForRole(entity, role_name):
6abf12b9e646 Added a sidebar link for all users that accepted the ToS to a view that allows you to choose a club which you want to become a member for.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1005
diff changeset
   144
  """Returns the redirect to create a request for a specific role.
6abf12b9e646 Added a sidebar link for all users that accepted the ToS to a view that allows you to choose a club which you want to become a member for.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1005
diff changeset
   145
  """
6abf12b9e646 Added a sidebar link for all users that accepted the ToS to a view that allows you to choose a club which you want to become a member for.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1005
diff changeset
   146
6abf12b9e646 Added a sidebar link for all users that accepted the ToS to a view that allows you to choose a club which you want to become a member for.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1005
diff changeset
   147
  result ='/%s/request/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   148
      role_name, entity.key().id_or_name())
1006
6abf12b9e646 Added a sidebar link for all users that accepted the ToS to a view that allows you to choose a club which you want to become a member for.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1005
diff changeset
   149
6abf12b9e646 Added a sidebar link for all users that accepted the ToS to a view that allows you to choose a club which you want to become a member for.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1005
diff changeset
   150
  return result
6abf12b9e646 Added a sidebar link for all users that accepted the ToS to a view that allows you to choose a club which you want to become a member for.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1005
diff changeset
   151
6abf12b9e646 Added a sidebar link for all users that accepted the ToS to a view that allows you to choose a club which you want to become a member for.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1005
diff changeset
   152
1005
46b3e946a3e1 Changed method name in access.py to fix overwriting another method.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1003
diff changeset
   153
def getInviteRedirectForRole(entity, role_name):
1003
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   154
  """Returns the redirect to create an invite for a specific role.
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   155
  """
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   156
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   157
  result ='/%s/invite/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   158
      role_name, entity.key().id_or_name())
1003
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   159
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   160
  return result
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   161
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   162
1487
d18c71f4fabe Added list proposals redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1485
diff changeset
   163
def getListProposalsRedirect(entity, params):
d18c71f4fabe Added list proposals redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1485
diff changeset
   164
  """Returns the redirect for the List page for the given
d18c71f4fabe Added list proposals redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1485
diff changeset
   165
  Org entity and Org View params.
d18c71f4fabe Added list proposals redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1485
diff changeset
   166
  """
d18c71f4fabe Added list proposals redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1485
diff changeset
   167
d18c71f4fabe Added list proposals redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1485
diff changeset
   168
  result = '/%s/list_proposals/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   169
      params['url_name'], entity.key().id_or_name())
1487
d18c71f4fabe Added list proposals redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1485
diff changeset
   170
d18c71f4fabe Added list proposals redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1485
diff changeset
   171
  return result
d18c71f4fabe Added list proposals redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1485
diff changeset
   172
d18c71f4fabe Added list proposals redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1485
diff changeset
   173
1860
26ce742dbb63 Added an getAcceptedOrgsRedirect to redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1746
diff changeset
   174
def getAcceptedOrgsRedirect(entity, params):
26ce742dbb63 Added an getAcceptedOrgsRedirect to redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1746
diff changeset
   175
  """Returns the redirect for the List of accepted orgs.
26ce742dbb63 Added an getAcceptedOrgsRedirect to redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1746
diff changeset
   176
  """
26ce742dbb63 Added an getAcceptedOrgsRedirect to redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1746
diff changeset
   177
26ce742dbb63 Added an getAcceptedOrgsRedirect to redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1746
diff changeset
   178
  result = '/%s/accepted_orgs/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   179
      params['url_name'], entity.key().id_or_name())
1860
26ce742dbb63 Added an getAcceptedOrgsRedirect to redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1746
diff changeset
   180
26ce742dbb63 Added an getAcceptedOrgsRedirect to redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1746
diff changeset
   181
  return result
26ce742dbb63 Added an getAcceptedOrgsRedirect to redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1746
diff changeset
   182
26ce742dbb63 Added an getAcceptedOrgsRedirect to redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1746
diff changeset
   183
2153
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   184
def getListProjectsRedirect(entity, params):
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   185
  """Returns the redirect for the List Projects page for the given entity.
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   186
  """
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   187
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   188
  result = '/%s/list_projects/%s' % (
2176
3e5187b444db Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2160
diff changeset
   189
      params['url_name'], entity.key().id_or_name())
2153
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   190
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   191
  return result
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   192
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   193
985
f0b02777f403 Added getListRequestsRedirect to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 981
diff changeset
   194
def getListRequestsRedirect(entity, params):
f0b02777f403 Added getListRequestsRedirect to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 981
diff changeset
   195
  """Returns the redirect for the List Requests paged for the given
f0b02777f403 Added getListRequestsRedirect to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 981
diff changeset
   196
  Group entity and Group View params.
f0b02777f403 Added getListRequestsRedirect to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 981
diff changeset
   197
  """
f0b02777f403 Added getListRequestsRedirect to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 981
diff changeset
   198
f0b02777f403 Added getListRequestsRedirect to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 981
diff changeset
   199
  result = '/%s/list_requests/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   200
      params['url_name'], entity.key().id_or_name())
985
f0b02777f403 Added getListRequestsRedirect to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 981
diff changeset
   201
f0b02777f403 Added getListRequestsRedirect to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 981
diff changeset
   202
  return result
f0b02777f403 Added getListRequestsRedirect to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 981
diff changeset
   203
f0b02777f403 Added getListRequestsRedirect to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 981
diff changeset
   204
1254
6be0286ef003 Added new redirect for the new list views for group_app's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1238
diff changeset
   205
def getListSelfRedirect(entity, params):
6be0286ef003 Added new redirect for the new list views for group_app's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1238
diff changeset
   206
  """Returns the redirect for list_self access type.
6be0286ef003 Added new redirect for the new list views for group_app's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1238
diff changeset
   207
  """
6be0286ef003 Added new redirect for the new list views for group_app's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1238
diff changeset
   208
6be0286ef003 Added new redirect for the new list views for group_app's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1238
diff changeset
   209
  result = '/%s/list_self/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   210
      params['url_name'], entity.key().id_or_name())
1254
6be0286ef003 Added new redirect for the new list views for group_app's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1238
diff changeset
   211
6be0286ef003 Added new redirect for the new list views for group_app's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1238
diff changeset
   212
  return result
6be0286ef003 Added new redirect for the new list views for group_app's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1238
diff changeset
   213
6be0286ef003 Added new redirect for the new list views for group_app's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1238
diff changeset
   214
1003
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   215
def getListRolesRedirect(entity, params):
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   216
  """Returns the redirect for the List Roles paged for the given
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   217
  Group entity and Group View params.
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   218
  """
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   219
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   220
  result = '/%s/list_roles/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   221
      params['url_name'], entity.key().id_or_name())
1003
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   222
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   223
  return result
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   224
2777
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   225
2704
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   226
def getAcceptProjectRedirect(entity, params):
2707
ffabb3576744 Fix for copy/paste fail
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2704
diff changeset
   227
  """Returns the redirect for accept_project access type.
2704
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   228
  """
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   229
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   230
  result = '/%s/accept_project/%s' % (
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   231
      params['url_name'], entity.key().id_or_name())
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   232
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   233
  return result
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   234
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   235
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   236
def getWithdrawProjectRedirect(entity, params):
2707
ffabb3576744 Fix for copy/paste fail
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2704
diff changeset
   237
  """Returns the redirect for withdraw access type.
2704
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   238
  """
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   239
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   240
  result = '/%s/withdraw_project/%s' % (
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   241
      params['url_name'], entity.key().id_or_name())
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   242
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   243
  return result
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   244
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   245
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   246
def getWithdrawRedirect(entity, params):
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   247
  """Returns the redirect for withdraw_project access type.
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   248
  """
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   249
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   250
  result = '/%s/withdraw/%s' % (
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   251
      params['url_name'], entity.key().id_or_name())
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   252
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   253
  return result
d778f2b6191d Add three new redirects
Sverre Rabbelier <sverre@rabbelier.nl>
parents: 2668
diff changeset
   254
1003
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   255
1378
8c7f5411d372 Added new redirect to redirects helper.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1340
diff changeset
   256
def getUserRolesRedirect(_, __):
8c7f5411d372 Added new redirect to redirects helper.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1340
diff changeset
   257
  """Returns the redirect to the users Roles page.
8c7f5411d372 Added new redirect to redirects helper.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1340
diff changeset
   258
  """
8c7f5411d372 Added new redirect to redirects helper.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1340
diff changeset
   259
8c7f5411d372 Added new redirect to redirects helper.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1340
diff changeset
   260
  return '/user/roles'
8c7f5411d372 Added new redirect to redirects helper.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1340
diff changeset
   261
8c7f5411d372 Added new redirect to redirects helper.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1340
diff changeset
   262
981
61a6a8d304dc Added getProcessRequestRedirect method to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 946
diff changeset
   263
def getProcessRequestRedirect(entity, _):
1032
ed83d42d1ed7 Style fixes in soc.views.helper.redirects and soc.models.base modules.
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 1006
diff changeset
   264
  """Returns the redirect for processing the specified request entity.
981
61a6a8d304dc Added getProcessRequestRedirect method to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 946
diff changeset
   265
  """
61a6a8d304dc Added getProcessRequestRedirect method to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 946
diff changeset
   266
3050
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   267
  from soc.views.models.role import ROLE_VIEWS
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   268
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   269
  role_view = ROLE_VIEWS[entity.role]
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   270
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   271
  result = '/%s/process_request/%s' % (
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   272
      role_view.getParams()['url_name'], entity.key().id_or_name())
981
61a6a8d304dc Added getProcessRequestRedirect method to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 946
diff changeset
   273
61a6a8d304dc Added getProcessRequestRedirect method to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 946
diff changeset
   274
  return result
61a6a8d304dc Added getProcessRequestRedirect method to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 946
diff changeset
   275
61a6a8d304dc Added getProcessRequestRedirect method to redirects.py.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 946
diff changeset
   276
1065
b661dc8ffd5f Added manage redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1032
diff changeset
   277
def getManageRedirect(entity, params):
b661dc8ffd5f Added manage redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1032
diff changeset
   278
  """Returns the redirect for managing the given entity.
b661dc8ffd5f Added manage redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1032
diff changeset
   279
  """
b661dc8ffd5f Added manage redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1032
diff changeset
   280
b661dc8ffd5f Added manage redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1032
diff changeset
   281
  result = '/%s/manage/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   282
      params['url_name'], entity.key().id_or_name())
1065
b661dc8ffd5f Added manage redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1032
diff changeset
   283
b661dc8ffd5f Added manage redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1032
diff changeset
   284
  return result
b661dc8ffd5f Added manage redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1032
diff changeset
   285
b661dc8ffd5f Added manage redirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1032
diff changeset
   286
2114
1b3830abcdf7 Added new redirect method to be used for StudentProjects.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1911
diff changeset
   287
def getManageOverviewRedirect(entity, params):
1b3830abcdf7 Added new redirect method to be used for StudentProjects.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1911
diff changeset
   288
  """Returns the redirect for the manage overview view of the given entity.
1b3830abcdf7 Added new redirect method to be used for StudentProjects.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1911
diff changeset
   289
  """
1b3830abcdf7 Added new redirect method to be used for StudentProjects.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1911
diff changeset
   290
1b3830abcdf7 Added new redirect method to be used for StudentProjects.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1911
diff changeset
   291
  result = '/%s/manage_overview/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   292
      params['url_name'], entity.key().id_or_name())
2114
1b3830abcdf7 Added new redirect method to be used for StudentProjects.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1911
diff changeset
   293
1b3830abcdf7 Added new redirect method to be used for StudentProjects.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1911
diff changeset
   294
  return result
1b3830abcdf7 Added new redirect method to be used for StudentProjects.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1911
diff changeset
   295
1b3830abcdf7 Added new redirect method to be used for StudentProjects.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1911
diff changeset
   296
1229
ec3768cbf369 Refactored the picker so that it is more generic
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1224
diff changeset
   297
def getSelectRedirect(params):
946
db4134853d64 Add missing dots in soc.views.helper.redirects module function docstrings.
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 940
diff changeset
   298
  """Returns the pick redirect for the specified entity.
932
2b72d0315254 Add redirects for the new pick view
Sverre Rabbelier <srabbelier@gmail.com>
parents: 930
diff changeset
   299
  """
2b72d0315254 Add redirects for the new pick view
Sverre Rabbelier <srabbelier@gmail.com>
parents: 930
diff changeset
   300
1229
ec3768cbf369 Refactored the picker so that it is more generic
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1224
diff changeset
   301
  if params.get('args'):
ec3768cbf369 Refactored the picker so that it is more generic
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1224
diff changeset
   302
    return '/%(url_name)s/pick?%(args)s' % params
932
2b72d0315254 Add redirects for the new pick view
Sverre Rabbelier <srabbelier@gmail.com>
parents: 930
diff changeset
   303
  else:
1229
ec3768cbf369 Refactored the picker so that it is more generic
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1224
diff changeset
   304
    return '/%(url_name)s/pick' % params
932
2b72d0315254 Add redirects for the new pick view
Sverre Rabbelier <srabbelier@gmail.com>
parents: 930
diff changeset
   305
1003
b13da1ddcd50 Added sidebar entries for club entities.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 985
diff changeset
   306
940
a40056afef83 Changed the access checks to comply with state in request.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 932
diff changeset
   307
def getInviteAcceptedRedirect(entity, _):
620
e74e0b74625f Put the redirects in the views/helper/redirects.py module.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 611
diff changeset
   308
  """Returns the redirect for accepting an invite.
e74e0b74625f Put the redirects in the views/helper/redirects.py module.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 611
diff changeset
   309
  """
3050
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   310
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   311
  from soc.views.models.role import ROLE_VIEWS
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   312
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   313
  role_params = ROLE_VIEWS[entity.role].getParams()
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   314
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   315
  return '/%s/accept_invite/%s' % (
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   316
      role_params['url_name'], entity.key().id_or_name())
885
f46b689e19eb Changed the redirect in club application overview to the correct page.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 858
diff changeset
   317
929
7431d7770197 Renamed redirect methods to comply with the rest of the module.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 923
diff changeset
   318
7431d7770197 Renamed redirect methods to comply with the rest of the module.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 923
diff changeset
   319
def getInviteProcessRedirect(entity, _):
930
7e88fba647b1 Added missing changes from r1522.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 929
diff changeset
   320
  """Returns the redirect for processing an invite.
920
39badbfb80be Added the new way to process invites for club_admin only.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 891
diff changeset
   321
  """
39badbfb80be Added the new way to process invites for club_admin only.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 891
diff changeset
   322
3050
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   323
  return '/request/process_invite/%s' % (
5f135cfac194 Reworked the redirects to work with the new Request model.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2971
diff changeset
   324
      entity.key().id_or_name())
885
f46b689e19eb Changed the redirect in club application overview to the correct page.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 858
diff changeset
   325
929
7431d7770197 Renamed redirect methods to comply with the rest of the module.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 923
diff changeset
   326
885
f46b689e19eb Changed the redirect in club application overview to the correct page.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 858
diff changeset
   327
def getApplicantRedirect(entity, params):
f46b689e19eb Changed the redirect in club application overview to the correct page.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 858
diff changeset
   328
  """Returns the redirect for processing accepted Applications.
f46b689e19eb Changed the redirect in club application overview to the correct page.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 858
diff changeset
   329
  """
f46b689e19eb Changed the redirect in club application overview to the correct page.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 858
diff changeset
   330
f46b689e19eb Changed the redirect in club application overview to the correct page.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 858
diff changeset
   331
  return '/%s/applicant/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   332
      params['url_name'], entity.key().id_or_name())
885
f46b689e19eb Changed the redirect in club application overview to the correct page.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 858
diff changeset
   333
891
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   334
2153
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   335
def getStudentEditRedirect(entity, params):
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   336
  """Returns the redirect for Students to edit their Projects.
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   337
  """
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   338
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   339
  return '/%s/st_edit/%s' % (
2176
3e5187b444db Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2160
diff changeset
   340
      params['url_name'], entity.key().id_or_name())
2153
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   341
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   342
1485
430df988d395 Added redirect for the student proposal view.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1378
diff changeset
   343
def getStudentProposalRedirect(entity, params):
430df988d395 Added redirect for the student proposal view.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1378
diff changeset
   344
  """Returns the student proposal redirect for the given org and student.
430df988d395 Added redirect for the student proposal view.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1378
diff changeset
   345
  """
430df988d395 Added redirect for the student proposal view.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1378
diff changeset
   346
430df988d395 Added redirect for the student proposal view.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1378
diff changeset
   347
  result ='/%s/apply/%s?organization=%s' % (
430df988d395 Added redirect for the student proposal view.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1378
diff changeset
   348
      params['url_name'], params['student_key'], entity.link_id)
430df988d395 Added redirect for the student proposal view.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1378
diff changeset
   349
430df988d395 Added redirect for the student proposal view.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1378
diff changeset
   350
  return result
430df988d395 Added redirect for the student proposal view.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1378
diff changeset
   351
430df988d395 Added redirect for the student proposal view.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 1378
diff changeset
   352
2153
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   353
def getShowDuplicatesRedirect(entity, params):
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   354
  """Returns the show duplicates redirect for the specified entity.
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   355
  """
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   356
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   357
  return'/%s/show_duplicates/%s' % (
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   358
      params['url_name'], entity.key().name())
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   359
7c8adb14c7fb Added three new redirect methods.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2114
diff changeset
   360
1746
c99815c27c4d Add a getSlotsRedirect to redirects.py
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1487
diff changeset
   361
def getSlotsRedirect(entity, params):
1910
cb105d1f51b8 Added an assign slots redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1860
diff changeset
   362
  """Returns the slots redirect for the specified entity.
1746
c99815c27c4d Add a getSlotsRedirect to redirects.py
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1487
diff changeset
   363
  """
c99815c27c4d Add a getSlotsRedirect to redirects.py
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1487
diff changeset
   364
c99815c27c4d Add a getSlotsRedirect to redirects.py
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1487
diff changeset
   365
  return'/%s/slots/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   366
      params['url_name'], entity.key().id_or_name())
1746
c99815c27c4d Add a getSlotsRedirect to redirects.py
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1487
diff changeset
   367
c99815c27c4d Add a getSlotsRedirect to redirects.py
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1487
diff changeset
   368
1911
87c3e62b28dc Added a Assign Slots link to sidebar for Hosts
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1910
diff changeset
   369
def getAssignSlotsRedirect(entity, params):
1910
cb105d1f51b8 Added an assign slots redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1860
diff changeset
   370
  """Returns the assign slots redirect for the specified entity.
cb105d1f51b8 Added an assign slots redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1860
diff changeset
   371
  """
cb105d1f51b8 Added an assign slots redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1860
diff changeset
   372
cb105d1f51b8 Added an assign slots redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1860
diff changeset
   373
  return'/%s/assign_slots/%s' % (
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   374
      params['url_name'], entity.key().id_or_name())
1910
cb105d1f51b8 Added an assign slots redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1860
diff changeset
   375
cb105d1f51b8 Added an assign slots redirects
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1860
diff changeset
   376
1096
258af84e2e56 Added a getCreateDocumentRedirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1065
diff changeset
   377
def getCreateDocumentRedirect(entity, prefix):
258af84e2e56 Added a getCreateDocumentRedirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1065
diff changeset
   378
  """Returns the redirect for new documents.
258af84e2e56 Added a getCreateDocumentRedirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1065
diff changeset
   379
  """
258af84e2e56 Added a getCreateDocumentRedirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1065
diff changeset
   380
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   381
  return '/document/create/%s/%s' % (prefix, entity.key().id_or_name())
1096
258af84e2e56 Added a getCreateDocumentRedirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1065
diff changeset
   382
258af84e2e56 Added a getCreateDocumentRedirect
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1065
diff changeset
   383
1316
1ddf04976bee Allow documents to be filtered by prefix and scope
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1308
diff changeset
   384
def getListDocumentsRedirect(entity, prefix):
1ddf04976bee Allow documents to be filtered by prefix and scope
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1308
diff changeset
   385
  """Returns the redirect for listing documents.
1ddf04976bee Allow documents to be filtered by prefix and scope
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1308
diff changeset
   386
  """
1ddf04976bee Allow documents to be filtered by prefix and scope
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1308
diff changeset
   387
2160
3f9dd37d98a8 Use key().id_or_name() instead of key().name()
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2153
diff changeset
   388
  return '/document/list/%s/%s' % (prefix, entity.key().id_or_name())
1316
1ddf04976bee Allow documents to be filtered by prefix and scope
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1308
diff changeset
   389
1ddf04976bee Allow documents to be filtered by prefix and scope
Sverre Rabbelier <srabbelier@gmail.com>
parents: 1308
diff changeset
   390
2495
0113c2de89d3 Enable the ProjectSurvey and GradingProjectSurvey views in the core.
Daniel Diniz <ajaksu@gmail.com>
parents: 2491
diff changeset
   391
def getCreateSurveyRedirect(entity, prefix, url_name):
0113c2de89d3 Enable the ProjectSurvey and GradingProjectSurvey views in the core.
Daniel Diniz <ajaksu@gmail.com>
parents: 2491
diff changeset
   392
  """Returns the redirect for new surveys.
2434
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   393
  """
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   394
2495
0113c2de89d3 Enable the ProjectSurvey and GradingProjectSurvey views in the core.
Daniel Diniz <ajaksu@gmail.com>
parents: 2491
diff changeset
   395
  return '/%s/create/%s/%s' % (url_name, prefix, entity.key().id_or_name())
2434
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   396
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   397
2495
0113c2de89d3 Enable the ProjectSurvey and GradingProjectSurvey views in the core.
Daniel Diniz <ajaksu@gmail.com>
parents: 2491
diff changeset
   398
def getListSurveysRedirect(entity, prefix, url_name):
0113c2de89d3 Enable the ProjectSurvey and GradingProjectSurvey views in the core.
Daniel Diniz <ajaksu@gmail.com>
parents: 2491
diff changeset
   399
  """Returns the redirect for listing surveys.
2434
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   400
  """
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   401
2495
0113c2de89d3 Enable the ProjectSurvey and GradingProjectSurvey views in the core.
Daniel Diniz <ajaksu@gmail.com>
parents: 2491
diff changeset
   402
  return '/%s/list/%s/%s' % (url_name, prefix, entity.key().id_or_name())
2434
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   403
f6d45459b6b4 Added redirect for use in Surveys.
Daniel Diniz <ajaksu@gmail.com>
parents: 2176
diff changeset
   404
2543
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   405
def getTakeSurveyRedirect(entity, info):
2660
e2654d53a643 Another batch of style fixes for Surveys.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2627
diff changeset
   406
  """Returns the redirect for taking a Survey.
2543
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   407
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   408
  Args:
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   409
      entity: a Survey entity
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   410
      info: a dictionary contain a survey and params entry
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   411
  """
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   412
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   413
  survey_entity = entity
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   414
  params = info
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   415
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   416
  return '/%s/take/%s' % (params['url_name'],
2660
e2654d53a643 Another batch of style fixes for Surveys.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2627
diff changeset
   417
                          survey_entity.key().id_or_name())
2543
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   418
4c95d717a976 Added Menu items for all three kinds of Surveys to the program menu.
James Levy <jamesalexanderlevy@gmail.com>
parents: 2540
diff changeset
   419
2491
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   420
def getTakeProjectSurveyRedirect(entity, info):
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   421
  """Returns the redirect for taking a Survey for the given Student Project.
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   422
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   423
  Args:
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   424
      entity: a StudentProject entity
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   425
      info: a dictionary contain a survey and params entry
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   426
  """
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   427
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   428
  survey_entity = info['survey']
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   429
  params = info['params']
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   430
2540
1e44d71c0e3e Several style fixes due to code reviews.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2495
diff changeset
   431
  return '/%s/take/%s?project=%s' % (params['url_name'],
1e44d71c0e3e Several style fixes due to code reviews.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2495
diff changeset
   432
                                     survey_entity.key().id_or_name(),
1e44d71c0e3e Several style fixes due to code reviews.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2495
diff changeset
   433
                                     entity.key().id_or_name())
2491
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   434
f5776b6116fd Added getTakeProjectSurveyRedirect.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2434
diff changeset
   435
2726
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   436
def getViewSurveyRecordRedirect(entity, params):
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   437
  """Returns the redirect for view a Survey Record
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   438
  for the given Survey Record.
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   439
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   440
  Args:
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   441
      entity: a Survey Record entity
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   442
      params: params for a Survey view
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   443
  """
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   444
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   445
  return '/%s/record/%s?id=%s' % (
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   446
      params['url_name'],
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   447
      entity.survey.key().id_or_name(),
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   448
      entity.key().id_or_name())
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   449
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   450
2627
06d26fded0db Added redirect for editing a GradingRecord.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2543
diff changeset
   451
def getEditGradingRecordRedirect(entity, params):
06d26fded0db Added redirect for editing a GradingRecord.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2543
diff changeset
   452
  """Returns the redirect for editing a given GradingRecord.
06d26fded0db Added redirect for editing a GradingRecord.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2543
diff changeset
   453
  """
06d26fded0db Added redirect for editing a GradingRecord.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2543
diff changeset
   454
06d26fded0db Added redirect for editing a GradingRecord.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2543
diff changeset
   455
  return '/%s/edit_record/%s?id=%s' % (
06d26fded0db Added redirect for editing a GradingRecord.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2543
diff changeset
   456
      params['url_name'],
06d26fded0db Added redirect for editing a GradingRecord.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2543
diff changeset
   457
      entity.grading_survey_group.key().id_or_name(),
06d26fded0db Added redirect for editing a GradingRecord.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2543
diff changeset
   458
      entity.key().id_or_name())
06d26fded0db Added redirect for editing a GradingRecord.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2543
diff changeset
   459
06d26fded0db Added redirect for editing a GradingRecord.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2543
diff changeset
   460
891
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   461
def getToSRedirect(presence):
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   462
  """Returns link to 'show' the ToS Document if it exists, None otherwise.
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   463
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   464
  Args:
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   465
    presence: Presence entity that may or may not have a tos property
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   466
  """
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   467
  if not presence:
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   468
    return None
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   469
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   470
  try:
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   471
    tos_doc = presence.tos
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   472
  except db.Error:
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   473
    return None
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   474
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   475
  if not tos_doc:
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   476
    return None
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   477
3d40190f35b6 Move getToSLink() to soc.views.helper.redirects.getToSRedirect().
Todd Larsen <tlarsen@google.com>
parents: 885
diff changeset
   478
  return getPublicRedirect(tos_doc, {'url_name': 'document'})
2726
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   479
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   480
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   481
def getSubscribeRedirect(entity, params):
2777
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   482
  """Redirects to subscription XML doc for an entity.
2726
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   483
  """
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   484
  return'/%s/subscribe/%s' % (
0d9e4b0a9d3c Added redirect for viewing SurveyRecords and enabled links in the Record list.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2707
diff changeset
   485
      params['url_name'], entity.key().name())
2777
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   486
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   487
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   488
def getManageStatisticsRedirect(entity, params):
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   489
  """Returns redirect for managing statistic view.
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   490
  """
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   491
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   492
  result = '/%s/manage_stats/%s' % (
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   493
      params['url_name'], entity.key().id_or_name())
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   494
9dd7c21e330b Added redirect for use to manage statistics.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2726
diff changeset
   495
  return result