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

allow users to manage their first/last name from Account Settings #2526

Merged
merged 1 commit into from
Sep 3, 2024

Conversation

Alex-Jordan
Copy link
Contributor

This is mostly so that a user can go to Account Settings and change their first and last name. That is, if they have the new permission allowing them to do that.

This also now prints the effective user ID in the page title, to be clear which user is being altered. The individual items already said the first and last name of the user being edited, but now that we could be editing first and last names, it seemed appropriate to put the effective user ID front and center.

A few cosmetic changes:

  • remove "Change" from all the sections of the Course Config page. It seems unnecessary and would now be even more repetitive than it already is.
  • change the button to use "Save" instead of "Change"
  • make the read-only fields visually appear as plain text

Overall that page could probably look a little better with some layout design work. But that is for another time.

This may need changes, so I'm not opening a parallel hotfix for now.

@drgrice1
Copy link
Sponsor Member

I think that this sort of thing is starting to go beyond hotfix territory. This isn't a bug, but a new feature really.

@Alex-Jordan
Copy link
Contributor Author

That sounds good. I was wondering when/where we would draw a line.

@somiaj
Copy link
Contributor

somiaj commented Aug 19, 2024

I do see you mention the issue with this and the LTI updating the users name. Would it be worthwhile to just disable the ability to change a user's name if $LMSManageUserData is set vs making instructors configure things properly?

@Alex-Jordan
Copy link
Contributor Author

$LMSManageUserData might be set, but the course could not be using LTI at all.

@somiaj
Copy link
Contributor

somiaj commented Aug 19, 2024

If it isn't fully possible to determine if users are using an LMS, then it is fine to let instructors deal with issues that arise of a student changing their name only to be reset to the LMS.

@Alex-Jordan
Copy link
Contributor Author

Personally I feel that $LMSManageUserData should be off by default (but it is on by default). If something changes with a user's metadata in the LMS, then immediately changing that in the WW course without notifying the instructor seems like it could cause confusion. So I have it turned off for PCC. Maybe that informs my opinion on this too much.

@dlglin
Copy link
Member

dlglin commented Aug 21, 2024

I personally want student metadata to stay in sync with the LMS, so I would leave $LMSManageUserData on regardless of the default.

It might also be good to add a note in the LTI config reminding people that by default users can change their email address in WW, so they may want to review the permissions for changing email (and now name).

@Alex-Jordan
Copy link
Contributor Author

Alex-Jordan commented Aug 25, 2024 via email

@Alex-Jordan
Copy link
Contributor Author

I updated this so that the help test for $LMSManageUserData explains that you should review the permissions for changing one's name and email address.

Copy link
Sponsor Member

@drgrice1 drgrice1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this generally looks good other than changing how the custom options page_title is done.

lib/WeBWorK/ContentGenerator.pm Outdated Show resolved Hide resolved
templates/ContentGenerator/Options.html.ep Outdated Show resolved Hide resolved
templates/ContentGenerator/Options.html.ep Show resolved Hide resolved
@drgrice1
Copy link
Sponsor Member

drgrice1 commented Sep 2, 2024

You mentioned that a student had a "wide character" in their name from the LMS. Wide characters are allowed in names for webwork. For example, you can use Hebrew characters in a name. So there must be something else going on with the name that had the issue. Perhaps it is something with the particular character.

@Alex-Jordan
Copy link
Contributor Author

OK, I made the changes described here.

The name where that happened had some sort of character modification character in it. IIRC, it was a character that places a small vertical line under the preceding character. So some kind of "accent" character. It was clearly wrong, as the student's name in other places had a regular ASCII letter in place of that special character.

I don't have the details written down though, this was over a Zoom session with a Runestone subscriber.

The original reason that we prefer $LMSManageUserData to be 0 at PCC, is that some faculty use the section and recitation fields in special ways. They manually put the students in groups using these fields. And we found that when $LMSManageUserData is 1, the instructor's section/recitation entries would get obliterated.

@dlglin
Copy link
Member

dlglin commented Sep 3, 2024

The original reason that we prefer $LMSManageUserData to be 0 at PCC, is that some faculty use the section and recitation fields in special ways. They manually put the students in groups using these fields. And we found that when $LMSManageUserData is 1, the instructor's section/recitation entries would get obliterated.

Is it worth adding functionality to customize which user data fields are managed by the LMS? Perhaps have $LMSManageUserData accept an array of fields which should be updated from data in the LMS, and any fields not in the array are left alone?

@drgrice1 drgrice1 merged commit 37aaafb into openwebwork:develop Sep 3, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants