Index: notifications.pages.inc
===================================================================
--- notifications.pages.inc	(revision 20497)
+++ notifications.pages.inc	(working copy)
@@ -82,7 +82,7 @@
   foreach ($info['fields'] as $fid => $field_type) {
     $field = notifications_subscription_fields($field_type);
     $form['info']['fields'][$fid]['type'] = array('#type' => 'value', '#value' => $field_type);
-    $form['info']['fields'][$fid]['value'] = notifications_subscription_form_field($field_type);
+    $form['info']['fields'][$fid]['value'] = notifications_subscription_form_field($field_type, NULL, $type);
     $form['info']['fields'][$fid]['value'] += array(
       '#title' => $field['name'],
       '#required' => TRUE,   
Index: notifications.module
===================================================================
--- notifications.module	(revision 20497)
+++ notifications.module	(working copy)
@@ -1678,19 +1678,19 @@
 /**
  * Display a form field for a notifications_field
  */
-function notifications_subscription_form_field($type, $value = NULL) {
+function notifications_subscription_form_field($type, $value = NULL, $subtype = NULL) {
   $info = notifications_subscription_fields($type);
   
   if (!empty($info['options callback'])) {
     $element['#type'] = 'select';
-    $element['#options'] =  call_user_func($info['options callback']);
+    $element['#options'] =  call_user_func($info['options callback'], $subtype);
   }
   elseif (!empty($info['autocomplete path'])) {
     $element['#type'] = 'textfield';
     $element['#autocomplete_path'] = $info['autocomplete path'];
     if ($value) {
       if (!empty($info['autocomplete callback'])) {
-        $value = call_user_func($info['autocomplete callback'], $value);
+        $value = call_user_func($info['autocomplete callback'], $value, $subtype);
       }
       elseif (!empty($info['format callback']))  {
         if (!empty($info['format callback args'])) {
@@ -1728,7 +1728,7 @@
   // Get field names and values formatting each field
   if (!empty($subscription->fields)) {
     foreach (_notifications_fields($subscription->fields) as $field) {
-      $item = notifications_format_subscription_field($field->type, $field->value, $html);
+      $item = notifications_format_subscription_field($field->type, $field->value, $html, $subscription->type);
       $names[] = $item['name'];
       $values[] = $item['value'];
     }
@@ -1757,7 +1757,7 @@
  * @return array()
  *   Array with 'name' and 'value' elements
  */
-function notifications_format_subscription_field($type, $value, $html = TRUE) {
+function notifications_format_subscription_field($type, $value, $html = TRUE, $subtype = NULL) {
   $format_name = $format_value = t('Unknown');
  
   if ($info = notifications_subscription_fields($type)) {
@@ -1770,7 +1770,7 @@
       }
     }
     elseif (!empty($info['options callback'])) {
-      $options = call_user_func($info['options callback']);
+      $options = call_user_func($info['options callback'], $subtype);
       $format_value = isset($options[$value]) ? $options[$value] : t('Not available');
     }
     else {
Index: notifications_content/notifications_content.module
===================================================================
--- notifications_content/notifications_content.module	(revision 20497)
+++ notifications_content/notifications_content.module	(working copy)
@@ -260,7 +260,7 @@
         'field' => 'author',
         'type' => 'int',
         'autocomplete path' => 'user/autocomplete',
-        'autocomplete callback' => 'notifications_content_author_name',
+        'autocomplete callback' => 'notifications_content_author_name_callback',
         'format callback' => 'notifications_content_author_name',
         'value callback' => 'notifications_content_author_uid',
       );
@@ -268,7 +268,7 @@
         'name' => t('Node type'),
         'field' => 'type',
         'type' => 'string',
-        'options callback' => 'notifications_content_types',
+        'options callback' => 'notifications_content_types_callback',
       );
       return $fields;
 
@@ -389,6 +389,10 @@
   }
 }
 
+function notifications_content_author_name_callback($uid, $subs_type = '') {
+  return notifications_content_author_name($uid);
+}
+
 /**
  * Field name callback, author uid to user name
  */
@@ -749,6 +753,10 @@
   return $cache[$cid];
 }
 
+function notifications_content_types_callback($subs_type = 'nodetype') {
+  return notifications_content_types('name', $subs_type);
+}
+
 /**
  * Get content types available for subscriptions to content type
  * 
