bizley / yii2-podium

Yii 2 forum module project
Apache License 2.0
168 stars 59 forks source link

Podium does not inherited user name #104

Closed davidnewcomb closed 7 years ago

davidnewcomb commented 7 years ago

Podium does not inherited user name.

'podium' => [
    'class' => 'bizley\podium\Podium'
    ,'userComponent' => 'user'
    ,'rbacComponent' => 'authManager'
    ,'adminId' => 1
],

When I log in to the main application then go to Podium it displays Podium generated user names (e.g. user_14910707645469) instead of the user's real user name as I was expecting.

There are several other places where the Podium behaviour is not inline with managing user information in the main site. I am thinking specifically of the "Account Details" page where a user can change their user name and their password.

bizley commented 7 years ago

Well, this is done on purpose.

Podium asks user for the nickname because it does not know which field of User model is the correct one. The same reason why you need to tell which field holds the password hash. I'm thinking now maybe developer needs to be asked for another field like username in this case. While option to set custom forum nickname should stay (because not everyone likes to show true name using the forum), this could be the enhancement to make one less step of integration between classic app and Podium.

As for the name and password changing it works only when Podium takes care of user identity. When it's inherited it is not possible to change these two from inside Podium.

davidnewcomb commented 7 years ago

As you have written all that code to handle nicknames, I think a flag option could be a better choice. I understand your reasoning, but you are looking at it from the perspective of someone who runs Podium as their main site, which is not the case here.

I agree, you do need to know the username field in the User model. There username is their username and it should be consistent across all the applications living in my site. When trying to build a social/community site it doesn't make sense to have the same users appearing under different user names in different parts of the site. It would just cause confusion.

There are plenty of Yii2 apps that have their own user profile and stitching them all together can be a real challenge. Taking the user name from the actual user model would help a lot.

If it is not possible for the name and password to be updated when the user identity is handled elsewhere then they should not appear in the view.

And thanks for all your hard work!

bizley commented 7 years ago

I've slept on this and it definitely is a good idea to add as an option. Thanks!

davidnewcomb commented 7 years ago

My site is nearing completion and this is a blocker for my release, so I have decided to help you out.

Do you have any tips on where to start?

bizley commented 7 years ago

Oh, sorry for delay, it's almost ready. I'll push the code today (but still on dev-master).