Commit 58f9d45f277a79b69cb4c9c76b257c724712b126
1 parent
1236efbf
Exists in
master
and in
6 other branches
Improve oauth login/signup
Showing
2 changed files
with
20 additions
and
4 deletions
Show diff stats
index.html
| ... | ... | @@ -397,8 +397,12 @@ |
| 397 | 397 | <label for="user_password_confirmation" class="label">Confirme a senha:</label> |
| 398 | 398 | <input id="user_password_confirmation" name="password_confirmation" type="password" placeholder="Confirme a senha"> |
| 399 | 399 | </div> |
| 400 | + <div class="oauth-providers"> | |
| 401 | + <input id="user_oauth_providers" name="oauth_providers" type="hidden"> | |
| 402 | + </div> | |
| 400 | 403 | <div class="captcha col-sm-12"> |
| 401 | 404 | <div id="g-recaptcha"></div> |
| 405 | + </div> | |
| 402 | 406 | </div> |
| 403 | 407 | <div class="actions col-sm-12"> |
| 404 | 408 | <div class="row"> | ... | ... |
js/main.js
| ... | ... | @@ -188,7 +188,7 @@ define(['handlebars', 'fastclick', 'handlebars_helpers'], function(Handlebars, F |
| 188 | 188 | $('.talk-proposal-container').hide(); |
| 189 | 189 | }, |
| 190 | 190 | |
| 191 | - loginCallback: function(loggedIn, token) { | |
| 191 | + loginCallback: function(loggedIn, token, user) { | |
| 192 | 192 | logged_in = loggedIn; |
| 193 | 193 | $('.login .message').text(''); |
| 194 | 194 | |
| ... | ... | @@ -200,6 +200,16 @@ define(['handlebars', 'fastclick', 'handlebars_helpers'], function(Handlebars, F |
| 200 | 200 | loginButton.siblings('.require-login .message').show(); |
| 201 | 201 | loginButton.siblings('.login-container').hide(); |
| 202 | 202 | $.cookie('_dialoga_session', Main.private_token); |
| 203 | + } else if (user) { | |
| 204 | + var loginContainer = loginButton.siblings('.login-container'); | |
| 205 | + loginContainer.show(); | |
| 206 | + loginContainer.find('.new-user').click(); | |
| 207 | + var signupForm = loginContainer.find('#signup-form'); | |
| 208 | + signupForm.find("#user_email").val(user.email); | |
| 209 | + signupForm.find("#user_name").val(user.login); | |
| 210 | + signupForm.find("#user_oauth_providers").val(user.oauth_providers); | |
| 211 | + signupForm.find(".password").hide(); | |
| 212 | + signupForm.find(".password-confirmation").hide(); | |
| 203 | 213 | } else { |
| 204 | 214 | loginButton.siblings('.require-login').hide(); |
| 205 | 215 | loginButton.siblings('.login-container').show(); |
| ... | ... | @@ -714,11 +724,13 @@ define(['handlebars', 'fastclick', 'handlebars_helpers'], function(Handlebars, F |
| 714 | 724 | $(document).on('click', '.new-user', function(e) { |
| 715 | 725 | var loginForm = $(this).parents('#login-form'); |
| 716 | 726 | var signupForm = loginForm.siblings('#signup-form'); |
| 717 | - | |
| 727 | + | |
| 718 | 728 | loginForm.hide(); |
| 719 | 729 | signupForm.show(); |
| 730 | + signupForm.find(".password").show(); | |
| 731 | + signupForm.find(".password-confirmation").show(); | |
| 720 | 732 | loginForm.find('.message').hide(); |
| 721 | - console.log(signupForm.find('#g-recaptcha')[0]); | |
| 733 | + signupForm.find('#g-recaptcha').empty(); | |
| 722 | 734 | grecaptcha.render(signupForm.find('#g-recaptcha')[0], {'sitekey' : window.recaptchaSiteKey }); |
| 723 | 735 | e.preventDefault(); |
| 724 | 736 | }) |
| ... | ... | @@ -785,7 +797,7 @@ define(['handlebars', 'fastclick', 'handlebars_helpers'], function(Handlebars, F |
| 785 | 797 | |
| 786 | 798 | window.addEventListener("message", function(ev) { |
| 787 | 799 | if (ev.data.message === "oauthClientPluginResult") { |
| 788 | - Main.loginCallback(ev.data.logged_in, ev.data.private_token); | |
| 800 | + Main.loginCallback(ev.data.logged_in, ev.data.private_token, ev.data.user); | |
| 789 | 801 | ev.source.close(); |
| 790 | 802 | } |
| 791 | 803 | }); | ... | ... |