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

let external users approve terms_of_use themselves? #291

Closed
lsloan opened this issue Jan 5, 2022 · 4 comments · Fixed by #247
Closed

let external users approve terms_of_use themselves? #291

lsloan opened this issue Jan 5, 2022 · 4 comments · Fixed by #247
Assignees
Labels

Comments

@lsloan
Copy link
Member

lsloan commented Jan 5, 2022

Problem

When the external user enrollment feature of the API was implemented, one of the keys sent to the Canvas API is "terms_of_use": true. Canvas seems to work if that value isn't specified, but at the time it seemed like it would be safer to specify it explicitly.

That resulted in the conversation…

Originally posted by @ssciolla in #247

I wish there was a way for folks to approve the Terms of Use themselves...

Originally posted by @lsloan in #247 (comment)

I think this will work without specifying the terms… key. I could remove it, if you prefer. I think I chose to use true here, because I read that's the default value Canvas users if it's not specified.

Solution

If it makes sense to do so, either remove the terms_of_use key from the request or explicitly set it to false, whichever will give the desired behavior.

It would be helpful to get @melindakraft's input on this.

@ssciolla
Copy link
Contributor

ssciolla commented Jan 6, 2022

@lsloan, can you determine whether the new user is prompted to accept terms of use in the cases where this is true and false? Melinda thinks it's preferable if the user has to accept the terms themselves.

@jonespm
Copy link
Member

jonespm commented Jan 6, 2022

When I create a user through the regular UI it doesn't set this parameter at all, it's not required. I'm not seeing where the default is true.

This is the prompt the user ends up with, at least from the dev instance. This seems like what we'd want, and should be obtained either setting false or not setting. Unless our prod instance is configured differently from dev to not require anyone to accept terms. In that case false or not setting still seems the best we can do.

image

@ssciolla ssciolla added API back end Involves changes to the Express application or other server-related files labels Jan 6, 2022
@lsloan
Copy link
Member Author

lsloan commented Jan 10, 2022

Thanks for the feedback, @ssciolla and @jonespm. I didn't notice the difference when I tried it out. I'll not set that parameter and check again.

lsloan added a commit to lsloan/ccm that referenced this issue Jan 10, 2022
From Canvas API docs: `user[terms_of_use]` - Whether the user accepts the terms of use. Required if this is a self-registration and this canvas instance requires users to accept the terms (on by default). If this is true, it will mark the user as having accepted the terms of use.
@lsloan lsloan removed the back end Involves changes to the Express application or other server-related files label Jan 10, 2022
lsloan added a commit that referenced this issue Feb 24, 2022
Co-authored-by: Sam Sciolla <35741256+ssciolla@users.noreply.github.com>
@pushyamig
Copy link
Contributor

I don't see terms_of_use parameter set as part of API. test passes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants