File: 01-add_form_args.diff

package info (click to toggle)
python-django-contact-form 0%2Bhg61-2
  • links: PTS, VCS
  • area: main
  • in suites: squeeze, wheezy
  • size: 96 kB
  • ctags: 29
  • sloc: python: 121; makefile: 21
file content (41 lines) | stat: -rw-r--r-- 1,681 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
## 01-add_form_args.diff by Daniel Watkins <daniel@daniel-watkins.co.uk>
##
## Add a form_args argument to the contact_form view, which is passed
## through to the form_class being used.

Index: django-contact-form/contact_form/views.py
===================================================================
--- django-contact-form.orig/contact_form/views.py	2009-05-01 11:20:54.000000000 +0100
+++ django-contact-form/contact_form/views.py	2009-05-01 11:20:58.000000000 +0100
@@ -14,7 +14,7 @@
 def contact_form(request, form_class=ContactForm,
                  template_name='contact_form/contact_form.html',
                  success_url=None, extra_context=None,
-                 fail_silently=False):
+                 fail_silently=False, form_args=None):
     """
     Render a contact form, validate its input and send an email
     from it.
@@ -71,15 +71,20 @@
     # but contact_form/urls.py in turn imports from this module.
     #
     
+    if form_args is None:
+        form_args = ()
     if success_url is None:
         success_url = reverse('contact_form_sent')
     if request.method == 'POST':
-        form = form_class(data=request.POST, files=request.FILES, request=request)
+        form = form_class(data=request.POST,
+                          files=request.FILES,
+                          request=request,
+                         *form_args)
         if form.is_valid():
             form.save(fail_silently=fail_silently)
             return HttpResponseRedirect(success_url)
     else:
-        form = form_class(request=request)
+        form = form_class(request=request, *form_args)
 
     if extra_context is None:
         extra_context = {}