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

Ensure user name exists for all users #595

Closed
6 tasks
bajiat opened this issue Nov 6, 2015 · 29 comments
Closed
6 tasks

Ensure user name exists for all users #595

bajiat opened this issue Nov 6, 2015 · 29 comments
Assignees

Comments

@bajiat
Copy link
Contributor

bajiat commented Nov 6, 2015

We need enhancements to user profile in connection to API feedback / communication channel, etc. Improve the user profile to collect more detail, such as user name.

Definition of done

  • Username should be obligatory. This is related to for instance showing names in communication channel, selecting API managers.
  • Sign up form should contain mandatory field for username.
  • If username is not given in third-party sign up (currently only Github), re-direct users to profile page.
  • Also, remove the Config.username check, as we do not use the global Config object.
  • Allow only unique usernames. If the username already exists, prompt for another username.
@bajiat bajiat changed the title Enhance user lr Enhance user profile Nov 6, 2015
@bajiat bajiat added the MVP2 label Nov 6, 2015
@sebbel
Copy link
Contributor

sebbel commented Nov 25, 2015

I am interested in this task 😄

"Username (either nick or a real user's name) should be obligatory."
Is this about the field "name" in the Schema UserProfile and the "username" field in the User Collection?

I would like to use the package: https://github.com/meteor-utilities/avatar/ to implement the avatar features, there is an inbuild featue for default profile pictures. the image path could then be added as a field in the UserProfile Schema.

@brylie
Copy link
Contributor

brylie commented Nov 27, 2015

@SBe, may we assign you to this task? I am available for pair programming.

At the very least we need to collect a username, but it is up to you whether to make the name field mandatory.

@sebbel
Copy link
Contributor

sebbel commented Nov 27, 2015

I am happy to take this task. When are you available for pair programming?

@brylie
Copy link
Contributor

brylie commented Nov 27, 2015

Also, the Avatar package looks great! I am available for pair programming today, and can be found in IRC.

@bajiat, may we add @SBe to the Apinf organization (development team), so that he can be assigned this task?

@bajiat
Copy link
Contributor Author

bajiat commented Nov 27, 2015

@SBe invited to Apinf organisation and developers team.

@bajiat
Copy link
Contributor Author

bajiat commented Dec 3, 2015

@SBe Hi, we are checking sprint 17 task statuses in order to start sprint 18 planning. Can you tell me the status of this task?

@sebbel
Copy link
Contributor

sebbel commented Dec 3, 2015

hey @bajiat, the task is in progress. I will now create a feature-branch to push to.

@bajiat
Copy link
Contributor Author

bajiat commented Dec 4, 2015

@SBe Let us know what the branch is so that we can check progress. Thanks!

@bajiat bajiat modified the milestones: Sprint 17, Sprint 18 Dec 4, 2015
@sebbel
Copy link
Contributor

sebbel commented Dec 7, 2015

This is the branch: https://github.com/apinf/api-umbrella-dashboard/tree/feature/595-userprofile-enhancement
I will continue development on wednesday

@brylie brylie removed this from the Sprint 18 milestone Dec 18, 2015
@brylie
Copy link
Contributor

brylie commented Dec 20, 2015

Sandstorm.io has a simple user profile, which is shown to new users automatically when signing up:

screenshot-1_001

These fields, labels, and help texts would also be well suited tor our profile feature.

@sebbel
Copy link
Contributor

sebbel commented Dec 20, 2015 via email

@brylie
Copy link
Contributor

brylie commented Dec 21, 2015

We have no visibility into the progress of this task without code or comments on this task. Please keep your work in progress in a branch on Github.

@sebbel
Copy link
Contributor

sebbel commented Dec 22, 2015

I have added the Meteor Avatar package but questions arise about how we will handle avatar uploads.

@brylie
Copy link
Contributor

brylie commented Dec 23, 2015

Lets not focus on the Avatar functionality yet, it is optional.

The important part is the username. Without a username field, or at least 'full name' field, we cannot implement other features.

@brylie
Copy link
Contributor

brylie commented Dec 30, 2015

@sebbel, can you take this task to require username for all users?

@sebbel
Copy link
Contributor

sebbel commented Dec 30, 2015

Would this also require setting a username on registration?

@sebbel https://github.com/sebbel, can you take this task to require
username for all users?


Reply to this email directly or view it on GitHub
https://github.com/apinf/api-umbrella-dashboard/issues/595#issuecomment-167954471
.

