]> asedeno.scripts.mit.edu Git - bluechips.git/blobdiff - bluechips/model/expenditure.py
brought up to date with latest sqlalchemy conventions
[bluechips.git] / bluechips / model / expenditure.py
index acd77852172f595466dd34bd84c07ac2f836d178..f7e69344dc2cf88bf09cb7f0fa6ea9a81fdc4cb9 100644 (file)
@@ -60,8 +60,11 @@ class Expenditure(object):
         
         total = sum(split_dict.itervalues())
         
-        for user, share in split_dict.iteritems():
-            split_dict[user] = share / total
+        for user, share in split_dict.items():
+            if share == 0:
+                del split_dict[user]
+            else:
+                split_dict[user] = share / total
             
         amounts_dict = dict()
         
@@ -75,12 +78,12 @@ class Expenditure(object):
                 winner = random.choice(amounts_dict.keys())
                 amounts_dict[winner] += Currency(1)
         elif difference < 0:
-            for i in xrange(difference):
+            for i in xrange(-difference):
                 winner = random.choice(amounts_dict.keys())
                 amounts_dict[winner] -= Currency(1)
         
         for user, share in amounts_dict.iteritems():
             s = Split(self, user, share)
-            meta.Session.save(s)
+            meta.Session.add(s)
 
 __all__ = ['Expenditure']