diff -u -r ../old/html/home.html html/home.html
--- ../old/html/home.html	2006-08-31 12:15:57.000000000 +0200
+++ html/home.html	2007-11-18 15:24:57.000000000 +0100
@@ -5,7 +5,6 @@
  whatever. It's a good idea to have the issues on the front page though
 -->
 <span tal:replace="structure python:db.issue.renderWith('index',
-    sort=[('-', 'activity')], group=[('+', 'priority')], filter=['status'],
-    columns=['id','activity','title','creator','assignedto', 'status'],
-    filterspec={'status':['-1','1','2','3','4','5','6','7']})" />
-<!-- SHA: c87a4e18d59a527331f1d367c0c6cc67ee123e63 -->
+    sort=[('+', 'due_date'), ('-', 'status')], group=[('+', 'priority')], filter=['status'],
+    columns=['id','title','due_date','status','keywords'],
+    filterspec={'status':['-1','1','2']})" />
diff -u -r ../old/html/issue.index.html html/issue.index.html
--- ../old/html/issue.index.html	2007-10-05 05:06:30.000000000 +0200
+++ html/issue.index.html	2007-11-15 12:13:00.000000000 +0100
@@ -24,16 +24,18 @@
 <tal:block tal:define="batch request/batch" tal:condition="context/is_view_ok">
  <table class="list">
   <tr>
-   <th tal:condition="request/show/priority" i18n:translate="">Priority</th>
    <th tal:condition="request/show/id" i18n:translate="">ID</th>
+   <th tal:condition="request/show/title" i18n:translate="">Title</th>
+   <th tal:condition="request/show/status" i18n:translate="">Status</th>
+   <th tal:condition="request/show/priority" i18n:translate="">Priority</th>
+   <th tal:condition="request/show/due_date">Due Date</th>
    <th tal:condition="request/show/creation" i18n:translate="">Creation</th>
    <th tal:condition="request/show/activity" i18n:translate="">Activity</th>
    <th tal:condition="request/show/actor" i18n:translate="">Actor</th>
    <th tal:condition="request/show/keyword" i18n:translate="">Keyword</th>
-   <th tal:condition="request/show/title" i18n:translate="">Title</th>
-   <th tal:condition="request/show/status" i18n:translate="">Status</th>
    <th tal:condition="request/show/creator" i18n:translate="">Creator</th>
    <th tal:condition="request/show/assignedto" i18n:translate="">Assigned&nbsp;To</th>
+   <th tal:condition="request/show/revives">Revives</th>
   </tr>
  <tal:block tal:repeat="i batch" condition=true>
   <tr tal:define="group python:[r[1] for r in request.group]"
@@ -46,9 +48,18 @@
   </tr>
 
   <tr>
+   <td tal:condition="request/show/id" tal:content="i/id">&nbsp;</td>
+   <td tal:condition="request/show/title">
+    <a tal:attributes="href string:issue${i/id}"
+		tal:content="python:str(i.title.plain(hyperlink=0)) or '[no title]'">title</a>
+   </td>
+   <td tal:condition="request/show/status"
+       i18n:translate=""
+       tal:content="python:i.status.plain() or default">&nbsp;</td>
    <td tal:condition="request/show/priority"
        tal:content="python:i.priority.plain() or default">&nbsp;</td>
-   <td tal:condition="request/show/id" tal:content="i/id">&nbsp;</td>
+   <td tal:condition="request/show/due_date"
+       tal:content="python:i.due_date.pretty('%Y-%m-%d')">&nbsp;</td>
    <td class="date" tal:condition="request/show/creation"
        tal:content="i/creation/reldate">&nbsp;</td>
    <td class="date" tal:condition="request/show/activity"
@@ -57,17 +68,12 @@
        tal:content="python:i.actor.plain() or default">&nbsp;</td>
    <td tal:condition="request/show/keyword"
        tal:content="python:i.keyword.plain() or default">&nbsp;</td>
-   <td tal:condition="request/show/title">
-    <a tal:attributes="href string:issue${i/id}"
-		tal:content="python:str(i.title.plain(hyperlink=0)) or '[no title]'">title</a>
-   </td>
-   <td tal:condition="request/show/status"
-       i18n:translate=""
-       tal:content="python:i.status.plain() or default">&nbsp;</td>
    <td tal:condition="request/show/creator"
        tal:content="python:i.creator.plain() or default">&nbsp;</td>
    <td tal:condition="request/show/assignedto"
        tal:content="python:i.assignedto.plain() or default">&nbsp;</td>
+   <td tal:condition="request/show/revives"
+       tal:content="python:i.revives.pretty('%Y-%m-%d')">&nbsp;</td>
   </tr>
 
  </tal:block>
diff -u -r ../old/html/issue.item.html html/issue.item.html
--- ../old/html/issue.item.html	2008-07-15 16:22:46.000000000 +0200
+++ html/issue.item.html	2008-07-15 20:45:53.000000000 +0200
@@ -53,28 +53,16 @@
 </tr>
 
 <tr>
