- Added option to replace default
ApiLogHandler
with custom implementation. remp/crm#2992- This can be achieved by replacing
apiLogHandler
Hermes handler service in DI (config.neon
). The new service needs to extend originalCrm\ApiModule\Hermes\ApiLogHandler
class.
- This can be achieved by replacing
- API presenter now emits API response to the
api-log
Hermes event. The response is not being actively stored toapi_logs
DB table by default. remp/crm#2992
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- Fixed duplicated data generation in
UserDataRegistrator::generate
. remp/crm#2973 - Allowed Monolog v2 to be used in the application. remp2020/crm-application-module#9
- Added
LazyEventEmitter
which extendsLeague\Event\Emitter
. remp/crm#2116- Added support for lazy event listener registration.
- Use new
TransformToLazyEventListeners
rector rule to transform event listeners registration to lazy variant in your own modules.
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- Fixed possibility of activation of gifted subscription to inactive account. remp/crm#2947
- Any inactive account gets reactivated when processing activation of gift subscription.
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- Fixed unintentional regeneration of user data in user's admin form even when invoice data weren't changed. remp/crm#2973
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- BREAKING: Refactored payment confirmation commands. remp/crm#2878
- Removed redundant mail downloader classes (
CsobMailDownloader
,SkCsobMailDownloader
,TatraBankaMailDownloader
,TatraBankaStatementMailDownloader
) and moved logic directly to commands. - Abstracted direct dependency on
Tomaj\ImapMailDownloader\Downloader
toImapMailDownloader
. - Replaced direct dependency on
Tomaj\ImapMailDownloader\Downloader
withMailDownloaderInterface
in confirmation commands. - Added option to replace default mail downloader
ImapMailDownloader
(downloader must implement:MailDownloaderInterface
).
- Removed redundant mail downloader classes (
- Changed logging of CID change to only update recurrent payment note if the CID actually changed. remp/crm#2952
- Fixed recurring payment controls in customer zone if the recurrent payment was reactivated. remp/helpdesk#2061
- Fixed behaviour of
PaymentFormFactory::formSucceeded()
when updating payment. IfArrayHash
type is encountered, unset it.PaymentsRepository->update()
cannot store array type into database. remp/crm#2693- Can be utilized by data providers which can store components within containers which results in
$values['container_name']['component_name']
. See details and example inPaymentFormDataProviderInterface
.
- Can be utilized by data providers which can store components within containers which results in
- Added payment's detail page. remp/crm#2487
- Link:
/payments/payments-admin/show/{PAYMENT-ID}
. - Links to new screen added into lists of payments and subscriptions.
- Page contains widget placeholders (
admin.payments.show.*
) which can be used to extended detail as needed.
- Link:
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- BREAKING: Changed
$exportDate
and$address
parameters order inPrintSubscriptionsRepository#add()
function. remp/crm#2792- Order was switched since
$exportDate
default null value was removed (because not providing$exportDate
would previously result in null pointer exception)
- Order was switched since
- Changed column
email
to non-nullable inprint_subscriptions
table. remp/crm#2792- This migration could take a long time, depending on the size of your table. Consider to run it at off-peak times.
- Added required column
country_id
toprint_subscriptions
table, referencing address country. remp/crm#2792- Existing DB entries will be associated with default country ID (see
CountriesRepository::defaultCountry()
) - IMPORTANT: This migration could take a long time, depending on the size of your
print_subscriptions
table. It took ~5 minutes to migrate table with 3.3M rows. Consider to run it at off-peak times.
- Existing DB entries will be associated with default country ID (see
- Fixed the sorting of product tags and failing form in case of editing product with user's assignable tag. remp/crm#2900
- Fixed assigning tags to products in product form. remp/helpdesk#2068
- Added partial german translations for frontend part. remp/crm#2966
- Removed hardcoded string for password checkout form label. remp/crm#2967
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116 - Added Google Tag ecommerce events into cart and checkout page. remp/crm#2882
- For further information about events and Google Tag manager setup see: https://developers.google.com/analytics/devguides/collection/ga4/ecommerce?client_type=gtm.
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- Fixed clickability of IDs in the list of segment values if the segment is for
users
table. remp/crm#2943 - Added link to detail of payment and subscription from segment's data. remp/crm#2398 remp/crm#2487 remp/crm#2943
- BREAKING: Refactored payment confirmation command. remp/crm#2878
- Removed redundant mail downloader class (
SlspMailDownloader
) and moved logic directly to commands. - Replaced direct dependency on
Tomaj\ImapMailDownloader\Downloader
withMailDownloaderInterface
in confirmation command.
- Removed redundant mail downloader class (
- Fixed bug causing inability to save new subscription type. remp/crm#2954
- Fixed
FirstSubscriptionInPeriodCriteria
. When multiple content accesses were used in filter, scenario builder was unable to build SQL. remp/crm#2953 - Added subscription's detail page. remp/crm#2398
- Link:
/subscriptions/subscriptions-admin/show/{SUBSCRIPTION-ID}
. - Links to new screen added into lists of payments and subscriptions.
- Page contains widget placeholders (
admin.subscriptions.show.*
) which can be used to extended detail as needed.
- Link:
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- BREAKING: Refactored payment confirmation command. remp/crm#2878
- Removed redundant mail downloader class (
VubMailDownloader
) and moved logic directly to commands. - Replaced direct dependency on
Tomaj\ImapMailDownloader\Downloader
withMailDownloaderInterface
in confirmation command.
- Removed redundant mail downloader class (
- Changed way of handling upgrade to subscription with sames subscription type price. remp/novydenik#1098
- Allowed
FreeRecurrentUpgrade
for target subscription types with same price. - Disallowed
PaidRecurrentUpgrade
for target subscription types with same price.
- Allowed
- Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116
- Fixed seeder issue causing seeding crash. remp/crm#2955
- Added two new API endpoints
/api/v2/users/set-email-validated
and/api/v2/users/set-email-invalidated
. remp/remp#1026 - Changed the registration of events - module now uses
LazyEventEmitter
which supports lazy event listeners registration. remp/crm#2116