0 Manage Family Members' Serving Requests on MyAccount Shared by Aiden Bailey, Mosaic Christian Church 10 days ago 15.5 CMS, Serving, Workflow Intermediate The Problem In the Schedule Toolbox, I can only manage serving requests for myself, but if my spouse or child has a serving request, I can't see it and can't accept/decline those serving requests. Therefore, it's not convenient to be able to see all of my family's serving on my account, and if my child is younger than 13 years old, it's a pain to get their account set up, then login myself, then go check out their serving requests. The Solution Create a new webpage where you can see the serving requests of everyone in your family group through an HTML Content block and be able to accept and decline those through a couple workflows. How-To Create a workflow that accepts a serving request. Create a workflow that declines a serving request. Create a webpage that kicks off the workflow when a serving request is accepted. Create a webpage that kicks off the workflow when a serving request is declined. Create a webpage that displays the existing, future serving requests with buttons to accept or decline the request. Link that last page you created in the Schedule Toolbox to be accessed by users. Create two workflows: one accepting and one declining a serving request. These workflows are nearly identical with one variable being slightly named differently and the "Set Entity Properties" action being slightly different. I will outline the breakdown for each: Workflow #1: Decline Serving Request Attributes: Actions: Name: Set Serving Team | Action: Lava Run Name: Update Attendance | Action: Set Entity Properties (from Blue Box Moon workflow actions plug-in) Properties | Value: RSVP | 0 ModifiedByPersonAliasId | {% assign dp = Workflow | Attribute:'DecliningPerson', 'object' %}{{ dp.PrimaryAlias.Guid }} ModifiedDateTime | {{ 'Now' | Date:'yyyy-MM-ddTHH:mm:ss.fffzzz' }} RSVPDateTime | {{ 'Now' | Date:'yyyy-MM-ddTHH:mm:ss.fffzzz' }} ScheduledToAttend | false Name: Email Scheduled Person | Action: Send Email Name: Show Message | Action: Workflow Entry Show HTML Name: Workflow Complete | Action: Workflow Complete Workflow #2: Accept Serving Request Attributes: Actions: Name: Set Serving Team | Action: Lava Run Name: Update Attendance | Action: Set Entity Properties (from Blue Box Moon workflow actions plug-in) Properties | Value: RSVP | 1 ModifiedByPersonAliasId | {% assign ap = Workflow | Attribute:'AcceptingPerson', 'object' %}{{ ap.PrimaryAlias.Guid }} ModifiedDateTime | {{ 'Now' | Date:'yyyy-MM-ddTHH:mm:ss.fffzzz' }} RSVPDateTime | {{ 'Now' | Date:'yyyy-MM-ddTHH:mm:ss.fffzzz' }} ScheduledToAttend | true Name: Email Scheduled Person | Action: Send Email Name: Show Message | Action: Workflow Entry Show HTML Name: Workflow Complete | Action: Workflow Complete Create webpages to kickoff each of the workflows you just created. Go to "Pages" in "CMS Configuration" and follow this path: External Homepage >> Support Pages >> My Account >> Schedule Toolbox. Add two child pages: one for accepting serving requests and one for declining serving requests On each page, add a "Workflow Entry" block and add the respective accept/decline workflow you just created. In the page settings, go to display settings and make them match the following: Create a webpage for users to actually see the serving requests and accept/decline them. Go to "Pages" in "CMS Configuration" and follow this path: External Homepage >> Support Pages >> My Account >> Schedule Toolbox. Add a child page called "Family Serving Schedule". Add an "HTML Content" block. Copy and paste the HTML/CSS/JS and lava code from the attachment. Make sure the data-urls on lines 147 and 150 are the correct pages for you. The finished product should look like this: Add the last page to the Schedule Toolbox. On the Schedule Toolbox page, in the page settings, change the layout to "Left Sidebar". In the section "Sidebar1", add the block "Page Menu". This should only display the last page you made, not the first two. If the first two show up, go back to that section and make sure your page settings match the screenshot. Download File