- <th i18n:translate="">Superseder</th>
- <td>
-  <span tal:replace="structure python:context.superseder.field(showid=1, size=20)" />
-  <span tal:condition="context/is_edit_ok" tal:replace="structure python:db.issue.classhelp('id,title', property='superseder')" />
-  <span tal:condition="context/superseder">
-   <br><span i18n:translate="">View:</span>
-     <a tal:repeat="sup context/superseder"
-        tal:content="python:sup['id'] + ', '*(not repeat['sup'].end)"
-        tal:attributes="href string:issue${sup/id}"></a>
-  </span>
- </td>
- <th i18n:translate="">Nosy List</th>
- <td>
-  <span tal:replace="structure context/nosy/field" />
-  <span tal:condition="context/is_edit_ok" tal:replace="structure
-python:db.user.classhelp('username,realname,address', property='nosy', width='600')" /><br>
- </td>
+ <th i18n:translate="">Due Date</th>
+ <td tal:content="structure python:context.due_date.field(format='%Y-%m-%d')" />
+ <th i18n:translate="">Revives</th>
+ <td tal:content="structure python:context.revives.field(format='%Y-%m-%d')" />
 </tr>
 
+
 <tr>
  <th i18n:translate="">Assigned To</th>
- <td tal:content="structure context/assignedto/menu">assignedto menu</td>
+ <td tal:content="structure context/assignedto/menu" />
  <th i18n:translate="">Keywords</th>
  <td>
   <span tal:replace="structure context/keyword/field" />
@@ -82,17 +70,50 @@
  </td>
 </tr>
 
+<tr>
+ <th i18n:translate="">Requires</th>
+ <td>
+  <span tal:replace="structure python:context.superseder.field(showid=1, size=20)" />
+  <span tal:condition="context/is_edit_ok"
+        tal:replace="structure python:db.issue.classhelp('id,title', property='superseder',
+        filter='status=waiting,in progress,needs attention;keyword='+context.keyword.plain())"/>
+   
+   <tal:block tal:condition="context/superseder">
+   <br/>
+   <table>
+     <tr tal:repeat="sup context/superseder">
+       <td><a tal:attributes="href string:issue${sup/id}"
+         tal:content="string:${sup/id} - ${sup/title}"/>
+       </td>
+     </tr>
+   </table>
+   </tal:block>
+ </td>
+
+ <th>Required for</th>
+ <td>
+   <table tal:define="sups python:db.issue.filter(filterspec=dict(superseder=context.id))"
+     tal:condition="sups">
+     <tr tal:repeat="sup sups">
+       <td><a tal:attributes="href string:issue${sup/id}"
+         tal:content="string:${sup/id} - ${sup/title}"/>
+       </td>
+     </tr>
+   </table>
+ </td>
+</tr>
+
 <tr tal:condition="context/is_edit_ok">
- <th i18n:translate="">Change Note</th>
+ <th i18n:translate="" class="multi">Change Note</th>
  <td colspan=3>
   <textarea tal:content="request/form/@note/value | default"
-            name="@note" wrap="hard" rows="5" cols="80"></textarea>
+            name="@note" wrap="hard" rows="15" cols="90"></textarea>
  </td>
 </tr>
 
 <tr tal:condition="context/is_edit_ok">
  <th i18n:translate="">File</th>
- <td colspan=3><input type="file" name="@file" size="40"></td>
+ <td colspan=3><input type="file" name="@file" size="60"></td>
 </tr>
 
 <tr tal:condition="context/is_edit_ok">
@@ -103,8 +124,6 @@
  </td>
  <td colspan=3>
   <span tal:replace="structure context/submit">submit button</span>
-  <a tal:condition="context/id" tal:attributes="href context/copy_url"
-   i18n:translate="">Make a copy</a>
  </td>
 </tr>
 
diff -u -r ../old/html/issue.search.html html/issue.search.html
--- ../old/html/issue.search.html	2007-10-05 05:06:30.000000000 +0200
+++ html/issue.search.html	2007-11-15 12:13:39.000000000 +0100
@@ -50,6 +50,22 @@
   <td>&nbsp;</td>
 </tr>
 
+<tr tal:define="name string:due_date">
+	<th i18n:translate="">Due Date:</th>
+	<td metal:use-macro="search_input"></td>
+	<td metal:use-macro="column_input"></td>
+	<td metal:use-macro="sort_input"></td>
+	<td metal:use-macro="group_input"></td>
+</tr>
+
+<tr tal:define="name string:revives">
+	<th i18n:translate="">Revives:</th>
+	<td metal:use-macro="search_input"></td>
+	<td metal:use-macro="column_input"></td>
+	<td metal:use-macro="sort_input"></td>
+	<td metal:use-macro="group_input"></td>
+</tr>
+
 <tr tal:define="name string:keyword;
                 db_klass string:keyword;
                 db_content string:name;">
