app/soc/views/site/sponsor/profile.py
changeset 361 465e4df617de
parent 360 5ad9cabb5892
child 365 74dec172944e
equal deleted inserted replaced
360:5ad9cabb5892 361:465e4df617de
   121   try:
   121   try:
   122     existing_sponsor = sponsor.logic.getIfFields(link_name=link_name)
   122     existing_sponsor = sponsor.logic.getIfFields(link_name=link_name)
   123   except out_of_band.ErrorResponse, error:
   123   except out_of_band.ErrorResponse, error:
   124     # show custom 404 page when link name doesn't exist in Datastore
   124     # show custom 404 page when link name doesn't exist in Datastore
   125     error.message = error.message + DEF_CREATE_NEW_SPONSOR_MSG
   125     error.message = error.message + DEF_CREATE_NEW_SPONSOR_MSG
   126     return simple.errorResponse(request, error, template, context, page)
   126     return simple.errorResponse(request, page, error, template, context)
   127      
   127      
   128   if request.method == 'POST':
   128   if request.method == 'POST':
   129     if existing_sponsor:
   129     if existing_sponsor:
   130       sponsor_form = EditForm(request.POST)
   130       sponsor_form = EditForm(request.POST)
   131     else:
   131     else:
   137         # abuse that manually, so we check if form link_name is the same as
   137         # abuse that manually, so we check if form link_name is the same as
   138         # url link_name
   138         # url link_name
   139         if sponsor_form.cleaned_data.get('link_name') != link_name:
   139         if sponsor_form.cleaned_data.get('link_name') != link_name:
   140           msg = DEF_SPONSOR_NO_LINKNAME_CHANGE_MSG
   140           msg = DEF_SPONSOR_NO_LINKNAME_CHANGE_MSG
   141           error = out_of_band.ErrorResponse(msg)
   141           error = out_of_band.ErrorResponse(msg)
   142           return simple.errorResponse(request, error, template, context, page)
   142           return simple.errorResponse(request, page, error, template, context)
   143       
   143       
   144       fields = {}      
   144       fields = {}      
   145       
   145       
   146       # Ask for all the fields and pull them out 
   146       # Ask for all the fields and pull them out 
   147       for field in sponsor_form.cleaned_data:
   147       for field in sponsor_form.cleaned_data:
   237   try:
   237   try:
   238     existing_sponsor = models.sponsor.logic.getIfFields(link_name=link_name)
   238     existing_sponsor = models.sponsor.logic.getIfFields(link_name=link_name)
   239   except out_of_band.ErrorResponse, error:
   239   except out_of_band.ErrorResponse, error:
   240     # show custom 404 page when link name doesn't exist in Datastore
   240     # show custom 404 page when link name doesn't exist in Datastore
   241     error.message = error.message + DEF_CREATE_NEW_SPONSOR_MSG
   241     error.message = error.message + DEF_CREATE_NEW_SPONSOR_MSG
   242     return simple.errorResponse(request, error, template, context, page)
   242     return simple.errorResponse(request, page, error, template, context)
   243 
   243 
   244   if existing_sponsor:
   244   if existing_sponsor:
   245     # TODO(pawel.solyga): Create specific delete method for Sponsor model
   245     # TODO(pawel.solyga): Create specific delete method for Sponsor model
   246     # Check if Sponsor can be deleted (has no Hosts and Programs)
   246     # Check if Sponsor can be deleted (has no Hosts and Programs)
   247     models.sponsor.logic.delete(existing_sponsor)
   247     models.sponsor.logic.delete(existing_sponsor)