human-essentials icon indicating copy to clipboard operation
human-essentials copied to clipboard

[Feature] Allow opting out of the families/child functionality

Open cielf opened this issue 1 year ago • 8 comments

ID'd as high priority at July 13 2022 partnerbase working group meeting Source: Sean, human-essentials-leads May 23 11:03 pm, with additional input from Partnerbase WorkingGroup meeting 2022/07/22

Summary

Allow opting out of the families/child functionality on a bank or partner level

Justification

For period banks or partners who only do bulk orders, the family/child functionality is superfluous and distracting

Details

1/ Add a boolean field, enable_child_based_requests, on the organization .
a) Default to true (both for existing and future banks).
b) Will appear on the "My Organization" page with the label "Enable partners to make child-based requests", c) If the organization.enable_child_based_requests is newly saved as false, - partner_profiles.enable_child_based_requests (see #2, below) will be set to false for all that organizations partners [Note: we expect the primary users of the ability to disable the functionality will be period banks].

2/ Add a boolean field, enable_child_based_requests, on partner_profiles. a) default to true for all current partners b) new partner profiles will default to the value of the organization's enable_child_based_requests c) This will appear on the partner profile screens (both bank and partner-facing) as "Enable Child-based Requests (unclick if you only do bulk requests)" d) However, this field will appear in the partner_profiles show/edit if and only if the bank's enable_child_based_requests is true e) Same behaviour for banks and partners

3/ If partner_profiles.enable_child_based_requests is true, the child and family functionality that currently exists remains, i.e.: a) Families and Children appear in the left nav bar b) the functionality under families and children remain as is c) The "Child" box and Create Request button will not appear in the dashboard d) The "Child" box and Create Request button will not appear in requests

4/ If partner_profiles.enable_child_based_requests is false the following changes in PartnerBase. a/ The "Families" and "Children" selections will not appear on the navigation side bar b/ The "Child" box and Create Request button will not appear in the dashboard c/ The "Child" box and Create Request button will not appear in requests d/ The partner's users will not be able to access the family or children screens

Other considerations

This is likely going to require some changes to user-facing documentation -- ours and the banks.  

Criteria for completion

  • [ ] tests for all the changes created and pass
  • [ ] existing tests modified as appropriate
  • [ ] migrations for fields added to organization and partner_profile records supporting this functionality with defaults as described above
  • [ ] ability to enable/disable child-based requests added to bank 'My organization"
  • [ ] ability to enable/disable child-based requests added to partner profiles as above
  • [ ] navigation behaviour as described above
  • [ ] dashboard behaviour as described above
  • [ ] requests behaviour as described above

cielf avatar Jul 18 '22 19:07 cielf

Hi all - I'm going to leave this is a needs discussion state for a couple of days in case I've missed something important.

cielf avatar Jul 18 '22 19:07 cielf

Hey @dorner, we just got a request to do the same thing for the '# of individuals" functionality. What would you think of grafting that on to this?

cielf avatar Aug 10 '22 23:08 cielf

Sure, I can do that!

dorner avatar Aug 12 '22 19:08 dorner

Added! image

dorner avatar Aug 12 '22 19:08 dorner

Excellent! Thank you @dorner! Predictably, of course, we now have someone asking for the ability to hide the quantity request (they only use # of individuals). (Sigh -- I did think of this, but, you know, not putting in functionality that hasn't been requested.)

cielf avatar Aug 15 '22 18:08 cielf

This issue has been inactive for 246 hours (10.25 days) and will be automatically unassigned after 114 more hours (4.75 days).

github-actions[bot] avatar Aug 26 '22 00:08 github-actions[bot]

This issue has been inactive for 366 hours (15.25 days) and is past the limit of 360 hours (15.00 days) so is being unassigned.

github-actions[bot] avatar Aug 31 '22 00:08 github-actions[bot]

For anyone coming along and looking at this -- it's got a pull request that is just waiting for one business clarification.

cielf avatar Sep 12 '22 23:09 cielf