]> git.openstreetmap.org Git - osqa.git/blobdiff - forum/views/admin.py
Addresses OSQA-206: Add some help text to explain what "bootstrap mode" is
[osqa.git] / forum / views / admin.py
index 490244fde8419563459c9bb80b22edef0e9d3917..126a348c735fada04184b24ee04921d37e1ea39c 100644 (file)
@@ -11,7 +11,6 @@ from forum.settings.base import Setting
 from forum.settings.forms import SettingsSetForm
 
 from forum.models import Question, Answer, User, Node, Action
-from forum import const
 from forum import settings
 
 def super_user_required(fn):
@@ -27,7 +26,7 @@ def super_user_required(fn):
 def index(request):
     return render_to_response('osqaadmin/index.html', {
         'sets': get_all_sets(),
-        'settings_pack': settings.SETTINGS_PACK,
+        'settings_pack': unicode(settings.SETTINGS_PACK),
         'statistics': get_statistics(),
         'recent_activity': get_recent_activity(),
     }, context_instance=RequestContext(request))
@@ -48,6 +47,8 @@ def settings_set(request, set_name):
 
             if set_name in ('minrep', 'badges', 'repgain'):
                 settings.SETTINGS_PACK.set_value("custom")
+
+        return HttpResponseRedirect(reverse('admin_set', args=[set_name]))
     else:
         form = SettingsSetForm(set)
 
@@ -158,12 +159,12 @@ def go_defaults(request):
 def recalculate_denormalized(request):
     for n in Node.objects.all():
         n = n.leaf
-        n.vote_up_count = n.votes.filter(canceled=False, vote=1).count()
-        n.vote_down_count = n.votes.filter(canceled=False, vote=-1).count()
+        n.score = n.votes.aggregate(score=Sum('value'))['score']
+        if not n.score: n.score = 0
         n.save()
 
     for u in User.objects.all():
-        u.reputation = u.reputes.filter(canceled=False).aggregate(reputation=Sum('value'))['reputation']
+        u.reputation = u.reputes.aggregate(reputation=Sum('value'))['reputation']
         u.save()
 
     request.user.message_set.create(message=_('All values recalculated'))