Index: casetracker.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/casetracker/casetracker.module,v
retrieving revision 1.123.2.24
diff -u -F '^f' -r1.123.2.24 casetracker.module
--- casetracker.module	13 Mar 2010 02:13:28 -0000	1.123.2.24
+++ casetracker.module	15 Mar 2010 22:57:44 -0000
@@ -133,6 +133,10 @@ function casetracker_nodeapi(&$node, $op
         db_query('DELETE FROM {casetracker_case} WHERE nid = %d', $node->nid);
         break;
 
+      case 'presave':
+        $node->casetracker = (object) $node->casetracker;
+        break;
+
       case 'insert':
         // $node->casetracker is an Array and we wanna it to be an object. I
         // guess it's a nasty workaround.
@@ -1054,3 +1058,19 @@ function casetracker_default_assign_to()
   }
   return $assign_to;
 }
+
+/**
+ * Implementation of hook_token_values().
+ */
+function casetracker_token_values($type, $object = NULL) {
+  require_once(drupal_get_path('module', 'casetracker') .'/casetracker.token.inc');
+  return _casetracker_token_values($type, $object);
+}
+
+/**
+ * Implementation of hook_token_list().
+ */
+function casetracker_token_list($type = 'all') {
+  require_once(drupal_get_path('module', 'casetracker') .'/casetracker.token.inc');
+  return _casetracker_token_list($type);
+}
Index: casetracker.token.inc
===================================================================
RCS file: casetracker.token.inc
diff -N casetracker.token.inc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ casetracker.token.inc	15 Mar 2010 22:52:00 -0000
@@ -0,0 +1,32 @@
+<?php
+
+/**
+ * @file
+ * Token implementation for Casetracker
+ */
+
+
+/**
+ * Implementation of hook_token_values().
+ */
+function _casetracker_token_values($type, $object = NULL) {
+  $values = array();
+  if (($type == 'node')  && (casetracker_is_case($object))) {
+    $values['case_status'] = casetracker_case_state_load($object->casetracker->case_status_id, 'status');
+    $values['case_type'] = casetracker_case_state_load($object->casetracker->case_type_id, 'type');
+    $values['case_priority'] = casetracker_case_state_load($object->casetracker->case_priority_id, 'priority');
+  }
+  return $values;
+}
+
+/**
+ * Implementation of hook_token_list().
+ */
+function _casetracker_token_list($type = 'all') {
+  if ($type == 'node' || $type == 'all') {
+    $tokens['casetracker']['case_status'] = t('Case Status');
+    $tokens['casetracker']['case_type'] = t('Case Type');
+    $tokens['casetracker']['case_priority'] = t('Case Priority');
+    return $tokens;
+  }
+}
