Skip to content

Import news and events from ChurchDesk as news into Contao.

License

Notifications You must be signed in to change notification settings

numero2/contao-churchdesk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contao ChurchDesk Bundle

License: LGPL v3

About

Import news and events from ChurchDesk as news into Contao.

System requirements

Installation

  • Install via Contao Manager or Composer (composer require numero2/contao-churchdesk)
  • Run a database update via the Contao-Installtool or using the contao:migrate command.

Configuration

  • Enter credentials in the config.yaml
    church_desk:
        api:
            organization_id: 123
            partner_token: 'abc'
  • Configure the event calendar and or news archive

Hooks

By default the bundle only imports certain information from ChurchDesk. If you need more data you can import them on your own using the parseChurchDeskEntry hook:

// src/EventListener/ParseChurchDeskEntryListener.php
namespace App\EventListener;

use Contao\CoreBundle\ServiceAnnotation\Hook;
use Contao\Model;
use Contao\NewsModel;
use Contao\CalendarEventsModel;

/**
 * @Hook("parseChurchDeskEntry")
 */
class ParseChurchDeskEntryListener {
    
    public function __invoke( Model $model, array $apiData, bool $isUpdate ): void {

        if( $model instanceof CalendarEventsModel ) {
            $model->something = $apiData->something;
        }

        if( $model instanceof NewsModel ) {
            $model->anything = $apiData->anything;
        }
    }
}

Console Commands

An automatic import of all events and blog entries can be started via the command vendor/bin/contao-console contao:churchdesk:import.

About

Import news and events from ChurchDesk as news into Contao.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages