]> asedeno.scripts.mit.edu Git - bluechips.git/blobdiff - bluechips/controllers/status.py
Make navigation links work with edit pages
[bluechips.git] / bluechips / controllers / status.py
index faadfc5085b318fbaf2ed65dc74563eff14d9888..9c0358f80056c95fbac0178dc7c4e40ddd7fd114 100644 (file)
@@ -10,7 +10,8 @@ from bluechips.lib.totals import *
 import sqlalchemy
 
 from datetime import date, timedelta
-from decimal import Decimal
+
+from bluechips.model.types import Currency
 
 from pylons import request
 
@@ -21,14 +22,14 @@ class StatusController(BaseController):
         c.debts = debts()
         c.settle = settle(c.debts)
         
-        c.total = self._total(True)
+        c.total = self._total(sqlalchemy.text('1=1'))
         
         year = date.today() - timedelta(days=365)
         this_year = date.today().replace(month=1, day=1)
         this_month = date.today().replace(day=1)
         last_month = (date.today() - timedelta(days=30)).replace(day=1)
         
-        c.year_total, c.this_year_total, c.this_month_total =\
+        c.year_total, c.this_year_total, c.this_month_total = \
             [self._total(model.expenditures.c.date >= i)
              for i in [year, this_year, this_month]]
         
@@ -49,7 +50,7 @@ class StatusController(BaseController):
         return render('/status/index.mako')
     
     def _total(self, where):
-        return (meta.Session.execute(sqlalchemy.sql.select([
+        return Currency(meta.Session.execute(sqlalchemy.sql.select([
                 sqlalchemy.func.sum(model.expenditures.c.amount).\
                     label('total')]).\
-                    where(where)).scalar() or Decimal("0.00")) / 100
+                    where(where)).scalar() or 0)