Commit 8a19bd733d575f868b90f0b0a17e2fd01e58f861

Authored by Leonardo Merlin
1 parent bf5d44b9

Fix handler of unauthorized captcha

src/app/components/proposal-box/proposal-box.directive.js
... ... @@ -58,10 +58,6 @@
58 58 });
59 59  
60 60 vm.$scope.$on('proposal-box:vote-response', function(event, data) {
61   - vm.$log.debug('proposal-box:vote-response');
62   - vm.$log.debug('event', event);
63   - vm.$log.debug('data', data);
64   -
65 61 if (data.success) {
66 62 vm.STATE = vm.VOTE_STATUS.SUCCESS;
67 63 }
... ... @@ -73,6 +69,8 @@
73 69 if (data.code === 401) {
74 70 vm.message = 'Não autorizado.';
75 71 }
  72 +
  73 + vm.messageCode = data.code;
76 74 });
77 75  
78 76 // Load captcha
... ... @@ -125,10 +123,11 @@
125 123  
126 124 // SEND VOTE
127 125 if (vm._oldVoteValue) {
128   - // hide captcha form
129   - vm.showCaptchaForm = false;
130 126 vm.vote(vm._oldVoteValue);
  127 + vm._oldVoteValue = null;
131 128 }
  129 + // hide captcha form
  130 + vm.showCaptchaForm = false;
132 131  
133 132 }, function(data) {
134 133 // ERROR
... ... @@ -170,6 +169,7 @@
170 169 ProposalBoxController.prototype.vote = function(value) {
171 170 var vm = this;
172 171  
  172 + vm._oldVoteValue = value;
173 173 if (vm.canVote()) {
174 174 if (vm.doVote) {
175 175 vm.doVote({
... ... @@ -181,7 +181,6 @@
181 181 }
182 182 }else {
183 183 vm.$log.debug('You cannot vote.');
184   - vm._oldVoteValue = value;
185 184 vm.showCaptchaForm = true;
186 185  
187 186 angular.element('#captcha_text').focus();
... ...
src/app/components/proposal-box/proposal-box.html
... ... @@ -52,8 +52,10 @@
52 52 </div>
53 53 <div class="feedback" ng-if="vm.STATE === vm.VOTE_STATUS.ERROR">
54 54 <p class="feedback--title">Erro!</p>
55   - <p class="feedback--message" ng-if="vm.message">
56   - Motivo: {{vm.message}}
  55 + <p class="feedback--message" ng-if="vm.messageCode === 401">
  56 + Não autorizado. Insira um novo captcha.
  57 + <br>
  58 + <button type="button" class="btn btn-link" ng-click="vm.captchaTryAgain()">Gerar novo captcha</button>
57 59 </p>
58 60 </div>
59 61 </div>
... ...