Something worth looking at is the option to retain the original author across edits and revisions by other people. Why do we need that level of control? Because some editors edit on behalf of authors and the node should remain attached to the author no matter what the editor does. Editor A edits something for author B. The content never belongs to Editor A. Editor A might be one of dozens of editors editing the content. My first book had three editors working through it for different reasons. None of them were contributing content. The content never belongs to Editor X or Y or Ms Zed.
Because editors sometimes replace the author when multiple authors work on content and the current author is unavailable. Editor A changes the author from B to C. The content never belongs to Editor A.
http://drupal.org/node/1240850, Publishing/Unpublishing a revision changes the author of that revision, tackles a problem with node_save by changing the user id first, then saving, then changing the user back. Allowing a user id in node_save would be a better solution. Changing the workflow to let us retain the original author would be better. Log editors in the history of changes but do not change the author.
There were several issues open for node_save and all are closed as duplicates of something else in a trail leading to http://drupal.org/node/1776796 but that issue does not fix the original problem of node_save changing the author. Somewhere in the revisioning workflow, we need the option to keep the original author.
Originally mentioned in http://drupal.org/node/1776796#comment-6715798. jstoller replied:
#46 Posted by jstoller on November 11, 2012 at 6:17am new
@peterx, re: #44, it sounds like your problem could be solved if we tracked the "owner" of an entity in the base table (i.e. {node}), in addition to tracking the author of each individual revision. I support the idea, but what you're requesting is an API change and outside the scope of this issue. I suggest opening a new issue in the queue.
reply
Post
Comments
Comment #1
jstollerI did the following test:
So, from what I can tell, the listed author is determined by {node}.uid and remains set to whoever created the node, no matter who edits the node (unless explicitly changed in the authoring information tab).
The {node_revision} table is a bit more unusual. If you save a new revision, then {node_revision}.uid will reflect the uid of the editor. If you overwrite the latest revision of the node, then {node_revision}.uid will be set to {node}.uid (the author), no mater which user is editing the node.
@peterx, can you clarify your desired behavior and how/if it deviates from the above? I see room for improvement here, but from what I can tell, it's already doing what you're asking for.
Comment #2
peterx commented@jstoller, I have not tried a fresh D8 dev. What I see in D7, and a previous D8, is the content disappearing from a user's content list when edited to a new revision. The Workbench moderation module compounds the problem but did not change it. I will try a fresh install.
Comment #3
jstoller@peterx, this sounds like a it may be a Workbench issue, more than a core issue. That said, please see #1838862: Add revision_uid to the node table, which I think could improve matters quite a bit.
I'm going to close this issue, but feel free to reopen it if you feel it is warranted.