summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRené 'Necoro' Neumann <necoro@necoro.net>2014-08-26 00:05:28 +0200
committerRené 'Necoro' Neumann <necoro@necoro.net>2014-08-26 00:05:28 +0200
commitf026ad6337f4cbe4e1b628c6296a7a728350bb18 (patch)
tree1f805c98d0fb1bec4681b12eee007364d019e086
parent245bb92b7f443b43d1d56ec8427f2e7ceb97b9fd (diff)
downloadkosten-f026ad6337f4cbe4e1b628c6296a7a728350bb18.tar.gz
kosten-f026ad6337f4cbe4e1b628c6296a7a728350bb18.tar.bz2
kosten-f026ad6337f4cbe4e1b628c6296a7a728350bb18.zip
Fix statistics
-rw-r--r--app/views/stats.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/app/views/stats.py b/app/views/stats.py
index b1e9b1a..90f1686 100644
--- a/app/views/stats.py
+++ b/app/views/stats.py
@@ -6,7 +6,7 @@ from . import Blueprint, flash, db, \
from .. import forms as F
from ..model import ConstExpense
import sqlalchemy as sql
-import time
+import calendar
from collections import defaultdict
mod = Blueprint('stats', __name__)
@@ -17,20 +17,23 @@ def next_date(d):
else:
return d.replace(month = d.month + 1)
+def date_to_ms(d):
+ return calendar.timegm(d.timetuple()) * 1000
+
@mod.route('/')
@login_required
@templated
def show():
# easy way: fetch them all and then do some computation
expenses = defaultdict(int)
- t = next_date (today().replace(day = 1))
+ t = today().replace(day = 1)
for e in ConstExpense.of(current_user):
cur = e.start
end = min(e.end, t)
while cur <= end:
- expenses[time.mktime(cur.timetuple()) * 1000] += e.monthly
+ expenses[date_to_ms(cur)] += e.monthly
cur = next_date(cur)
- expenses = list(sorted((int(k),v) for k,v in expenses.iteritems()))
+ expenses = list(sorted(expenses.iteritems()))
return { 'consts': expenses }