Index: flag.token.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/flag/includes/Attic/flag.token.inc,v
retrieving revision 1.1.2.1
diff -u -F^[^a-z]*function -r1.1.2.1 flag.token.inc
--- flag.token.inc	16 Sep 2008 09:02:39 -0000	1.1.2.1
+++ flag.token.inc	30 Oct 2008 14:10:44 -0000
@@ -19,10 +19,12 @@ function flag_token_list($type = 'all') 
     $tokens['flag-action']['flag-content-id'] = t('The ID of content being flagged, may be a nid or cid.');
     $tokens['flag-action']['flag-count'] = t('The current count total for this flag.');
   }
-  if ($type == 'node' || $type == 'all') {
-    $flags = flag_get_flags('node');
-    foreach ($flags as $flag) {
-      $tokens['node']['flag-'. str_replace('_', '-', $flag->name) .'-count'] = t('Total flag count for flag @flag', array('@flag' => $flag->get_title()));
+  foreach (flag_get_types() as $flag_type) {
+    if ($type == $flag_type || $type == 'all') {
+      $flags = flag_get_flags($flag_type);
+      foreach ($flags as $flag) {
+        $tokens[$flag_type]['flag-'. str_replace('_', '-', $flag->name) .'-count'] = t('Total flag count for flag @flag', array('@flag' => $flag->get_title()));
+      }
     }
   }
   return $tokens;
@@ -45,13 +47,12 @@ function flag_token_values($type, $objec
     $values['flag-content-id'] = $object->content_id;
     $values['flag-count'] = $object->count;
   }
-  elseif ($type == 'node') {
-    $flags = flag_get_flags('node');
+  if (in_array($type, flag_get_types())) {
+    $flags = flag_get_flags($type);
     foreach ($flags as $flag) {
-      $values['flag-'. str_replace('_', '-', $flag->name) .'-count'] = $flag->get_count($object->nid);
+      $values['flag-'. str_replace('_', '-', $flag->name) .'-count'] = $flag->get_count($flag->get_content_id($object));
     }
   }
-
   return $values;
 }
 
