X-Git-Url: https://git.openstreetmap.org./osqa.git/blobdiff_plain/db72b4bb903793a6b04ab26a70c7961258d345f8..cbbbe9e150dfe0f6b9bb47cb5b3f3ed071aca73a:/forum/views/admin.py diff --git a/forum/views/admin.py b/forum/views/admin.py index f154ea1..54cb5ff 100644 --- a/forum/views/admin.py +++ b/forum/views/admin.py @@ -8,7 +8,6 @@ from django.template import RequestContext from django.utils.translation import ugettext as _ from django.utils import simplejson from django.db.models import Sum - from forum.settings.base import Setting from forum.settings.forms import SettingsSetForm, MaintenanceModeForm @@ -49,6 +48,7 @@ def dashboard(request): 'settings_pack': unicode(settings.SETTINGS_PACK), 'statistics': get_statistics(), 'recent_activity': get_recent_activity(), + 'flagged_posts': get_flagged_posts(), }) @super_user_required @@ -63,10 +63,10 @@ def statistics(request): today = datetime.now() last_month = today - timedelta(days=30) - last_month_questions = Question.objects.filter(deleted=None, added_at__gt=last_month + last_month_questions = Question.objects.filter_state(deleted=False).filter(added_at__gt=last_month ).order_by('added_at').values_list('added_at', flat=True) - last_month_n_questions = Question.objects.filter(deleted=None, added_at__lt=last_month).count() + last_month_n_questions = Question.objects.filter_state(deleted=False).filter(added_at__lt=last_month).count() qgraph_data = simplejson.dumps([ (time.mktime(d.timetuple()) * 1000, i + last_month_n_questions) for i, d in enumerate(last_month_questions) @@ -142,14 +142,17 @@ def get_default(request, set_name, var_name): def get_recent_activity(): return Action.objects.order_by('-action_date')[0:30] +def get_flagged_posts(): + return Action.objects.filter(canceled=False, action_type="flag").order_by('-action_date')[0:30] + def get_statistics(): return { 'total_users': User.objects.all().count(), 'users_last_24': User.objects.filter(date_joined__gt=(datetime.now() - timedelta(days=1))).count(), - 'total_questions': Question.objects.filter(deleted=None).count(), - 'questions_last_24': Question.objects.filter(deleted=None, added_at__gt=(datetime.now() - timedelta(days=1))).count(), - 'total_answers': Answer.objects.filter(deleted=None).count(), - 'answers_last_24': Answer.objects.filter(deleted=None, added_at__gt=(datetime.now() - timedelta(days=1))).count(), + 'total_questions': Question.objects.filter_state(deleted=False).count(), + 'questions_last_24': Question.objects.filter_state(deleted=False).filter(added_at__gt=(datetime.now() - timedelta(days=1))).count(), + 'total_answers': Answer.objects.filter_state(deleted=False).count(), + 'answers_last_24': Answer.objects.filter_state(deleted=False).filter(added_at__gt=(datetime.now() - timedelta(days=1))).count(), } @super_user_required @@ -273,3 +276,10 @@ def maintenance(request): return ('osqaadmin/maintenance.html', {'form': form, 'in_maintenance': settings.MAINTAINANCE_MODE.value is not None}) +@admin_page +def flagged_posts(request): + return ('osqaadmin/flagged_posts.html', { + 'flagged_posts': get_flagged_posts(), + }) + +