Commit f5e0759dd33b824a99825b6b4c5aba61608c3367
1 parent
59545714
Exists in
master
and in
5 other branches
fix login handler (fix #325)
Showing
1 changed file
with
41 additions
and
10 deletions
Show diff stats
js/main.js
... | ... | @@ -657,8 +657,9 @@ define(['jquery', 'handlebars', 'fastclick', 'handlebars_helpers', 'piwik'], fun |
657 | 657 | showLogout: function(){ |
658 | 658 | $('#login-button').hide(); |
659 | 659 | var name = ''; |
660 | - if(this.user){ | |
661 | - name = this.user.person.name + ' - '; | |
660 | + var user = Main.getUser(); | |
661 | + if(user){ | |
662 | + name = user.person.name + ' - '; | |
662 | 663 | } |
663 | 664 | $('#logout-button .name').text(name); |
664 | 665 | $('#logout-button').show(); |
... | ... | @@ -830,6 +831,10 @@ define(['jquery', 'handlebars', 'fastclick', 'handlebars_helpers', 'piwik'], fun |
830 | 831 | .removeClass('col-sm-4') |
831 | 832 | .addClass('col-sm-12'); |
832 | 833 | |
834 | + if(logged_in){ | |
835 | + Main.showLogout(); | |
836 | + } | |
837 | + | |
833 | 838 | $(document).on('click', '#login-button', function (e){ |
834 | 839 | e.preventDefault(); |
835 | 840 | loginButton = $(this); |
... | ... | @@ -1071,7 +1076,6 @@ define(['jquery', 'handlebars', 'fastclick', 'handlebars_helpers', 'piwik'], fun |
1071 | 1076 | //withCredentials: true |
1072 | 1077 | } |
1073 | 1078 | }).done(function(data) { |
1074 | - $(document).trigger('login:success', data); | |
1075 | 1079 | |
1076 | 1080 | var $sectionContent = $form.closest('.section-content'); |
1077 | 1081 | if($sectionContent && $sectionContent.length > 0){ |
... | ... | @@ -1083,8 +1087,8 @@ define(['jquery', 'handlebars', 'fastclick', 'handlebars_helpers', 'piwik'], fun |
1083 | 1087 | $loginPanel.hide(); |
1084 | 1088 | } |
1085 | 1089 | |
1090 | + $(document).trigger('login:success', data); | |
1086 | 1091 | }).fail(function(data) { |
1087 | - $(document).trigger('login:fail', data); | |
1088 | 1092 | |
1089 | 1093 | $message.show(); |
1090 | 1094 | if(data.status==401){ |
... | ... | @@ -1092,6 +1096,8 @@ define(['jquery', 'handlebars', 'fastclick', 'handlebars_helpers', 'piwik'], fun |
1092 | 1096 | }else{ |
1093 | 1097 | $message.text('Um erro inesperado ocorreu'); |
1094 | 1098 | } |
1099 | + | |
1100 | + $(document).trigger('login:fail', data); | |
1095 | 1101 | }); |
1096 | 1102 | }); |
1097 | 1103 | |
... | ... | @@ -1135,9 +1141,10 @@ define(['jquery', 'handlebars', 'fastclick', 'handlebars_helpers', 'piwik'], fun |
1135 | 1141 | message.text(''); |
1136 | 1142 | |
1137 | 1143 | var signup = $(this).parents('form.signup'); |
1138 | - var loading = $('.login-container .loading'); | |
1139 | - loading.show(); | |
1144 | + var $loading = $('.login-container .loading'); | |
1145 | + $loading.show(); | |
1140 | 1146 | signup.hide(); |
1147 | + signup.removeClass('hide'); | |
1141 | 1148 | var button = $(this); |
1142 | 1149 | |
1143 | 1150 | $.ajax({ |
... | ... | @@ -1145,15 +1152,39 @@ define(['jquery', 'handlebars', 'fastclick', 'handlebars_helpers', 'piwik'], fun |
1145 | 1152 | url: host + '/api/v1/register', |
1146 | 1153 | data: $(this).parents('.signup').serialize(), |
1147 | 1154 | }).done(function(data) { |
1148 | - Main.loginCallback(true, data.private_token); | |
1149 | - Main.displaySuccess(button.closest('.section-content'), 'Cadastro efetuado com sucesso', 1000, 'icon-user-created'); | |
1155 | + | |
1156 | + var $sectionContent = button.closest('.section-content'); | |
1157 | + if($sectionContent && $sectionContent.length > 0){ | |
1158 | + Main.displaySuccess($sectionContent, 'Cadastro efetuado com sucesso', 1000, 'icon-user-created'); | |
1159 | + } | |
1160 | + | |
1161 | + $(document).trigger('login:success', data); | |
1150 | 1162 | }).fail(function(data) { |
1151 | - var msg = Main.responseToText(data.responseJSON.message); | |
1163 | + var msg = ""; | |
1164 | + try{ | |
1165 | + msg = Main.responseToText(data.responseJSON.message); | |
1166 | + }catch(ex){ | |
1167 | + var ptBR = {}; | |
1168 | + // (Invalid request) email can't be saved | |
1169 | + ptBR['(Invalid request) email can\'t be saved'] = 'E-mail inválido.'; | |
1170 | + // (Invalid request) login can't be saved | |
1171 | + ptBR['(Invalid request) login can\'t be saved'] = 'Nome de usuário inválido.'; | |
1172 | + | |
1173 | + msg = ptBR[data.responseJSON.message] || data.responseJSON.message; | |
1174 | + } | |
1175 | + | |
1152 | 1176 | message.show(); |
1153 | 1177 | message.html('Não foi possível efetuar o cadastro: <br/><br/>' + msg); |
1178 | + | |
1179 | + $(document).trigger('login:fail', data); | |
1154 | 1180 | }).always(function() { |
1155 | - loading.hide(); | |
1181 | + $loading.hide(); | |
1156 | 1182 | signup.show(); |
1183 | + | |
1184 | + // var $loginPanel = $loading.closest('#login-panel'); | |
1185 | + // if($loginPanel && $loginPanel.length > 0){ | |
1186 | + // $loginPanel.hide(); | |
1187 | + // } | |
1157 | 1188 | }); |
1158 | 1189 | grecaptcha.reset(); |
1159 | 1190 | e.preventDefault(); | ... | ... |