Page 1 of 1

EOT Not Working?

PostPosted: July 14th, 2011, 8:59 am
by CrownOfMars
First of all id like to apologise for my last post a few days ago, i was a little frustrated. I appreciate the work you have done with s2Member.

Basically, i had to switch from Paypal Pro forms back to PayPal Buttons because Pro wasn't available in Australia (im dumb for not looking into this!).

My client is still happy with the way the buttons operate but i have a slight problem. They need to add around 140 current members into s2Member. I'm trying to work out the easiest way to do this.

I made the suggestion of creating a new button which would involves a free trial period for the first year for current members. Basically a reward for already being a member is a free years subscription. Unfortunately they cannot do this. They need each users renewal date to pass over exactly with s2Member.

As a result, each current member which is added will have to be given a unique EOT. My idea being that they'd be manually added as a member with all the benefits, but once this EOT period is over, their account would be demoted to the free membership and they'd then have to "upgrade" to the full membership again by using the Paypal button.

This way all their subscription days would remain roughly the same. I've tried to create a test user, where i manually add someone as a Member and set the EOT to +10 minutes. I even have something built into my theme which displayed their renewal status.

Obviously, with these new members, the renewal box originally states "Your membership is going to expire tomorrow!". After 10mins i log out/in and this changes to "Your membership has expired". So it appears as though that is working. The problem is, they don't actually get demoted. They remain a Member and get all the benefits.

I left it for a couple of hours but nothing has changed. so my question is: How do i get the EOT to work correctly? I have the correct settings set within Paypal Options > Automatic EOT. Is this actually going to work when they haven't actually signed up through Paypal (they're manually added?).

Thanks.

Re: EOT Not Working?

PostPosted: July 14th, 2011, 8:40 pm
by Cristián Lávaque
Hey. Don't worry about the other post, I could understand your frustration. Apology accepted. :)

The EOT behaviour should work if the EOT time is set for a user, doesn't matter if that happened automatically or manually. Maybe you need to wait a bit longer... I'm not sure.

Could you please check what role the test account has after it expired? What versions of WordPress, s2Member and s2Member Pro are you running?

By the way, you can import the users in bulk using s2Member's Import tool, which even lets you specify the role, EOT time, payment gateway and subscriber ID for each user. WP Admin -> s2Member -> Import/Export -> Import

Re: EOT Not Working?

PostPosted: July 14th, 2011, 9:33 pm
by CrownOfMars
Thanks for the reply.

I'm using Wordpress 3.2.1, s2Member 110710 and s2Member Pro 110710 also? Im not really using the Pro stuff though..

I have the the General Options > Membership Levels/Labels set up as:

Level 0: Supporter
Level 1: Individual Concession
Level 2: Individual
Level 3: Organisation Concession
Level 4: Organisation

I have the Force WP to use labels ticked.

So yeah, i added a new Member as a Individual Concession and added an EOT time of 10mins to see if it demoted down to a Supporter without any luck. I'm not supposed to set a subscribe id or gateway am i, because they don't exist?

Inside the users profile it still displays the EOT as Thu Jul 14, 2011 7:30 am UTC and the role is still selected as Individual Concession.

Inside General Options > Automatic EOT i have Enable s2Member's Auto-EOT System set to Yes (through cron) & Membership EOT Behavior set to Demote

Gotta be missing something!

Re: EOT Not Working?

PostPosted: July 14th, 2011, 9:56 pm
by Cristián Lávaque
No, you don't need the gateway or subscr ID if they don't exist.

You probably didn't give WP's cron time to happen. You can force the cron with this ?s2member_auto_eot_system_via_cron=1 at the end of the URL.

I hope that helps. :)

Re: EOT Not Working?

PostPosted: July 14th, 2011, 11:00 pm
by CrownOfMars
Do you mean adding that to the end of my domain url?

mydomain.com/?s2member_auto_eot_system_via_cron=1

I did so and it seemed to work, or was that just luck and the wp cron ticked over?

Is there a way i can make this happen automatically on a regular basis? How long does it usually take to work?

Sorry for all the q's!

Re: EOT Not Working?

PostPosted: July 15th, 2011, 1:23 am
by CrownOfMars
I just installed a plugin called wp-crontrol

It lists this hook: ws_plugin__s2member_auto_eot_system__schedule with a reoccurance of: 600 (10 minutes)

This doesn't seem to take affect though?

Applying /?s2member_auto_eot_system_via_cron=1 to my URL works but is there a way i can hook this function so i dont have to do it automatically?

Re: EOT Not Working?

PostPosted: July 15th, 2011, 9:13 pm
by Cristián Lávaque
If I understand it correctly, WP's cron runs when someone loads a page of the blog. I guess you can just wait for the WP cron to happen, but if you want to use the URL you could set up your own server cron job to load it.

I don't know what that hook works, sorry.