Hi Rik,

we have recently had a client using Revisioning 6.x-3.15 and Nodewords 6.x-1.13 with several Rules to "Publish new revision on node save" and "Prepare newly-approved node for next-revision automatic de-approval" and workflow vocabulary with the different states (awaiting moderation, approved, rejected, published)

By default, each new revision is created and pending moderation. Once it is approved, it gets published on node save.

If an editor changes the nodewords fields and just creates a new revision pending moderation, the changes appear without a problem once they get approved. However, if the revision is set to approved directly, any nodewords changes are lost.

I've traced it down to _revisioning_publish_revision() which invokes node_invoke_nodeapi with $op= 'update'. Setting $node_revision->nodewords = FALSE; same as $node_revision->pathauto_perform_alias = FALSE; fixes this problem.

On a bigger picture, what happens is:

  • the node gets saved
  • the nodewords changes get saved
  • the new revision gets prepared (which involves a node_load() which has the old nodewords)
  • the revision is saved and published, with the old nodewords
CommentFileSizeAuthor
#1 revisioning-nodewords-1866744-1.patch673 byteszerolab

Comments

zerolab’s picture

StatusFileSize
new673 bytes

Attaching a patch.

rdeboer’s picture

Assigned: Unassigned » rdeboer
Status: Active » Needs work

WIll be include in 6.x-3.16 final release for D6.

rdeboer’s picture

Status: Needs work » Fixed

Patch applied to 6.x-3.x branch, ie. 6.x-3.x-dev snapshot.

zerolab’s picture

Great to hear that. Thank you!

rdeboer’s picture

Thanks zerolab, that's another commit under your belt: http://drupal.org/user/354424/track/code
Sorry for my appalling delay...
Rik

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.