* Remove old addInfluence view and replace it by a new add view (which allows you...
[matthijs/projects/xerxes.git] / influences / views.py
1 from django.shortcuts import render_to_response
2 from django.shortcuts import get_object_or_404
3 from ee.influences.models import Character
4 from ee.influences.models import Influence
5 from django import newforms as forms
6
7 class InfluenceForm(forms.ModelForm):
8         class Meta:
9                 model = Influence
10                 fields = ('character', 'contact', 'description')
11
12 def add(request, character_id):
13         message = None
14
15         if (request.method == "POST"):
16                 f = InfluenceForm(request.POST)
17                 if (f.is_valid()):
18                         f.save()
19                         message = "Influence added"
20                         f = None
21         else:
22                 f = InfluenceForm()
23         
24         if f:
25                 # Only allow characters of the current user
26                 f.fields['character']._set_queryset(request.user.character_set.all())
27
28         return render_to_response('influences/character_addinfluence.html', {'message' : message, 'form' : f})