--- private_nodes.module.original	2007-08-22 11:01:29.000000000 +0200
+++ private_nodes.module	2007-08-23 11:23:26.000000000 +0200
@@ -114,6 +114,14 @@ function private_nodes_check_access($uid
 
   $is_admin = user_access('administer_users');
 
+
+  $node = node_load(array('nid' => $nid));
+  $type = $node->type;
+  $nodetypes = private_nodes_get_node_types();
+  if (user_access('user can view private node of type: ' . $nodetypes[$type])) {
+    return true;
+  }
+
   if ($is_owner || $is_admin || $level == PRIVATE_NODES_PUBLIC) {
     return true;
   }
@@ -525,6 +533,10 @@ function private_nodes_perm() {
 	    $permissions[] = 'users can set access on ' . $v;
 	  }
   }
+
+ foreach ($types as $v) {
+    $permissions[] = 'user can view private node of type: ' . $v;
+  }
   
   $permissions[] = 'administer private nodes';
 
