Merge branch 'karma-graphs' into 'master'
Create karma graph report page See merge request !7
This commit is contained in:
commit
82c1b1babd
@ -141,6 +141,13 @@ EMAIL_BACKEND = 'django.core.mail.backends.filebased.EmailBackend'
|
||||
EMAIL_FILE_PATH = BASE_DIR
|
||||
|
||||
|
||||
# bootstrap3
|
||||
BOOTSTRAP3 = {
|
||||
'include_jquery': True,
|
||||
'javascript_in_head': True,
|
||||
}
|
||||
|
||||
|
||||
# registration
|
||||
LOGIN_REDIRECT_URL = reverse_lazy('index')
|
||||
ACCOUNT_ACTIVATION_DAYS = 7
|
||||
|
@ -13,6 +13,7 @@ urlpatterns = patterns('',
|
||||
url(r'^$', TemplateView.as_view(template_name='index.html'), name='home'),
|
||||
|
||||
url(r'^dispatch/', include('dispatch.urls')),
|
||||
url(r'^karma/', include('karma.urls')),
|
||||
url(r'^markov/', include('markov.urls')),
|
||||
url(r'^races/', include('races.urls')),
|
||||
|
||||
|
@ -52,6 +52,21 @@ class KarmaKey(models.Model):
|
||||
return rank+1
|
||||
return None
|
||||
|
||||
def history(self):
|
||||
"""Determine the score for this karma entry at every delta."""
|
||||
|
||||
history = []
|
||||
|
||||
entries = KarmaLogEntry.objects.filter(key=self).order_by('created')
|
||||
for entry in entries:
|
||||
timestamp = entry.created
|
||||
delta = entry.delta
|
||||
score = KarmaLogEntry.objects.filter(key=self).filter(created__lte=entry.created).aggregate(models.Sum('delta'))['delta__sum']
|
||||
|
||||
history.append((timestamp, delta, score))
|
||||
|
||||
return history
|
||||
|
||||
|
||||
class KarmaLogEntryManager(models.Manager):
|
||||
|
||||
|
34
dr_botzo/karma/templates/karma/karma_key.html
Normal file
34
dr_botzo/karma/templates/karma/karma_key.html
Normal file
@ -0,0 +1,34 @@
|
||||
{% extends 'base.html' %}
|
||||
{% load static %}
|
||||
|
||||
{% block extra_media %}
|
||||
<script type="text/javascript" src="{% get_static_prefix %}js/Chart.min.js"></script>
|
||||
{% endblock %}
|
||||
|
||||
{% block title %}karma: {{ entry.key }}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h3>{{ entry.key }}</h3>
|
||||
<canvas id="karma_history"></canvas>
|
||||
<script type="text/javascript">
|
||||
Chart.defaults.global.responsive = true;
|
||||
Chart.defaults.global.maintainAspectRatio = true;
|
||||
var ctx = $("#karma_history").get(0).getContext("2d");
|
||||
var data = {
|
||||
labels: [{% for x in entry.history %}"{{ x.0 }}", {% endfor %}],
|
||||
datasets: [
|
||||
{
|
||||
label: "{{ entry.key }}",
|
||||
fillColor: "rgba(220,220,220,0.2)",
|
||||
strokeColor: "rgba(220,220,220,1)",
|
||||
pointColor: "rgba(220,220,220,1)",
|
||||
pointStrokeColor: "#fff",
|
||||
pointHighlightFill: "#fff",
|
||||
pointHighlightStroke: "rgba(220,220,220,1)",
|
||||
data: [{% for x in entry.history %}{{ x.2 }}, {% endfor %}]
|
||||
}
|
||||
]
|
||||
};
|
||||
var myLineChart = new Chart(ctx).Line(data);
|
||||
</script>
|
||||
{% endblock %}
|
11
dr_botzo/karma/urls.py
Normal file
11
dr_botzo/karma/urls.py
Normal file
@ -0,0 +1,11 @@
|
||||
"""URL patterns for the karma views."""
|
||||
|
||||
from django.conf.urls import patterns, url
|
||||
from django.views.generic import TemplateView
|
||||
|
||||
from karma.views import key_detail
|
||||
|
||||
urlpatterns = patterns('races.views',
|
||||
url(r'^$', TemplateView.as_view(template_name='index.html'), name='karma_index'),
|
||||
url(r'^key/(?P<karma_key>.+)/', key_detail, name='karma_key_detail'),
|
||||
)
|
17
dr_botzo/karma/views.py
Normal file
17
dr_botzo/karma/views.py
Normal file
@ -0,0 +1,17 @@
|
||||
"""Present karma data."""
|
||||
|
||||
import logging
|
||||
|
||||
from django.shortcuts import get_object_or_404, render
|
||||
|
||||
from karma.models import KarmaKey
|
||||
|
||||
log = logging.getLogger('karma.views')
|
||||
|
||||
|
||||
def key_detail(request, karma_key):
|
||||
"""Display the requested karma key."""
|
||||
|
||||
entry = get_object_or_404(KarmaKey, key=karma_key)
|
||||
|
||||
return render(request, 'karma/karma_key.html', {'entry': entry})
|
11
dr_botzo/static/js/Chart.min.js
vendored
Normal file
11
dr_botzo/static/js/Chart.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@ -72,6 +72,7 @@
|
||||
</div>
|
||||
{% block navbar_menu %}
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a href="{% url 'karma_index' %}">Karma</a></li>
|
||||
<li><a href="{% url 'markov_index' %}">Markov</a></li>
|
||||
<li><a href="{% url 'races_index' %}">Races</a></li>
|
||||
</ul>
|
||||
|
Loading…
Reference in New Issue
Block a user