--- cck_field_perms.module	2007-08-21 16:01:01.000000000 -0500
+++ cck_field_perms.module.patched	2007-08-21 16:14:27.000000000 -0500
@@ -79,6 +79,12 @@ function cck_field_perms_nodeapi(&$node,
               if (!(user_access(_cfp_content_to_readable($type, $disallowed_field, "view")))) {
                 $node->$disallowed_field['#access'] = false;
                 $node->content[$disallowed_field]['#access'] = false;
+                if (module_exists("fieldgroup") and $groups = fieldgroup_groups($type)) {
+                  foreach (array_keys((array)$groups[$disallowed_field]['fields']) as $field_name) {
+                    $node->$field_name['#access'] = false;
+                    $node->content[$field_name]['#access'] = false;
+                  }
+                }
             }
           }
         }
@@ -183,6 +189,12 @@ function _cfp_form_helper($form_id, $for
             if ($value == 0 ) {continue;}
               if (! user_access(_cfp_content_to_readable($type, $disallowed_field, $verb))) {
                $form[$disallowed_field]['#access'] = false;
+                 // disable every field in group
+                if (module_exists("fieldgroup") and $groups = fieldgroup_groups($type)) {
+                  foreach (array_keys((array)$groups[$disallowed_field]['fields']) as $field_name) {
+                    $form[$field_name]['#access'] = false;
+                  }
+                }
             }
           }
         }
