Hello everybody!
I have to control when CCK value is changing. For that I done following:
- Created a rule for the event "Content is going to be saved"
- Created a condition. Value has changed.
- Created 2 actions:
- First action is Activity Log with the template [user:user] has changed the status for [node:title] from [node_unchanged:field_client_issue_status-term] to [node:field_client_issue_status-term]
- Second action is showing configurable message with the same template [user:user] has changed the status for [node:title] from [node_unchanged:field_client_issue_status-term] to [node:field_client_issue_status-term]
Issue. After triggering that cck field rules is executing and activity log is filling. The problem is that both actions shows different cck values. Activity Log action shows [node_unchanged:field_client_issue_status-term] as [node:field_client_issue_status-term]. Example: admin has changed the status for node 1 from new value to new value Therefore I am not able so know an old value of that field.
On the other hand Configurable Message shows as it supposed to be - showing an old value and the new one. Example: admin has changed the status for node 1 from old value to new value
After that it is obvious that the problem is not in tokens as well as rules, The problem is somewhere in Activity Log code.
Please help me to fix it! It is essential..
Token 6.x-1.18
Activity Log 6.x-2.x-dev - the latest one
Rules 6.x-1.4
Comments
Comment #1
icecreamyou commentedShort answer: committed fix to dev.
Long answer: this is by design. Activity Log always tries to use the newest instance of the entity it's dealing with. I hadn't realized there was a situation where you would actually want the old data. However, I've committed a fix that specifically adds an exception to keep entities with an
_unchangedsuffix from being updated.Also, please read the handbook page on issue priority levels.