app/soc/views/models/base.py
changeset 402 021e86368600
parent 399 b82852e6963e
child 403 d3e545a8bd26
equal deleted inserted replaced
401:37d0b6c25f3e 402:021e86368600
   156 
   156 
   157     try:
   157     try:
   158       entity = self._logic.getIfFields(**kwargs)
   158       entity = self._logic.getIfFields(**kwargs)
   159     except soc.logic.out_of_band.ErrorResponse, error:
   159     except soc.logic.out_of_band.ErrorResponse, error:
   160       template = self._params['public_template']
   160       template = self._params['public_template']
   161       error.message = error.message + View.DEF_CREATE_NEW_ENTITY_MSG % {
   161       error.message = error.message + self.DEF_CREATE_NEW_ENTITY_MSG % {
   162           'entity_type_lower' : self._params['name'].lower(),
   162           'entity_type_lower' : self._params['name'].lower(),
   163           'entity_type' : self._params['name'],
   163           'entity_type' : self._params['name'],
   164           'create' : self._params['create_redirect']
   164           'create' : self._params['create_redirect']
   165           }
   165           }
   166       return simple.errorResponse(request, page, error, template, context)
   166       return simple.errorResponse(request, page, error, template, context)
   208     suffix = None    
   208     suffix = None    
   209 
   209 
   210     # Remove the params from the request, this is relevant only if
   210     # Remove the params from the request, this is relevant only if
   211     # someone bookmarked a POST page.
   211     # someone bookmarked a POST page.
   212     is_self_referrer = helper.requests.isReferrerSelf(request, suffix=suffix)
   212     is_self_referrer = helper.requests.isReferrerSelf(request, suffix=suffix)
   213     if request.GET.get(View.DEF_SUBMIT_MSG_PARAM_NAME):
   213     if request.GET.get(self.DEF_SUBMIT_MSG_PARAM_NAME):
   214       if (not entity) or (not is_self_referrer):
   214       if (not entity) or (not is_self_referrer):
   215         return http.HttpResponseRedirect(request.path)
   215         return http.HttpResponseRedirect(request.path)
   216 
   216 
   217     if entity:
   217     if entity:
   218       # Note: no message will be displayed if parameter is not present
   218       # Note: no message will be displayed if parameter is not present
   219       context['notice'] = helper.requests.getSingleIndexedParamValue(
   219       context['notice'] = helper.requests.getSingleIndexedParamValue(
   220           request, View.DEF_SUBMIT_MSG_PARAM_NAME,
   220           request, self.DEF_SUBMIT_MSG_PARAM_NAME,
   221           values=self._params['save_message'])
   221           values=self._params['save_message'])
   222 
   222 
   223       # populate form with the existing entity
   223       # populate form with the existing entity
   224       form = self._params['edit_form'](instance=entity)
   224       form = self._params['edit_form'](instance=entity)
   225       self._editGet(request, entity, form)
   225       self._editGet(request, entity, form)
   287 
   287 
   288     try:
   288     try:
   289       entity = self._logic.getIfFields(**kwargs)
   289       entity = self._logic.getIfFields(**kwargs)
   290     except soc.logic.out_of_band.ErrorResponse, error:
   290     except soc.logic.out_of_band.ErrorResponse, error:
   291       template = self._params['create_template']
   291       template = self._params['create_template']
   292       error.message = error.message + View.DEF_CREATE_NEW_ENTITY_MSG % {
   292       error.message = error.message + self.DEF_CREATE_NEW_ENTITY_MSG % {
   293           'entity_type_lower' : self._params['name'].lower(),
   293           'entity_type_lower' : self._params['name'].lower(),
   294           'entity_type' : self._params['name'],
   294           'entity_type' : self._params['name'],
   295           'create' : self._params['create_redirect']
   295           'create' : self._params['create_redirect']
   296           }
   296           }
   297       return simple.errorResponse(request, page, error, template, context)
   297       return simple.errorResponse(request, page, error, template, context)
   313   def _editPost(self, request, entity, fields):
   313   def _editPost(self, request, entity, fields):
   314     """Performs any required processing on the entity to post its edit page
   314     """Performs any required processing on the entity to post its edit page
   315 
   315 
   316     Args:
   316     Args:
   317       request: the django request object
   317       request: the django request object
   318       entity: the entity to post
   318       entity:  the entity to create or update from POST contents
   319       fields: the new field values
   319       fields: the new field values
   320     """
   320     """
   321 
   321 
   322     raise NotImplementedError
   322     raise NotImplementedError
   323 
   323