Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

enrollment type definition and permission in config #339

Open
lsloan opened this issue Feb 11, 2022 · 2 comments
Open

enrollment type definition and permission in config #339

lsloan opened this issue Feb 11, 2022 · 2 comments
Labels
API back end Involves changes to the Express application or other server-related files config change Involves a change to the configuration file/format front end Involves changes to the React application or other client-related files

Comments

@lsloan
Copy link
Member

lsloan commented Feb 11, 2022

Problem

When the team discussed adding support for librarian and assistant enrollment types, which resulted in opening #333, I realized we have support and redundancy problems for all types. It should also be customizable for other environments.

  1. Support – Whenever enrollment types are added (or removed) from Canvas, it will require updating various parts of the code. Multiple enumerated types will need to be changed.
  2. Redundancy – The enrollment types appear in the code for the UI and the API. The code in the two places are very, very similar.
  3. Customizable – When this application is put to use on other organizations' environments, the enrollment types used by them and the permissions they want to grant them may be very different than those in use at UMich.

Solution

Add enrollment types to the application configuration. It may be in the main configuration file or it may be a new file. The enrollment type configuration should contain enough information to define the possible types available and enough hierarchy to define what types may be assigned by a user of a given type.

This enrollment type configuration should be available to code running in the UI and the API. If there are difficulties to getting the configuration to the UI, a new API entry could be added that provides the configuration to the UI.

The code used to handle enrollment types should be available for use in the UI and the API to reduce redundancy and ease maintenance.

@lsloan lsloan added front end Involves changes to the React application or other client-related files back end Involves changes to the Express application or other server-related files API config change Involves a change to the configuration file/format labels Feb 11, 2022
@ssciolla
Copy link
Contributor

ssciolla commented Feb 11, 2022

I agree this is a problem (the similar but different code across the front and backend), but it may not be solve-able for the initial release. I am not sure about full configuration, but certainly sending role data to the frontend makes sense to me. I will start thinking about it as time allows. I believe we can make it functional with the current approach.

@lsloan
Copy link
Member Author

lsloan commented Feb 11, 2022

I agree, it may not be important enough to address this before the first release.

Also, since I wrote it, I thought of another reason this should be addressed eventually: Allow for customization when used by other organizations.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
API back end Involves changes to the Express application or other server-related files config change Involves a change to the configuration file/format front end Involves changes to the React application or other client-related files
Projects
None yet
Development

No branches or pull requests

2 participants