@@ -134,8 +150,8 @@
   <th i18n:translate="">Status:</th>
   <td metal:use-macro="search_select_translated">
     <tal:block metal:fill-slot="extra_options">
-      <option value="-1,1,2,3,4,5,6,7" i18n:translate=""
-              tal:attributes="selected python:value == '-1,1,2,3,4,5,6,7'">not resolved</option>
+      <option value="-1,1,2" i18n:translate=""
+              tal:attributes="selected python:value == '-1,1,2'">not waiting/done</option>
       <option value="-1" i18n:translate=""
               tal:attributes="selected python:value == '-1'">not selected</option>
     </tal:block>
diff -u -r ../old/html/page.html html/page.html
--- ../old/html/page.html	2008-03-01 09:06:42.000000000 +0100
+++ html/page.html	2007-11-15 12:14:11.000000000 +0100
@@ -19,8 +19,8 @@
 kw_edit python:request.user.hasPermission('Edit', 'keyword');
 kw_create python:request.user.hasPermission('Create', 'keyword');
 kw_edit_link python:kw_edit and db.keyword.list();
-columns string:id,activity,title,creator,status;
-columns_showall string:id,activity,title,creator,assignedto,status;
+columns string:id,activity,due_date,revives,title,status;
+columns_showall string:id,activity,due_date,revives,title,status;
 status_notresolved string:-1,1,2,3,4,5,6,7;
 "
 >
diff -u -r ../old/html/style.css html/style.css
--- ../old/html/style.css	2006-10-04 01:14:48.000000000 +0200
+++ html/style.css	2008-02-01 10:52:24.000000000 +0100
@@ -149,6 +149,8 @@
   vertical-align: top;
   font-weight: normal;
   white-space: nowrap;
+  padding-top: 3pt;
+  padding-right: 2pt;
 }
 
 table.form th.header {
@@ -262,6 +264,15 @@
   border-right: 1px solid #afafaf;
 }
 
+
+table.messages h5 {
+  margin-bottom: 3pt;                    
+}
+table.messages ul {
+  margin-top: 3pt;                    
+}
+
+
 /* style for file displays */
 table.files {
   border-spacing: 0;
diff -u -r ../old/schema.py schema.py
--- ../old/schema.py	2007-11-03 01:41:41.000000000 +0100
+++ schema.py	2008-02-24 17:13:42.000000000 +0100
@@ -73,6 +73,9 @@
                 assignedto=Link("user"),
                 keyword=Multilink("keyword"),
                 priority=Link("priority"),
+                due_date=Date(),
+                autogen_id=String(indexme='yes'),
+                revives=Date(),
                 status=Link("status"))
 
 #
diff -u -r ../old/TEMPLATE-INFO.txt TEMPLATE-info.txt
--- ../old/TEMPLATE-INFO.txt	2008-07-14 16:47:49.000000000 +0200
+++ TEMPLATE-INFO.txt	2007-11-15 10:31:41.000000000 +0100
@@ -1,7 +1,7 @@
-Name: classic-old
-Description: This is a generic issue tracker that may be used to track
- bugs, feature requests, project issues or any number of other types of
- issues. Most users of Roundup will find that this template suits them,
- with perhaps a few customisations.
-Intended-for: All first-time Roundup users
-Path: /home/nikratio/old
+Name: todo
+Description: This is a generic issue tracker that may be used to track bugs,
+             feature requests, project issues or any number of other types
+             of issues. Most users of Roundup will find that this template
+             suits them, with perhaps a few customisations.
+Intended-For: TODO list usage
+
diff -u -r ../old/initial_data.py initial_data.py
--- ../old/initial_data.py	2006-12-03 00:32:30.000000000 +0100
+++ initial_data.py	2007-11-15 11:26:27.000000000 +0100
@@ -4,19 +4,14 @@
 pri = db.getclass('priority')
 pri.create(name=''"critical", order="1")
 pri.create(name=''"urgent", order="2")
-pri.create(name=''"bug", order="3")
-pri.create(name=''"feature", order="4")
-pri.create(name=''"wish", order="5")
+pri.create(name=''"normal", order="3")
+pri.create(name=''"low", order="4")
 
 stat = db.getclass('status')
-stat.create(name=''"unread", order="1")
-stat.create(name=''"deferred", order="2")
-stat.create(name=''"chatting", order="3")
-stat.create(name=''"need-eg", order="4")
-stat.create(name=''"in-progress", order="5")
-stat.create(name=''"testing", order="6")
-stat.create(name=''"done-cbb", order="7")
-stat.create(name=''"resolved", order="8")
+stat.create(name=''"needs attention", order="1")
+stat.create(name=''"in progress", order="2")
+stat.create(name=''"waiting", order="3")
+stat.create(name=''"done", order="4")
 
 # create the two default users
 user = db.getclass('user')