@brylie
Copy link
Contributor

brylie commented Dec 30, 2015

Yes, or at least having the user set their username shortly after registering. E.g. some of our users are registering via Github, so we may not get a username when they register.

@brylie
Copy link
Contributor

brylie commented Dec 30, 2015

One proposed idea was to check whether a user has set a username before rendering a route. If they don't have a username set, then redirect to their profile page or prompt them to set a username.

@bajiat bajiat assigned sebbel and unassigned brylie Dec 31, 2015
@bajiat bajiat removed this from the Sprint 19 milestone Dec 31, 2015
@bajiat bajiat added planning and removed ready labels Dec 31, 2015
@bajiat
Copy link
Contributor Author

bajiat commented Dec 31, 2015

@sebbel Hi Sebastian, just wanted to ask you whether you are willing to complete the task with the new definition of done? This is a high priority task for us, because it is blocking another task. It is ok not to do it, but if you want to complete it, it would be needed to be completed by next sprint (4 - 15 January). If you are not interested, we can also assign it to another team member. Thanks and a happy new year!

@sebbel
Copy link
Contributor

sebbel commented Dec 31, 2015

I'd love to!
Just had a chat with @brylie:

  • I will remove the avatar package
  • I will focus on the user profile feature

I want to prompt users who do not have a username yet to enter a username
upon entering the profile site. maybe it would be better to include the
username in the registration.

@sebbel https://github.com/sebbel Hi Sebastian, just wanted to ask you
whether you are willing to complete the task with the new definition of
done? This is a high priority task for us, because it is blocking another
task. It is ok not to do it, but if you want to complete it, it would be
needed to be completed by next sprint (4 - 15 January). If you are not
interested, we can also assign it to another team member. Thanks and a
happy new year!


Reply to this email directly or view it on GitHub
https://github.com/apinf/api-umbrella-dashboard/issues/595#issuecomment-168159580
.

@brylie
Copy link
Contributor

brylie commented Dec 31, 2015

I have updated the task definition with a link to the router hook. Please also make sure to use the proper route of your choice.

@bajiat bajiat changed the title Enhance user profile Ensure user name exists for all users Jan 4, 2016
@bajiat bajiat added this to the Sprint 20 milestone Jan 4, 2016
@bajiat
Copy link
Contributor Author

bajiat commented Jan 5, 2016

@sebbel Any updates on this task?

@sebbel
Copy link
Contributor

sebbel commented Jan 5, 2016

I've learned that I am supposed to use the username field inside the User Collection. Currently trying to find a way on how to link the updates of both Schemas.

@brylie
Copy link
Contributor

brylie commented Jan 5, 2016

@sebbel, pull in the recent changes from develop, as they greatly simplify the code in the onCreateUser callback.

We may not need to work with any schemas for this task. The AccountsTemplates documentation has instructions for adding a username field to the sign-up form.

The username field is attached directly to the Meteor user at the top level. as opposed to the profile.

@brylie
Copy link
Contributor

brylie commented Jan 5, 2016

@sebbel push your working branch to Github, open a pull request, and label it as WIP. We can review your code in process to offer advice.

@sebbel
Copy link
Contributor

sebbel commented Jan 5, 2016

I have pushed my working branch to github.
I managed to get this to work:

  • Users without a username are redirected to /profile and prompted to Enter a username
  • You can now also change your username on the profile page.

Current bugs:

  • If chosing an already existant username, the usernameExists function is overridden and a "Mongo db duplicate key error" is shown to the user.
  • had to remove the rules in Meteor.user.allow in order to make it work for now. Will re-implement the rules when I know what's going on.

Looking forward to your suggestions&comments @apinf/developers

@sebbel
Copy link
Contributor

sebbel commented Jan 5, 2016

I am considering to branch from the current develop and go the accounts
template route.

I don't think that we want users to be able to change their username
anytime. so forcing users to choose a username at registration seems
sufficient for solving this task.

@sebbel https://github.com/sebbel push your working branch to Github,
open a pull request, and label it as WIP. We can review your code in
process to offer advice.


Reply to this email directly or view it on GitHub
https://github.com/apinf/api-umbrella-dashboard/issues/595#issuecomment-169095322
.

@brylie
Copy link
Contributor

brylie commented Jan 6, 2016

Good idea :-)

@brylie
Copy link
Contributor

brylie commented Jan 19, 2016

Closed by PR #752

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

No branches or pull requests

4 participants