2

I have a view with a VBO field to execute a bulk operation over nodes.

The bulk operation for this VBO field is a rule component (which I have created) Get Voucher

This component execute some actions.

Now in the view I can execute the VBO only if I'm logged as a administrator. But not with any other role.

I make sure that the permission of all action are enabled. But the action for the component Get Voucher is not listed here.

The button for the bulk operation is shown but when I click it nothing happens.

Which other permission do I need to enable?

UPDATE 1: I know that the problem is related to the actions executed in the compoment. Here is the exported component

UPDATE 2: trying with a more simple component (just one action to show a message)

{ "rules_test_registered_user" : {
    "LABEL" : "test registered user",
    "PLUGIN" : "rule set",
    "REQUIRES" : [ "rules" ],
    "ACCESS_EXPOSED" : "1",
    "USES VARIABLES" : { "node" : { "label" : "Node", "type" : "node" } },
    "RULES" : [
      { "RULE" : {
          "DO" : [ { "drupal_message" : { "message" : " Hello" } } ],
          "LABEL" : "first rule"
        }
      }
    ]
  }
}

2 Answers 2

1

If using Action Permissions, under Admin > People > Permissions, double check the "Execute action name" permission is enabled for the role(s).

It may also be that the user role needs permission to eval that php code in the Rule as well as possibly a userpoints grant points permission required.

Lastly, check the Rules module user permissions and also in edit form for the actions on the rule itself.

1
  • I've made sure all those permissions are enabled. But not working.
    – chefnelone
    Jan 2, 2013 at 10:04
1

Solved but with some implications.

The problem was that I have to enable the permission to Edit the nodes listed in the view (vouchers content type).

I did that, but now this role will have permission to edit this type of node and this is not what I need.

I understand that vbo needs this permission because it assumes that the user will execute action in the node, but this not my situation, I need the action to just read a value of the node (labpoints field) and then execute an action in the user informations (deduct)(user userpoints). So I don't need that the user has the permission to edit the node at all.

I guess I'll use the field permission module to narrow the permissions for this content type.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.