Mercurial > public > sg101
annotate gpp/news/forms.py @ 459:9d3bd7304050
Fixing #221. Also combined all permissions checks into a new module, permissions.py. This allows us to cache user, category, and forum groups information since it rarely changes.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Sat, 02 Jul 2011 23:35:45 +0000 |
parents | 88b2b9cb8c1f |
children | bdcce55f137e |
rev | line source |
---|---|
gremmie@1 | 1 """ |
gremmie@1 | 2 Forms for the news application. |
gremmie@1 | 3 """ |
gremmie@1 | 4 |
gremmie@1 | 5 from django import forms |
bgneal@7 | 6 from django.conf import settings |
bgneal@7 | 7 |
gremmie@1 | 8 from news.models import PendingStory |
gremmie@1 | 9 from news.models import Category |
gremmie@1 | 10 |
gremmie@1 | 11 |
gremmie@1 | 12 class AddNewsForm(forms.ModelForm): |
gremmie@1 | 13 """Form for a user to submit a news story to the admins for review.""" |
gremmie@1 | 14 title = forms.CharField(widget=forms.TextInput(attrs={'size': 52})) |
gremmie@1 | 15 short_text = forms.CharField(widget=forms.Textarea(attrs={'rows': 20, 'cols': 80})) |
gremmie@1 | 16 long_text = forms.CharField(required=False, widget=forms.Textarea(attrs={'rows': 20, 'cols': 80})) |
gremmie@1 | 17 |
gremmie@1 | 18 class Meta: |
gremmie@1 | 19 model = PendingStory |
bgneal@218 | 20 fields = ('title', 'category', 'short_text', 'long_text') |
gremmie@1 | 21 |
gremmie@1 | 22 class Media: |
bgneal@7 | 23 js = settings.GPP_THIRD_PARTY_JS['tiny_mce'] |
gremmie@1 | 24 |
gremmie@1 | 25 |
gremmie@1 | 26 class SendStoryForm(forms.Form): |
gremmie@1 | 27 """Form for sending a news story via email to a friend.""" |
gremmie@1 | 28 friend_name = forms.CharField(label="Friend's Name", max_length=64) |
gremmie@1 | 29 friend_email = forms.EmailField(label="Friend's Email") |
gremmie@1 | 30 |
gremmie@1 | 31 def email(self): |
gremmie@1 | 32 return self.cleaned_data['friend_email'] |
bgneal@312 | 33 |
gremmie@1 | 34 def name(self): |
gremmie@1 | 35 return self.cleaned_data['friend_name'] |
gremmie@1 | 36 |