Backstory: I have a content type that will send an email after a period of time if a boolean is true. From the creation of a node to the time the email will be sent, the boolean could change at any time.
My Problem: I would like a clean way to have the conditions of a rules (see if the boolean is true) to be evaluated before going about executing an action set. Through my testing, I cant get the Rule to be properly check the boolean when a node is both created and updated.
Optimally, I would like the conditions to be evaluated after the elapsed time of the Rules scheduler rather than upon initially after being created or updated.
Clarification Edit: Make a Rule that will execute sending an email after a given set of time that is set by the user upon node creation. The single condition of sending the email is if a boolean is true. The boolean could be modified on node creation or through a node update. So the Rule can not be activated based on one of those. No Sssweat was able to show me how to move an evaluation from a standard Rule to the component allowing it to only be evaluated when the standard Rule scheduled the component. So the Rule is set up to be triggered on node creation with only a given time frame field as its condition. Depending on which time frame field was selected, the Rules Scheduler will start. During this period the boolean to be evaluated could be shifted from true to false many times. So only be the end of the scheduled time should the boolean even become relevant. The component side of the rules looks at the boolean to see if it should send the email or not. If true > send email. If false > do nothing.
Some more clarifications:
- The user has a field to choose the time frame for resolving the node.
- If a node is updated, the countdown should not be reset. One email should be evaluated to be sent at the end of the given time frame.
- If the boolean has been changed to false, the email should not be sent and no further action is needed.