web/lib/django/contrib/formtools/preview.py
changeset 29 cc9b7e14412b
parent 0 0d40e90630ef
equal deleted inserted replaced
28:b758351d191f 29:cc9b7e14412b
    58     def preview_post(self, request):
    58     def preview_post(self, request):
    59         "Validates the POST data. If valid, displays the preview page. Else, redisplays form."
    59         "Validates the POST data. If valid, displays the preview page. Else, redisplays form."
    60         f = self.form(request.POST, auto_id=AUTO_ID)
    60         f = self.form(request.POST, auto_id=AUTO_ID)
    61         context = {'form': f, 'stage_field': self.unused_name('stage'), 'state': self.state}
    61         context = {'form': f, 'stage_field': self.unused_name('stage'), 'state': self.state}
    62         if f.is_valid():
    62         if f.is_valid():
       
    63             self.process_preview(request, f, context) 
    63             context['hash_field'] = self.unused_name('hash')
    64             context['hash_field'] = self.unused_name('hash')
    64             context['hash_value'] = self.security_hash(request, f)
    65             context['hash_value'] = self.security_hash(request, f)
    65             return render_to_response(self.preview_template, context, context_instance=RequestContext(request))
    66             return render_to_response(self.preview_template, context, context_instance=RequestContext(request))
    66         else:
    67         else:
    67             return render_to_response(self.form_template, context, context_instance=RequestContext(request))
    68             return render_to_response(self.form_template, context, context_instance=RequestContext(request))
    94         user_id to make sure it's a valid user and/or save it for later, for
    95         user_id to make sure it's a valid user and/or save it for later, for
    95         use in done().
    96         use in done().
    96         """
    97         """
    97         pass
    98         pass
    98 
    99 
       
   100     def process_preview(self, request, form, context):
       
   101         """
       
   102         Given a validated form, performs any extra processing before displaying
       
   103         the preview page, and saves any extra data in context.
       
   104         """
       
   105         pass
       
   106 
    99     def security_hash(self, request, form):
   107     def security_hash(self, request, form):
   100         """
   108         """
   101         Calculates the security hash for the given HttpRequest and Form instances.
   109         Calculates the security hash for the given HttpRequest and Form instances.
   102 
   110 
   103         Subclasses may want to take into account request-specific information,
   111         Subclasses may want to take into account request-specific information,