Daniel,
I would think that with the right permissions, this would be possible "out of the box"...
Assume a given node is created and published in Version A.
A content author could edit that node, then under "Publishing options" on the edit screen, turn off "Published" and turn ON "Create new revision," thus creating Version B.
If authenticated users are granted "edit <content type> content" for your given content type and were granted "view revisions" rights, then they would be able to browse revisions, both published and unpublished, to any given node of your custom type, and edit them. Thus, an authenticated user could do further revisions to Revision B and/or make that node "published."
The more elaborate system outlined in your PS is beyond my feeble powers, but I think the approach above will get you started. Let me know if you need more specific guidance - I'm just glancing over my setup to see how to go about it, but haven't actually tried it yet.
-Gabe
Daniel Caillibaud wrote:
Hi all,
With drupal 6 (I can use 5.7 if easier), what is the best way to have two versions ("last published" and "next release draft") of the same content ?
It's content of my own type (build with cck, each content have many fields and several files attached). I would like to have all the published versions on the public website, and the draft of each content accessible for authentificated user. In brief, it's a bit like implementing for contents mechanisms usually used for sowftware development (with the "still in development" branch and the "stable" branch).
I guess I have to code a way to duplicate content from the "workspace" to public website (to always keep the current working version in the "workspace"), but I'm starting with drupal so it's perhaps a crzy idea...
Every good advice will be apreciated.
Thanks
Daniel
PS: Next steps are to have a collaborative way to publish (more than X% agree without veto), and have different variants of each content, with relations between variants ;-)