newsletter checkboxes in funding
authorJan Szejko <jan.szejko@gmail.com>
Thu, 28 Jul 2016 14:44:22 +0000 (16:44 +0200)
committerJan Szejko <jan.szejko@gmail.com>
Thu, 28 Jul 2016 14:44:48 +0000 (16:44 +0200)
src/funding/forms.py
src/funding/templates/funding/offer_detail.html

index 6feb104..8f1c3be 100644 (file)
@@ -5,12 +5,14 @@
 from django import forms
 from django.utils import formats
 from django.utils.translation import ugettext_lazy as _, ugettext, get_language
+
+from newsletter.forms import NewsletterForm
 from .models import Funding
 from .widgets import PerksAmountWidget
 from . import app_settings
 
 
-class FundingForm(forms.Form):
+class FundingForm(NewsletterForm):
     required_css_class = 'required'
 
     amount = forms.DecimalField(label=_("Amount"), decimal_places=2, widget=PerksAmountWidget())
@@ -44,6 +46,7 @@ class FundingForm(forms.Form):
         return self.cleaned_data
 
     def save(self):
+        super(FundingForm, self).save()
         funding = Funding.objects.create(
             offer=self.offer,
             name=self.cleaned_data['name'],
index 5350081..bf21f3d 100644 (file)
         <h3>{% trans "Support the publication" %}</h3>
         <form action="" method="post">
           <table>
-            {{ form.as_table }}
+            {# FIXME after upgrade to django 1.9 use field_order #}
+            {% for field in form %}
+              {% if field.name != 'agree_newsletter' %}
+                <tr>
+                  <th>{{ field.label }}</th>
+                  <td>
+                    {{ field.errors }}{{ field }}
+                    {% if field.help_text %}<br /><span class="helptext">{{ field.help_text }}</span>
+                    {% endif %}
+                  </td>
+                </tr>
+              {% endif %}
+            {% endfor %}
+            <tr><td></td><td><label>{{ form.agree_newsletter }} {{ form.agree_newsletter.label }}</label></td></tr>
             <tr>
               <td></td>
               <td>