diff --git a/.editorconfig b/.editorconfig index fdfb019..045a248 100644 --- a/.editorconfig +++ b/.editorconfig @@ -13,6 +13,10 @@ trim_trailing_whitespace = true indent_style = space indent_size = 4 +[*.{xlf}] +indent_style = space +indent_size = 2 + [*.{html5,svg,min.css,min.js}] insert_final_newline = false @@ -21,4 +25,4 @@ indent_style = tab [*/src/Resources/contao/**.html5] indent_style = space -indent_size = 2 \ No newline at end of file +indent_size = 2 diff --git a/.idea/.gitignore b/.idea/.gitignore deleted file mode 100644 index 13566b8..0000000 --- a/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Editor-based HTTP Client requests -/httpRequests/ -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml diff --git a/.idea/calendar-event-booking-bundle.iml b/.idea/calendar-event-booking-bundle.iml deleted file mode 100644 index 47b3ec0..0000000 --- a/.idea/calendar-event-booking-bundle.iml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/deployment.xml b/.idea/deployment.xml deleted file mode 100644 index d119147..0000000 --- a/.idea/deployment.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml deleted file mode 100644 index 38632ec..0000000 --- a/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/php.xml b/.idea/php.xml deleted file mode 100644 index 7341688..0000000 --- a/.idea/php.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml deleted file mode 100644 index 94a25f7..0000000 --- a/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/composer.json b/composer.json index ef92db8..a710ce0 100644 --- a/composer.json +++ b/composer.json @@ -11,7 +11,7 @@ ], "require": { "php": "^7.4 || ^8.0", - "contao/core-bundle": "^4.9", + "contao/core-bundle": "^4.13", "contao/calendar-bundle": "^4.9", "markocupic/export_table": "^5.1", "ramsey/uuid": "^3.0 || ^4.0", @@ -24,17 +24,7 @@ "autoload": { "psr-4": { "Markocupic\\CalendarEventBookingBundle\\": "src/" - }, - "classmap": [ - "src/Resources/contao" - ], - "exclude-from-classmap": [ - "src/Resources/contao/assets", - "src/Resources/contao/config", - "src/Resources/contao/dca", - "src/Resources/contao/languages", - "src/Resources/contao/templates" - ] + } }, "extra": { "contao-manager-plugin": "Markocupic\\CalendarEventBookingBundle\\ContaoManager\\Plugin" diff --git a/src/Resources/config/services.yml b/config/services.yml similarity index 68% rename from src/Resources/config/services.yml rename to config/services.yml index 9e65d10..5b5e325 100644 --- a/src/Resources/config/services.yml +++ b/config/services.yml @@ -7,5 +7,5 @@ services: $projectDir: '%kernel.project_dir%' Markocupic\CalendarEventBookingBundle\: - resource: ../../ - exclude: ../../{Event,Model,DependencyInjection,Resources} + resource: ../src/ + exclude: ../src/{Event,Model,DependencyInjection} diff --git a/src/Resources/contao/config/config.php b/contao/config/config.php similarity index 95% rename from src/Resources/contao/config/config.php rename to contao/config/config.php index 5f3615d..ee5e6c1 100644 --- a/src/Resources/contao/config/config.php +++ b/contao/config/config.php @@ -17,11 +17,6 @@ // Add child table tl_calendar_events_member to tl_calendar_events $GLOBALS['BE_MOD']['content']['calendar']['tables'][] = 'tl_calendar_events_member'; -if (TL_MODE === 'BE') { - // Add Backend CSS - $GLOBALS['TL_CSS'][] = 'bundles/markocupiccalendareventbooking/css/be_stylesheet.css'; -} - // Register custom models $GLOBALS['TL_MODELS']['tl_calendar_events_member'] = CalendarEventsMemberModel::class; diff --git a/src/Resources/contao/dca/tl_calendar.php b/contao/dca/tl_calendar.php similarity index 100% rename from src/Resources/contao/dca/tl_calendar.php rename to contao/dca/tl_calendar.php diff --git a/src/Resources/contao/dca/tl_calendar_events.php b/contao/dca/tl_calendar_events.php similarity index 97% rename from src/Resources/contao/dca/tl_calendar_events.php rename to contao/dca/tl_calendar_events.php index ae56a0b..3f1f454 100644 --- a/src/Resources/contao/dca/tl_calendar_events.php +++ b/contao/dca/tl_calendar_events.php @@ -13,14 +13,14 @@ */ use Contao\CoreBundle\DataContainer\PaletteManipulator; -use Markocupic\CalendarEventBookingBundle\Contao\Dca\TlCalendarEvents; +use Markocupic\CalendarEventBookingBundle\DataContainer\CalendarEvents; // Table config $GLOBALS['TL_DCA']['tl_calendar']['config']['ctable'][] = 'tl_calendar_events_member'; // Overwrite child record callback $GLOBALS['TL_DCA']['tl_calendar_events']['list']['sorting']['child_record_callback'] = [ - 'Markocupic\CalendarEventBookingBundle\Contao\Dca\TlCalendarEvents', + CalendarEvents::class, 'listEvents', ]; @@ -51,7 +51,7 @@ // Callbacks $GLOBALS['TL_DCA']['tl_calendar_events']['config']['onsubmit_callback'][] = [ - TlCalendarEvents::class, + CalendarEvents::class, 'adjustBookingDate', ]; @@ -290,7 +290,7 @@ 'inputType' => 'text', 'save_callback' => [ [ - TlCalendarEvents::class, + CalendarEvents::class, 'saveUnsubscribeLimitTstamp', ], ], diff --git a/src/Resources/contao/dca/tl_calendar_events_member.php b/contao/dca/tl_calendar_events_member.php similarity index 95% rename from src/Resources/contao/dca/tl_calendar_events_member.php rename to contao/dca/tl_calendar_events_member.php index 49f3f64..9684614 100644 --- a/src/Resources/contao/dca/tl_calendar_events_member.php +++ b/contao/dca/tl_calendar_events_member.php @@ -12,10 +12,10 @@ * @link https://github.com/markocupic/calendar-event-booking-bundle */ -use Markocupic\CalendarEventBookingBundle\Contao\Dca\TlCalendarEventsMember; -use Ramsey\Uuid\Uuid; use Contao\DataContainer; use Contao\DC_Table; +use Markocupic\CalendarEventBookingBundle\DataContainer\CalendarEventsMember; +use Ramsey\Uuid\Uuid; $GLOBALS['TL_DCA']['tl_calendar_events_member'] = [ // Config @@ -26,8 +26,8 @@ 'onsubmit_callback' => [], 'onload_callback' => [ [ - TlCalendarEventsMember::class, - 'downloadRegistrationList', + CalendarEventsMember::class, + 'downloadEventRegistrations', ], ], 'ondelete_callback' => [], @@ -63,10 +63,10 @@ 'class' => 'header_edit_all', 'attributes' => 'onclick="Backend.getScrollOffset()" accesskey="e"', ], - 'downloadRegistrationList' => [ - 'label' => &$GLOBALS['TL_LANG']['tl_calendar_events_member']['downloadRegistrationList'], - 'href' => 'action=downloadRegistrationList', - 'class' => 'download_booking_list', + 'downloadEventRegistrations' => [ + 'label' => &$GLOBALS['TL_LANG']['tl_calendar_events_member']['downloadEventRegistrations'], + 'href' => 'action=downloadEventRegistrations', + 'class' => 'download_registration_list', 'icon' => 'bundles/markocupiccalendareventbooking/icons/excel.png', 'attributes' => 'onclick="Backend.getScrollOffset()" accesskey="e"', ], diff --git a/src/Resources/contao/dca/tl_form.php b/contao/dca/tl_form.php similarity index 100% rename from src/Resources/contao/dca/tl_form.php rename to contao/dca/tl_form.php diff --git a/src/Resources/contao/dca/tl_module.php b/contao/dca/tl_module.php similarity index 96% rename from src/Resources/contao/dca/tl_module.php rename to contao/dca/tl_module.php index 2d7f3bd..ef8c78d 100644 --- a/src/Resources/contao/dca/tl_module.php +++ b/contao/dca/tl_module.php @@ -15,6 +15,7 @@ use Markocupic\CalendarEventBookingBundle\Controller\FrontendModule\CalendarEventBookingEventBookingModuleController; use Markocupic\CalendarEventBookingBundle\Controller\FrontendModule\CalendarEventBookingMemberListModuleController; use Markocupic\CalendarEventBookingBundle\Controller\FrontendModule\CalendarEventBookingUnsubscribeFromEventModuleController; +use Markocupic\CalendarEventBookingBundle\DataContainer\Module; // Palettes $GLOBALS['TL_DCA']['tl_module']['palettes'][CalendarEventBookingEventBookingModuleController::TYPE] = '{title_legend},name,headline,type;{form_legend},form;{notification_center_legend:hide},enableNotificationCenter;{template_legend:hide},customTpl;{protected_legend:hide},protected;{expert_legend:hide},guests,cssID'; @@ -46,7 +47,7 @@ 'exclude' => true, 'inputType' => 'select', 'options_callback' => [ - 'Markocupic\CalendarEventBookingBundle\Contao\Dca\TlModule', + Module::class, 'getCalendarEventBookingMemberListPartialTemplate', ], 'sql' => "varchar(128) NOT NULL default 'calendar_event_booking_member_list_partial'", diff --git a/src/Resources/contao/languages/de/default.xlf b/contao/languages/de/default.xlf similarity index 93% rename from src/Resources/contao/languages/de/default.xlf rename to contao/languages/de/default.xlf index 1dfb7f2..61f59c9 100644 --- a/src/Resources/contao/languages/de/default.xlf +++ b/contao/languages/de/default.xlf @@ -43,8 +43,8 @@ Ihre Anmeldung zu Event "%s" wurde erfolgreich storniert. - Dear &lt;span class="event-member-name">%s %s&lt;/span>&lt;br>Are you sure you want to unsubscribe from event "%s"? - Liebe(r) &lt;span class="event-member-name">%s %s&lt;/span>{{br}}Möchten Sie Ihre Anmeldung zu Event "%s" stornieren? + %s %s{{br}}Are you sure you want to unsubscribe from event "%s"?]]>> + %s %s{{br}}Möchten Sie Ihre Anmeldung zu Event "%s" stornieren?]]> Unsubscribe from event diff --git a/src/Resources/contao/languages/de/modules.xlf b/contao/languages/de/modules.xlf similarity index 100% rename from src/Resources/contao/languages/de/modules.xlf rename to contao/languages/de/modules.xlf diff --git a/src/Resources/contao/languages/de/tl_calendar.xlf b/contao/languages/de/tl_calendar.xlf similarity index 100% rename from src/Resources/contao/languages/de/tl_calendar.xlf rename to contao/languages/de/tl_calendar.xlf diff --git a/src/Resources/contao/languages/de/tl_calendar_events.xlf b/contao/languages/de/tl_calendar_events.xlf similarity index 100% rename from src/Resources/contao/languages/de/tl_calendar_events.xlf rename to contao/languages/de/tl_calendar_events.xlf diff --git a/src/Resources/contao/languages/de/tl_calendar_events_member.xlf b/contao/languages/de/tl_calendar_events_member.xlf similarity index 86% rename from src/Resources/contao/languages/de/tl_calendar_events_member.xlf rename to contao/languages/de/tl_calendar_events_member.xlf index 215227f..24f270a 100644 --- a/src/Resources/contao/languages/de/tl_calendar_events_member.xlf +++ b/contao/languages/de/tl_calendar_events_member.xlf @@ -7,40 +7,48 @@ Neu - Add a new member. - Neuen Teilnehmer anlegen. + Add a new registration. + Neuen Registrierung anlegen. - - Memberlist - Teilnehmerliste + + Event registrations + Registrierungen - - Download memberlist. - Teilnehmerliste herunterladen. + + Download event registrations. + Event Registrierungen herunterladen. Edit Bearbeiten - Edit member with ID %s. - Teilnehmer mit ID %s bearbeiten. + Edit registration with ID %s. + Registrierung mit ID %s bearbeiten. + + + Copy + Kopieren + + + Copy registration with ID %s. + Registrierung mit ID %s kopieren. Delete Löschen - Delete member with ID %s. - Teilnehmer mit ID %s löschen. + Delete registration with ID %s. + Registrierung mit ID %s löschen. Show Anzeigen - Show member with ID %s. - Teilnehmer mit ID %s anzeigen. + Show registration with ID %s. + Registrierung mit ID %s anzeigen. Mr diff --git a/src/Resources/contao/languages/de/tl_form.xlf b/contao/languages/de/tl_form.xlf similarity index 100% rename from src/Resources/contao/languages/de/tl_form.xlf rename to contao/languages/de/tl_form.xlf diff --git a/src/Resources/contao/languages/de/tl_module.xlf b/contao/languages/de/tl_module.xlf similarity index 100% rename from src/Resources/contao/languages/de/tl_module.xlf rename to contao/languages/de/tl_module.xlf diff --git a/src/Resources/contao/languages/de/tl_nc_notification.xlf b/contao/languages/de/tl_nc_notification.xlf similarity index 100% rename from src/Resources/contao/languages/de/tl_nc_notification.xlf rename to contao/languages/de/tl_nc_notification.xlf diff --git a/src/Resources/contao/languages/en/default.php b/contao/languages/en/default.php similarity index 100% rename from src/Resources/contao/languages/en/default.php rename to contao/languages/en/default.php diff --git a/src/Resources/contao/languages/en/default.xlf b/contao/languages/en/default.xlf similarity index 95% rename from src/Resources/contao/languages/en/default.xlf rename to contao/languages/en/default.xlf index aaae36f..3ea4563 100644 --- a/src/Resources/contao/languages/en/default.xlf +++ b/contao/languages/en/default.xlf @@ -33,7 +33,7 @@ You've been successfully unsubscribed from event "%s". - Dear &lt;span class="event-member-name">%s %s&lt;/span>&lt;br>Are you sure you want to unsubscribe from event "%s"? + %s %s{{br}}Are you sure you want to unsubscribe from event "%s"?]]>> Unsubscribe from event diff --git a/src/Resources/contao/languages/en/modules.php b/contao/languages/en/modules.php similarity index 100% rename from src/Resources/contao/languages/en/modules.php rename to contao/languages/en/modules.php diff --git a/src/Resources/contao/languages/en/modules.xlf b/contao/languages/en/modules.xlf similarity index 100% rename from src/Resources/contao/languages/en/modules.xlf rename to contao/languages/en/modules.xlf diff --git a/src/Resources/contao/languages/en/tl_calendar.php b/contao/languages/en/tl_calendar.php similarity index 100% rename from src/Resources/contao/languages/en/tl_calendar.php rename to contao/languages/en/tl_calendar.php diff --git a/src/Resources/contao/languages/en/tl_calendar.xlf b/contao/languages/en/tl_calendar.xlf similarity index 100% rename from src/Resources/contao/languages/en/tl_calendar.xlf rename to contao/languages/en/tl_calendar.xlf diff --git a/src/Resources/contao/languages/en/tl_calendar_events.php b/contao/languages/en/tl_calendar_events.php similarity index 100% rename from src/Resources/contao/languages/en/tl_calendar_events.php rename to contao/languages/en/tl_calendar_events.php diff --git a/src/Resources/contao/languages/en/tl_calendar_events.xlf b/contao/languages/en/tl_calendar_events.xlf similarity index 100% rename from src/Resources/contao/languages/en/tl_calendar_events.xlf rename to contao/languages/en/tl_calendar_events.xlf diff --git a/src/Resources/contao/languages/en/tl_calendar_events_member.php b/contao/languages/en/tl_calendar_events_member.php similarity index 87% rename from src/Resources/contao/languages/en/tl_calendar_events_member.php rename to contao/languages/en/tl_calendar_events_member.php index 7df4a74..4f38969 100644 --- a/src/Resources/contao/languages/en/tl_calendar_events_member.php +++ b/contao/languages/en/tl_calendar_events_member.php @@ -13,13 +13,14 @@ */ // Global operations -$GLOBALS['TL_LANG']['tl_calendar_events_member']['new'] = ['New', 'Add a new member.']; -$GLOBALS['TL_LANG']['tl_calendar_events_member']['downloadRegistrationList'] = ['Memberlist', 'Download memberlist.']; +$GLOBALS['TL_LANG']['tl_calendar_events_member']['new'] = ['New', 'Add a new registration.']; +$GLOBALS['TL_LANG']['tl_calendar_events_member']['downloadEventRegistrations'] = ['Event registrations', 'Download event registrations.']; // Operations -$GLOBALS['TL_LANG']['tl_calendar_events_member']['edit'] = ['Edit', 'Edit member with ID %s.']; -$GLOBALS['TL_LANG']['tl_calendar_events_member']['delete'] = ['Delete', 'Delete member with ID %s.']; -$GLOBALS['TL_LANG']['tl_calendar_events_member']['show'] = ['Show', 'Show member with ID %s.']; +$GLOBALS['TL_LANG']['tl_calendar_events_member']['edit'] = ['Edit', 'Edit registration with ID %s.']; +$GLOBALS['TL_LANG']['tl_calendar_events_member']['copy'] = ['Copy', 'Copy registration with ID %s.']; +$GLOBALS['TL_LANG']['tl_calendar_events_member']['delete'] = ['Delete', 'Delete registration with ID %s.']; +$GLOBALS['TL_LANG']['tl_calendar_events_member']['show'] = ['Show', 'Show registration with ID %s.']; // References $GLOBALS['TL_LANG']['tl_calendar_events_member']['salutation_male'] = 'Mr'; diff --git a/src/Resources/contao/languages/en/tl_calendar_events_member.xlf b/contao/languages/en/tl_calendar_events_member.xlf similarity index 88% rename from src/Resources/contao/languages/en/tl_calendar_events_member.xlf rename to contao/languages/en/tl_calendar_events_member.xlf index 70e4c80..d6533e4 100644 --- a/src/Resources/contao/languages/en/tl_calendar_events_member.xlf +++ b/contao/languages/en/tl_calendar_events_member.xlf @@ -6,31 +6,37 @@ New - Add a new member. + Add a new registration. - - Memberlist + + Event registrations - - Download memberlist. + + Download event registrations. Edit - Edit member with ID %s. + Edit registration with ID %s. + + + Copy + + + Copy registration with ID %s. Delete - Delete member with ID %s. + Delete registration with ID %s. Show - Show member with ID %s. + Show registration with ID %s. Mr diff --git a/src/Resources/contao/languages/en/tl_form.php b/contao/languages/en/tl_form.php similarity index 100% rename from src/Resources/contao/languages/en/tl_form.php rename to contao/languages/en/tl_form.php diff --git a/src/Resources/contao/languages/en/tl_form.xlf b/contao/languages/en/tl_form.xlf similarity index 100% rename from src/Resources/contao/languages/en/tl_form.xlf rename to contao/languages/en/tl_form.xlf diff --git a/src/Resources/contao/languages/en/tl_module.php b/contao/languages/en/tl_module.php similarity index 100% rename from src/Resources/contao/languages/en/tl_module.php rename to contao/languages/en/tl_module.php diff --git a/src/Resources/contao/languages/en/tl_module.xlf b/contao/languages/en/tl_module.xlf similarity index 100% rename from src/Resources/contao/languages/en/tl_module.xlf rename to contao/languages/en/tl_module.xlf diff --git a/src/Resources/contao/languages/en/tl_nc_notification.php b/contao/languages/en/tl_nc_notification.php similarity index 100% rename from src/Resources/contao/languages/en/tl_nc_notification.php rename to contao/languages/en/tl_nc_notification.php diff --git a/src/Resources/contao/languages/en/tl_nc_notification.xlf b/contao/languages/en/tl_nc_notification.xlf similarity index 100% rename from src/Resources/contao/languages/en/tl_nc_notification.xlf rename to contao/languages/en/tl_nc_notification.xlf diff --git a/src/Resources/contao/templates/modules/mod_calendar_event_booking_event_booking_module.html5 b/contao/templates/modules/mod_calendar_event_booking_event_booking_module.html5 similarity index 100% rename from src/Resources/contao/templates/modules/mod_calendar_event_booking_event_booking_module.html5 rename to contao/templates/modules/mod_calendar_event_booking_event_booking_module.html5 diff --git a/src/Resources/contao/templates/modules/mod_calendar_event_booking_member_list_module.html5 b/contao/templates/modules/mod_calendar_event_booking_member_list_module.html5 similarity index 100% rename from src/Resources/contao/templates/modules/mod_calendar_event_booking_member_list_module.html5 rename to contao/templates/modules/mod_calendar_event_booking_member_list_module.html5 diff --git a/src/Resources/contao/templates/modules/mod_calendar_event_booking_unsubscribe_from_event_module.html5 b/contao/templates/modules/mod_calendar_event_booking_unsubscribe_from_event_module.html5 similarity index 100% rename from src/Resources/contao/templates/modules/mod_calendar_event_booking_unsubscribe_from_event_module.html5 rename to contao/templates/modules/mod_calendar_event_booking_unsubscribe_from_event_module.html5 diff --git a/src/Resources/contao/templates/partials/calendar_event_booking_member_list_partial.html5 b/contao/templates/partials/calendar_event_booking_member_list_partial.html5 similarity index 100% rename from src/Resources/contao/templates/partials/calendar_event_booking_member_list_partial.html5 rename to contao/templates/partials/calendar_event_booking_member_list_partial.html5 diff --git a/public/css/be_stylesheet.css b/public/css/be_stylesheet.css new file mode 100644 index 0000000..66f1ace --- /dev/null +++ b/public/css/be_stylesheet.css @@ -0,0 +1,4 @@ +#tl_buttons .header_icon.download_registration_list { + padding-left: 42px; + margin-left: 1px; +} diff --git a/src/Resources/public/icons/excel.png b/public/icons/excel.png similarity index 100% rename from src/Resources/public/icons/excel.png rename to public/icons/excel.png diff --git a/src/Resources/public/icons/group.png b/public/icons/group.png similarity index 100% rename from src/Resources/public/icons/group.png rename to public/icons/group.png diff --git a/src/Resources/sql/form-generator.yaml b/sql/form-generator.yaml similarity index 100% rename from src/Resources/sql/form-generator.yaml rename to sql/form-generator.yaml diff --git a/src/ContaoManager/Plugin.php b/src/ContaoManager/Plugin.php index 2ca87fa..d85d422 100644 --- a/src/ContaoManager/Plugin.php +++ b/src/ContaoManager/Plugin.php @@ -26,7 +26,7 @@ class Plugin implements BundlePluginInterface /** * {@inheritdoc} */ - public function getBundles(ParserInterface $parser) + public function getBundles(ParserInterface $parser): array { return [ BundleConfig::create(MarkocupicCalendarEventBookingBundle::class) diff --git a/src/Controller/FrontendModule/CalendarEventBookingUnsubscribeFromEventModuleController.php b/src/Controller/FrontendModule/CalendarEventBookingUnsubscribeFromEventModuleController.php index 349a2d8..8e450cd 100644 --- a/src/Controller/FrontendModule/CalendarEventBookingUnsubscribeFromEventModuleController.php +++ b/src/Controller/FrontendModule/CalendarEventBookingUnsubscribeFromEventModuleController.php @@ -58,12 +58,6 @@ public function __construct(ContaoFramework $framework, ScopeMatcher $scopeMatch } /** - * @param Request $request - * @param ModuleModel $model - * @param string $section - * @param array|null $classes - * @param PageModel|null $page - * @return Response * @throws \Exception */ public function __invoke(Request $request, ModuleModel $model, string $section, array $classes = null, PageModel $page = null): Response @@ -76,26 +70,30 @@ public function __invoke(Request $request, ModuleModel $model, string $section, $calendarEventsMemberModelAdapter = $this->framework->getAdapter(CalendarEventsMemberModel::class); $controllerAdapter = $this->framework->getAdapter(Controller::class); - $token = $request->query->get('bookingToken', false); - - if ($token && 'true' !== $request->query->get('unsubscribedFromEvent')) { - $translator = $this->translator; + if ('true' !== $request->query->get('has_unsubscribed')) { + $token = $request->query->get('bookingToken', false); $this->objEventMember = $calendarEventsMemberModelAdapter->findOneByBookingToken($token); - if (null === $this->objEventMember) { - $this->addError($translator->trans('ERR.invalidBookingToken', [], 'contao_default')); + if (!$token) { + $this->addError($this->translator->trans('ERR.invalidBookingToken', [], 'contao_default')); + } + + if (!$this->hasError) { + if (null === $this->objEventMember) { + $this->addError($this->translator->trans('ERR.invalidBookingToken', [], 'contao_default')); + } } if (!$this->hasError) { if (null === ($this->objEvent = $this->objEventMember->getRelated('pid'))) { - $this->addError($translator->trans('ERR.eventNotFound', [], 'contao_default')); + $this->addError($this->translator->trans('ERR.eventNotFound', [], 'contao_default')); } } if (!$this->hasError) { if (!$this->objEvent->enableDeregistration) { - $this->addError($translator->trans('ERR.eventUnsubscriptionNotAllowed', [$this->objEvent->title], 'contao_default')); + $this->addError($this->translator->trans('ERR.eventUnsubscriptionNotAllowed', [$this->objEvent->title], 'contao_default')); } } @@ -118,18 +116,18 @@ public function __invoke(Request $request, ModuleModel $model, string $section, } if ($blnLimitExpired) { - $this->addError($translator->trans('ERR.unsubscriptionLimitExpired', [$this->objEvent->title], 'contao_default')); + $this->addError($this->translator->trans('ERR.unsubscriptionLimitExpired', [$this->objEvent->title], 'contao_default')); } } if (!$this->hasError) { - // Delete entry and redirect + // Delete data record and redirect if ('tl_unsubscribe_from_event' === $request->request->get('FORM_SUBMIT')) { $this->notify($this->objEventMember, $this->objEvent, $model); $this->objEventMember->delete(); $href = sprintf( - '%s?unsubscribedFromEvent=true&eid=%s', + '%s?has_unsubscribed=true&eid=%s', $page->getFrontendUrl(), $this->objEvent->id ); @@ -139,7 +137,7 @@ public function __invoke(Request $request, ModuleModel $model, string $section, } } - if ('true' === $request->query->get('unsubscribedFromEvent')) { + if ('true' === $request->query->get('has_unsubscribed')) { $this->blnHasUnsubscribed = true; } } diff --git a/src/Contao/Dca/TlCalendarEvents.php b/src/DataContainer/CalendarEvents.php similarity index 97% rename from src/Contao/Dca/TlCalendarEvents.php rename to src/DataContainer/CalendarEvents.php index a0aa194..34b9e92 100644 --- a/src/Contao/Dca/TlCalendarEvents.php +++ b/src/DataContainer/CalendarEvents.php @@ -12,7 +12,7 @@ * @link https://github.com/markocupic/calendar-event-booking-bundle */ -namespace Markocupic\CalendarEventBookingBundle\Contao\Dca; +namespace Markocupic\CalendarEventBookingBundle\DataContainer; use Contao\Calendar; use Contao\Config; @@ -22,7 +22,7 @@ use Contao\Message; use Markocupic\CalendarEventBookingBundle\Model\CalendarEventsMemberModel; -class TlCalendarEvents +class CalendarEvents { /** * Adjust bookingStartDate and bookingStartDate. @@ -41,7 +41,7 @@ public function adjustBookingDate(DataContainer $dc): void if (!empty((int) $dc->activeRecord->bookingEndDate)) { if ($dc->activeRecord->bookingEndDate < $dc->activeRecord->bookingStartDate) { $arrSet['bookingEndDate'] = $dc->activeRecord->bookingStartDate; - Message::addInfo($GLOBALS['TL_LANG']['MSC']['adjustedBookingPeriodEndtime'], TL_MODE); + Message::addInfo($GLOBALS['TL_LANG']['MSC']['adjustedBookingPeriodEndtime']); } } diff --git a/src/Contao/Dca/TlCalendarEventsMember.php b/src/DataContainer/CalendarEventsMember.php similarity index 84% rename from src/Contao/Dca/TlCalendarEventsMember.php rename to src/DataContainer/CalendarEventsMember.php index e9790bd..55c2ff2 100644 --- a/src/Contao/Dca/TlCalendarEventsMember.php +++ b/src/DataContainer/CalendarEventsMember.php @@ -12,18 +12,15 @@ * @link https://github.com/markocupic/calendar-event-booking-bundle */ -namespace Markocupic\CalendarEventBookingBundle\Contao\Dca; +namespace Markocupic\CalendarEventBookingBundle\DataContainer; use Contao\Input; use Markocupic\ExportTable\Config\Config; use Markocupic\ExportTable\Export\ExportTable; -class TlCalendarEventsMember +class CalendarEventsMember { - /** - * @var ExportTable - */ - private $exportTable; + private ExportTable $exportTable; public function __construct(ExportTable $exportTable) { @@ -33,10 +30,10 @@ public function __construct(ExportTable $exportTable) /** * @throws \Exception */ - public function downloadRegistrationList(): void + public function downloadEventRegistrations(): void { // Download the registration list as a csv spreadsheet - if ('downloadRegistrationList' === Input::get('action')) { + if ('downloadEventRegistrations' === Input::get('action')) { // Add fields $arrSkip = ['bookingToken']; $arrSelectedFields = []; diff --git a/src/Contao/Dca/TlModule.php b/src/DataContainer/Module.php similarity index 82% rename from src/Contao/Dca/TlModule.php rename to src/DataContainer/Module.php index ef849c3..b0bb2c7 100644 --- a/src/Contao/Dca/TlModule.php +++ b/src/DataContainer/Module.php @@ -12,21 +12,15 @@ * @link https://github.com/markocupic/calendar-event-booking-bundle */ -namespace Markocupic\CalendarEventBookingBundle\Contao\Dca; +namespace Markocupic\CalendarEventBookingBundle\DataContainer; use Contao\Controller; use Contao\CoreBundle\Framework\ContaoFramework; -class TlModule +class Module { - /** - * @var ContaoFramework - */ - private $framework; - - /** - * TlModule constructor. - */ + private ContaoFramework $framework; + public function __construct(ContaoFramework $framework) { $this->framework = $framework; diff --git a/src/DependencyInjection/MarkocupicCalendarEventBookingExtension.php b/src/DependencyInjection/MarkocupicCalendarEventBookingExtension.php index 758dd87..4a0be66 100644 --- a/src/DependencyInjection/MarkocupicCalendarEventBookingExtension.php +++ b/src/DependencyInjection/MarkocupicCalendarEventBookingExtension.php @@ -28,10 +28,9 @@ public function load(array $mergedConfig, ContainerBuilder $container): void { $loader = new YamlFileLoader( $container, - new FileLocator(__DIR__.'/../Resources/config') + new FileLocator(__DIR__.'/../../config') ); - $loader->load('parameters.yml'); $loader->load('services.yml'); } } diff --git a/src/EventListener/DataContainer/ContentOnLoadCallbackListener.php b/src/EventListener/DataContainer/ContentOnLoadCallbackListener.php new file mode 100644 index 0000000..7714d03 --- /dev/null +++ b/src/EventListener/DataContainer/ContentOnLoadCallbackListener.php @@ -0,0 +1,17 @@ +framework->initialize(); - $arrYaml = Yaml::parseFile($this->projectDir.'/vendor/markocupic/calendar-event-booking-bundle/src/Resources/sql/form-generator.yaml'); + $arrYaml = Yaml::parseFile($this->projectDir.'/vendor/markocupic/calendar-event-booking-bundle/sql/form-generator.yaml'); $arrForm = $arrYaml['form']; $arrFormFields = $arrYaml['form']['form_fields']; diff --git a/src/Migration/Version500/RenameFrontendModuleType.php b/src/Migration/Version500/RenameFrontendModuleType.php index 750628b..4acb72f 100644 --- a/src/Migration/Version500/RenameFrontendModuleType.php +++ b/src/Migration/Version500/RenameFrontendModuleType.php @@ -24,10 +24,7 @@ class RenameFrontendModuleType extends AbstractMigration { - /** - * @var Connection - */ - private $connection; + private Connection $connection; public function __construct(Connection $connection) { diff --git a/src/Resources/config/parameters.yml b/src/Resources/config/parameters.yml deleted file mode 100644 index e69de29..0000000 diff --git a/src/Resources/public/css/be_stylesheet.css b/src/Resources/public/css/be_stylesheet.css deleted file mode 100644 index 3a4aaa7..0000000 --- a/src/Resources/public/css/be_stylesheet.css +++ /dev/null @@ -1,4 +0,0 @@ -#tl_buttons .header_icon.download_booking_list { - padding-left: 42px; - margin-left: 1px; -} \ No newline at end of file