Some teams (e.g. ubuntu-members) need a way to allow their members to renew their own memberships right before they get expired. It should be up to the team admins to decide if they want this feature or not for a given team.
Users will be able to renew their membership by going to a special membership page in which they see the team description and have to click on a button saying they want to renew their membership on that team. Once the user confirms he wants to renew the membership, that membership's expiration date is changed to the existing expiration date plus the team's defaultrenewalperiod.
This page should be available only a few days (or weeks) prior to the expiration date, to make sure people can only renew their memberships once its expiration is close. We'll link to this page from a team's home page, if the user looking at it has a membership that will expire soon and also from the notification email we'll send (as per bug 70518) some time before the membership expires.
Each team will have one of the following renewal policies:
(a) None. i.e. the only way to renew is to apply again subject to the
normal joining-the-team process (but the default length, if accepted,
will be the renewal length, and messages will talk about "renewal"
rather than "acceptance").
(b) On demand. You can renew any time within the last n days of your
membership, just by clicking on a link sent to you in the expiration
warning email. If you fail to do so, your membership expires, and you
need to apply again (but the default length, if accepted, will be the
renewal length, and messages will talk about "renewal" rather than
"acceptance").
(c) Automatic. All memberships are automatically renewed for the
renewal duration. Messages will be sent notifying team owners/admins,
and the user, of the impending expiration and also saying that it will
be automatically renewed for n days unless someone does something
manually. This is both a way to turn all expiring memberships into
non-expiring memberships, with the twist that everyone gets reminded
about who's been a member of the team how long because of the expiration
messages.