This project would build a system for managing the publication life-cycle and staging of content on a Drupal site. This system would equate to a “time machine” for Drupal allowing you to see the state of your site at any given time in the past or future. This would be accomplished via publication “states” that are date-tagged and can be moved through a publication life-cycle or workflow. In essence, a content editor would be able to package a series of content revisions for publication and view that content in the context of the overall site at any given point in the past or future based upon the selected state.
A system like this would be a series of contributed modules. The first would be a module to manage publication states for entities in the system. The second would institute some sort of unique identifier system to manage revisions for all of the entities in the Drupal system (not just nodes, but blocks, menus, taxonomy terms, etc). The third would be a module that allowed for a site “preview” along any timescale (past or future) with any publication state.
This module would allow authorized users to view the site in any state, past or present, and be able to view their content in the context of a publication state and time. This would serve the following purposes:
Provide a clear system for staging content and being able to view that staged content in the context of a site.
Management of entities that don’t have a current revision system.
Enable state-based publication workflows and the capability to define publication cycles.