CartThrob 9 documentation for ExpressionEngine commerce teams Visit CartThrob.com
CartThrob.com

Changelog

Version 5.1.0

Released February 22, 2024

5.1.0 focused on improving Control Panel reliability, adding extension hooks, and aligning Subscriptions with newer CartThrob platform changes.

Added

  • Added missing modified date handling when canceling subscriptions (#88)
  • Added clearer CP alerts when deleting objects (#59)
  • Added Subscriptions to CartThrob menu navigation (#84)
  • Added CartThrob 8.x extension hook compatibility (#94)
  • Added extension hooks around subscription cancellation flow (#99)

Fixed

  • Fixed subscription end-date calculation edge cases (#78, #77)
  • Fixed canceled subscriptions not updating modified column (#87)
  • Fixed plan list pagination/sorting behavior that could produce 404 states (#89)
  • Fixed subscription list links to related subscriber records (#100)
  • Fixed rebill order/purchased-item alignment around subscription IDs (#98, #99)

Updated

  • Updated settings experience to remove legacy cron command blocks from CP (#83, #81)
  • Updated interval length handling to default to null where appropriate (#92)
  • Updated menu integration to use CartThrob menu_item extension hook (#82)
  • Updated string helper usage from Illuminate\Support\Str to CartThrob\Str (#80)

Removed

  • Removed Vault management panel from Subscriptions (Vault management moved into CartThrob core)

Version 5.0.0

Released January 30, 2022

  • ADDED: Trial Options allow custom duration (#69)
  • ADDED: can_renew variable to subscriptions tag
  • ADDED: is_trial_active variable to subscriptions tag
  • ADDED: computed_trial_end_date variable to subscriptions tag
  • ADDED: computed_end_date variable to subscriptions tag
  • ADDED: improved date handling in subscription forms
  • FIXED: Email events on rebill hardcoding
  • FIXED: Removing All Orders breaks Subscriptions (#71)
  • FIXED: Purchased Items settings aren’t respected (#73)
  • FIXED: Various method call casing (under_score to camelCase)
  • FIXED: stricter Seed definitions
  • FIXED: order status being set to open on success instead of configured status
  • FIXED: redirect on Subscriber charge
  • FIXED: manual editing where Subscription Trial Option defaults were not applied (#74)
  • FIXED: manual rebill emails not being sent
  • FIXED: duplicate use statement on Subscriber manual charge route
  • UPDATED: email templates now include complete Subscription variable package
  • UPDATED: boolean outputs changed to integer values for template parser compatibility
  • UPDATED: daily-cost logic now accounts for trial duration
  • UPDATED: rebill command now safely defines CSRF token for legacy EE edge cases
  • UPDATED: cancelSub behavior removes active trial immediately upon cancellation
  • UPDATED: one-off charge order titles use Subscription name
  • UPDATED: install template examples to include new variables

Version 4.3.1

Released March 17, 2022

  • FIXED: Rebill Command breaks list parameter on eecli.php requests #65
  • FIXED: Edit Subscription Form has End Date value as Start Date #63
  • FIXED: Uninstaller generates DB errors if cartthrob_notifications is not present #61

Version 4.3.0

Released February 10, 2021

  • ADDED: ‘is_cancelled’, ‘occurences_used_up’, and ‘is_trial’ as tags to the ‘subscriptions’ template tag
  • ADDED: Asterisk as visual cue on renewability of a subscription within the Control Panel
  • ADDED: Rebill Cli Command (#32)
  • UPDATED: Control Panel views to use database pagination (#27)
  • UPDATED: Improves performance of internal option methods (#27)
  • UPDATED: Cancel Subscription logic to keep subs open to period end if funds aren’t involved in cancellation (#44)
  • FIXED: issue with Total Occurrences not being respected for certain situations
  • FIXED: Various bugs with MySQL and the strict setting (#46)

Version 4.2.0

Released December 14, 2021

  • FIXED: Missing cancel_sub template in template installer. #31
  • FIXED: Updating Plan with no Permissions. #39

Version 4.1.0

Released June 1, 2021

  • ADDED: ExpressionEngine 6 support.
  • UPDATED: Replaces cartthrob_addon_register with cartthrob_boot hook in extensions table.

Version 4.0.1

Released April 26, 2021

  • FIXED: Warning disabled by invalid data type on permission getter.
  • FIXED: Exception thrown during update due to reference to deprecated mbr_addon_builder. Removed reliance on mbr_addon_builder.

Version 4.0.0

Released April 17, 2021

  • ADDED: CartThrob 5.5 Support.
  • ADDED: ExpressionEngine 5 Support.
  • ADDED: Authorize.net support as a billing option.
  • ADDED: Manual rebill functionality.
  • ADDED: Ad hoc billing capabilities.
  • UPDATED: Moved CodeIgniter models to ExpressionEngine Model objects.
  • UPDATED: Moved CodeIgniter libraries to ExpressionEngine Services.
  • UPDATED: Installation template formatting and removes legacy ExpressionEngine tags.

Version 2.5

Released January 23, 2014

Major fixes & enhancements throughout subscriptions & permissions especially concerned with template tags and backend administration.

  • ADDED: full set of templates to be used as examples for creating subscription sales sites.
  • ADDED: ability to set a permission on a subs plan
  • ADDED: ability to set more subscription options when adding an item to a cart.
  • ADDED: bettor error reporting in subs manager to make it more obvious when something has failed.
  • ADDED: members with vaults method to vault model
  • ADDED: method to permissions model to get permissions related to a specific sub_id
  • ADDED: method to permissions tag where you can pass a sub_id to check for active permissions. If the sub_id is closed, the permissions will not be assigned
  • ADDED: method to subscriptions field type to pull permissions that have been set in permissions manager
  • ADDED: method to subscriptions to find any vault data even if the token is missing so that we start with something, rather than having nothing to go on if something goes wrong with a transaction.
  • ADDED: method to update / close permissions if the related subscription is expired.
  • ADDED: method to use status and other db fields in subscription model to get_subscriptions. Now you can use status='open' or status='open|pending' as a parameter in the subscriptions tag to get information about subscriptions
  • ADDED: pending subscriptions view to subscriptions manager.
  • ADDED: method to see when next bill is expected for a certain sub.
  • FIXED: an issue with sequential order numbers in subscriptions
  • FIXED: clean_sub_data method in module no longer sets bad data if a specific key is not passed in. This allows sending of partial data sets without overwriting existing data that is not being updated
  • FIXED: issue where permissions were assigned twice when purchasing subscription products.
  • FIXED: issue with subscriptions field type where if you’d set it as the price field you’d get crazy prices back. Now it just gets the price of the sub as you might expect.
  • FIXED: issue with subscriptions model where arrays were not being serialized. This primarily affected permissions being saved correctly.
  • FIXED: issues in module where permissions were not being serialized and unserialized correctly, causing permissions added to a subscription to either be ignored, or only the first permission set to be used.
  • FIXED: issues with adding a plan to the cart where plan data was either being ignored or added incorrectly.
  • FIXED: issues with deleting subscription items from the backend.
  • FIXED: Many small issues and inconsistencies with Permissions and Subscriptions
  • FIXED: various fixes to subs and perms field types to get around incompatibility with GRID field type

All previous changes are listed in CartThrob’s changelog