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

[WIP] Add links to the ToU and include them in signup #2028

Open
wants to merge 4 commits into
base: master
from

Conversation

Projects
None yet
4 participants
@simonpoole
Contributor

simonpoole commented Oct 20, 2018

  • add links to the ToU in the Welcome box and on the About page
  • add tou_agreed to users table
  • require checking a checkbox that the ToU have been read for signup

Missing:

  • tests
@simonpoole

This comment has been minimized.

Contributor

simonpoole commented Oct 21, 2018

http://upc.poole.ch:3000/ is running this right now (against a local test database) if anybody wants to see if the way that this works now is OK.

@tomhughes

In addition to the inline comments the PR descriptions claims that a link is added to the About page but that doesn't seem to be true?

Show resolved Hide resolved app/views/users/terms.html.erb Outdated
Show resolved Hide resolved config/locales/en.yml Outdated
@simonpoole

This comment has been minimized.

Contributor

simonpoole commented Oct 22, 2018

@tomhughes the change on the about page is on line 1274 on en.yml (I needed some squinting at the screen to re-.find it :-)).

@tomhughes

This comment has been minimized.

Member

tomhughes commented Oct 22, 2018

@simonpoole I did actually try looking at it on your test instance and couldn't see the link but now that I understand the change that was likely because I was seeing the en-GB version of the string that hadn't changed.

@mmd-osm

This comment has been minimized.

Contributor

mmd-osm commented Oct 24, 2018

I'm wondering how this new flag field affects existing users. Will editing be blocked unless they have ticked some checkbox?

@simonpoole

This comment has been minimized.

Contributor

simonpoole commented Oct 24, 2018

Sorry, I wanted to explain this in the comment but in the usual hackweekend environment I forgot.

The current changes do not effect existing accounts at all with the exception of those that haven't accepted the contributor terms.
Making the Tou acceptance mandatory for other existing accounts is way down the road, if ever, and will require additional coding not to mention discussion. This is in line with the LWG plans.

PS: it is not a flag it's a time stamp for obvious reasons.

@simonpoole

This comment has been minimized.

Contributor

simonpoole commented Oct 31, 2018

Feedback from @systemed

  • doesn't like the new position of the PD checkbox (surprise :-))
  • suggests not having the ToU link in the Welcome box and instead moving it in to the attribution "footer"

simonpoole added some commits Oct 21, 2018

Add links to the ToU and include them in signup
- this adds links to the ToU in the Welcome box and on the About page
- adds a timestamp column to the users table to record acceptance of the ToU
- require ToU to be accepted before signup can proceed
- rearrange and change text on signup page
@simonpoole

This comment has been minimized.

Contributor

simonpoole commented Nov 14, 2018

@gravitystorm & @tomhughes this now "just" needs a test to verify that the "Accept" button is only enabled then the ToU checkbox is checked, and the corresponding database field is populated when accept is pressed.

I couldn't seem to find a test that actually checked this code path (there is a test in https://github.com/openstreetmap/openstreetmap-website/blob/master/test/integration/user_terms_seen_test.rb which however doesn't actually simulate pressing the accept button), can you confirm?

@tomhughes

This comment has been minimized.

Member

tomhughes commented Nov 14, 2018

Well https://github.com/openstreetmap/openstreetmap-website/blob/master/test/integration/user_creation_test.rb#L75 tests the signup flow including accepting the terms?

If you actually want to check what happens to the button on the client then you will need a system test though obviously you want to check that the backend works right as well as you don't want to trust client side javascript ;-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment