Skip to content

Releases: Church-Plugins/cp-sync

v1.0.0 - Sermon syncing from Planning Center, rebuilt settings

Choose a tag to compare

@cursor cursor released this 04 Oct 22:18
52b87fe

What's New in v1.0.0

CP Sync 1.0 syncs your groups and events from Planning Center or Church Community Builder, and now also syncs sermons from Planning Center Publishing into CP Sermons.

New

  • Sermon syncing from Planning Center: episodes become CP Sermons sermons, with series, speakers, media and artwork.
  • Turn Groups, Events and Sermons syncing on or off for each system.
  • A Reset tool (Settings > Advanced) for fixing a stuck sync, with typed confirmation before anything is deleted.
  • A checkbox on each imported post that stops sync from changing it, so your edits are kept.
  • An optional setting to remove all CP Sync data when the plugin is deleted. It is off by default.

Fixed

  • Events no longer land at 12:00am; their real times are kept.
  • Past events are no longer deleted after they finish.
  • A failed Planning Center request can no longer wipe previously imported events.
  • Event previews load in seconds, even on large calendars.
  • Removing one item no longer blanks an image shared with another.
  • Planning Center rate limits are retried automatically.

Security

  • CCB passwords are now stored encrypted.
  • Settings and sign-in callbacks are checked more strictly, and updated libraries are included.

Improved

  • A rebuilt settings screen that looks like the rest of WordPress admin.

v0.3.1 - CCB Event Enrichment

Choose a tag to compare

@tannerm tannerm released this 04 May 18:09
8e1579d

What's New in v0.3.1

CCB events now import with full venue addresses and event images, fetched automatically from the CCB event_profile endpoint after each event syncs. This release ships the original 0.3.0 enrichment feature plus the 0.3.1 fixes that hardened it for production use.

✨ New Features

  • CCB Event Enrichment — Events automatically pick up full venue addresses (street, city, state, zip) and event images from the event_profile endpoint after the initial calendar import
  • Custom XML Parser — CCB API attributes are now preserved through parsing, enabling reliable event ID extraction across both public_calendar_listing and event_profile endpoints

🔧 Improvements

  • Two-Phase Enrichment Strategy — New events always enrich on first import; subsequent syncs use CCB's modified timestamp to skip events that haven't changed
  • Single API Call Re-enrichment — Eliminated duplicate event_profile calls during change detection (one call now serves both check and enrichment)
  • Session-Based Venue Deduplication — Multiple events sharing a venue no longer trigger redundant venue updates within a sync run
  • Loading Skeleton on Settings Page — Shimmer placeholder displays while the JS bundle loads, replacing the previous blank page
  • Graceful Enrichment Failures — Errors during enrichment are logged but don't block event import

🐛 Bug Fixes

  • Incomplete Venues Fixed — Venue creation is now deferred to the enrichment phase, eliminating venues created with only a name and no address
  • Stale Venue Associations Cleared — Removing a location in CCB now properly clears the corresponding venue association in WordPress

📚 Documentation

  • Documented CCB event enrichment behavior and the recurring-event ID limitation
  • Added the new cp_sync_{$type}_update_item_after action hook to the developer guide
  • Updated venue/location guidance in the troubleshooting and TEC integration guides

🛠️ Technical Details

  • Recurring event occurrences from public_calendar_listing lack a numeric event ID and cannot be enriched — they import with venue name only. Master events with numeric IDs enrich normally.
  • Enrichment state is tracked via _chms_enriched_at and _chms_modified post meta.
  • A new generic action hook cp_sync_{$type}_update_item_after fires after every item update (e.g. cp_sync_events_update_item_after), enabling type-specific post-processing for custom integrations.

v0.1.7 - Enhanced PCO Registration Event Logging

Choose a tag to compare

@tannerm tannerm released this 05 Sep 21:25

What's New in v0.1.7

🔍 Enhanced Debugging & Logging

  • Comprehensive PCO Registration Event Import Logging - Added detailed logging throughout the entire import process to help troubleshoot why events aren't importing
  • User-Friendly Debug Messages - Clear, actionable log messages that help identify common import issues
  • API Response Logging - Track PCO API responses, errors, and data filtering results
  • Individual Event Processing Logs - Detailed logging for each event including registration type, URLs, and capacity status

🔧 Improvements

  • Enhanced Integration Processing - Added logging to base Integration class for better process tracking
  • TEC Integration Logging - Improved visibility into event processing steps
  • Better Error Diagnostics - More specific error messages for faster troubleshooting

🐛 Bug Fixes

  • OAuth Redirect URL Fix - Corrected admin page redirect URL construction for PCO OAuth flow

🛠️ Technical Details

  • Logging uses the CP-Sync logging system accessible via WordPress admin
  • All logs include timestamps and clear context for debugging
  • Sample event names shown in logs for easy identification
  • Visibility filter status clearly indicated in logs

This release significantly improves the debugging experience when troubleshooting PCO registration event import issues.

0.1.6

Choose a tag to compare

@tannerm tannerm released this 26 Feb 02:01
  • Enhancement: to the CCB sync
  • Enhancement: better image importing
  • Enhancement: add security check to api endpoints
  • Bug Fix: Update api endpoints

Full Changelog: v0.1.5...v0.1.6

0.1.5

Choose a tag to compare

@tannerm tannerm released this 10 Dec 04:34
  • Rebuild Assets

0.1.4

Choose a tag to compare

@tannerm tannerm released this 04 Dec 20:24
  • Re-build assets

0.1.3

Choose a tag to compare

@tannerm tannerm released this 27 Nov 23:18

Initial release