latest stable versions: v150827 (changelog)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Cancellation with custom capabilities

Home Forums Community Forum Cancellation with custom capabilities

This topic contains 13 replies, has 3 voices. Last updated by  Bruce 3 years, 5 months ago.

Topic Author Topic
Posted: Friday Jul 26th, 2013 at 9:10 am #54150
Brian Johnson
Username: BDJTE2

I am setting up all subscriptions with level 1, but each with independent or unique custom capabilities. When the user cancels one subscription through PayPal, I would obviously like the custom capability associated with that specific subscription to end at the appropriate date.

However, I want to ensure that the user retains their remaining custom capabilities (and level 1 access) IF they have other active independent subscriptions and different custom capabilities. If they do NOT have other active level 1 subscriptions with other custom capabilities, I would like them to revert to level zero access.

Does the S2 Member framework support this functionality? If so, what are the appropriate settings to accomplish this using S2 Member and where would I find the settings?

Thank you,

Brian Johnson

List Of Topic Replies

Viewing 13 replies - 1 through 13 (of 13 total)
Author Replies
Author Replies
Posted: Friday Jul 26th, 2013 at 9:50 am #54155
Eduan
Username: Eduan
Moderator

Hello Brian,

Does this topic answer your question: http://www.s2member.com/forums/topic/selective-expiration-of-custom-capabilities/

– Eduan

Posted: Friday Jul 26th, 2013 at 11:01 am #54159
Brian Johnson
Username: BDJTE2

It seems the purpose of offering custom capabilities was the opportunity to offer an unlimited number of independent subscription/restriction options, which was documented in detail in the videos.

Do I understand correctly that when any of these independent subscriptions with custom capabilities are canceled, they would all effectively be canceled by S2 Member’s PayPal automatic end of term (EOT) system?

If all of the subscriptions and custom capabilities are connected by a single cancellation/EOT event, then I do not see the benefit of using custom capabilities – because they would not be independent. There must surely be a way around this. Am I missing or misinterpreting something?

Thanks for your help,

Brian Johnson

Posted: Friday Jul 26th, 2013 at 11:05 am #54160
Eduan
Username: Eduan
Moderator

I edited my answer, please check it again. :)

Posted: Friday Jul 26th, 2013 at 12:11 pm #54164
Brian Johnson
Username: BDJTE2

Eduan (and other forum members),

I reviewed the other forum topic at the link you provided and it confirmed the S2 problem I described above. S2 Member Framework allows for the sale and configuration of multiple subscriptions with “independent” capabilities, but any single cancellation/EOT event for any of the subscriptions appears to terminate all capabilities for that user (and also appears to downgrade that user to level 0). I am a S2 Pro customer, but I am using currently using standard PayPal buttons with custom capabilities for subscriptions.

Unfortunately, I do not have the ability to implement a custom code solution, so please bring this issue to Jason’s attention and ask him if this flexibility could be provided in the future. It seems that all of your customers using custom capabilities would need to limit cancellation/EOT events to the specific subscription (and custom capabilities) being terminated.

Please let me know if you come up with a solution to this problem. In the interim, I do not see any option for using multiple custom capabilities with S2 Member.

Thanks,

Brian Johnson

Posted: Friday Jul 26th, 2013 at 2:32 pm #54171
Eduan
Username: Eduan
Moderator

I’ll forward this post to Jason, see what he has to say. BTW the next generation of s2Member will have this fixed I believe. :)

– Eduan

Posted: Friday Jul 26th, 2013 at 3:15 pm #54173
Brian Johnson
Username: BDJTE2

Eduan,

That’s great news about the next generation release of s2Member. Only being able to use a single custom capability is a significant problem for me and adding this functionality to s2Member would be very helpful. Please keep us posted.

Thanks again for your prompt responses.

Brian Johnson

Posted: Sunday Jul 28th, 2013 at 12:02 pm #54298
Eduan
Username: Eduan
Moderator

This is what he got back to me with:

I was just looking at this and I addressed this a couple months back already. It’s not perfect, but it does help in this scenario. See attached screenshot and the EOT Behavior options in the latest release.

– Eduan

Posted: Sunday Jul 28th, 2013 at 1:11 pm #54299
Brian Johnson
Username: BDJTE2

Eduan,

