Well, this is another major release, because I made a lot of Schema changes and also added a ton of new features. Hopefully this will make it easier for everyone to customize the module to do EXACTLY what they need.
One of the major new changes is the ability to control which roles will be able to purchase or upgrade to certain memberships. This allows you to control which subscriptions show up on the registration screen, by making subscriptions available only to 'authenticated users'.
Another major new feature is the ability to control if and when a user account will be blocked and/or have their role removed. You can choose from Never, Upon Cancellation, or Upon End of Term. This allows you to customize the module to fit your site needs.
I also added the ability to store and show the Expiration Dates for subscriptions. This lets users see when their subscription expires, and in the future releases it will be used to make sure that no subscription stays active longer than it should (will require cron to be properly set up).
Last but certainly not least, I have provided integration with the 'User Types' module, which when used in conjunction with this module provides a powerful way to create custom membership registration screens, with the ability to set different profile fields and show different subscriptions for purchase depending on the user type. To download User Types and check out how it works (recommended), go here: http://drupal.org/project/user_types . Thanks to Dennis Loh for requesting this functionality.
Here are a few screenshots illustrating the new features:

Now, without further ado, here is the list of changes for version 4.11:
New Features:
- New Feature: Store Expiration Date of User Subscriptions
- New Feature: Show the Expiration Date of User Subscriptions in User Account
- New Feature: Added Support for Mexican Pesos and Israeli Shekels currencies (thanks to Omer Simanovsky)
- New Feature: Added ability to set if and when a user should be blocked (never, at end of term, or upon cancellation)
- New Feature: Added ability to set if and when the role should be removed (never, at end of term, or upon cancellation)
- New Feature: Store the Start Date of Subscriptions
- New Feature: Added ability to set which roles may purchase and/or upgrade to a Subscription Plan.
- New Feature: Provided Integration with the user_types module to set a URL where the subscription should appear on the Registration Screen
Bug Fixes:
- Bug Fix: Don't create a user if it is subscr_cancel or subscr_eot and the user has already been deleted
- Bug Fix: Stopped Free Subscriptions from showing in the Purchase Membership User Account section
- Bug Fix: Fixed a bug where the subscriptions box was showing on the user registration screen when there were no subscriptions added
- Bug Fix: Fixed a bug where users sign up on pages with no subscriptions when enforce subscription is on.
- Bug Fix: Fixed a Bug resulting in errors on the Thank-You page
- Bug Fix: Fixed a Bug in the Email system resulting in Cancellation and End of Term notification emails not being sent
Misc Changes:
- Usability: Added Notes on Subscription Fields to better explain how to use them
- Upgrade: Added autoupdate script to install file to set expiration dates for all current user subscriptions
- Schema Change: Added field 'start_date' to paypal_user_subscriptions table
- Schema Change: Added field 'current_payments' to paypal_user_subscriptions table
- Schema Change: Added field 'max_payments' to paypal_user_subscriptions table
- Schema Change: Added field 'allow_roles' to paypal_subscriptions table
- Schema Change: Added field 'user_types_url' to paypal_subscriptions table
- Schema Change: Added field 'block_when' to paypal_subscriptions table
- Schema Change: Added field 'remove_when' to paypal_subscriptions table
Update.php is required for this update, so be sure to run it if you are updating from past versions.
Sincerely,
Leighton Whiting







