view gpp/weblinks/forms.py @ 204:b4305e18d3af

Resolve ticket #74. Add user badges. Some extra credit was done here: also refactored how pending news, links, and downloads are handled.
author Brian Neal <bgneal@gmail.com>
date Sat, 01 May 2010 21:53:59 +0000
parents dbd703f7d63a
children 7e8d2dda99e3
line wrap: on
line source
"""
Forms for the weblinks application.
"""

from django import forms
from weblinks.models import PendingLink, Link

class SearchForm(forms.Form):
   '''Weblinks search form'''
   text = forms.CharField(max_length = 30)

   def query(self):
      return self.cleaned_data['text']


class AddLinkForm(forms.ModelForm):
   title = forms.CharField(widget = forms.TextInput(attrs = {'size': 52}))
   url = forms.CharField(widget = forms.TextInput(attrs = {'size': 52}))

   def clean_url(self):
      new_url = self.cleaned_data['url']
      try:
         Link.objects.get(url__iexact = new_url)
      except Link.DoesNotExist:
         return new_url
      raise forms.ValidationError('That link already exists in our database.')

   class Meta:
      model = PendingLink
      exclude = ('user', 'date_added')