I am familiar with the screenshot that you provided. Unless I misunderstand, it does not address the problem. The EOT behavior above implies that when any one of the multiple, independent subscriptions is cancelled or expires, any (all?) of the custom capabilities for that user will be removed, not just the custom capability associated with the specific EOT event. In addition, the user would be downgraded to level zero, which would also prohibit them from accessing their other independent subscriptions.

This is not the desired behavior for multiple independent subscriptions, each of which would require level one access, and have their own independent custom capabilities.

The desired behavior would be for the user to remain a level one (assuming they had other active subscriptions with independent custom capabilities) and to retain all of their custom capabilities, EXCEPT the one related to the specific EOT event.

I hope that makes sense. The language in the screenshot suggests that the user will lose all custom capabilities and be downgraded to level zero when any one subscription has an EOT event.

Unless I am mistaken, this does not solve the problem; it does not handle EOT events for each subscription with separate custom capabilities independently.

Please let me know if this requires any further clarification or if I misunderstand the current EOT behavior for S2 Member.

Brian Johnson

Posted: Wednesday Jul 31st, 2013 at 2:08 am #54460
Bruce
Username: Bruce
Staff Member

I’m very sorry for the delay in response.

Unless I am mistaken, this does not solve the problem; it does not handle EOT events for each subscription with separate custom capabilities independently.

While this is correct, this is the closest s2Member can get to what you need. What you’ll need to do to achieve what you want requires custom code. This isn’t something we’re looking to bring into the current release of s2Member, sorry.

If you want to set this up on your site, you would hook into the processes in this file:

/s2member/includes/classes/auto-eots.inc.php

Specifically, this hook may do the trick:

ws_plugin__s2member_during_auto_eot_system_during_before_demote

See: Knowledge Base » Hacking s2Member® Via Hooks/Filters
See Also: Knowledge Base » Changing Roles/Capabilities via PHP

That’s about as far as we can go with custom code. If you need further assistance, we recommend http://jobs.wordpress.net, or another freelance web site where WordPress® experts are offering their expertise through a bid on your project.
Posted: Wednesday Jul 31st, 2013 at 7:26 am #54469
Brian Johnson
Username: BDJTE2

Bruce,

Thanks for the reply. You stated that “This isn’t something we’re looking to bring into the current release of s2Member, sorry.”

In an earlier post, Eduan stated “BTW the next generation of s2Member will have this fixed I believe.”

Could you please clarify? Does S2 Member plan to add this functionality in the future? If so, could you offer a possible timetable?

Thanks

Brian Johnson

Posted: Wednesday Jul 31st, 2013 at 12:13 pm #54517
Bruce
Username: Bruce
Staff Member

Thanks for the reply. You stated that “This isn’t something we’re looking to bring into the current release of s2Member, sorry.”

In an earlier post, Eduan stated “BTW the next generation of s2Member will have this fixed I believe.”

We are currently in the middle of a full rewrite of s2Member that will work totally differently than the current release. The release date of said rewrite has been pushed back many times due to many things, the biggest being the changes with PayPal’s APIs and other changes we’ve had to make to the current release of s2Member to keep it going correctly.

We do not have a release date for this.

This is what Eduan was referencing in his reply. The “current release” of s2Member is the one that you have download that we are still releasing maintenance releases with, but refraining from adding too many new features as we are trying to focus our development on the “next major version” of s2Member.

Posted: Wednesday Jul 31st, 2013 at 12:56 pm #54522
Brian Johnson
Username: BDJTE2

Bruce,

Thanks. Then I assume that both you and Eduan are correct and the functionality discussed in this topic (independent custom capabilities) WILL BE included with the next major version (or next generation) of S2 Member, but not in the “current” version.

Thanks,

Brian Johnson

Posted: Wednesday Jul 31st, 2013 at 12:59 pm #54525
Bruce
Username: Bruce
Staff Member

Thanks. Then I assume that both you and Eduan are correct and the functionality discussed in this topic (independent custom capabilities) WILL BE included with the next major version (or next generation) of S2 Member, but not in the “current” version.

Right. That’s correct.

Viewing 13 replies - 1 through 13 (of 13 total)

This topic is closed to new replies. Topics with no replies for 2 weeks are closed automatically.

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Contacting s2Member: Please use our Support Center for bug reports, pre-sale questions & technical assistance.