Page MenuHomePhabricator

Add support for renewing accounts
Closed, ResolvedPublic

Description

Most TWL accounts are for a period of one year. At the end of the year, if the partnership is renewed, one renewal strategy is for users to request that their account be renewed (i.e. if the partner doesn't just auto-renew them all).

The platform should:

  • Allow a partner to be set as 'Renewals available'
  • Allow users to request an account renewal
  • Allow Coordinators to set those requests as processed.

Event Timeline

Are renewals different from access grants? That is, would a partner potentially have X renewals and Y new access grants available? Or do they just have Y access grants available, which we can split between new and renewed as desired?

Different partners have different policies on this, so we will need the coordinators to keep track of it. Therefore make it easy for users to renew an application, and make sure coordinators can see if it's a renewal or a new application.

But not all partners allow for renewals, so only let them do quick renew if the partner allows it.

OK, I've got a rough draft of this done, but I need to add test coverage.

Okay! Now there is test coverage and it has been deployed. You have a checkbox for marking renewals available in the admin interface for partners (it defaults to False). Users have a one-click way to request renewals if they have an access grant that's about to expire for a renewals-available partner, and renewals are marked as such in the review queue.

Under the hood, a renewal is a new application which copies data from its parent application (and has a foreign key back to the parent). The presence or absence of the foreign key tells us whether this application is a renewal. But since it's just a new application, it acts the same way as any other application and can be reviewed/processed via the same set of steps.