changeset 3:919b98450387

Generated HTML now puts high-urgency items above all other items.
author Atul Varma <varmaa@toolness.com>
date Sat, 16 Feb 2008 20:22:21 -0600
parents 8311e7c2eb4b
children df9d4e704257
files GenerateHtml.py
diffstat 1 files changed, 13 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/GenerateHtml.py	Sat Feb 16 20:14:21 2008 -0600
+++ b/GenerateHtml.py	Sat Feb 16 20:22:21 2008 -0600
@@ -95,6 +95,18 @@
     return [ feed for feed in Config.FEEDS
              if feed["name"] == name ][0]
 
+def cmpRowUrgencyThenTimestamp( a, b ):
+    """
+    Comparison function for rows that first compares the urgency level
+    of the item, then compares the timestamp.
+    """
+
+    urgentCmp = cmp( a["isUrgent"], b["isUrgent"] )
+    if urgentCmp:
+        return urgentCmp
+    else:
+        return cmp( a["timestamp"], b["timestamp"] )
+
 def makeViewHtmlPage( viewInfo, detagger ):
     rows = []
     for feedInfo in Serializer.iterFeeds():
@@ -106,8 +118,7 @@
         if matchingTags:
             rows.extend( makeRows(feedInfo, detagger) )
 
-    rows.sort( key = lambda row: row["timestamp"],
-               reverse = True )
+    rows.sort( cmp = cmpRowUrgencyThenTimestamp, reverse = True )
 
     fileObj = open( "%s.html" % viewInfo["name"].lower(), "w" )
     writePage( viewInfo, rows, fileObj )