app/soc/modules/ghop/views/models/task.py
changeset 3027 a223fff4cca8
parent 3026 75ef22dc5a8a
child 3028 1852a74ba03a
equal deleted inserted replaced
3026:75ef22dc5a8a 3027:a223fff4cca8
   163         ('checkCanOrgAdminOrMentorEdit', ['scope_path', False])]
   163         ('checkCanOrgAdminOrMentorEdit', ['scope_path', False])]
   164     rights['suggest_task'] = [
   164     rights['suggest_task'] = [
   165         ('checkCanOrgAdminOrMentorEdit', ['scope_path', True]),
   165         ('checkCanOrgAdminOrMentorEdit', ['scope_path', True]),
   166         ('checkRoleAndStatusForTask',
   166         ('checkRoleAndStatusForTask',
   167             [['ghop/org_admin', 'ghop/mentor'], ['active'], 
   167             [['ghop/org_admin', 'ghop/mentor'], ['active'], 
   168             []])]
   168             ['Unapproved']])]
   169     rights['search'] = ['allow']
   169     rights['search'] = ['allow']
   170 
   170 
   171     new_params = {}
   171     new_params = {}
   172     new_params['logic'] = soc.modules.ghop.logic.models.task.logic
   172     new_params['logic'] = soc.modules.ghop.logic.models.task.logic
   173     new_params['rights'] = rights
   173     new_params['rights'] = rights
   606     if request.method == 'POST':
   606     if request.method == 'POST':
   607       return self.suggestTaskPost(request, context,
   607       return self.suggestTaskPost(request, context,
   608                                   params, entity)
   608                                   params, entity)
   609     else:
   609     else:
   610       return self.suggestTaskGet(request, context,
   610       return self.suggestTaskGet(request, context,
   611                                  params, entity, **kwargs)
   611                                  params, entity, kwargs)
   612 
   612 
   613   def suggestTaskPost(self, request, context, params, entity):
   613   def suggestTaskPost(self, request, context, params, entity):
   614     """Handles the POST request for the suggest task view.
   614     """Handles the POST request for the suggest task view.
   615     """
   615     """
   616 
   616 
   629     else:
   629     else:
   630       # TODO: Redirect to standard edit page which already has the ability to
   630       # TODO: Redirect to standard edit page which already has the ability to
   631       # hide certain fields.
   631       # hide certain fields.
   632       entity = logic.updateOrCreateFromFields(fields)
   632       entity = logic.updateOrCreateFromFields(fields)
   633 
   633 
   634     page_params = params['edit_params']
       
   635 
       
   636     redirect = ghop_redirects.getSuggestTaskRedirect(
   634     redirect = ghop_redirects.getSuggestTaskRedirect(
   637         entity, params)
   635         entity, params)
   638 
   636 
   639     return http.HttpResponseRedirect(redirect)
   637     return http.HttpResponseRedirect(redirect)
   640 
   638 
   641   def suggestTaskGet(self, request, context, params, entity, **kwargs):
   639   def suggestTaskGet(self, request, context, params, entity, seed):
   642     """Handles the GET request for the suggest task view.
   640     """Handles the GET request for the suggest task view.
   643     """
   641     """
   644 
   642 
   645     if entity:
   643     if entity:
   646       # populate form with the existing entity
   644       # populate form with the existing entity
   647       form = params['mentor_form'](instance=entity)
   645       form = params['mentor_form'](instance=entity)
   648 
   646 
   649       self._editGet(request, entity, form)
   647       self._editGet(request, entity, form)
       
   648     elif seed:
       
   649       form = params['mentor_form'](initial=seed)
   650     else:
   650     else:
   651       form = params['mentor_form']()
   651       form = params['mentor_form']()
   652 
   652 
   653     return self._constructResponse(request, entity, context, form, params)
   653     return self._constructResponse(request, entity, context, form, params)
   654 
   654