I created a rule to grant users User Points when they added a comment on a node. However, I'd like to grant them these points only once. That means: they don't get more points when they react a second or a third time on the same node, but they will be granted points nevertheless after commenting on another node.
How can I do that?
I solved my problem with the Flags module: I created the flags called 'Commented on this node' & 'First reaction'* and rule called 'Commented on a node'. These are my rule's settings:
EVENTS: After saving a new comment
CONDITIONS:
[comment:node]
, Content types:
Article[comment:node]
, User on whose behalf to check: [comment:author]
ACTIONS:
[comment:author]
,
Points: 2, Points category: Reaction, Entity: [comment:node]
,
Description: New reaction, Operation: Add,
Display: false, Moderate: Automatically approved[comment:node]
, User on whose behalf to flag: [comment:author]
, Skip
permission check: false[comment]
,
User on whose behalf to flag: [comment:author]
, Skip permission
check: falseSo, every time a user adds a comment to a certain node for the first time, the node is flagged as 'Commented on a node', the reaction is flagged as 'First reaction' and the user who added the comment is rewarded 2 points.
**I use the 'First comment' flag in a related question.*