Commit 5d61952f47bc8ae6579d61eac4f9e6098f65dbe6
1 parent
df979628
Exists in
master
and in
6 other branches
Fix contact params. Add feedback messages
Showing
3 changed files
with
65 additions
and
39 deletions
Show diff stats
src/app/components/article-service/article.service.js
@@ -214,7 +214,12 @@ | @@ -214,7 +214,12 @@ | ||
214 | 214 | ||
215 | function sendContactForm (community_id, data){ | 215 | function sendContactForm (community_id, data){ |
216 | var url = service.apiCommunities + community_id + '/contact' | 216 | var url = service.apiCommunities + community_id + '/contact' |
217 | - var encodedParams = angular.element.param(data); | 217 | + var encodedParams = [ |
218 | + 'contact[name]=' + data.name, | ||
219 | + 'contact[email]=' + data.email, | ||
220 | + 'contact[subject]=' + data.subject, | ||
221 | + 'contact[message]=' + data.message | ||
222 | + ].join('&'); | ||
218 | 223 | ||
219 | return UtilService.post(url, encodedParams); | 224 | return UtilService.post(url, encodedParams); |
220 | } | 225 | } |
src/app/pages/duvidas/duvidas.controller.js
@@ -59,11 +59,11 @@ | @@ -59,11 +59,11 @@ | ||
59 | 59 | ||
60 | vm.DialogaService.sendContactForm(data) | 60 | vm.DialogaService.sendContactForm(data) |
61 | .then(function(response){ | 61 | .then(function(response){ |
62 | - vm.$log.debug('sendContactForm success', response); | ||
63 | - | 62 | + // vm.$log.debug('sendContactForm success', response); |
63 | + vm.successMessage = 'Mensagem enviada com sucesso!'; | ||
64 | }, function(response){ | 64 | }, function(response){ |
65 | - vm.$log.debug('sendContactForm error', response); | ||
66 | - | 65 | + vm.$log.warn('sendContactForm error', response); |
66 | + vm.errorMessage = 'Erro ao enviar mensagem. Tente novamente mais tarde.'; | ||
67 | }) | 67 | }) |
68 | .finally(function(response){ | 68 | .finally(function(response){ |
69 | vm.$log.debug('sendContactForm finally', response); | 69 | vm.$log.debug('sendContactForm finally', response); |
src/app/pages/duvidas/duvidas.html
@@ -38,45 +38,66 @@ | @@ -38,45 +38,66 @@ | ||
38 | </div> | 38 | </div> |
39 | 39 | ||
40 | <div class="row"> | 40 | <div class="row"> |
41 | - <form role="form" name="contactForm" ng-submit="pageDuvidas.submitContactForm($event, contactForm)" novalidate> | ||
42 | - <div class="form-group"> | ||
43 | - <label for="inputSubject">Assunto*</label> | ||
44 | - <select id="inputSubject" name="inputSubject" class="form-control input-lg dark-input" ng-model="data.inputSubject" required> | ||
45 | - <option value="">-- Selecione um Assunto --</option> | ||
46 | - <option value="Dúvidas">Dúvidas</option> | ||
47 | - <option value="Outro">Outro</option> | ||
48 | - </select> | ||
49 | - <validation-messages field="contactForm.inputSubject"/> | ||
50 | - </div> | ||
51 | - <div class="row"> | ||
52 | - <div class="col-sm-6"> | ||
53 | - <div class="form-group"> | ||
54 | - <label for="inputName">Nome*</label> | ||
55 | - <input type="text" id="inputName" name="inputName" class="form-control input-lg light-input" ng-class="{ 'has-error' : contactForm.inputName.$invalid && contactForm.inputName.$touched }" ng-model="inputName" ng-minlength="" ng-maxlength="" required> | ||
56 | - <validation-messages field="contactForm.inputName"/> | 41 | + <div class="col-sm-12"> |
42 | + <form role="form" name="contactForm" ng-submit="pageDuvidas.submitContactForm($event, contactForm)" novalidate> | ||
43 | + <div class="row"> | ||
44 | + <div class="col-sm-6"> | ||
45 | + <div class="form-group"> | ||
46 | + <label for="inputSubject">Assunto*</label> | ||
47 | + <select id="inputSubject" name="inputSubject" class="form-control input-lg dark-input" ng-model="data.inputSubject" required> | ||
48 | + <option value="">-- Selecione um Assunto --</option> | ||
49 | + <option value="Dúvidas">Dúvidas</option> | ||
50 | + <option value="Sugestões">Sugestões</option> | ||
51 | + <option value="Outro">Outro</option> | ||
52 | + </select> | ||
53 | + <validation-messages field="contactForm.inputSubject"></validation-messages> | ||
54 | + </div> | ||
57 | </div> | 55 | </div> |
58 | </div> | 56 | </div> |
59 | - <div class="col-sm-6"> | ||
60 | - <div class="form-group"> | ||
61 | - <label for="inputEmail">E-mail*</label> | ||
62 | - <input type="email" id="inputEmail" name="inputEmail" class="form-control input-lg light-input" ng-class="{ 'has-error' : contactForm.inputEmail.$invalid && contactForm.inputEmail.$touched }" ng-model="inputEmail" ng-minlength="" ng-maxlength="" required> | ||
63 | - <validation-messages field="contactForm.inputEmail"/> | 57 | + <div class="row"> |
58 | + <div class="col-sm-6"> | ||
59 | + <div class="form-group"> | ||
60 | + <label for="inputName">Nome*</label> | ||
61 | + <input type="text" id="inputName" name="inputName" class="form-control input-lg light-input" ng-class="{ 'has-error' : contactForm.inputName.$invalid && contactForm.inputName.$touched }" ng-model="inputName" ng-minlength="" ng-maxlength="" required> | ||
62 | + <validation-messages field="contactForm.inputName"></validation-messages> | ||
63 | + </div> | ||
64 | + </div> | ||
65 | + <div class="col-sm-6"> | ||
66 | + <div class="form-group"> | ||
67 | + <label for="inputEmail">E-mail*</label> | ||
68 | + <input type="email" id="inputEmail" name="inputEmail" class="form-control input-lg light-input" ng-class="{ 'has-error' : contactForm.inputEmail.$invalid && contactForm.inputEmail.$touched }" ng-model="inputEmail" ng-minlength="" ng-maxlength="" required> | ||
69 | + <validation-messages field="contactForm.inputEmail"></validation-messages> | ||
70 | + </div> | ||
64 | </div> | 71 | </div> |
65 | </div> | 72 | </div> |
66 | - </div> | ||
67 | - <div class="form-group"> | ||
68 | - <label for="inputMessage">Mensagem*</label> | ||
69 | - <textarea id="inputMessage" name="inputMessage" class="mensagem-text-area form-control light-input" ng-class="{ 'has-error' : contactForm.inputMessage.$invalid && contactForm.inputMessage.$touched }" ng-model="inputMessage" required ></textarea> | ||
70 | - <validation-messages field="contactForm.inputMessage"/> | ||
71 | - </div> | ||
72 | - <span class="pull-left">*Dados obrigatórios</span> | ||
73 | - <div class="row"> | ||
74 | - <div class="col-sm-4 form-group pull-right"> | ||
75 | - <button class="btn btn-lg btn-block btn-submit" type="submit">Enviar Mensagem</button> | ||
76 | - <span ng-show="vm.sendingContactForm">Enviando...</span> | 73 | + <div class="form-group"> |
74 | + <label for="inputMessage">Mensagem*</label> | ||
75 | + <textarea id="inputMessage" name="inputMessage" class="mensagem-text-area form-control light-input" ng-class="{ 'has-error' : contactForm.inputMessage.$invalid && contactForm.inputMessage.$touched }" ng-model="inputMessage" required ></textarea> | ||
76 | + <validation-messages field="contactForm.inputMessage"></validation-messages> | ||
77 | </div> | 77 | </div> |
78 | - </div> | ||
79 | - </form> | 78 | + <span class="pull-left">*Dados obrigatórios</span> |
79 | + <div class="row"> | ||
80 | + <div class="col-sm-4 form-group pull-right"> | ||
81 | + <div class="row" ng-show="pageDuvidas.sendingContactForm"> | ||
82 | + <div class="col-sm-12"> | ||
83 | + <div class="alert alert-info" role="alert">Enviando formulário...</div> | ||
84 | + </div> | ||
85 | + </div> | ||
86 | + <div class="row" ng-if="pageDuvidas.successMessage"> | ||
87 | + <div class="col-sm-12"> | ||
88 | + <div class="alert alert-success" role="alert">{{pageDuvidas.successMessage}}</div> | ||
89 | + </div> | ||
90 | + </div> | ||
91 | + <div class="row" ng-if="pageDuvidas.errorMessage"> | ||
92 | + <div class="col-sm-12"> | ||
93 | + <div class="alert alert-danger" role="alert">{{pageDuvidas.errorMessage}}</div> | ||
94 | + </div> | ||
95 | + </div> | ||
96 | + <button class="btn btn-lg btn-block btn-submit" type="submit">Enviar Mensagem</button> | ||
97 | + </div> | ||
98 | + </div> | ||
99 | + </form> | ||
100 | + </div> | ||
80 | </div> | 101 | </div> |
81 | </div> | 102 | </div> |
82 | </section> | 103 | </section> |