GenieGate, Version 1.1.0 (PHP 5) manual

Adding time to an account

The PayPal action "Add Time to Account", as the name would suggest, adds time to the users account. As one might expect, a paypal action of "Add time to account" with a value of 10 days would add ten days to the users account. So, if the users account were set to expire March 10th and the user purchased this paypal item, their account will be set to expire March 20th.

Most of the time, this is produces the desired result, however, this retroactive nature produces unexpected results when applied to accounts which have expired in the past. In the above example, adding 10 days to the account does bring it up to March 20th, even if the current month is July. Consequently, the account remains expired.

For this reason, "Add time to account" must be limited to currently active accounts. One should use "Confirm, Reset, Add Group" when reactivating an account. (and then add time from there) This is the default behavior of the paypal sign-up form.

Fortunately, pp_signup.php takes this into consideration when displaying the paypal items to a member. You should take this into consideration when providing the item_no parameter from another web page.

The retroactive nature of adding time in GenieGate may change in a future release if this becomes a problem.