Skip to content

Releases: remp2020/crm-payments-module

1.2.0

30 Jun 05:57
Compare
Choose a tag to compare
  • BREAKING: Changed signature of Crm\PaymentsModule\Gateways\PaymentInterface, added new method public function process($allowRedirect)`. remp/crm#2443
    • If you implement this interface directly and not use Crm\PaymentsModule\Gateways\GatewayAbstract to extend your gateways, implement this method based on the GatewayAbstract implementation and include your necessary changes.
  • IMPORTANT: Changed ROW_FORMAT of payment_meta table to DYNAMIC row format to prevent the hit of index storage limit. Be aware that migration can run few minutes.
    • The REDUNDANT and COMPACT row formats support a maximum index key prefix length of 767 bytes whereas DYNAMIC and COMPRESSED row formats support an index key prefix length of 3072 bytes. For more details see Mysql documentation
  • Fixed deprecation error raised after latte/latte updated to 2.11.4 - translation strings with variable in name should be wrapped in double quotes. remp/crm#2474
  • Changed collation payment_meta to utf8mb4_unicode_ci. remp/helpdesk#1290
  • Fixed graphs on dashboard to consider date range filter. remp/crm#2450
  • Fixed the status change of payment from refunded to paid by mail processor. Now payment remains in same state and already_refunded state is returned. remp/crm#1648
  • Fixed possibly ambiguous query in the retention analysis. remp/crm#2495
  • Fixed CSOB mail parser after bank fixed typo in mail content. (Keeping both variants just to be sure). remp/helpdesk#1334

1.1.0

02 Jun 06:42
Compare
Choose a tag to compare
  • DEPRECATION: Command payments:cancel_authorization is deprecated - authorization payments are automatically canceled by bank.
  • Fixed javascript in AddressWidget. If address is stored, we should keep that info in form header (do not hide it; load it after reload). remp/helpdesk#1201 remp/crm#2370
    • This affects all additional address forms attached to widget place payment.address on payment success page (eg. invoice, print...).
  • Added support for CSOB payment status and card expiration checking. remp/novydenik#912
  • Added payments.frontend.recurrent_stop.head widget placeholder in Payments:recurrentStop. remp/crm#2369

1.0.1

31 Mar 18:19
Compare
Choose a tag to compare
  • Fixed access to missing constant reported by static analysis.

1.0.0

31 Mar 08:43
Compare
Choose a tag to compare

Changelog

  • Added average month payment sum caching. remp/crm#1120
    • Changed TotalUserPayments widget to load average month payment sum from cache.
  • Fixed possibly ambiguous query in Payments listing in CRM admin when advanced filter with data providers is used. remp/crm#2283
  • Changed translation files. remp/crm#2276
    • Fix EOF newlines.
    • Use double quotes around one single quote.
    • Switch tabs to 4 spaces. Weblate can parse only YAML format (doesn't support tabs).
    • Change extension from NEON to YML.
  • Added support to flag recurrent payment gateway as unstoppable to prevent system/users stopping recurrent payments made by these gateways. #18
  • Changed API handlers (non breaking). remp/crm#2342
    • Changed return type of handle() from Crm\ApiModule\Response\ApiResponseInterface to Tomaj\NetteApi\Response\ResponseInterface.
    • Changed deprecated Crm\ApiModule\Api\JsonResponse to Tomaj\NetteApi\Response\JsonApiResponse.
  • Added support for changing subscription type of existing payments in form state. remp/crm#2217

Nette 3.0

  • Changed Compiler::loadDefinitions() (deprecated) to CompilerExtension->loadDefinitionsFromConfig(). remp/crm#1979
  • Changed nette/forms method from setAttribute() to setHtmlAttribute(). remp/crm#1979
  • Updated conditions expecting false from Selection::fetch(). Null is returned instead of false after update to Nette 3.0. remp/crm#2142

Nette 3.1

  • Changed the way how routes are added to router. From array $router[] = new Route() to method call $router->addRoute(). remp/crm#1979
  • Changed deprecated Nette\Application\IResponse to Nette\Application\Response. remp/crm#1979
  • Changed deprecated Nette\Caching\IStorage to Nette\Caching\Storage. remp/crm#1979
  • Changed deprecated Nette\Database\Context to Nette\Database\Explorer. remp/crm#1979
  • Changed deprecated Nette\Database classes. Nette\Database\IRow and Nette\Database\Table\IRow are deprecated. Using Nette\Database\Table\ActiveRow instead. remp/crm#1979
  • Changed deprecated Nette\Localization\ITranslator to Nette\Localization\Translator. remp/crm#1979
  • Changed deprecated {ifCurrent 'link'} latte tag to {isLinkCurrent('link')} latte function. remp/crm#1979
  • Changed DataRow (which extended deprecated Nette\Database\Table\IRow) to ActiveRowFactory (which returns ActiveRow. remp/crm#1979
  • Changed injecting of \Crm\ApplicationModule\Graphs\GraphData to automatic DI instead of manual load. remp/crm#1979

0.38.0

11 Feb 23:11
Compare
Choose a tag to compare
  • Added GATEWAY_CODE constants to the gateways which didn't already have it to reference the gateways in other modules. remp/crm#2189
  • Added "Has payment item type" criteria to be used in scenarios. remp/crm#2199
  • Added index for sales_funnel_id, status, amount columns in payments table to speed up queries in SalesFunnelsAdmin:default view. remp/crm#2167
  • Fixed directory names to follow PSR-4 standard. Namespaces weren't changed (no breaking change). remp/crm#2228
  • Added index to recurrent_payments.state column to speed up requests to retrieve chargeable payments. #17
  • Added hungarian translations. remp/crm#2255
  • Fixed inconsistency in notifications sending in the case of payment's status change to refunded. remp/crm#2227

0.37.0

09 Dec 21:52
Compare
Choose a tag to compare
  • Fixed link pointing to authorization Payments:Dashboard:detailed in Payments dashboard. remp/crm#1709
    • The authorization rule we checked was incorrect and could lead to link being visible for people without access to the resource. Clicking the link would cause Forbidden error.
  • Added payment.address placeholder for widgets to hold address forms displayed during payment process. remp/novydenik#833
    • The placeholder was added so the payment address forms can be reused across multiple places - payment success, bank transfer info.
  • Added payments.frontend.banktransfer.bottom placeholder for widgets into bank payment info page. remp/novydenik#833
  • Added BeforePaymentBeginEvent event, allowing modifying payment prior processing by payment gateway. A similar event BeforeRecurrentPaymentChargeEvent is added to recurrent charge. remp/crm#2136
  • Added PaymentReturnGatewayDataProviderInterface data provider, giving ability to modify gateway that payment is checked against after its completion. remp/crm#2136

0.36.0

18 Nov 13:41
Compare
Choose a tag to compare
  • Added index for key column in payment_meta table. remp/crm#2088
  • Added foreign key and index for payment_logs.payment_id column. #16

0.35.0: Add settable primary key to CriteriaStorage

25 Oct 12:05
Compare
Choose a tag to compare
  • BREAKING: Bump minimal PHP version to 7.4. remp/crm#2068
  • IMPORTANT: Fixed inability to set charging of recurrent subscription at end of subscription. If subscription_type.recurrent_charge_before was set to 0, it was ignored and global setting was used. remp/crm#2070
    • Check if you have correctly configured subscription_type.recurrent_charge_before on your subscription types:
      • NULL (empty input field in form) will use global setting.
      • 0 (as 0 hours before) will charge recurrent payment at the end of subscription.
  • Changed length of result message stored to recurrent_payments.approval if recurrent payment failed. Logging whole result. In case broken bank API begins returning whole HTML page...
  • Changed use of SegmentFactory to SegmentFactoryInterface. remp/crm#2071

0.34.0

06 Oct 11:19
Compare
Choose a tag to compare
  • BREAKING: Fixed payment_item_meta not being copied for recurrent charges. remp/novydenik#817
    • This is marked as breaking because your implementation could rely on the incorrect behavior. Payment item meta fields are now copied on recurrent charges. Please check your modules and its use of payment_item_meta.
  • Fixed possible issue with items of recurrent payments if VAT of subscription type items changed. Payments would copy items from parent payment with "old" VAT rate instead of using the new one. remp/novydenik#817
  • Fixed saving date of update in PaymentGatewaysRepository->update().
  • Changed command return codes to Symfony's Command return code and added missing commands returns. remp/crm#2007
  • Added returns to PaymentGatewaysRepository->update() and TestOutput class. remp/crm#2007
  • Fixed PaymentsRepository->copyPayment() to copy meta values for each payment item. remp/crm#2013
  • Fixed issue with already sent headers when PaidExtend upgrade redirects user to the payment gateway. remp/crm#2036
  • Added CID filter to the recurrent payments admin listing and fixed minor form UX issues. remp/crm#2050

0.33.0

23 Aug 12:22
Compare
Choose a tag to compare
  • BREAKING: Fixed RecurrentPaymentsRepository->calculateChargeAt(). It will now throw exception if calculated next charge is invalid. remp/crm#1662
  • BREAKING: Fixed RecurrentPaymentsRepository->createFromPayment(). If calculateChargeAt() throws exception, recurrent payment is stopped (by system) instead of creating invalid recurrent. remp/crm#1662
  • Expanded user_agent column (in payments table) string type to 2000 characters. remp/crm#1950