--- a/app/soc/views/models/role.py Tue Dec 02 22:04:38 2008 +0000
+++ b/app/soc/views/models/role.py Tue Dec 02 22:05:13 2008 +0000
@@ -33,6 +33,7 @@
from soc.views.helper import redirects
from soc.views.models import base
from soc.views.models import user as user_view
+from soc.views.models import sponsor as sponsor_view
import soc.models.request
import soc.views.helper.lists
@@ -81,6 +82,25 @@
base.View.__init__(self, params=params)
+ def create(self, request, **kwargs):
+ """Specialized create view to enforce needing a scope_path
+
+ This view simply gives control to the base.View.create if the
+ scope_path is specified in kwargs. If it is not present, it
+ instead displays the result of self.select. Refer to the
+ respective docstrings on what they do.
+
+ Args:
+ see base.View.create
+ """
+
+ if 'scope_path' in kwargs:
+ return super(View, self).create(request, **kwargs)
+
+ view = sponsor_view.view
+ redirect = redirects.getInviteRedirect
+ return self.select(request, view, redirect, **kwargs)
+
def invite(self, request, page_name=None, params=None, **kwargs):
"""Displays the request promotion to Role page.
"""