-
Notifications
You must be signed in to change notification settings - Fork 7
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
Inactive member organ members and fixes to installation/discharge UX #183
Inactive member organ members and fixes to installation/discharge UX #183
Conversation
Small note, this does not yet have an implementation in GEWIS/gewisweb, but we aren't close to deploying this. |
This adds a new member function for organs, `Inactief Lid`. This new function is mutually exclusive with any other functions. Furthermore, I have slightly changed the install/discharge result table. It is now sorted by member instead of installation.
This ensure that members can only be installed once with a specific function.
642c8c7
to
2da6284
Compare
Parity with |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I tested all functionality after this PR. I do think the checker needs to be updated and I made a proposal, but wasn't sure whether I should push it, so I included it in this review.
(apart from the error that is thrown on member edits I think should be solved by df2c1e1)
52ad859
to
1328473
Compare
The `Checker` can now determine that a member cannot be "Lid" AND "Inactief Lid" of the same organ, it guesses whether or not the member should actually be "Lid" or "Inactief Lid", however, there is no guarantee this is correct. Additionally, it can detect "Inactief Lid" members who still have a special role in the organ. Co-Authored-By: rinkp <[email protected]>
1328473
to
3e3a0ea
Compare
This is the first time that Psalm actually kept complaining about polymorphic calls. This has been address by making the `Checker`'s `Error` a template for the generic type `T`. All specific errors that extend the class now also extend it with a specific class for implementation. Also removes the budget check, as that did not do anything.
This supersedes #148.
This adds the
Inactief Lid
function to organ installation. Additionally, this fixes some UX problems that caused a lot of problems in the past.First and foremost, installations are now sorted per member instead of per installation (date). Furthermore, when discharging a member with function
Lid
, if they had additional functions in that organ, they would technically not be a member any more but still have a function (which should not be possible), this has now been fixed by ensuring that any other functions are discharged first. Finally, it was possible to install the same member multiple times (regardless of function), this is not also not possible.Note: discharging of all functions and preventing multiple installations are purely done in the front-end.
This closes #166, fixes #181, and fixes #182.