app/soc/views/models/role.py
changeset 620 e74e0b74625f
parent 616 580b1c21b808
child 624 811f50717bea
equal deleted inserted replaced
619:7b61da3d4306 620:e74e0b74625f
    33 from soc.logic.models import request as request_logic
    33 from soc.logic.models import request as request_logic
    34 from soc.logic.models import user as user_logic
    34 from soc.logic.models import user as user_logic
    35 from soc.views import helper
    35 from soc.views import helper
    36 from soc.views import out_of_band
    36 from soc.views import out_of_band
    37 from soc.views.helper import access
    37 from soc.views.helper import access
       
    38 from soc.views.helper import redirects
    38 from soc.views.models import base
    39 from soc.views.models import base
    39 from soc.views.models import user as user_view
    40 from soc.views.models import user as user_view
    40 
    41 
    41 import soc.models.request
    42 import soc.models.request
    42 import soc.views.helper.widgets
    43 import soc.views.helper.widgets
    88     """
    89     """
    89 
    90 
    90     if not params:
    91     if not params:
    91       params = {}
    92       params = {}
    92     new_params = {}
    93     new_params = {}
    93     link_id = kwargs['link_id']
    94     group_scope = kwargs['link_id']
    94 
    95 
    95     new_params['list_action'] = (self.getCreateRequestRedirect, link_id)
    96     new_params['list_action'] = (redirects.getCreateRequestRedirect, 
       
    97         {'group_scope' : group_scope,
       
    98         'url_name' : self._params['url_name'] })
    96     new_params['instruction_text'] = \
    99     new_params['instruction_text'] = \
    97         self.DEF_INVITE_INSTRUCTION_MSG_FMT % self._params
   100         self.DEF_INVITE_INSTRUCTION_MSG_FMT % self._params
    98 
   101 
    99     params = dicts.merge(new_params, params)
   102     new_params = dicts.merge(new_params, params)
   100     params = dicts.merge(new_params, user_view.view._params)
   103     params = dicts.merge(new_params, user_view.view._params)
   101 
   104 
   102     try:
   105     try:
   103       access.checkAccess('invite', request, rights=params['rights'])
   106       access.checkAccess('invite', request, rights=params['rights'])
   104     except out_of_band.Error, error:
   107     except out_of_band.Error, error:
   106 
   109 
   107     content = helper.lists.getListContent(request, params, user_logic.logic)
   110     content = helper.lists.getListContent(request, params, user_logic.logic)
   108     contents = [content]
   111     contents = [content]
   109 
   112 
   110     return self._list(request, params, contents, page_name)
   113     return self._list(request, params, contents, page_name)
   111 
       
   112   def getCreateRequestRedirect(self, entity, group_scope):
       
   113     """Returns the edit redirect for the specified entity
       
   114     """
       
   115 
       
   116     result ='/request/create/%s/%s/%s' % (
       
   117         self._params['url_name'], group_scope, entity.link_id)
       
   118     return result
       
   119 
   114 
   120   def getDjangoURLPatterns(self):
   115   def getDjangoURLPatterns(self):
   121     """See base.View.getDjangoURLPatterns().
   116     """See base.View.getDjangoURLPatterns().
   122     """
   117     """
   123 
   118