1 from django.shortcuts import render_to_response
2 from django.shortcuts import get_object_or_404
3 from django.utils.translation import ugettext as _
4 from django.contrib.auth.models import User
5 from ee.influences.models import Character
6 from ee.influences.models import Influence
7 from ee.tools.forms import ContextModelForm
9 class InfluenceForm(ContextModelForm):
12 fields = ('character', 'contact', 'description')
14 class CharacterForm(ContextModelForm):
19 def add(request, character_id):
23 # Get the current user's characters
24 chars = request.user.character_set.all()
27 initial['character'] = character_id
28 elif (chars.count() == 1):
29 initial['character'] = chars[0].id
31 f = InfluenceForm(request=request, initial=initial)
34 message = _("Influence added.")
37 # Only allow characters of the current user
39 f.fields['character']._set_queryset(chars)
41 return render_to_response('influences/add.html', {'message' : message, 'form' : f})
43 def addCharacter(request):
45 f = CharacterForm(request=request)
47 c = f.save(commit=False)
48 c.player = request.user
50 message = _("Character added.")
53 return render_to_response('influences/add_character.html', {'message' : message, 'form' : f})
56 characters = request.user.character_set.all()
57 influences = Influence.objects.filter(character__in=characters)
58 return render_to_response('influences/index.html', {'characters' : characters, 'influences' : influences})