Calendar App for communities

We wanted to expose our SYM Events or something similar online so that we could visualize and show real-time calendars. It turns out to be surprisingly difficult. There is an app that perhaps we should have used. It’s meant for intensive uses but maybe it would have been best in future. Anyway, just calling it out in case it’s needed in the future: https://github.com/SFDO-Community/Summit-Events-App/wiki

User stories:

  • Certain SF team members are able to create a recurring event that is for clients and volunteers with a visual queue for type of event or location, a sign-up link for volunteers and a brief description (and Zoom link).
  • Certain SF team members are able to create a single event like above, possibly also with a way to support the event with a donation or needed item.
  • Any team member is able to cancel one of an event by either removing it or renaming it to draw attention to the fact that it’s canceled. Needs to require no further approval or significant delay since operational changes are typically pretty fast paced and driven by things like staff illness or weather emergencies.
  • Ability to add news items like a big change or something to our calendar.
  • Able to add fundraiser news.
  • Able to add publication dates to our calendar.

We would have loved it if we could have driven this from our custom SYM Event where we organize service delivery notes but found no way to do this at this time. There is a paid app but its price range was way outside the perceived added value we saw given other options.

We decided to rely on Salesforce Events. Perhaps they could one day be linked to their SYM EVent but for now they are totally independent.

The following app was installed which allows Events to be shown on a calendar with some formatting options. The options aren’t that great but they are good enough to get us where we need to go for now. We evaluated the native calendar and a couple of other options but this was the best at the time to meet our user stories.

Since we don’t want anyone to need to login to the community to view the calendar we have to share the Event with a sharing rule to the Experience Cloud guest user. This was done by a rule that shares any Event which has a related to Account = Street Youth Ministry. 

We looked into ways to subdivide the calendar into multiple calendars. This is easy to do using a filter option related to the who ID or what ID IF (and only if) the calendars are mutually exclusive. Unfortunately, we would want some event to show up on more than one calendar. We do not see how to do this at this time. We could easily have a news calendar, a publication and also show these events on one global calendar with other client calendar and volunteer events. But if we want to separate client and volunteer events, we have to list them both and then they will both show up on the global calendar. This seems currently to create more confusion than just having one global calendar.

It’s far from perfect, but here’s what we publish now using the experience cloud component and a text element to explain our color code and key below. The description and up to two links are available. We don’t allow clicking into the event details as we want to support a record page.

Here is what we can offer when you click on any item. You can also change from monthly to weekly to daily view and go forward and backward. We can offer two buttons that go to new pages as desired. The description can also include links.

Internal users can go to the Calendar tab to see the calendar. They must add any users who define activities unfortunately. Each is shown separately. By default they will see only their own events. This is quite confusing. Perhaps we will learn in future a better way to use the Calendars. They are pretty limited it seems. Once the internal user clicks into an item they want to edit or modify, they see these fields, most of which are operational:

The above item is on the public calendar because of the What ID associated with it. The description and recurrence shown on the public view are controlled from these fields The calendar rending (outline, icon, text color, highlight color) are controlled from these fields. Web wingdings seem to work also.

We made a quick action for the global publisher menu to help create a “New Event” for the calendar more quickly but the quick action cannot assign a default for the ID or a couple of other items due to limitations of the Event special object. But the Quick Action should help in creating recurring items or single items more quickly. There is no clone support for Events.

This is our first extensive use of Events. There are some major gotchas and learning curves. We’ve tried to record these and other how to’s in a Quip document for user training: https://sym.quip.com/bvfKAPJoPmRI/How-To-Update-SYMin-Public-Schedule

Some of the biggest learning curve items are dealing with recurring events:

  1. If you edit a past event of a series, it becomes an orphan.
  2. If you edit or delete a future event of a series you get the choice of changing (deleting) all or just the one. If just one, it becomes an orphan.
  3. Orphans aren’t affected by the series any longer and must be updated or deleted one by one
  4. When you edit the recurrence of a series, it will add any previously deleted items back as part of the series.

Leave a Reply

Your email address will not be published. Required fields are marked *