Minor tweaks to orgStats
authorSverre Rabbelier <srabbelier@gmail.com>
Fri, 03 Apr 2009 19:17:08 +0000
changeset 2079 086c60aad3d8
parent 2078 0b45b07a9d0c
child 2080 6c4cf7ae18d8
Minor tweaks to orgStats Patch by: Sverre Rabbelier
scripts/stats.py
--- a/scripts/stats.py	Fri Apr 03 17:54:57 2009 +0000
+++ b/scripts/stats.py	Fri Apr 03 19:17:08 2009 +0000
@@ -23,6 +23,7 @@
 
 
 import cPickle
+import datetime
 import operator
 import sys
 
@@ -104,20 +105,29 @@
   it = dateFetch(gen, last)
 
   proposals = [(i.key().name(), i.toDict(key_order)) for i in it]
+  if proposals:
+    last = i.last_modified_on # last modified entity
+  else:
+    last = datetime.datetime.now()
 
-  return dict(proposals)
+  return dict(proposals), last
 
 
-def orgStats(target):
+def orgStats(target, orgs):
   """Retrieves org stats.
   """
 
   from soc.logic import dicts
 
+  orgs = [(v.key(), v) for k, v in orgs.iteritems()]
+  orgs = dict(orgs)
+
   grouped = dicts.groupby(target.values(), '_org')
-  popularity = [(k, len(v)) for k,v in grouped.iteritems()]
 
-  return grouped, dict(popularity)
+  grouped = [(orgs[k], v) for k, v in grouped.iteritems()]
+  popularity = [(k.link_id, len(v)) for k, v in grouped]
+
+  return dict(grouped), dict(popularity)
 
 
 def countStudentsWithProposals():