Calvary ACS Plugin – v1.7

  • support for Calvary Chapel wordpress configuration
  • wrap JSON output in script tags
  • Server side time based and ‘limit’ filtering done after API call/cache retrieval and before rendering
    • allows JSON content to be filtered similar to HTML output
  • Created Javascript to aid creating HTML elements
  • Created Javascript to process JSON Events and append to page
  • simple Javascript infrastructure allows easier console manipulation and WordPress plugin editor manipulation “on the fly” (see “calvaryacs.js”)  
    • createEventRow can be overriden for custom rendering on specific WordPress pages/posts
  • added stylesheet for easier styling of generated content using WordPress plugin editor (see “calvaryacs.css”)

Calvary ACS Plugin – v1.6.1

v1.6.1

  • added time based filtering (ACS API did not support natively)
  • new shortcode attributes
    • starttime – events starting on date specified by ‘start’ attribute that are before specified time are excluded
    • stoptime – events starting on date specified by ‘stop’ attribute that are after specified time are excluded (NOTE: both attributes act on the JSON object’s StartTime property)
    • showmidnight – when set to ‘true’, midnight is included for the date specified by ‘stop’ attribute (e.g. 11/6/2017 00:00:00 is included with a 11/5/2018 stop attribute value)
  • support for displaying additional event metadata
  • Local DB cache to decrease TTFB
  • JSON format attribute for shortcodes

Calvary ACS Plugin

Current Version 1.7

Reference

Shortcodes

[acsevent]

when acsid is included as a URL param, the event specified will display in detail.

Attributes

registerlink Value: (string) URL
The specified URL will be created as a registration link for the event

[acsevents]

Shows a list of upcoming events

Attributes

json (boolean)
If present and not set to false will generate a script tag containing the JSON for the event data. Also see JavaScript Customization

link (boolean|string)
If present and not set to false will display a link to another page. If the value is a valid URL then it will be used create a link to the specified event details page. (see [acsevent] (singular))

limit (int)
Number greater than 0
The maximum number of events to display

showmidnight (date)
If specified, not set to false, and used with the stop attribute, the stopping point will include midnight of the following date when filtering events that end on a certain date

start (date)
Instead of today’s date, the specified date will be used as the starting point for the events shown

starttime (date)
Instead of 12:00am, the specified time will be used as the starting time on the start date for the events shown

stop (date)
If specfied, the specified date will be used as the stopping point for the events shown.
Also see showmidnight

stoptime (date)
Instead of 11:59pm (really 12am of the next date), the specified time will be used as the stopping time on the stop date for the events shown

[acslocations]

[acscalendars]

JavaScript Customization

In WordPress’ plugin editor, you can modify calvaryacs.js to generate HTML from the JSON generated by [acsevents json=true] shortcodes. Specifically, modify the createEventRow function that is called by the processACSJsonEvents function.

Examples

Queried Event

Click a link under “Events” to see full description (must include “acsid” as URL param)

Events

Featured Events

Men’s / Women’s Events

Outreach Events

Events JSON

Note: Inspect this line and look a the following SCRIPT tag. (access to jQuery is enabled). Also check window.jsonData in Javascript console

Featured Events

Men’s / Women’s Events

Outreach Events

November 5, 2017

November 5, 2017 show midnight

November 5, 2017 after 9am

November 5, 2017 before 11am

August 3, 2018

Calendars

Locations

Admin Offices
Auditorium (Main)
Cafe'
Calvary Kingdom Castle
Calvary Kingdom Classroom
Calvary Kingdom Gameroom
Calvary Kingdom Main Worship Area
CCCA Cafeteria Rm 102
CCNN Extension
Conference Room
Eustis Parking Lot
Family Room
Fellowship Hall
FUEL
FUEL Worship Rm 101
Green Room
IGNITE
Ignite classroom
Ignite- Ember worship area
Ignite-TNT worship area
KBA Rm 101-Worship Area
KBA Rm 102-Game Room
KBA Rm 103-Preschool 2
KBA Rm 104-K-1st Grade
KBA Rm 105-Preschool 1
KBA Rm 106-Nursery
KBA Rm 107-First Step
KBA Rm 108-Greeters/Work Rm
KBA Rm 109-Worship Area
Kitchen
Lobby
Lobby Cafe'
Lounge Rm 105
Main building kitchenette
Main building lobby
Main East Sanctuary
Main West Sanctuary
Media Room
Off-site
Parking Lot
Prayer Room
Preschool wing classroom
Preschool wing conference room
The Gathering Place
Worship Center

ChangeLog

In Progress

Nice to Have

  • namespacing functions

Released

Calvary ACS (TESTING)

Plugin v1.6.1

Change Log

Queried Event

Click a link under “Events” to see full description (must include “acsid” as URL param)

Events

Featured Events

Men’s / Women’s Events

Outreach Events

Events JSON

November 5, 2017

November 5, 2017 show midnight

November 5, 2017 after 9am

November 5, 2017 before 11am

August 3, 2018

Calendars

Locations

Admin Offices
Auditorium (Main)
Cafe'
Calvary Kingdom Castle
Calvary Kingdom Classroom
Calvary Kingdom Gameroom
Calvary Kingdom Main Worship Area
CCCA Cafeteria Rm 102
CCNN Extension
Conference Room
Eustis Parking Lot
Family Room
Fellowship Hall
FUEL
FUEL Worship Rm 101
Green Room
IGNITE
Ignite classroom
Ignite- Ember worship area
Ignite-TNT worship area
KBA Rm 101-Worship Area
KBA Rm 102-Game Room
KBA Rm 103-Preschool 2
KBA Rm 104-K-1st Grade
KBA Rm 105-Preschool 1
KBA Rm 106-Nursery
KBA Rm 107-First Step
KBA Rm 108-Greeters/Work Rm
KBA Rm 109-Worship Area
Kitchen
Lobby
Lobby Cafe'
Lounge Rm 105
Main building kitchenette
Main building lobby
Main East Sanctuary
Main West Sanctuary
Media Room
Off-site
Parking Lot
Prayer Room
Preschool wing classroom
Preschool wing conference room
The Gathering Place
Worship Center

ChangeLog

In Progress

  • supporting Calvary Chapel wordpress configuration
  • support for displaying additional event metadata
  • Local DB cache to decrease TTFB
  • JSON format attribute for shortcodes

Nice to Have

  • namespacing functions

v1.6

  • added time based filtering (ACS API did not support natively)
  • new shortcode attributes
    • starttime – events starting on date specified by ‘start’ attribute that are before specified time are excluded
    • stoptime – events starting on date specified by ‘stop’ attribute that are after specified time are excluded (NOTE: both attributes act on the JSON object’s StartTime property)
    • showmidnight – when set to ‘true’, midnight is included for the date specified by ‘stop’ attribute (e.g. 11/6/2017 00:00:00 is included with a 11/5/2018 stop attribute value)

Hello world!

Welcome to WordPress. This is your first post. Edit or delete it, then start writing!