strangerstudios / pmpro-cancel-on-next-payment-date

Change membership cancellation in Paid Memberships Pro to set expiration for next payment date instead of cancelling immediately.
https://www.paidmembershipspro.com/add-ons/cancel-on-next-payment-date
8 stars 8 forks source link

Cancellation link is still available on the Membership Account page #16

Open michaelbeil opened 3 years ago

michaelbeil commented 3 years ago

Describe the bug The cancellation link is still available on the Membership Account page after a member has already canceled. A member saw this, so they canceled again, and then their membership was no longer active as reported in this ticket (ID 350073).

To Reproduce Steps to reproduce the behavior:

  1. Go to the Membership Account page
  2. Click on 'Cancel', membership is still active
  3. Go back to the Membership Account page
  4. Click on 'Cancel' again, and the membership will no longer be active

Screenshots

Markup 2021-06-07 at 17 27 28

Expected behavior I expected the cancel link to be gone.

Isolating the problem:

WordPress Environment

``` Paid Memberships Pro 2.5.9.1, Cancel on Next Payment Date 0.3, Twenty Twenty-One 1.2, WP 5.7.2, and PHP 7.4.1 ```
ideadude commented 3 years ago

This is a "feature not a bug" situation. We want users to be able to fully cancel their membership if they'd like to.

I'm open to suggestions on how to tweak the language on the cancel page or elsewhere to make it more clear how this works.

mircobabini commented 2 years ago

@ideadude this is something I had to tweak too.

Also, this is not just about the link: if someone wants to completely disable the "double cancel" behaviour, also has to catch the cancel page when run and redirect away. I've done this way.

Btw, following the "feature not a bug" philosophy I think that tweaking the language would be easier.

I think that when using "cancel on next payment date" addon, the first "cancel" is the one we should tweak into "disable auto-renew". The second "cancel" means to definitely cancel, so it's ok... and can be removed just providing a filter and a snippet, in case.

michaelbeil commented 2 years ago

Another customer opened up a ticket (ID 406715) regarding this:

Using the Cancel on Next Payment Date Add On, when the user cancels this works perfectly, but if they cancel again it removes the membership all together. The does not have any active members yet, but I have simulated with different browsers and levels of membership and it happens the same every time.

Feedback from customer:

I like the idea of people being able to ‘ turn off renewal ‘ as the language, and then the cancel button would be more clear as to what will happen. I would then even add child code / snippet warning the user about losing complete access to the content if they cancel.

mircobabini commented 2 years ago

I think we should:

1) change the button Cancel to "Cancel auto-renew", to clarify the behaviour.

2) provide a snippet to remove the cancel action when an enddate is set.

Pretty simple.

mircobabini commented 2 years ago

This is a draft PR to change the button text from "Cancel" To "Turn off auto-renew". https://github.com/strangerstudios/pmpro-cancel-on-next-payment-date/pull/37

This is a gist to avoid complete cancellation though: https://gist.github.com/mircobabini/10dbf809fb3c53cda7f84e4d7b268211

michaelbeil commented 2 years ago

Another customer opened up a ticket (ID 420821) regarding this:

when a user cancels the membership it is canceled immediately and the user can no longer interact, that is, he does not wait for any cron order to be executed. When a payment is not made or is cancelled, it is configured so that the membership is canceled but it is not cancelled.

I sent the above gist.