rubyforgood / casa Goto Github PK
View Code? Open in Web Editor NEWVolunteer management system for nonprofit CASA, which serves foster youth in counties across America.
Home Page: https://casavolunteertracking.org/
License: MIT License
Volunteer management system for nonprofit CASA, which serves foster youth in counties across America.
Home Page: https://casavolunteertracking.org/
License: MIT License
case_contact
for their casa_case
case_contact
details for their casa_case
(needs confirmation and details from stakeholders)teen_program_eligible
for their casa_case
case_contact
details for all case_contacts
they have had with active
casa_case
. They should not be able to see or edit case_contacts
for casa_case
that was reassigned to a different volunteer even if they might have created those case_contact
records.🚨 This role exists but the flows associated with this role do not as they are POST MVP 🚨
case_contacts
associated with a supervisor's volunteer assignments (view and edit)casa_cases
associated with a supervisor's volunteer assignments (view and edit)case_contacts
and any related objects we might build tied to case_contacts
Source: new_case_contact
button
Fields to display on form:
Use this? https://github.com/voormedia/rails-erd
Filter issues by the label "Admin" to see all work related to this epic.
Context
Post MVP, we are focused on improving the admin user experience by refining core functionalities and adding new features.
Permissions
Admins have the highest level of permissions within a single CASA Org instance.
Admins can:
How to access
Log in to QA using the following credentials:
email: [email protected]
password: 123456
See below for files!
All work pertaining to how stuff looks on the front end! Will touch work on epics #3 & #4
Priorities
Not priority, but would be nice if you wanna make it happen!
Related to #3, volunteers can edit an existing volunteer with the following items:
Also we want to display static data:
Part of epic #3
What type of user is it for? [volunteer/supervisor/admin/all
volunteers
New email text
https://github.com/rubyforgood/casa/blob/master/app/views/volunteer_mailer/deactivation.html.erb
Subject: Your account has been deactivated
Hello [volunteer display name],
Your CASA/Prince George’s County volunteer console account has been deactivated. Should you resume service as a CASA volunteer in the future, your account will be reactivated. Thank you for your service to CASA!
If you have any questions, please contact your most recent Case Supervisor for assistance.
– CASA/Prince George’s County
Filter issues by the "Volunteer" label to view all work related to this epic.
Permissions
Volunteers have the lowest level of permissions within a single CASA Org instance, but the volunteer account is the most important user type from a business perspective – the data that volunteers log (case_contacts
) are the focal point of the entire platform.
Context
Post MVP, we are focused on improving the volunteer user experience by refining core functionalities and adding new features (and new data points for volunteers to log), including:
How to access the volunteer dashboard
Log in to QA using the following credentials:
email: [email protected]
password: 123456
part of epic #4
What type of user is this for? [volunteer/supervisor/admin/all]
admin
Where does/should this occur?
This should be an addition to the admin dashboard under edit Volunteer.
Description
deactivating a volunteer account means the volunteer can no longer log in. This is not needed for MVP right now but we do need to build it.
related to issues
#22
supervisor cannot deactivate volunteer account (cannot lock volunteer out of login)
Relates to #4
Volunteer -
Index view of volunteer names and case number (like: Donald Duck - 12345
), in order of newest volunteer on top. Should link to a volunteer edit view/popup-type box.
New Volunteer button on top.
Part of epic #3 (volunteer dashboard) & epic #59 (data)
Currently, volunteers can only input case_contact
time value in duration_minutes
.
PG CASA would like a volunteer to be able to log case_contact
time values in duration_minutes
AND duration_hours
.
Ex: 1 hr. 15 minutes
Resolution should account for calculating total case_contact
durations for reporting purposes.
Ex: When an admin pulls a report of total time spent on case_contacts
, that number should look like: 5 hrs 15 minutes not 3 hrs 135 minutes
Some possible ways of handling this:
duration_minutes
and one for duration hours
occurred_at
is handled)Part of epic #105
What type of user is this for? [volunteer/supervisor/admin/all
supervisor
Where does/should this occur?
system email sent to supervisor
Description
Digest emails should include the following:
case_contact
attemptedcase_contacts
madecase_contacts
madeScreenshots
Here is an example of a PG CASA email:
Currently, the index shows the case contact id. It should be reworked to show the CaseContact.contact_number.
Part of epic #3 (volunteer dashboard)
other
should be removed from the dropdown menu under contact_type
when creating a new case_contact
This issue affects: supervisors
Supervisors should be able to:
Supervisors should NOT be able to:
Part of epic: #105
What type of user is this for? [admin/volunteer/supervisor/all]
Supervisor
Where does/should this occur
On the "edit volunteer" page of Supervisor dashboard (future work not in this issue). (It should be the Supervisor equivalent of this page.)
Description
Supervisors should be able to assign any volunteer to any casa_case
, just like admins can.
Screenshots
This is what it should look like.
Relates to #4
Cases -
Index view of all case ids, in order of newest case on top. Should link to a case edit view/popup-type box.
New Case button on top.
Only Admins should have the ability to create new volunteer
and supervisor
accounts.
The top of README for devise
talks about how it's made with modules and how you can remove modules if you don't want functionality that it provides.
This is part of epic "Admin view" (#4 ). Relates to issue #91 (change volunteer assignment).
What type of user is this for? [volunteer/admin/supervisor/all]
admin
Where does/should this occur?
When an admin is on their dashboard and clicks the "edit" button on a volunteer and are taken to the edit volunteer page
Description
Here, admins should be able to:
Future work (NOT in this issue):
If a new casa_case_ can not be created by and admin due to duplicate casa_case_id, Error message should say something like...
New CASA case could not be created because another CASA case already has this ID number.
@compwron to add deets
This will have to wait until we know where prod will be 😅
Admins should be able to click on a casa_case
from anywhere on the platform and see a show
view displaying the following casa_case
details:
case_number
case_assignment
(potentially a list)
case_assignment
is_active
case_contacts
infinite view by volunteer with rows displaying:
case_contact
typecase_contact
duration'teen program eligible' checkbox can remain
Make a UI where an admin can
Admin clicks button to create new volunteer.
Password for new account is generated.
Password creation triggers system email notifying admin of password.
The user's dashboard is the page you see when first logged in. The route is currently the same for every user (only their permissions are different)
Part of epic #3
Where does/should this occur?
On new case_contact
creation page for volunteers.
Description
add two optional fields to new case_contact
:
miles_driven(integer)
want_driving_reimbursement(boolean)
want_driving_reimbursement cannot be true if there is no value in miles_driven
As a volunteer, when I edit a case contact, I expect to see the same parameters as in the index entry that I clicked.
Currently, the edit parameters are the default ones.
http://localhost:3000/case_contacts
Make sure to create a feature spec for this!
This devise documentation could be useful for this functionality.
As discussed in the CASA slack channel, I'm going to be implementing Cypress so that Javascript is testable.
As a part of this I would like to:
Related to #3
new_case_contact
new_case_contact
path (#28***only case_contacts
from active casa_case_assignments
should display in the volunteer view.
relates to epic #38
test issue
Part of epic: #530
What type of user is this for? [admin/supervisor/volunteer/all]
all
Where does/should this occur
remove duplication of login/signin roles in testing
See example below:
Part of epic #4 (Admin Dashboard)
What type of user is this for? [volunteer/supervisor/admin/all]
This feature is for admins and should not change what non-admins can see or do.
Where does/should this occur?
Currently, in the admin view/edit case view, admins only see case info.
Description
Add to this view the volunteer/s currently actively assigned to the case. ( case_assignment.is_active == true
)
Display volunteer as volunteer name not id or email. If volunteer name is not in the db schema yet, display volunteer email. The volunteer's name (or email) should be a link to the admin view/edit volunteer page.
Screenshots
https://casa-r4g-staging.herokuapp.com/casa_cases/14/edit
relates to #28
As a volunteer that is logging a new Case Contact event, I should not see the "other contact type" text box unless "other" is chosen as a Case Contact Type.
As a volunteer, I expect that if "other" is chosen, then the "other contact type" text field is required.
As a volunteer, I expect for the "other contact type" to no longer be visible if I choose "other" and then choose another option in the "case contact type" select.
All work related to database & data that lives in it i.e.:
casa_cases
volunteers
case_contacts
case_assignments
database schema changes
Related to the following open issues: #34
A volunteer
should only be able to view the following:
Their own:
case_contacts
& case_contact
history [infinite view for now]volunteer_name
>> double check code naming conventionvolunteer_phone
>> double check code naming conventionvolunteer_email
>> double check code naming conventioncasa_case_id
Revise .csv formatting to ensure it's compatible with how data should display on the backend post import.
Will do once this is ready to release to CASA.
Related to epic #59
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.