Skip to content

manuxi/SuluEventBundle

Repository files navigation

SuluEventBundle!

php workflow symfony workflow License: MIT GitHub Tag Github Release Supports Sulu 3.0 or later

🇩🇪 German Version

The SuluEventBundle extends Sulu CMF with comprehensive event management. It enables the creation and management of events with detailed information, locations, media and multilingual support. Advanced features such as recurring events, a calendar frontend, iCal export and social media integration are also included. This bundle is based on the Sulu Workshop and has been equipped with more and more features over time.

img.png

✨ Features

📅 Event Management

  • Extensive Event Details - Title, subtitle, summary, text, blocks, and more
  • Date & Time - Flexible start/end dates
  • Locations - Separate location management with address details
  • Media Integration - Hero images, image galleries, PDF attachments
  • SEO & Excerpt - Full SEO and excerpt management
  • Multilingual - Full translation support
  • Author Management - Assign contacts as event authors
  • Settings - Extensive configuration options
  • More - Trash, references, sitemaps, etc.

🔄 Advanced Features

  • Recurring Events - Daily, weekly, monthly, yearly patterns with exceptions
  • Social Media Integration - Per-event sharing configuration (Facebook, Twitter, LinkedIn, Instagram, WhatsApp)
  • Calendar - FullCalendar.js integration with year/month/week/list view
  • iCal Export - Single events or full calendar subscriptions (webcal://)
  • RSS/Atom Feeds - Keep subscribers updated on new events
  • Smart Content - Usable as a content block in any Sulu page

📋 Prerequisites

  • PHP 8.2 or higher
  • Sulu CMS 3.0 or higher
  • Symfony 6.2 or higher
  • MySQL 5.7+ / MariaDB 10.2+ / PostgreSQL 11+

👩🏻‍🏭 Installation

Step 1: Install the package

composer require manuxi/sulu-event-bundle

If you are not using Symfony Flex, add the bundle to config/bundles.php:

return [
    //...
    Manuxi\SuluEventBundle\SuluEventBundle::class => ['all' => true],
];

Step 2: Configure routes

Add to routes_admin.yaml:

SuluEventBundle:
    resource: '@SuluEventBundle/Resources/config/routes_admin.yaml'

For FullCalendar integration/iCal/Feeds, the following must be added to routes_website.yaml:

SuluEventBundle:
    resource: '@SuluEventBundle/Resources/config/routes_website.yaml'

Step 3: Update the database

# Check what will be created
php bin/console doctrine:schema:update --dump-sql

# Execute migration
php bin/console doctrine:schema:update --force

Step 4: Grant permissions

  1. Go to Sulu Admin → Settings → User Roles
  2. Find the appropriate role
  3. Enable permissions for "Events" and "Locations"
  4. Reload the page

🎣 Usage

Create your first event

  1. Navigate to Events in the Sulu admin navigation
  2. Click on Add event
  3. First, create at least one Location
  4. Then create your event with all the details
  5. Configure social media settings (optional)
  6. Set up recurrence patterns (optional)
  7. Publish your event

🧶 Configuration

You can find the extensive configuration here: Settings

📖 Documentation

Detailed documentation in the docs/ directory.

👩‍🍳 Contributing

Contributions are welcome! Please create issues or pull requests.

📝 License

This bundle is licensed under the MIT License. See LICENSE.

🎉 Credits

Created and maintained by manuxi.

Thanks to the Sulu team for the great CMS and fantastic support!

Thanks to FullCalendar for the calendar.

And thank you for your support and testing!

About

Comprehensive eventsystem

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •