Suppose you manage an ongoing set of activities and that you would like to "keep the schedule fresh" by having old stuff vanish and new stuff appear in the schedule as time goes on. This is what rolling events provide. More specifically, a rolling event lasts as long as you keep it around, but shows your users only days near the present.
You manage rolling events as follows:
The duration shown on your home pages for a rolling event equals its Total Visible Days. This is called the self-signup window, because only those days are shown in non-admin schedules.
Admin schedules show all days, and date-ordered views highlight the days outside this window. This is done in day titles in the list view, and by dates having a pale pink background in calendars and grids.The Pre-window days are just the "dead" days that have not been rolled into its history event yet. The Post-window days are the days that gradually become visible in the self-signup schedule as time goes by.
As implied above, it is important for administrators to have access to post-window days before they beome part of the self-signup window. For example, you might want to set the Availability Field of all schedule items on a holiday to "Holiday". (If you have a recurring scheduling special case, you can avoid some of this tweaking. See the Multi-Template Events section).
Suppose you have a Court Signup event and want to allow people to reserve a court up to a week in advance. Suppose also you want them to see 1 day into the past, just to give them some context. Then you would set Past Visible Days to 1 and Total Visible Days to 8. So on Jan 1, people would see a schedule that showed 12/31 thru 1/7; and on Jan 2, they would see 1/1 thru 1/8, and so on.
By default, the dates change at midnight. If you need them to change at a different time, enter a time in the Time That New Days Start field. Consider the tennis court example. As the 8th day in the future becomes the 7th, maybe you do not want to give people access to the newly available day of schedule items until your staff arrives at work. If so, enter that time in this field.
A Roll adds days to the end of a rolling event and moves days in the past into its History event. If you have created multiple templates (e.g. one for Winter and one for Summer), select the appropriate one to append.
For the amount to roll for a new event, see the New Rolling Events section below. Otherwise the amount to roll should equal how far ahead you plan your schedule. See the Special Cases section for more on this.
Note: for an event with very many activities like tennis court reservations, rolling more than a week or two at a time may visibly slow the loading of the admin-signup page.
If you want to receive an email message about doing your next Roll, enter a date or number in this field. If you enter a number, this means that many days after Today. You would normally choose a date shortly before your new post-window days will be exhausted.
By default, the subject and body are 1-liners, and the message is sent just to you. If you want to customize this, create a draft message and name it Roll your event's name. The Roll command will schedule your message instead of the default message if it finds a message with this name in the Drafts folder.
The issue for 1-time special cases is being aware of them. For example, if you have looked ahead 3 months and you have a 7-day template, you could reasonably set Times to Append to 13. If there are no special cases in that period (e.g. holidays), you are done. If there are, you need to do the tweaks for them after you do the Roll. Conversely if you have only looked ahead 4 weeks, you should append no more than 4 weeks. It is simply safer than appending 13 weeks and forgetting to deal with things in the interim.
If you have created multiple templates to deal with your special cases, the issue is using the right template at the right time. In other words, if the upcoming period conforms to template1, you just need to be careful not to roll so much of template1 that it invades the period of time when the activities of template2 should be what people see in the schedule.
Although this chapter covers rolling events in general, it is oriented towards events with well-defined repeating schedules. For a summary of other scenarios, see the next chapter.
There are three ways to create a rolling template:
If you are creating another template for an existing rolling event, enter/leave that event's name in the form. If your new template is for a new rolling event, recall that rolling events lack a fixed Public Start Date. Accordingly you must choose a name that is different than that of any other event.
You can create multiple templates for a rolling event. This comes up when the rolling event has different schedules at different times during the year. For example, suppose you have a Court Signup rolling event and that certain tennis courts and times are devoted to a club league part of the year. In this scenario, you would create two templates for the Court Signup rolling event. Then when the league was active, you would roll the template that accounted for the league courts; and when it was not, you would roll the other template.
If you have a month-oriented schedule, you might want to consider the fully-planned approach. That is, you could create a template for each month of the year, and then roll each of the 12 templates once during the year. Incidentally in this scenario, you should set the date of each template to the 1st of its month so that they appear in the event table in calendar-order.
When a rolling template is appended to a rolling event, any signups in the template are copied as well. Note that the original signups triggered confirmation messages as usual, but copying them as part of a Roll does not. On the other hand, whenever you use Email Announcement to remind people about their signups, the copied signups will also receive reminders.
You put signups in a template when you have "permanent" signups. For example, suppose you do weekly book sorting as books are donated for your quarterly book sale, and that you have created a rolling event for Book Sorting. Then the people who nominally do sorting every week should have signups in the event's template so that they get automatically signed up for each week of the Book Sorting event. Then when someone cannot make it to a specific week, she simply has to cancel her signup for that week to facilitate the finding of a replacement.
How do signups get into a template event? You could simply do them yourself. You also have the option of publishing the rolling template before your rolling event gets started, thereby allowing people to signup themselves for the nominally permanent positions. Finally, if you use select a rolling template in the Copy Event dropdown menu, its signups are included in what is copied.
Converting a regular event into a rolling event and a template:
Although rolling events make it easy to manage ongoing activities, they do constitute a new style of workflow for you. The change is pretty small if you use PRESTO purely as a personal database and email engine. But if you plan to publish the event and allow self-signups, the new workflow also affects your people. Accordingly, when you announce the new rolling event to your people, you need to take this into account. For example, you need to tell people to re-visit Self-Signup Home "in a few days" if they happen to try to signup for a day that is currently past the end of the event.
When the Roll command removes old days from a rolling event, it does not discard them. Instead it moves them to an event named Rolling Event's Name (HISTORY). It then discards "too-old days" from the history event. More specifically, it keeps the 3000 most recent schedule items or the 9 most recent months, whichever is less. To keep more history than this, set the history event's Stage to Out-of-date when the Roll command tells you the history event is full.
The event table helps keep you aware of your need-to-roll status, by listing how many post-window days each rolling event has left. More specifically, you need to do a roll before this count gets below 0 (and the phrase turns red).
Rolling events and the subsidiary events associated with them (i.e. templates and history) are outside the normal calendar of events in some sense. Accordingly, they are visually kept apart by being first in the list and arranged alphabetically.
Because the longest an event can be is a year and because a rolling event "needs" days in its post-window period, the maximum allowed for Total Visible Days is less than 365 — namely 335. If you create a year-long event with this setting, it gets a 335-day self-signup window and initially 30 days in its post-window period. Then as each day passes, one day goes into the pre-window, the self-signup window moves forward a day (but its duration stays the same), and the post-window shrinks a day. Then 30 days later, you would do need to do another roll. (So if you wanted more time between rolls, you would need to choose a smaller Total Visible Days).
The only constraint on In-Past Days is that it needs to be less than Total Visible Days. For example, if you wanted 9 months visible and needed for self-signups to be doable at most a month into the future, you could set total visible days to 275 and in-past days to 245.
The practical maximum duration for a template is 365 days minus how many days out you want to be able to do signups for. Additionally although days have no performance impact, schedule lines do. So another practical limit is that a template should contain at most 2000-ish schedule lines.
There are a variety of scheduling scenarios where you periodically create later schedule items that are the same activity names as before. This section gives examples of handling such scenarios using rolling events. (But if a separate event on Self-Signup Home for each new clump of schedule items feels right, you should look into repeating events instead).
If you have a seasonal event, say a Farmer's Market that runs from May thru October, you might want to consider managing it with a rolling event. This way you could keep track of your nominally permanent workers in the same way the book sorters were kept track of above. At the end of a seasonal rolling event, stop doing Rolls and change the event's Web Stage to Development. Conversely when the next season starts, simply set stage back to Published and resume doing Rolls.
This is just carrying 1-time special cases to the nth degree.
Say you have a meeting once a month, but its date and time are not regular enough to be captured in a fixed template. One way to deal with this would be to create a month-long template containing either no activities or an "approximate" activity. You would then roll this template once a month, and finalize things after each Roll. In the first case, you would create the activity needed that month. In the latter case, you would modify the approximate activity to the same end.
Schedule views enable users to hide schedule items they are not interested in, such as items in the past. But if you prefer, you could make your event a rolling event to cause its start date to move forward automatically — thus implicitly hiding items in the past. To use this approach, put your whole event in a template, set Total Visible Days to the full duration of your event, and then do your one and only Roll command.
For a very long event, you might also want to hide schedule items that are too far in the future. To do this, just do the above procedure in phases. In other words, you would put the first section of your schedule in a template, and then roll and delete that template. When reminded to do the next Roll, you would create a template for your schedule's next section, and then roll and delete that; and so on.