Versioning of Event Types
To version control all event types so that retiring, creating a new version and publishing/updating the version is all done within a single event type rather than having to create a completely separate one.
Each Event Type has the ability to be versioned with details of the version kept within the event types themselves. The current version number and whether it is currently in a published or draft state is clearly displayed.
Creating a new version keeps the previous one published and creates a new draft. There can be only one draft version at any one time. Publishing a new version automatically retires the previous version, and versions can also be retired at any point without requiring a new draft to be created. Creating a new version will retain all the information from the previous version which can then be edited rather than having to enter large parts of the event again.
Each event type contains an audit log which shows: version details, dates of actions, authors of actions.
Some elements of event types are kept changeable when the event type is in a published state: colours, tags, select default view.
For an end user this then means that searching by event type only displays to the user the name of the current version of that event. When performing the search we return events that match every current and historic version of that event type. Individual events are labelled within the event view with their version number and the original name of the event so that no data is lost.
AS A User I WANT TO see which state each Event Type is in and how many versions exist SO THAT I can see at a glance the status of each
AS A User I WANT TO no longer see the Clone button on each Event Type on the list SO THAT I do not accidentally create a brand new Event Type when I should be creating a new version
AS A User I WANT TO be automatically directed to the most recent version of the Event Type when I click to go inside it SO THAT I always land on the most relevant version
AS A User I WANT TO see an audit log of actions at the top of each version of the Event Type SO THAT I can see the version state, when it was last edited (if draft) or when it was published or retired with details on which user performed each of these actions
AS A User I WANT TO see an indication of how many versions in total are contained within the Event Type with buttons to go to the currently published version and to see a list of all versions SO THAT I can click through the details of all versions
AS A User I WANT TO click on a button to show all versions and to see those details in a modal pop up SO THAT I can click on any of the versions in the list to be taken there
AS A User I WANT TO clearly see which fields are editable and which are locked when the event is in a published state SO THAT I know exactly which I can alter and which I can't
AS A User I WANT TO be able to change the tags, default view and colour for each Event Type when in a published state SO THAT I do not have to create a new version to make small changes
AS A User selecting a new colour for an Event Type I WANT TO be asked whether I want to apply this colour to all versions of this Event Type or just the one currently being viewed SO THAT I can easily apply changes to all
AS A User I WANT TO only be able to have one draft version of each Event Type active at any one time SO THAT the editing process is kept straightforward
AS A User I WANT TO be able to change the title of an Event Type version when I create a new draft SO THAT each version has the capability of featuring a different title whilst still retaining their grouping together
AS A User I WANT TO see a confirmation warning message when I try and publish a version SO THAT I am clear this action will automatically retire the previous version
AS A User I WANT TO always see a preview button on the Event Type SO THAT I can click to see how this Event will display at any time