Skip to content

Instantly share code, notes, and snippets.

@rlr
Created January 23, 2014 23:16
Show Gist options
  • Save rlr/8588808 to your computer and use it in GitHub Desktop.
Save rlr/8588808 to your computer and use it in GitHub Desktop.
# To get the number of support forum contributors:
from datetime import date
from django.db.models import F, Count
from kitsune.questions.models import Answer
start_date =date(2013,1,1)
end_date = date(2014,1,1)
min_replies = 10
count = (Answer.objects
.exclude(creator=F('question__creator'))
.filter(created__gte=start_date, created__lt=end_date)
.values('creator')
.annotate(count=Count('creator'))
.filter(count__gte=min_replies).count())
# To get the number of Army of Awesome contributors:
from datetime import date
from kitsune.customercare.models import Reply
start_date =date(2013,1,1)
end_date = date(2014,1,1)
count = (Reply.objects
.filter(created__gte=start_date, created__lt=end_date)
.values_list('twitter_username', flat=True)
.distinct().count())
# To get the number of KB contributors:
from datetime import date
from kitsune.wiki.models import Revision
start_date =date(2013,1,1)
end_date = date(2014,1,1)
creators = set(Revision.objects
.filter(created__gte=start_date, created__lt=end_date, document__locale='en-US')
.values_list('creator', flat=True)
.distinct())
reviewers = set(Revision.objects
.filter(reviewed__gte=start_date, reviewed__lt=end_date, document__locale='en-US')
.exclude(document__locale='en-US')
.values_list('reviewer', flat=True)
.distinct())
count = len(creators.union(reviewers))
# To get the number of L10n contributors:
from datetime import date
from kitsune.wiki.models import Revision
start_date =date(2013,1,1)
end_date = date(2014,1,1)
creators = set(Revision.objects
.filter(created__gte=start_date, created__lt=end_date)
.exclude(document__locale='en-US')
.values_list('creator', flat=True)
.distinct())
reviewers = set(Revision.objects
.filter(reviewed__gte=start_date, reviewed__lt=end_date)
.exclude(document__locale='en-US')
.values_list('reviewer', flat=True)
.distinct())
count = len(creators.union(reviewers))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment