diff --git a/runtime/twodue/src/java/com/samskivert/twodue/logic/bycategory.java b/runtime/twodue/src/java/com/samskivert/twodue/logic/bycategory.java
index d9fb49c1..0bf4a1d1 100644
--- a/runtime/twodue/src/java/com/samskivert/twodue/logic/bycategory.java
+++ b/runtime/twodue/src/java/com/samskivert/twodue/logic/bycategory.java
@@ -1,5 +1,5 @@
//
-// $Id: bycategory.java,v 1.2 2003/12/10 20:33:42 mdb Exp $
+// $Id: bycategory.java,v 1.3 2003/12/10 21:57:31 mdb Exp $
package com.samskivert.twodue.logic;
@@ -37,6 +37,9 @@ public class bycategory extends UserLogic
ctx.put("error", msg);
}
+ // put any filter into the context
+ ctx.put("filter", ParameterUtil.getParameter(req, "filter", false));
+
ArrayList tasks = null;
String query = ParameterUtil.getParameter(req, "query", false);
if (StringUtil.blank(query)) {
diff --git a/runtime/twodue/web/bycategory.wm b/runtime/twodue/web/bycategory.wm
index 03217172..419161a5 100644
--- a/runtime/twodue/web/bycategory.wm
+++ b/runtime/twodue/web/bycategory.wm
@@ -20,10 +20,54 @@
#if ($query)
Tasks matching '$query':
#else
-Outstanding tasks:
+Outstanding tasks:
#end
+#if ($filter != "")
+all
+#foreach ($xtask in $xtasks)
+$xtask.name
+#end
+
+#foreach ($xtask in $xtasks)
+#if ($filter == $xtask.name)
+
+
+|
+$xtask.name
+($xtask.tasks.size()) |
+ |
+
+$xcats.clear()
+#foreach ($task in $xtask.tasks)
+#if ($xcats.checkCategory($task.complexity))
+| $task.complexity |
+ #set ($border = "")
+ #else
+ #set ($border = 'style="border-top: 1px solid"')
+ #end
+
+
+
+ |
+$task.summary
+[$task.creator]
+ #if (!$string.blank($task.notes))
+ [...]
+ #end
+ |
+$task.getPriorityName() |
+
+ |
+
+#end
+
+
+#end
+#end
+
+#else
@@ -37,7 +81,9 @@ Outstanding tasks:
| |
#end
#end
-| $xtask.name |
+ |
+$xtask.name
+($xtask.tasks.size()) |
|
$xcats.clear()
@@ -67,5 +113,6 @@ $xcats.clear()
#end
|
+#end
#import ("/footer.wm")