]> asedeno.scripts.mit.edu Git - bluechips.git/blobdiff - bluechips/controllers/spend.py
fixed split display so that it works with zero-value expenditures
[bluechips.git] / bluechips / controllers / spend.py
index 45db96de46c90cd91907803d3c96fa708276ad76..c99d325ba10984b2fd1da0a508cf9479668ca8b3 100644 (file)
@@ -67,6 +67,19 @@ class SpendController(BaseController):
             c.expenditure = meta.Session.query(model.Expenditure).get(id)
             if c.expenditure is None:
                 abort(404)
+            c.values = {}
+            for ii, user_row in enumerate(c.users):
+                user_id, user = user_row
+                try:
+                    share = [s.share for s in c.expenditure.splits
+                             if s.user == user][0]
+                    percent = (Decimal(100) * Decimal(int(share)) /
+                               Decimal(int(c.expenditure.amount))).\
+                            quantize(Decimal("0.001"))
+                except IndexError:
+                    percent = 0
+                c.values['shares-%d.amount' % ii] = percent
+
         return render('/spend/index.mako')
 
     @validate(schema=ExpenditureSchema(), form='edit', variable_decode=True)