* Add "Under discussion" status for influences.
[matthijs/projects/xerxes.git] / influences / views.py
index 3b26dac9d3f2b0b9d8959141adc3129d07223fef..22f2a3b03005fc4810c354bdedb00e7b7a5c7bb9 100644 (file)
@@ -1,5 +1,6 @@
 from django.shortcuts import render_to_response
 from django.shortcuts import get_object_or_404
+from django.template import RequestContext
 from django.utils.translation import ugettext as _
 from django.contrib.auth.models import User
 from ee.influences.models import Character
@@ -20,20 +21,25 @@ def add(request, character_id):
     message = None
 
     initial = {}
+    # Get the current user's characters
+    chars = request.user.character_set.all()
+
     if (character_id):
         initial['character'] = character_id
+    elif (chars.count() == 1):
+        initial['character'] = chars[0].id
 
     f = InfluenceForm(request=request, initial=initial)
     if (f.is_valid()):
         f.save()
         message = _("Influence added.")
         f = None
-
+     
+    # Only allow characters of the current user
     if f:
-        # Only allow characters of the current user
-        f.fields['character']._set_queryset(request.user.character_set.all())
+        f.fields['character']._set_queryset(chars)
 
-    return render_to_response('influences/add.html', {'message' : message, 'form' : f})
+    return render_to_response('influences/add.html', {'message' : message, 'form' : f}, RequestContext(request))
 
 def addCharacter(request):
     message = None
@@ -50,4 +56,4 @@ def addCharacter(request):
 def index(request):
     characters = request.user.character_set.all()
     influences = Influence.objects.filter(character__in=characters)
-    return render_to_response('influences/index.html', {'characters' : characters, 'influences' : influences})
+    return render_to_response('influences/index.html', {'characters' : characters, 'influences' : influences}, RequestContext(request))