Index: todolist/todolist.module
===================================================================
--- todolist/todolist.module	(revision 988)
+++ todolist/todolist.module	(working copy)
@@ -147,7 +147,7 @@
  */
 function theme_todolist_task(&$task) {
   return array(
-    'data' => '<input type="checkbox" name="task-'. $task->tid .'"'. ($task->status? 'checked' : '') .' /> ' . ($task->status? '<a href="javascript:void(0)" title="Delete this task" class="delete" onclick="return TodoList.delete_task(\'task-'. $task->tid .'\')">Delete</a> <span>'. date('M d') .'</span> ' : '') . $task->task,
+    'data' => '<input type="checkbox" name="task-'. $task->tid .'"'. ($task->status? 'checked' : '') .' /> ' . ($task->status? '<a href="javascript:void(0)" title="Delete this task" class="delete" onclick="return TodoList.delete_task(\'task-'. $task->tid .'\')">Delete</a> <span>'. date('M d', $task->status) .'</span> ' : '') . $task->task,
     'class' => 'task',
     'id' => 'task-'. $task->tid,
   );
@@ -284,10 +284,11 @@
  */
 function todolist_toggle_task() {
   if (isset($_REQUEST['id']) && isset($_REQUEST['order']) && isset($_REQUEST['checked'])) {
-    db_query("UPDATE {todolist_task} SET status = %b, `order` = %d WHERE tid = %d LIMIT 1;", $_REQUEST['checked'], $_REQUEST['order'], substr($_REQUEST['id'], 5));
+    $completed = time();
+    db_query("UPDATE {todolist_task} SET status = %d, `order` = %d WHERE tid = %d LIMIT 1;", $_REQUEST['checked']? $completed : 0, $_REQUEST['order'], substr($_REQUEST['id'], 5));
     todolist_ok_js();
     if ($_REQUEST['checked'] && todolist_user_access('complete tasks')): ?>
-$('#<?php print $_REQUEST['id'] ?> input[@type=checkbox]').after('<a href="javascript:void(0)" title="Delete this task" class="delete" onclick="return TodoList.delete_task(\'<?php print $_REQUEST['id'] ?>\')">Delete</a> <span><?php print date('M d') ?></span> ');
+$('#<?php print $_REQUEST['id'] ?> input[@type=checkbox]').after('<a href="javascript:void(0)" title="Delete this task" class="delete" onclick="return TodoList.delete_task(\'<?php print $_REQUEST['id'] ?>\')">Delete</a> <span><?php print date('M d', $completed) ?></span> ');
 if (!$('.todolist.complete').length) $('<ul class="todolist complete"></ul>').insertAfter('#todolist-add-task-form');
 $('#<?php print $_REQUEST['id'] ?>').prependTo('.todolist.complete').each(TodoList.unbind_nub).Highlight(1000, '#ff0');
     <?php elseif (todolist_user_access('uncomplete tasks')): ?>
@@ -339,7 +340,7 @@
   if (isset($_REQUEST['tid']) && isset($_REQUEST['task'])) {
     db_query("UPDATE {todolist_task} SET task = '%s' WHERE tid = %d LIMIT 1;", $_REQUEST['task'], $_REQUEST['tid']);
     $task = db_fetch_object(db_query("SELECT tid, status, task FROM {todolist_task} WHERE tid = %d LIMIT 1;", $_REQUEST['tid']));
-    $field = theme_todolist_task($task);
+    $field = theme('todolist_task', $task);
     todolist_ok_js(); ?>
 $('#task-<?php print $_REQUEST['tid'] ?>').unbind('mouseover').unbind('mouseout').find('form').remove();
 $('#task-<?php print $_REQUEST['tid'] ?>').html('<?php print _todolist_js_safe($field['data']) ?>').each(TodoList.bind_nub).Highlight(1000, '#ff0');
Index: todolist/todolist.install
===================================================================
--- todolist/todolist.install	(revision 988)
+++ todolist/todolist.install	(working copy)
@@ -13,7 +13,7 @@
        `tid` int(10) unsigned NOT NULL auto_increment,
        `nid` int(10) unsigned NOT NULL,
        `order` int(10) NOT NULL,
-       `status` tinyint(1) NOT NULL default '0',
+       `status` int(11) NOT NULL,
        `task` varchar(255) NOT NULL,
        PRIMARY KEY  (`tid`)
       ) ENGINE=MyISAM DEFAULT CHARSET=utf8;");
