Trainers, volunteer coordinators, mentors, personnel managers, and possibly shift leads can raise flags about a prospective or active volunteer. These flags are somewhat sensitive data–a person shouldn't see their own flags, nor should folks with general "edit person access." Exact permission details are still to be nailed down, but we've got enough information to start.
PersonnelFlag data model:
- belongs_to Person
- flag_source (string: trainer, volunteer coordinator, mentor, personnel manager)
- flagger (Person)
- severity (low, medium, high)
- explanation (free-form text)
- manager_only (if true, only Personnel Managers can see the flag)
- create_date (provided by default by rails)
- has_many PersonnelFlagNotes
- PersonnelFlagNote represents follow-up on a flag
- noter (Person)
- explanation (free-form text)
People with access to flags (Trainer, VC, Mentor Cadre, Personnel Manager) can see a link to a Person's flags on their Person and Involvement pages. Flags shouldn't be shown by default to avoid inadvertent shoulder surfing. Custom views like "who's coming to training", "whose handle needs to be approved," and "who are the alphas for this shift" have a flag indicator next to people who have flags (that aren't manager_only).
List of all people with flags should probably be restricted to just personnel managers.
Trainers, volunteer coordinators, mentors, personnel managers, and possibly shift leads can raise flags about a prospective or active volunteer. These flags are somewhat sensitive data–a person shouldn't see their own flags, nor should folks with general "edit person access." Exact permission details are still to be nailed down, but we've got enough information to start.
PersonnelFlag data model:
People with access to flags (Trainer, VC, Mentor Cadre, Personnel Manager) can see a link to a Person's flags on their Person and Involvement pages. Flags shouldn't be shown by default to avoid inadvertent shoulder surfing. Custom views like "who's coming to training", "whose handle needs to be approved," and "who are the alphas for this shift" have a flag indicator next to people who have flags (that aren't manager_only).
List of all people with flags should probably be restricted to just personnel managers.