? 373574-casetracker-tokens-3.patch ? casetracker.token.inc Index: casetracker.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/casetracker/casetracker.module,v retrieving revision 1.123.2.22 diff -u -p -r1.123.2.22 casetracker.module --- casetracker.module 20 Feb 2010 18:49:44 -0000 1.123.2.22 +++ casetracker.module 6 Apr 2010 19:02:45 -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. @@ -1057,3 +1061,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 @@ +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'); + $values['case_assign_to_uid'] = $object->casetracker->assign_to; + $assignedUser = user_load($object->casetracker->assign_to); + $values['case_assign_to'] = $assignedUser->name; + } + 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'); + $tokens['casetracker']['case_assign_to_uid'] = t('Case Assigned to (UID)'); + $tokens['casetracker']['case_assign_to'] = t('Case Assigned to (Name)'); + return $tokens; + } +}