summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/node/node.module10
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;
+ }
+ }
}
/**