EzGenerator provides users with the ability to login to the site via Facebook API.
Users in this case may or may not have already account in the EzGenerator site.
How it works:
1. User is prompted (via Facebook API) to login to Facebook (if user is already logged into Facebook, this step is skipped).
2. User's email, username and other public data is recieved from the API.
3. System check the email provided and matches it against the current site users e-mails.
3.1. If match is found, user is logged with the matched user data
3.2. If match is not found, new users is created with the given e-mail and the user data, provided by Facebook (username is re-worked to obey the EzGenerator username patterns).
Note: If email doesn't match, and new user is created, but the new created username matches another one in the system, the user creation will fail (with MySQL error) and user won't be able to login.
Although chances are small for this to happen, it's not impossible.
To prevent this, make sure all users have e-mail addresses in your site.
Note2: As new EzGenerator users, created via Facebook login have random password, that's not recovarable and never shown anywhere, for the user to be able to login the normal way (username/password), he will need to first request new password via "Forgot your password" link in the login section.