Index: cck_field_privacy.js
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/cck_field_privacy/cck_field_privacy.js,v
retrieving revision 1.1
diff -u -r1.1 cck_field_privacy.js
--- cck_field_privacy.js	8 Feb 2008 23:57:11 -0000	1.1
+++ cck_field_privacy.js	12 Feb 2008 02:49:22 -0000
@@ -13,7 +13,7 @@
 
     // display prompt
     var prompt = $.prompt(
-      // @TODO: Output these in Drupal.settings.
+      // @TODO: Output the list of privacy options in Drupal.settings.
       // @TODO: Make Buddies conditional based on module_exists('buddylist').
       //        then remove as a dependency.
       // @TODO: Provide all available relationships when module_exists('user_relationships').
@@ -32,12 +32,11 @@
           // set default radio checked on load
           var e = $(this);
           e.attr('checked', field_state == e.val()? 'checked' : '');
-        }).change(function() {
+        }).change((function(field_name) { return function() {
           // save changes
           var radio = $(this),
               form = radio.parents('form'),
-              prompt = form.parents('div.jqicontainer'),
-              field_name = $("input[@name='fieldname']", form).val();
+              prompt = form.parents('div.jqicontainer');
 
           Drupal.settings.cck_field_privacy.default_value[field_name] = radio.val(); // remember setting
           $('#jqibuttonOk', prompt).trigger('click'); // automatically close prompt
@@ -48,7 +47,7 @@
             type: Drupal.settings.cck_field_privacy.content_type,
             setting: radio.val()
           });
-        });
+        };})(field_name))
       };})(field_name)
     });
   }
Index: cck_field_privacy.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/cck_field_privacy/cck_field_privacy.module,v
retrieving revision 1.1
diff -u -r1.1 cck_field_privacy.module
--- cck_field_privacy.module	8 Feb 2008 23:57:11 -0000	1.1
+++ cck_field_privacy.module	12 Feb 2008 03:00:32 -0000
@@ -106,6 +106,8 @@
  */
 function cck_field_privacy_form_alter($form_id, &$form) {
   global $user;
+  
+  $uid = (int) isset($form['#node']->uid)? $form['#node']->uid : $user->uid; // original author or current user (authoring new node)
   $types = variable_get('cckfp_types', null);
   if (!array_key_exists($form['#node']->type, $types) || $types[$form['#id']] == '0') {
     return; // abort
@@ -137,7 +139,7 @@
               }
 
               // Get the current state of the field
-              $field_pref_sql = db_query("SELECT permission FROM {content_field_privacy} WHERE uid = %d AND type_name = '%s' AND field_name = '%s'", $user->uid, $node_name_array[0], $field);
+              $field_pref_sql = db_query("SELECT permission FROM {content_field_privacy} WHERE uid = %d AND type_name = '%s' AND field_name = '%s'", $uid, $node_name_array[0], $field);
               $field_pref = (string) db_result($field_pref_sql);
 
               // Let's add the field name to the array of fields
@@ -161,7 +163,7 @@
     drupal_add_js(array(
       'cck_field_privacy' => array(
         'action' => url('cck_field_privacy/ajax'),
-        'uid' => (int) $user->uid,
+        'uid' => $uid,
         'content_type' => $node_name_array[0],
         'default_value' => $cckfp_enabled_fields,
       ),

