diff options
-rw-r--r-- | modules/node/node.module | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/modules/node/node.module b/modules/node/node.module index 892ed6f30..246ff6c2f 100644 --- a/modules/node/node.module +++ b/modules/node/node.module @@ -849,6 +849,8 @@ function node_perm() { if ($type->module == 'node') { $name = check_plain($type->type); $perms[] = 'create '. $name .' content'; + $perms[] = 'delete own '. $name .' content'; + $perms[] = 'delete '. $name .' content'; $perms[] = 'edit own '. $name .' content'; $perms[] = 'edit '. $name .' content'; } @@ -3084,11 +3086,17 @@ function node_content_access($op, $node) { return user_access('create '. $type .' content'); } - if ($op == 'update' || $op == 'delete') { + if ($op == 'update') { if (user_access('edit '. $type .' content') || (user_access('edit own '. $type .' content') && ($user->uid == $node->uid))) { return TRUE; } } + + if ($op == 'delete') { + if (user_access('delete '. $type .' content') || (user_access('delete own '. $type .' content') && ($user->uid == $node->uid))) { + return TRUE; + } + } } /** |