Changelog - CRM 2.7
The format is based on Keep a Changelog and this project adheres to Semantic Versioning. Instead of change type headers, we use module names.
- Added option to propagate flatpickr
allowInvalidPreload config through
flatpickr_allow_invalid_preload HTML attribute. remp/crm#2888
- IMPORTANT: Added
application:bigint_migration_cleanup command, which drops left-over tables, after migration to bigint for
api_logs tables. remp/crm#2591
- It’s recommended to run this command at least 2 weeks after migrating (to preserve backup data, if some issue emerges) after successful migration to drop left-over tables.
- Added support for select boxes to application config forms. remp/crm#2799
- Fixed missing where condition in Measurements’
*Scale classes. remp/crm#2864
- Where condition can be set with
- Fixed null keys when fetching aggregated measurement group values. Display
system.not_available (N/A) instead of empty string. remp/crm#2864
- Fixed possible presence of port in the
Crm\ApplicationModule\Request::getDomain return value. remp2020/crm-application-module#8
- Fixed coupon filter for
type column. Lowercasing searched type and types returned from database. Coupon types
Example should be grouped together. remp/crm#2877
- Added validation rule to item
price field in
RequestForm. Price has to be positive numeric value with max. 2 decimal places. remp/crm#2817
- BREAKING: Changed
InvoicesRepository::paymentInInvoiceablePeriod from static to instance method. remp/crm#2799
- Added option to configure how long after purchase (or end of the month) should be generation of payment’s invoice allowed. remp/crm#2799
- Until now invoice could be generated 15 days after purchase date. This behavior is kept (no breaking change) by presetting this config to “15 days after purchase date”.
- See CRM Admin -> Settings -> Invoices; option “Invoice generation - limit related to” (
generate_invoice_limit_from) and “Invoice generation - time restriction (in days)” (
- IMPORTANT: This config is restricted: If number of days is bigger than 15, system requires you to enable config “Generate an invoice number for every paid payment” (
- Added configurable fast charge threshold (README). Default setting is kept unchanged (1 day). remp/crm#2842
- Added widget placeholders for recurrent payment actions into main recurrent payments listing and user detail recurrent payment listing. remp/crm#2867
- You can now use
payments.admin.user_payments.listing.recurrent.actions to attach your own custom actions to recurrent payments listing in admin.
- Added widget placeholder for payment sum in payments admin listings (main listing and user detail). remp/crm#2874
- You can now use
payments.admin.listing.sum to attach your own additional information/links to the payment sum.
- Fixed broken subscription type form change in admin detail of a payment (available only in
form state). remp/helpdesk#1956
PreNotificationEventHandler which adds list of payment items to notification params so they can be listed in email. remp/crm#2812
- Usage in Mailer template:
- Removed requirement to provide
OrdersRepository::update() when updating order. remp/crm#2880
- Changed UI of admin component to manage newsletters in user detail page to hide unsubscribed newsletters by default. remp/crm#2883
- Fixed incorrect state of admin component to manage newsletters after submission (missing times, showing state as it was submitted). remp/crm#2883
- Fixed newsletter subscription not correctly propagating to Mailer if the user/email records weren’t present in Mailer yet. remp/crm#2883
prepaid (eg. Google Play / Apple Appstore) payments into sales funnel’s graphs. These are linked through
sales_funnel_id to funnel and should be part of statistics. remp/crm#2858
- Affected graphs: “Items bought” (
SubscriptionsGraph), “Ratio of recurrent and non-recurrent payments” (
RecurrentAndNotRecurrentPaymentsGraph), “Payments by payment gateway” (
- BREAKING: Class
Crm\SubscriptionsModule\Repository\SubscriptionTypeContentAccess was renamed to
- If you reference this class in your modules, please update the referenced class.
- Name of the DI service was also renamed from
- DEPRECATED: Deprecated
subscription_type table columns originally used for content access definition (
- Use defined records from the
content_access table and links from
- DEPRECATED: Deprecated method
Crm\SubscriptionsModule\Repository\SubscriptionTypesRepository::getPrintSubscriptionTypes in favor of
- Added few missing CZ translations. remp2020/crm-subscriptions-module#11
- Added new events in the subscription type life-cycle scenario. remp/crm#2875
Crm\SubscriptionsModule\Events\SubscriptionTypeCreatedEvent emitted when new subscription type is created.
Crm\SubscriptionsModule\Events\SubscriptionTypeUpdatedEvent emitted when subscription type is updated.
Crm\SubscriptionsModule\Events\ContentAccessAssignedEvent emitted when content access is assigned to the subscription type. Event is emitted for each assigned content access separately.
Crm\SubscriptionsModule\Events\ContentAccessUnassignedEvent emitted when content access is unassigned from the subscription type. Event is emitted for each unassigned content access separately.
- Fixed handling of redirect url returned from payment gateway in
- DEPRECATED: Deprecated
users.last_sign_in_ip columns. remp/crm#2871
- The columns hold information about the second last sign in. The last (current) sign in is kept in
current_sign_in_ip. Since the actual use of deprecated columns is highly unlikely, we don’t provide an out-of-the-box alternate way to preserve them.
- Fixed the information displayed in the “Last login” box of the user’s detail page in the admin. remp/crm#2871
- System previously displayed second last login information, not the last one.
- Added new graph to user stats screen which shows registration through sales funnels. remp/crm#2864
- Replaced use of
SegmentFactoryInterface in the
user:reconstruct_user_data command. remp2020/crm-users-module#19