annotate weblinks/forms.py @ 821:71db8076dc3d

Bandmap WIP: geocoding integrated with add form. Add form works. Before submitting the form, client side JS makes a geocode request to Google and populates hidden lat/lon fields with the result. Successfully created a model instance on the server side. Still need to update admin dashboard, admin approval, and give out badges for adding bands to the map. Once that is done, then work on displaying the map with filtering.
author Brian Neal <bgneal@gmail.com>
date Tue, 23 Sep 2014 20:40:31 -0500
parents ee87ea74d46b
children 176d1550bf25
rev   line source
gremmie@1 1 """
gremmie@1 2 Forms for the weblinks application.
gremmie@1 3 """
gremmie@1 4
gremmie@1 5 from django import forms
bgneal@204 6 from weblinks.models import PendingLink, Link
gremmie@1 7
gremmie@1 8
gremmie@1 9 class AddLinkForm(forms.ModelForm):
gremmie@1 10 title = forms.CharField(widget = forms.TextInput(attrs = {'size': 52}))
gremmie@1 11 url = forms.CharField(widget = forms.TextInput(attrs = {'size': 52}))
gremmie@1 12
gremmie@1 13 def clean_url(self):
gremmie@1 14 new_url = self.cleaned_data['url']
gremmie@1 15 try:
gremmie@1 16 Link.objects.get(url__iexact = new_url)
gremmie@1 17 except Link.DoesNotExist:
gremmie@1 18 return new_url
gremmie@1 19 raise forms.ValidationError('That link already exists in our database.')
gremmie@1 20
gremmie@1 21 class Meta:
bgneal@204 22 model = PendingLink
bgneal@277 23 exclude = ('user', 'date_added', 'update_date')