X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=bluechips%2Fcontrollers%2Fhistory.py;fp=bluechips%2Fcontrollers%2Fhistory.py;h=c3374dc77e3ea0af969519a525113d3a6ba17c75;hb=fed6d11d2cbd6d617d18bc01a78196865da4155b;hp=833e34d4529ec9db63064a463dfaa41643906c75;hpb=4d724b5efd7fd7c2c38a25e9d9210fe869aa0441;p=bluechips.git diff --git a/bluechips/controllers/history.py b/bluechips/controllers/history.py index 833e34d..c3374dc 100644 --- a/bluechips/controllers/history.py +++ b/bluechips/controllers/history.py @@ -3,11 +3,12 @@ Display old transactions """ import logging +from pylons import request from bluechips.lib.base import * from bluechips.lib.totals import * -import sqlalchemy +import sqlalchemy as sa from sqlalchemy import orm log = logging.getLogger(__name__) @@ -16,8 +17,21 @@ class HistoryController(BaseController): def index(self): c.title = 'History' + c.tags = meta.Session.query(model.Tag).order_by([sa.func.lower(model.Tag.name)]) c.expenditures = meta.Session.query(model.Expenditure).\ options(orm.eagerload('splits')).all() c.transfers = meta.Session.query(model.Transfer).all() return render('/history/index.mako') + + + def tag(self, id=None): + c.title = 'History' + + c.tags = meta.Session.query(model.Tag).order_by([sa.func.lower(model.Tag.name)]) + c.tag = meta.Session.query(model.Tag).filter_by(id=id).all()[0] + c.expenditures = c.tag.expenditures + c.total = sum([e.amount for e in c.expenditures]) + c.share = sum([e.share(request.environ['user']) for e in c.expenditures]) + + return render('/history/tag.mako')