A component for viewing a GridField's data as a calendar, useful for things like event calendars. It also provides a toggle button that let's you switch between the default list view for a GridField and the Calendar view.
- Ed Chipman (UndefinedOffset)
- SilverStripe Framework 4.2+
Composer (recommended):
composer require webbuilders-group/silverstripe-gridfield-calendar-view
If you prefer you may also install manually:
- Download the module from here https://github.com/webbuilders-group/silverstripe-gridfield-calendar-view/releases
- Extract the downloaded archive into your site root so that the destination folder is called gridfield-calendar-view, opening the extracted folder should contain _config.php in the root along with other files/folders
- Run dev/build?flush=all to regenerate the manifest
To get started you need to have an object that can be rendered as a item on a calendar. Then you need to add the GridFieldCalendarView
component to your GridField's config. For example:
$myGridField=new GridField('Events', 'Events', $this->Events(), GridFieldConfig_RecordEditor::create(10));
$myGridField->getConfig()->addComponent(new GridFieldCalendarView(
'StartDateTimeField', //This must be the name of the field in the model not a getter method
'EndDateTimeField'
));
There are more options available, when adding the component for information on these see the documentation for more information.