Commit 8d1ca22899405581f17e5e2a2bcdda3545e72e13
1 parent
95923e83
Exists in
master
and in
8 other branches
default
Showing
15 changed files
with
353 additions
and
287 deletions
Show diff stats
src/app/components/cadastro-proposta/cadastro-proposta.directive.js
| @@ -9,22 +9,19 @@ | @@ -9,22 +9,19 @@ | ||
| 9 | function cadastroProposta() { | 9 | function cadastroProposta() { |
| 10 | 10 | ||
| 11 | /** @ngInject */ | 11 | /** @ngInject */ |
| 12 | - function CadastroPropostaController(ArticleService, $scope, $element, $timeout, $log) { | 12 | + function CadastroPropostaController ($scope, $element, $timeout, $log) { |
| 13 | $log.debug('cadastroPropostaController'); | 13 | $log.debug('cadastroPropostaController'); |
| 14 | 14 | ||
| 15 | var vm = this; | 15 | var vm = this; |
| 16 | - vm.ArticleService = ArticleService; | ||
| 17 | vm.$scope = $scope; | 16 | vm.$scope = $scope; |
| 18 | vm.$element = $element; | 17 | vm.$element = $element; |
| 19 | vm.$timeout = $timeout; | 18 | vm.$timeout = $timeout; |
| 20 | vm.$log = $log; | 19 | vm.$log = $log; |
| 21 | 20 | ||
| 22 | vm.init(); | 21 | vm.init(); |
| 23 | - | ||
| 24 | - vm.loadData(); | ||
| 25 | } | 22 | } |
| 26 | 23 | ||
| 27 | - CadastroPropostaController.prototype.loadData = function () { | 24 | + CadastroPropostaController.prototype.init = function () { |
| 28 | // async values | 25 | // async values |
| 29 | var vm = this; | 26 | var vm = this; |
| 30 | 27 | ||
| @@ -37,10 +34,10 @@ | @@ -37,10 +34,10 @@ | ||
| 37 | function attachPopover(){ | 34 | function attachPopover(){ |
| 38 | var vm = this; | 35 | var vm = this; |
| 39 | 36 | ||
| 40 | - vm.popover = angular.element(vm.$element.find('.texto-proposta')); | 37 | + vm.popover = angular.element(vm.$element.find('.link-popover')); |
| 41 | vm.popover.popover({ | 38 | vm.popover.popover({ |
| 42 | html: true, | 39 | html: true, |
| 43 | - placement: 'right', | 40 | + placement: 'bottom', |
| 44 | animation: true, | 41 | animation: true, |
| 45 | title: 'Regra de posição das propostas', | 42 | title: 'Regra de posição das propostas', |
| 46 | content: '<p>Poderia escrever a sua proposta em um texto simples e breve?</p><br><p>Sua proposta passará pela fase de moderação. Assim que ela estiver pronta para compartilhar, avisaremos você.' | 43 | content: '<p>Poderia escrever a sua proposta em um texto simples e breve?</p><br><p>Sua proposta passará pela fase de moderação. Assim que ela estiver pronta para compartilhar, avisaremos você.' |
| @@ -50,10 +47,7 @@ | @@ -50,10 +47,7 @@ | ||
| 50 | var directive = { | 47 | var directive = { |
| 51 | restrict: 'E', | 48 | restrict: 'E', |
| 52 | templateUrl: 'app/components/cadastro-proposta/cadastro-proposta.html', | 49 | templateUrl: 'app/components/cadastro-proposta/cadastro-proposta.html', |
| 53 | - scope: { | ||
| 54 | - programa: '=', | ||
| 55 | - proposta: '=', | ||
| 56 | - }, | 50 | + scope: {}, |
| 57 | controller: CadastroPropostaController, | 51 | controller: CadastroPropostaController, |
| 58 | controllerAs: 'vm', | 52 | controllerAs: 'vm', |
| 59 | bindToController: true | 53 | bindToController: true |
src/app/components/cadastro-proposta/cadastro-proposta.html
| 1 | <div id="message" class="envio-proposta"> | 1 | <div id="message" class="envio-proposta"> |
| 2 | - <div class="row linha-proposta"> | ||
| 3 | - <div class="col-sm-8"> | ||
| 4 | - <span class="titulo-envio-proposta">Faça sua proposta</span> | ||
| 5 | - <p> | ||
| 6 | - Aqui você cadastra sua proposta e ajuda a construir um Brasil melhor. | ||
| 7 | - </p> | ||
| 8 | - </div> | ||
| 9 | - </div> | ||
| 10 | - <div class="row linha-proposta"> | ||
| 11 | - <div class="col-sm-8"> | ||
| 12 | - <p>Você está fazendo uma proposta para o programa:</p> | ||
| 13 | - <div class="bloco-programa"> | ||
| 14 | - <span class="texto-programa">{{ ::vm.programa }}</span> | ||
| 15 | - </div> | ||
| 16 | - </div> | ||
| 17 | - </div> | ||
| 18 | - <form role="form" name="envioProposta" ng-submit="" novalidate> | ||
| 19 | - <div class="row linha-proposta"> | ||
| 20 | - <div class="col-sm-8"> | ||
| 21 | - <div class="form-group"> | ||
| 22 | - <p>Descrição da proposta*</p> | ||
| 23 | - <!-- <label for="proposta">Descrição da proposta*</label> --> | ||
| 24 | - <textarea id="proposta" name="proposta" form="envioProposta" class="texto-proposta form-control" ng-class="{ 'has-error' : envioProposta.proposta.$invalid && envioProposta.proposta.$touched }" ng-model="vm.proposta" required ng-maxlength="200" ></textarea> | ||
| 25 | - <div ng-show="envioProposta.proposta.$touched"> | ||
| 26 | - <div ng-messages="envioProposta.proposta.$error"> | ||
| 27 | - <div ng-messages-include="./app/pages/geral/error-messages.html"></div> | ||
| 28 | - </div> | ||
| 29 | - </div> | ||
| 30 | - <span class="pull-left">*Dados obrigatórios</span> | ||
| 31 | - <span class="pull-right">Máx. 200 caracteres</span> | ||
| 32 | - </div> | ||
| 33 | - </div> | ||
| 34 | - </div> | ||
| 35 | - <div class="row linha-proposta"> | ||
| 36 | - <div class="col-sm-3"> | ||
| 37 | - <div class="form-group"> | ||
| 38 | - <button class="btn btn-lg btn-block btn-submit" type="submit">Enviar Proposta</button> | ||
| 39 | - </div> | ||
| 40 | - </div> | ||
| 41 | - </div> | ||
| 42 | - </div> | ||
| 43 | -</form> | ||
| 44 | - | ||
| 45 | -</div> | ||
| 46 | \ No newline at end of file | 2 | \ No newline at end of file |
| 3 | + <div class="row linha-proposta"> | ||
| 4 | + <div class="col-sm-8"> | ||
| 5 | + <span class="titulo-envio-proposta">Faça sua proposta</span> | ||
| 6 | + <p> | ||
| 7 | + Aqui você cadastra sua proposta e ajuda a construir um Brasil melhor. | ||
| 8 | + </p> | ||
| 9 | + </div> | ||
| 10 | + </div> | ||
| 11 | + <div class="row linha-proposta"> | ||
| 12 | + <div class="col-sm-8"> | ||
| 13 | + <p>Você está fazendo uma proposta para o programa:</p> | ||
| 14 | + <div class="bloco-programa"> | ||
| 15 | + <span class="texto-programa">Nome do progama</span> | ||
| 16 | + </div> | ||
| 17 | + </div> | ||
| 18 | + </div> | ||
| 19 | + <form role="form" name="testeForm" ng-submit="pageSignin.login(pageSignin.credentials)" novalidate> | ||
| 20 | + <div class="form-group"> | ||
| 21 | + <div class="row linha-proposta"> | ||
| 22 | + <div class="col-sm-8"> | ||
| 23 | + <span>Descrição da proposta*</span> | ||
| 24 | + <a tabindex="0" class="btn btn-link link-popover" role="button" data-toggle="popover" data-trigger="focus">?</a> | ||
| 25 | + <textarea id="proposta" name="proposta" class="texto-proposta form-control" | ||
| 26 | + ng-class="{ 'has-error' : testeForm.proposta.$invalid && testeForm.proposta.$touched }" | ||
| 27 | + ng-model="proposta" | ||
| 28 | + required ng-maxlength="200" ></textarea> | ||
| 29 | + <form-messages field="testeForm.proposta" maxlength="'Ops, esse campo não pode ser maior que 200 caracteres.'"/> | ||
| 30 | + <span class="pull-left">*Dados obrigatórios</span> | ||
| 31 | + <span class="pull-right">Máx. 200 caracteres</span> | ||
| 32 | + </div> | ||
| 33 | + </div> | ||
| 34 | + </div> | ||
| 35 | + <div class="form-group"> | ||
| 36 | + <div class="col-sm-4"> | ||
| 37 | + <button class="btn btn-lg btn-block btn-submit" type="submit">Enviar Proposta</button> | ||
| 38 | + </div> | ||
| 39 | + </div> | ||
| 40 | + </form> | ||
| 41 | +</div> |
src/app/components/cadastro-proposta/cadastro-proposta.scss
| @@ -24,4 +24,28 @@ | @@ -24,4 +24,28 @@ | ||
| 24 | height: 200px; | 24 | height: 200px; |
| 25 | resize: none; | 25 | resize: none; |
| 26 | } | 26 | } |
| 27 | + | ||
| 28 | + .popover .fade .right .in { | ||
| 29 | + top: 0px!important; | ||
| 30 | + } | ||
| 31 | + | ||
| 32 | + .popover-content { | ||
| 33 | + width: 300px; | ||
| 34 | + } | ||
| 35 | + | ||
| 36 | + .popover-title { | ||
| 37 | + display: none; | ||
| 38 | + } | ||
| 39 | + | ||
| 40 | + .btn-question { | ||
| 41 | + color: #484848; | ||
| 42 | + background-color: #fff; | ||
| 43 | + display: inline-block; | ||
| 44 | + text-align: center; | ||
| 45 | + width: 22px; | ||
| 46 | + height: 22px; | ||
| 47 | + margin-left: 10px; | ||
| 48 | + padding: 0; | ||
| 49 | + border-radius: 10px; | ||
| 50 | + } | ||
| 27 | } | 51 | } |
src/app/components/form-messages/form-messages.directive.js
0 → 100644
| @@ -0,0 +1,52 @@ | @@ -0,0 +1,52 @@ | ||
| 1 | +(function() { | ||
| 2 | + 'use strict'; | ||
| 3 | + | ||
| 4 | + angular | ||
| 5 | + .module('dialoga') | ||
| 6 | + .directive('formMessages', formMessages); | ||
| 7 | + | ||
| 8 | + /** @ngInject */ | ||
| 9 | + function formMessages() { | ||
| 10 | + | ||
| 11 | + /** @ngInject */ | ||
| 12 | + function FormMessagesController($log) { | ||
| 13 | + $log.debug('FormMessagesController'); | ||
| 14 | + | ||
| 15 | + var vm = this; | ||
| 16 | + vm.$log = $log; | ||
| 17 | + | ||
| 18 | + vm.init(); | ||
| 19 | + | ||
| 20 | + } | ||
| 21 | + | ||
| 22 | + FormMessagesController.prototype.init = function () { | ||
| 23 | + // async values | ||
| 24 | + var vm = this; | ||
| 25 | + | ||
| 26 | + if (!vm.required) {vm.required = "Ops, o campo é obrigatório."}; | ||
| 27 | + if (!vm.minlength) {vm.minlength = "O campo deve ser maior."}; | ||
| 28 | + if (!vm.maxlength) {vm.maxlength = "O campo deve ser menor"}; | ||
| 29 | + if (!vm.email) {vm.email = "O endereço de e-mail deve ser válido"}; | ||
| 30 | + | ||
| 31 | + }; | ||
| 32 | + | ||
| 33 | + var directive = { | ||
| 34 | + restrict: 'E', | ||
| 35 | + templateUrl: 'app/components/form-messages/form-messages.html', | ||
| 36 | + scope: { | ||
| 37 | + field: '=', | ||
| 38 | + required: '=', | ||
| 39 | + minlength: '=', | ||
| 40 | + maxlength: '=', | ||
| 41 | + email: '=' | ||
| 42 | + }, | ||
| 43 | + controller: FormMessagesController, | ||
| 44 | + controllerAs: 'vm', | ||
| 45 | + bindToController: true | ||
| 46 | + }; | ||
| 47 | + | ||
| 48 | + return directive; | ||
| 49 | + } | ||
| 50 | + | ||
| 51 | +})(); | ||
| 52 | + |
| @@ -0,0 +1,10 @@ | @@ -0,0 +1,10 @@ | ||
| 1 | +<div ng-show="vm.field.$touched"> | ||
| 2 | + <div ng-messages="vm.field.$error"> | ||
| 3 | + <div class="error-message"> | ||
| 4 | + <div ng-message="required">{{vm.required}}</div> | ||
| 5 | + <div ng-message="minlength">{{vm.minlength}}</div> | ||
| 6 | + <div ng-message="maxlength">{{vm.maxlength}}</div> | ||
| 7 | + <div ng-message="email">{{vm.email}}</div> | ||
| 8 | + </div> | ||
| 9 | + </div> | ||
| 10 | +</div> |
src/app/components/proposal-list/proposal-list.html
| @@ -9,7 +9,8 @@ | @@ -9,7 +9,8 @@ | ||
| 9 | <tr> | 9 | <tr> |
| 10 | <th> | 10 | <th> |
| 11 | Colocação | 11 | Colocação |
| 12 | - <button type="button" class="btn btn-link btn-question">?</button> | 12 | + <!-- <button type="button" class="btn btn-link btn-question">?</button> --> |
| 13 | + <a tabindex="0" class="btn btn-link btn-questionr" role="button" data-toggle="popover" data-trigger="focus">?</a> | ||
| 13 | </th> | 14 | </th> |
| 14 | <th>123 PROPOSTAS</th> | 15 | <th>123 PROPOSTAS</th> |
| 15 | </tr> | 16 | </tr> |
src/app/components/show-message/message.html
| 1 | -<div | ||
| 2 | - id="message" | ||
| 3 | - class="show-message"> | ||
| 4 | - <div class="row"> | ||
| 5 | - <div class="col-sm-1 col-sm-offset-2"> | ||
| 6 | - <div class="message-border {{ ::vm.type }}"> | ||
| 7 | - <span | ||
| 8 | - class="glyphicon glyphicon-ok icon-white" | ||
| 9 | - aria-hidden="true"></span> | ||
| 10 | - </div> | ||
| 11 | - </div> | ||
| 12 | - <div class="col-sm-4"> | ||
| 13 | - <h3>{{ ::vm.title }}</h3> | ||
| 14 | - </div> | ||
| 15 | - </div> | ||
| 16 | - <div class="row"> | ||
| 17 | - <div class="col-sm-8 col-sm-offset-3"> | ||
| 18 | - <h5>{{ ::vm.message }}</h5> | ||
| 19 | - </div> | ||
| 20 | - </div> | ||
| 21 | -</div> | ||
| 22 | \ No newline at end of file | 1 | \ No newline at end of file |
| 2 | +<div id="message" class="show-message"> | ||
| 3 | + <div class="row"> | ||
| 4 | + <div class="div-center"> | ||
| 5 | + <div class="col-sm-2 col-sm-offset-2 message-border {{ ::vm.type }}"> | ||
| 6 | + <span class="glyphicon glyphicon-ok icon-white" aria-hidden="true"></span> | ||
| 7 | + </div> | ||
| 8 | + </div> | ||
| 9 | + <div class="col-sm-7 div-mensagem"> | ||
| 10 | + <div class="row"> | ||
| 11 | + <h3>{{ ::vm.title }}</h3> | ||
| 12 | + </div> | ||
| 13 | + <div class="row"> | ||
| 14 | + <h5>{{ ::vm.message }}</h5> | ||
| 15 | + </div> | ||
| 16 | + </div> | ||
| 17 | + </div> | ||
| 18 | +</div> |
src/app/components/show-message/show-message.scss
| @@ -11,8 +11,16 @@ | @@ -11,8 +11,16 @@ | ||
| 11 | .success { | 11 | .success { |
| 12 | background-color: #8AB34D; | 12 | background-color: #8AB34D; |
| 13 | } | 13 | } |
| 14 | - | 14 | + |
| 15 | .error { | 15 | .error { |
| 16 | background-color: #C93E55; | 16 | background-color: #C93E55; |
| 17 | } | 17 | } |
| 18 | + | ||
| 19 | + .div-center { | ||
| 20 | + text-align: center; | ||
| 21 | + } | ||
| 22 | + | ||
| 23 | + .div-mensagem { | ||
| 24 | + margin-left: 30px; | ||
| 25 | + } | ||
| 18 | } | 26 | } |
src/app/index.route.js
| @@ -138,7 +138,7 @@ | @@ -138,7 +138,7 @@ | ||
| 138 | 'header': { templateUrl: 'app/pages/header/header.html' }, | 138 | 'header': { templateUrl: 'app/pages/header/header.html' }, |
| 139 | 'main': { | 139 | 'main': { |
| 140 | templateUrl: 'app/pages/propostas/cadastro-proposta.html', | 140 | templateUrl: 'app/pages/propostas/cadastro-proposta.html', |
| 141 | - controller: 'CadastroPropostaController', | 141 | + controller: 'PropostasPageController', |
| 142 | controllerAs: 'pagePropostas' | 142 | controllerAs: 'pagePropostas' |
| 143 | }, | 143 | }, |
| 144 | 'footer': { templateUrl: 'app/pages/footer/footer.html' } | 144 | 'footer': { templateUrl: 'app/pages/footer/footer.html' } |
| @@ -0,0 +1,6 @@ | @@ -0,0 +1,6 @@ | ||
| 1 | +<div class="error-message"> | ||
| 2 | + <div ng-message="required" >Ops, o campo é obrigatório.</div> | ||
| 3 | + <div ng-message="minlength">O campo deve ser maior.</div> | ||
| 4 | + <div ng-message="maxlength">O campo deve ser menor</div> | ||
| 5 | + <div ng-message="email">O endereço de e-mail deve ser válido</div> | ||
| 6 | +</div> | ||
| 0 | \ No newline at end of file | 7 | \ No newline at end of file |
src/app/pages/auth/message.html
| @@ -3,7 +3,7 @@ | @@ -3,7 +3,7 @@ | ||
| 3 | class="section-gray auth-content"> | 3 | class="section-gray auth-content"> |
| 4 | <div class="container"> | 4 | <div class="container"> |
| 5 | <show-message | 5 | <show-message |
| 6 | - type="'error'" | 6 | + type="'success'" |
| 7 | title="'Cadastro efetuado com sucesso :)'" | 7 | title="'Cadastro efetuado com sucesso :)'" |
| 8 | message="'Agora você faz parte do Dialoga Brasil. Você será redirecionado para a página (página) em 10 segundos'"></show-message> | 8 | message="'Agora você faz parte do Dialoga Brasil. Você será redirecionado para a página (página) em 10 segundos'"></show-message> |
| 9 | </div> | 9 | </div> |
| @@ -59,4 +59,4 @@ | @@ -59,4 +59,4 @@ | ||
| 59 | </div> | 59 | </div> |
| 60 | </div> | 60 | </div> |
| 61 | </div> | 61 | </div> |
| 62 | -</section> | ||
| 63 | \ No newline at end of file | 62 | \ No newline at end of file |
| 63 | +</section> |
src/app/pages/auth/signin.html
| 1 | <div class="container"> | 1 | <div class="container"> |
| 2 | - <div class="row"> | ||
| 3 | - <div class="col-sm-12"> | ||
| 4 | - <h2>Cadastrar ou entrar</h2> | ||
| 5 | - </div> | ||
| 6 | - </div> | 2 | + <div class="row"> |
| 3 | + <div class="col-sm-12"> | ||
| 4 | + <h2>Cadastrar ou entrar</h2> | ||
| 5 | + </div> | ||
| 6 | + </div> | ||
| 7 | </div> | 7 | </div> |
| 8 | <section role="main" class="section-gray auth-content"> | 8 | <section role="main" class="section-gray auth-content"> |
| 9 | - <div class="container"> | ||
| 10 | - <div class="row"> | ||
| 11 | - <!-- Mostra só se estiver logado --> | ||
| 12 | - <div ng-if="pageSignin.currentUser"> | ||
| 13 | - <div class="row"> | ||
| 14 | - <div class="col-sm-8 col-sm-offset-2"> | ||
| 15 | - <h3>Você está logado!</h3> | ||
| 16 | - <button type="button" ng-click="pageSignin.onClickLogout()" class="btn btn-primary">Sair</button> | ||
| 17 | - </div> | ||
| 18 | - </div> | ||
| 19 | - </div> | ||
| 20 | - <!-- Mostra só se não estiver logado --> | ||
| 21 | - <div ng-if="!pageSignin.currentUser"> | ||
| 22 | - <div class="col-sm-6"> | ||
| 23 | - <div class="row"> | ||
| 24 | - <div class="col-md-12"> | ||
| 25 | - <h2>Já possui cadastro</h2> | ||
| 26 | - <p>Use seus dados para acessar o Dialoga Brasil</p> | ||
| 27 | - <form role="form" name="loginForm" ng-submit="pageSignin.login(pageSignin.credentials)" novalidate> | ||
| 28 | - <div class="form-group"> | ||
| 29 | - <label for="inputLoginUsername">E-mail*</label> | ||
| 30 | - <input type="email" id="inputLoginUsername" name="inputLoginUsername" class="form-control input-lg" ng-class="{ 'has-error' : loginForm.inputLoginUsername.$invalid && loginForm.inputLoginUsername.$touched }" ng-model="pageSignin.credentials.username" required/> | ||
| 31 | - <div ng-show="loginForm.inputLoginUsername.$touched"> | ||
| 32 | - <div ng-messages="loginForm.inputLoginUsername.$error"> | ||
| 33 | - <div ng-messages-include="app/pages/geral/error-messages.html"></div> | ||
| 34 | - </div> | ||
| 35 | - </div> | ||
| 36 | - </div> | ||
| 37 | - <div class="form-group"> | ||
| 38 | - <label for="inputLoginPassword">Senha*</label> | ||
| 39 | - <input type="password" id="inputLoginPassword" name="inputLoginPassword" class="form-control input-lg" ng-class="{ 'has-error' : loginForm.inputLoginPassword.$invalid && loginForm.inputLoginPassword.$touched }" ng-model="pageSignin.credentials.password" required> | ||
| 40 | - <div ng-show="loginForm.inputLoginPassword.$touched"> | ||
| 41 | - <div ng-messages="loginForm.inputLoginPassword.$error"> | ||
| 42 | - <div ng-messages-include="app/pages/geral/error-messages.html"></div> | ||
| 43 | - </div> | ||
| 44 | - </div> | ||
| 45 | - </div> | ||
| 46 | - <div class="form-group"> | ||
| 47 | - <button class="btn btn-lg btn-block btn-submit" type="submit">Entrar</button> | ||
| 48 | - </div> | ||
| 49 | - </form> | ||
| 50 | - </div> | ||
| 51 | - </div> | ||
| 52 | - <div class="row"> | ||
| 53 | - <div class="col-md-12"> | ||
| 54 | - <hr class="separator separator-or"></hr> | ||
| 55 | - | ||
| 56 | - </div> | ||
| 57 | - </div> | ||
| 58 | - <div class="row"> | ||
| 59 | - <div class="col-md-5"> | ||
| 60 | - <button type="button" class="btn btn-lg btn-block btn-social btn-facebook"> | ||
| 61 | - <div class="border-social-icon border-social-facebook"> | ||
| 62 | - <span class="glyphicon icon-google-plus icon-white" aria-hidden="true"> | ||
| 63 | - <!-- Facebook --> | ||
| 64 | - <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25"> | ||
| 65 | - <path d="M18 32L12 32 12 16l-4 0 0-5.5 4 0 0-3.2C12 2.7 13.2 0 18.5 0l4.4 0 0 5.5 -2.8 0c-2.1 0-2.2 0.8-2.2 2.2l0 2.8 5 0 -0.6 5.5L18 16 18 32z"/> | ||
| 66 | - </svg> | ||
| 67 | - </span> | ||
| 68 | - </div> | ||
| 69 | - <span class="text">Entrar com Facebook</span> | ||
| 70 | - </button> | ||
| 71 | - </div> | ||
| 72 | - <div class="col-md-5"> | ||
| 73 | - <button type="button" class="btn btn-lg btn-block btn-social btn-google-plus"> | ||
| 74 | - <div class="border-social-icon border-social-googlePlus"> | ||
| 75 | - <span class="glyphicon icon-google-plus icon-white" aria-hidden="true"> | ||
| 76 | - <!-- Google Plus --> | ||
| 77 | - <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25"> | ||
| 78 | - <path d="M17.5 2c0 0-6.3 0-8.4 0C5.3 2 1.8 4.8 1.8 8.1c0 3.4 2.6 6.1 6.4 6.1 0.3 0 0.5 0 0.8 0 -0.2 0.5-0.4 1-0.4 1.6 0 0.9 0.5 1.7 1.1 2.3 -0.5 0-0.9 0-1.5 0C3.6 18.1 0 21.1 0 24.1c0 3 3.9 4.9 8.6 4.9 5.3 0 8.2-3 8.2-6 0-2.4-0.7-3.9-2.9-5.4 -0.8-0.5-2.2-1.8-2.2-2.6 0-0.9 0.3-1.3 1.6-2.4 1.4-1.1 2.4-2.6 2.4-4.4 0-2.1-0.9-4.2-2.7-4.8l2.7 0L17.5 2zM14.5 22.5c0.1 0.3 0.1 0.6 0.1 0.9 0 2.4-1.6 4.4-6.1 4.4 -3.2 0-5.5-2-5.5-4.5 0-2.4 2.9-4.4 6.1-4.4 0.8 0 1.4 0.1 2.1 0.3C12.9 20.4 14.2 21.1 14.5 22.5zM9.4 13.4c-2.2-0.1-4.2-2.4-4.6-5.2 -0.4-2.8 1.1-5 3.2-4.9 2.2 0.1 4.2 2.3 4.6 5.2C13 11.2 11.6 13.4 9.4 13.4zM26 8L26 2 24 2 24 8 18 8 18 10 24 10 24 16 26 16 26 10 32 10 32 8z"/> | ||
| 79 | - </svg> | ||
| 80 | - </span> | ||
| 81 | - </div> | ||
| 82 | - <span class="text">Entrar com Google+</span> | ||
| 83 | - </button> | ||
| 84 | - </div> | ||
| 85 | - </div> | ||
| 86 | - </div> | ||
| 87 | - <div class="col-sm-6"> | ||
| 88 | - <div class="row"> | ||
| 89 | - <div class="col-sm-12"> | ||
| 90 | - <h2>Ou cadastre-se</h2> | ||
| 91 | - <p> | ||
| 92 | - Para fazer parte do Dialoga Brasil, interagir com as propostas e enviar as suas! | ||
| 93 | - </p> | ||
| 94 | - </div> | ||
| 95 | - </div> | ||
| 96 | - <div class="row"> | ||
| 97 | - <div class="col-md-6"> | ||
| 98 | - <button type="button" class="btn btn-lg btn-block btn-social btn-facebook"> | ||
| 99 | - <div class="border-social-icon border-social-facebook"> | ||
| 100 | - <span class="glyphicon icon-google-plus icon-white" aria-hidden="true"> | ||
| 101 | - <!-- Google Plus --> | ||
| 102 | - <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25"> | ||
| 103 | - <path d="M18 32L12 32 12 16l-4 0 0-5.5 4 0 0-3.2C12 2.7 13.2 0 18.5 0l4.4 0 0 5.5 -2.8 0c-2.1 0-2.2 0.8-2.2 2.2l0 2.8 5 0 -0.6 5.5L18 16 18 32z"/> | ||
| 104 | - </svg> | ||
| 105 | - </span> | ||
| 106 | - </div> | ||
| 107 | - <span class="text">Conectar pelo Facebook</span> | ||
| 108 | - </button> | ||
| 109 | - </div> | ||
| 110 | - <div class="col-md-6"> | ||
| 111 | - <button type="button" class="btn btn-lg btn-block btn-social btn-google-plus"> | ||
| 112 | - <div class="border-social-icon border-social-googlePlus"> | ||
| 113 | - <span class="glyphicon icon-google-plus icon-white" aria-hidden="true"> | ||
| 114 | - <!-- Google Plus --> | ||
| 115 | - <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25"> | ||
| 116 | - <path d="M17.5 2c0 0-6.3 0-8.4 0C5.3 2 1.8 4.8 1.8 8.1c0 3.4 2.6 6.1 6.4 6.1 0.3 0 0.5 0 0.8 0 -0.2 0.5-0.4 1-0.4 1.6 0 0.9 0.5 1.7 1.1 2.3 -0.5 0-0.9 0-1.5 0C3.6 18.1 0 21.1 0 24.1c0 3 3.9 4.9 8.6 4.9 5.3 0 8.2-3 8.2-6 0-2.4-0.7-3.9-2.9-5.4 -0.8-0.5-2.2-1.8-2.2-2.6 0-0.9 0.3-1.3 1.6-2.4 1.4-1.1 2.4-2.6 2.4-4.4 0-2.1-0.9-4.2-2.7-4.8l2.7 0L17.5 2zM14.5 22.5c0.1 0.3 0.1 0.6 0.1 0.9 0 2.4-1.6 4.4-6.1 4.4 -3.2 0-5.5-2-5.5-4.5 0-2.4 2.9-4.4 6.1-4.4 0.8 0 1.4 0.1 2.1 0.3C12.9 20.4 14.2 21.1 14.5 22.5zM9.4 13.4c-2.2-0.1-4.2-2.4-4.6-5.2 -0.4-2.8 1.1-5 3.2-4.9 2.2 0.1 4.2 2.3 4.6 5.2C13 11.2 11.6 13.4 9.4 13.4zM26 8L26 2 24 2 24 8 18 8 18 10 24 10 24 16 26 16 26 10 32 10 32 8z"/> | ||
| 117 | - </svg> | ||
| 118 | - </span> | ||
| 119 | - </div> | ||
| 120 | - <span class="text">Conectar pelo Google+</span> | ||
| 121 | - </button> | ||
| 122 | - </div> | ||
| 123 | - </div> | ||
| 124 | - <div class="row"> | ||
| 125 | - <div class="col-sm-12"> | ||
| 126 | - <hr class="separator separator-cadastro"></hr> | ||
| 127 | - </div> | ||
| 128 | - </div> | ||
| 129 | - <div class="row"> | ||
| 130 | - <div class="col-sm-12"> | ||
| 131 | - <form name="cadastroForm"> | ||
| 132 | - <div class="form-group"> | ||
| 133 | - <label for="inputNome">Nome:</label> | ||
| 134 | - <span class="pull-right">*Dados obrigatórios</span> | ||
| 135 | - <input type="text" id="inputNome" name="inputNome" class="form-control input-lg" ng-class="{ 'has-error' : cadastroForm.inputNome.$invalid && cadastroForm.inputNome.$touched }" ng-model="nome" ng-minlength="" ng-maxlength="" required> | ||
| 136 | - <div ng-show="cadastroForm.inputNome.$touched"> | ||
| 137 | - <div ng-messages="cadastroForm.inputNome.$error"> | ||
| 138 | - <div ng-messages-include="app/pages/geral/error-messages.html"></div> | ||
| 139 | - </div> | ||
| 140 | - </div> | ||
| 141 | - </div> | ||
| 142 | - <div class="form-group"> | ||
| 143 | - <label for="inputEmail">E-mail*</label> | ||
| 144 | - <input type="email" id="inputEmail" name="inputEmail" class="form-control input-lg" ng-class="{ 'has-error' : cadastroForm.inputEmail.$invalid && cadastroForm.inputEmail.$touched }" ng-model="email" ng-minlength="" ng-maxlength="" required> | ||
| 145 | - <div ng-show="cadastroForm.inputEmail.$touched"> | ||
| 146 | - <div ng-messages="cadastroForm.inputEmail.$error"> | ||
| 147 | - <div ng-messages-include="app/pages/geral/error-messages.html"></div> | ||
| 148 | - </div> | ||
| 149 | - </div> | ||
| 150 | - </div> | ||
| 151 | - <div class="row"> | ||
| 152 | - <div class="col-sm-6"> | ||
| 153 | - <div class="form-group"> | ||
| 154 | - <label for="inputPassword">Senha:</label> | ||
| 155 | - <input type="password" id="inputPassword" name="inputPassword" class="form-control input-lg" ng-class="{ 'has-error' : cadastroForm.inputPassword.$invalid && cadastroForm.inputPassword.$touched }" ng-model="senha" ng-minlength="" ng-maxlength="" required> | ||
| 156 | - <div ng-show="cadastroForm.inputPassword.$touched"> | ||
| 157 | - <div ng-messages="cadastroForm.inputPassword.$error"> | ||
| 158 | - <div ng-messages-include="app/pages/geral/error-messages.html"></div> | ||
| 159 | - </div> | ||
| 160 | - </div> | ||
| 161 | - </div> | ||
| 162 | - </div> | ||
| 163 | - <div class="col-sm-6"> | ||
| 164 | - <div class="form-group"> | ||
| 165 | - <label for="inputRepeatPassword">Confirmar Senha:</label> | ||
| 166 | - <input type="password" id="inputRepeatPassword" name="inputRepeatPassword" class="form-control input-lg" ng-class="{ 'has-error' : cadastroForm.inputRepeatPassword.$invalid && cadastroForm.inputRepeatPassword.$touched }" ng-model="senhaRepetida" ng-minlength="" ng-maxlength="" required> | ||
| 167 | - <div ng-show="cadastroForm.inputRepeatPassword.$touched"> | ||
| 168 | - <div ng-messages="cadastroForm.inputRepeatPassword.$error"> | ||
| 169 | - <div ng-messages-include="app/pages/geral/error-messages.html"></div> | ||
| 170 | - </div> | ||
| 171 | - </div> | ||
| 172 | - </div> | ||
| 173 | - </div> | ||
| 174 | - </div> | ||
| 175 | - <div class="row"> | ||
| 176 | - <div class="col-sm-12"> | ||
| 177 | - <span class="text"> | ||
| 178 | - A senha deve ter 6 ou mais caracteres e conter números e letras. | ||
| 179 | - </span> | ||
| 180 | - </div> | ||
| 181 | - </div> | ||
| 182 | - <div class="form-group"> | ||
| 183 | - <input type="checkbox" id="termosDeUso" name="termosDeUso" value="aceito" required> | ||
| 184 | - Já li os | ||
| 185 | - <a href="">Termos de Uso</a> | ||
| 186 | - e concordo com os mesmos* | ||
| 187 | - </input> | ||
| 188 | - <div ng-show="cadastroForm.termosDeUso.$touched"> | ||
| 189 | - <div ng-messages="cadastroForm.termosDeUso.$error"> | ||
| 190 | - <div ng-messages-include="app/pages/geral/error-messages.html"></div> | ||
| 191 | - </div> | ||
| 192 | - </div> | ||
| 193 | - </div> | ||
| 194 | - <div class="form-group"> | ||
| 195 | - <span>Digite o texto da imagem</span> | ||
| 196 | - <p>O Captcha vai aqui</p> | ||
| 197 | - </div> | ||
| 198 | - <div class="form-group"> | ||
| 199 | - <button class="btn btn-lg btn-block btn-submit" type="submit">Cadastrar</button> | ||
| 200 | - </div> | ||
| 201 | - </form> | ||
| 202 | - </div> | ||
| 203 | - </div> | ||
| 204 | - </div> | ||
| 205 | -</div> | ||
| 206 | -</div> | ||
| 207 | -</div> | ||
| 208 | -</section> | ||
| 209 | \ No newline at end of file | 9 | \ No newline at end of file |
| 10 | + <div class="container"> | ||
| 11 | + <div class="row"> | ||
| 12 | + <!-- Mostra só se estiver logado --> | ||
| 13 | + <div ng-if="pageSignin.currentUser"> | ||
| 14 | + <div class="row"> | ||
| 15 | + <div class="col-sm-8 col-sm-offset-2"> | ||
| 16 | + <h3>Você está logado!</h3> | ||
| 17 | + <button type="button" ng-click="pageSignin.onClickLogout()" class="btn btn-primary">Sair</button> | ||
| 18 | + </div> | ||
| 19 | + </div> | ||
| 20 | + </div> | ||
| 21 | + <!-- Mostra só se não estiver logado --> | ||
| 22 | + <div ng-if="!pageSignin.currentUser"> | ||
| 23 | + <div class="col-sm-6"> | ||
| 24 | + <div class="row"> | ||
| 25 | + <div class="col-md-12"> | ||
| 26 | + <h2>Já possui cadastro</h2> | ||
| 27 | + <p>Use seus dados para acessar o Dialoga Brasil</p> | ||
| 28 | + <form role="form" name="loginForm" ng-submit="pageSignin.login(pageSignin.credentials)" novalidate> | ||
| 29 | + <div class="form-group"> | ||
| 30 | + <label for="inputLoginUsername">E-mail*</label> | ||
| 31 | + <input type="email" id="inputLoginUsername" name="inputLoginUsername" class="form-control input-lg" ng-class="{ 'has-error' : loginForm.inputLoginUsername.$invalid && loginForm.inputLoginUsername.$touched }" ng-model="pageSignin.credentials.username" required/> | ||
| 32 | + <form-messages field="loginForm.inputLoginUsername"></show-message> | ||
| 33 | + </div> | ||
| 34 | + <div class="form-group"> | ||
| 35 | + <label for="inputLoginPassword">Senha*</label> | ||
| 36 | + <input type="password" id="inputLoginPassword" name="inputLoginPassword" class="form-control input-lg" ng-class="{ 'has-error' : loginForm.inputLoginPassword.$invalid && loginForm.inputLoginPassword.$touched }" ng-model="pageSignin.credentials.password" required> | ||
| 37 | + <form-messages field="loginForm.inputLoginPassword" ></show-message> | ||
| 38 | + </div> | ||
| 39 | + <div class="form-group"> | ||
| 40 | + <button class="btn btn-lg btn-block btn-submit" type="submit">Entrar</button> | ||
| 41 | + </div> | ||
| 42 | + </form> | ||
| 43 | + </div> | ||
| 44 | + </div> | ||
| 45 | + <div class="row"> | ||
| 46 | + <div class="col-md-12"> | ||
| 47 | + <hr class="separator separator-or"></hr> | ||
| 48 | + </div> | ||
| 49 | + </div> | ||
| 50 | + <div class="row"> | ||
| 51 | + <div class="col-md-5"> | ||
| 52 | + <button type="button" class="btn btn-lg btn-block btn-social btn-facebook"> | ||
| 53 | + <div class="border-social-icon border-social-facebook"> | ||
| 54 | + <span class="glyphicon icon-google-plus icon-white" aria-hidden="true"> | ||
| 55 | + <!-- Facebook --> | ||
| 56 | + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25"> | ||
| 57 | + <path d="M18 32L12 32 12 16l-4 0 0-5.5 4 0 0-3.2C12 2.7 13.2 0 18.5 0l4.4 0 0 5.5 -2.8 0c-2.1 0-2.2 0.8-2.2 2.2l0 2.8 5 0 -0.6 5.5L18 16 18 32z"/> | ||
| 58 | + </svg> | ||
| 59 | + </span> | ||
| 60 | + </div> | ||
| 61 | + <span class="text">Entrar com Facebook</span> | ||
| 62 | + </button> | ||
| 63 | + </div> | ||
| 64 | + <div class="col-md-5"> | ||
| 65 | + <button type="button" class="btn btn-lg btn-block btn-social btn-google-plus"> | ||
| 66 | + <div class="border-social-icon border-social-googlePlus"> | ||
| 67 | + <span class="glyphicon icon-google-plus icon-white" aria-hidden="true"> | ||
| 68 | + <!-- Google Plus --> | ||
| 69 | + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25"> | ||
| 70 | + <path d="M17.5 2c0 0-6.3 0-8.4 0C5.3 2 1.8 4.8 1.8 8.1c0 3.4 2.6 6.1 6.4 6.1 0.3 0 0.5 0 0.8 0 -0.2 0.5-0.4 1-0.4 1.6 0 0.9 0.5 1.7 1.1 2.3 -0.5 0-0.9 0-1.5 0C3.6 18.1 0 21.1 0 24.1c0 3 3.9 4.9 8.6 4.9 5.3 0 8.2-3 8.2-6 0-2.4-0.7-3.9-2.9-5.4 -0.8-0.5-2.2-1.8-2.2-2.6 0-0.9 0.3-1.3 1.6-2.4 1.4-1.1 2.4-2.6 2.4-4.4 0-2.1-0.9-4.2-2.7-4.8l2.7 0L17.5 2zM14.5 22.5c0.1 0.3 0.1 0.6 0.1 0.9 0 2.4-1.6 4.4-6.1 4.4 -3.2 0-5.5-2-5.5-4.5 0-2.4 2.9-4.4 6.1-4.4 0.8 0 1.4 0.1 2.1 0.3C12.9 20.4 14.2 21.1 14.5 22.5zM9.4 13.4c-2.2-0.1-4.2-2.4-4.6-5.2 -0.4-2.8 1.1-5 3.2-4.9 2.2 0.1 4.2 2.3 4.6 5.2C13 11.2 11.6 13.4 9.4 13.4zM26 8L26 2 24 2 24 8 18 8 18 10 24 10 24 16 26 16 26 10 32 10 32 8z"/> | ||
| 71 | + </svg> | ||
| 72 | + </span> | ||
| 73 | + </div> | ||
| 74 | + <span class="text">Entrar com Google+</span> | ||
| 75 | + </button> | ||
| 76 | + </div> | ||
| 77 | + </div> | ||
| 78 | + </div> | ||
| 79 | + <div class="col-sm-6"> | ||
| 80 | + <div class="row"> | ||
| 81 | + <div class="col-sm-12"> | ||
| 82 | + <h2>Ou cadastre-se</h2> | ||
| 83 | + <p> | ||
| 84 | + Para fazer parte do Dialoga Brasil, interagir com as propostas e enviar as suas! | ||
| 85 | + </p> | ||
| 86 | + </div> | ||
| 87 | + </div> | ||
| 88 | + <div class="row"> | ||
| 89 | + <div class="col-md-6"> | ||
| 90 | + <button type="button" class="btn btn-lg btn-block btn-social btn-facebook"> | ||
| 91 | + <div class="border-social-icon border-social-facebook"> | ||
| 92 | + <span class="glyphicon icon-google-plus icon-white" aria-hidden="true"> | ||
| 93 | + <!-- Google Plus --> | ||
| 94 | + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25"> | ||
| 95 | + <path d="M18 32L12 32 12 16l-4 0 0-5.5 4 0 0-3.2C12 2.7 13.2 0 18.5 0l4.4 0 0 5.5 -2.8 0c-2.1 0-2.2 0.8-2.2 2.2l0 2.8 5 0 -0.6 5.5L18 16 18 32z"/> | ||
| 96 | + </svg> | ||
| 97 | + </span> | ||
| 98 | + </div> | ||
| 99 | + <span class="text">Conectar pelo Facebook</span> | ||
| 100 | + </button> | ||
| 101 | + </div> | ||
| 102 | + <div class="col-md-6"> | ||
| 103 | + <button type="button" class="btn btn-lg btn-block btn-social btn-google-plus"> | ||
| 104 | + <div class="border-social-icon border-social-googlePlus"> | ||
| 105 | + <span class="glyphicon icon-google-plus icon-white" aria-hidden="true"> | ||
| 106 | + <!-- Google Plus --> | ||
| 107 | + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25"> | ||
| 108 | + <path d="M17.5 2c0 0-6.3 0-8.4 0C5.3 2 1.8 4.8 1.8 8.1c0 3.4 2.6 6.1 6.4 6.1 0.3 0 0.5 0 0.8 0 -0.2 0.5-0.4 1-0.4 1.6 0 0.9 0.5 1.7 1.1 2.3 -0.5 0-0.9 0-1.5 0C3.6 18.1 0 21.1 0 24.1c0 3 3.9 4.9 8.6 4.9 5.3 0 8.2-3 8.2-6 0-2.4-0.7-3.9-2.9-5.4 -0.8-0.5-2.2-1.8-2.2-2.6 0-0.9 0.3-1.3 1.6-2.4 1.4-1.1 2.4-2.6 2.4-4.4 0-2.1-0.9-4.2-2.7-4.8l2.7 0L17.5 2zM14.5 22.5c0.1 0.3 0.1 0.6 0.1 0.9 0 2.4-1.6 4.4-6.1 4.4 -3.2 0-5.5-2-5.5-4.5 0-2.4 2.9-4.4 6.1-4.4 0.8 0 1.4 0.1 2.1 0.3C12.9 20.4 14.2 21.1 14.5 22.5zM9.4 13.4c-2.2-0.1-4.2-2.4-4.6-5.2 -0.4-2.8 1.1-5 3.2-4.9 2.2 0.1 4.2 2.3 4.6 5.2C13 11.2 11.6 13.4 9.4 13.4zM26 8L26 2 24 2 24 8 18 8 18 10 24 10 24 16 26 16 26 10 32 10 32 8z"/> | ||
| 109 | + </svg> | ||
| 110 | + </span> | ||
| 111 | + </div> | ||
| 112 | + <span class="text">Conectar pelo Google+</span> | ||
| 113 | + </button> | ||
| 114 | + </div> | ||
| 115 | + </div> | ||
| 116 | + <div class="row"> | ||
| 117 | + <div class="col-sm-12"> | ||
| 118 | + <hr class="separator separator-cadastro"></hr> | ||
| 119 | + </div> | ||
| 120 | + <div class="row"> | ||
| 121 | + <div class="col-sm-12"> | ||
| 122 | + <form name="cadastroForm"> | ||
| 123 | + <div class="form-group"> | ||
| 124 | + <label for="inputNome">Nome:</label> | ||
| 125 | + <span class="pull-right">*Dados obrigatórios</span> | ||
| 126 | + <input type="text" id="inputNome" name="inputNome" class="form-control input-lg" ng-class="{ 'has-error' : cadastroForm.inputNome.$invalid && cadastroForm.inputNome.$touched }" ng-model="nome" ng-minlength="" ng-maxlength="" required> | ||
| 127 | + <form-messages field="cadastroForm.inputNome" ></show-message> | ||
| 128 | + </div> | ||
| 129 | + <div class="form-group"> | ||
| 130 | + <p>Descrição da proposta*</p> | ||
| 131 | + <textarea id="proposta" name="proposta" class="texto-proposta form-control" ng-class="{ 'has-error' : cadastroForm.proposta.$invalid && cadastroForm.proposta.$touched }" ng-model="vm.proposta" required ng-maxlength="200" ></textarea> | ||
| 132 | + <div ng-show="cadastroForm.proposta.$touched"> | ||
| 133 | + <div ng-messages="cadastroForm.proposta.$error"> | ||
| 134 | + <form-messages field="cadastroForm.proposta" ></show-message> | ||
| 135 | + </div> | ||
| 136 | + </div> | ||
| 137 | + <span class="pull-left">*Dados obrigatórios</span> | ||
| 138 | + <span class="pull-right">Máx. 200 caracteres</span> | ||
| 139 | + </div> | ||
| 140 | + <div class="form-group"> | ||
| 141 | + <label for="inputEmail">E-mail*</label> | ||
| 142 | + <input type="email" id="inputEmail" name="inputEmail" class="form-control input-lg" ng-class="{ 'has-error' : cadastroForm.inputEmail.$invalid && cadastroForm.inputEmail.$touched }" ng-model="email" ng-minlength="" ng-maxlength="" required> | ||
| 143 | + <form-messages field="cadastroForm.inputEmail" ></show-message> | ||
| 144 | + </div> | ||
| 145 | + <div class="row"> | ||
| 146 | + <div class="col-sm-6"> | ||
| 147 | + <div class="form-group"> | ||
| 148 | + <label for="inputPassword">Senha:</label> | ||
| 149 | + <input type="password" id="inputPassword" name="inputPassword" class="form-control input-lg" ng-class="{ 'has-error' : cadastroForm.inputPassword.$invalid && cadastroForm.inputPassword.$touched }" ng-model="senha" ng-minlength="" ng-maxlength="" required> | ||
| 150 | + <form-messages field="cadastroForm.inputPassword" ></show-message> | ||
| 151 | + </div> | ||
| 152 | + </div> | ||
| 153 | + <div class="col-sm-6"> | ||
| 154 | + <div class="form-group"> | ||
| 155 | + <label for="inputRepeatPassword">Confirmar Senha:</label> | ||
| 156 | + <input type="password" id="inputRepeatPassword" name="inputRepeatPassword" class="form-control input-lg" ng-class="{ 'has-error' : cadastroForm.inputRepeatPassword.$invalid && cadastroForm.inputRepeatPassword.$touched }" ng-model="senhaRepetida" ng-minlength="" ng-maxlength="" required> | ||
| 157 | + <form-messages field="cadastroForm.inputRepeatPassword" ></show-message> | ||
| 158 | + </div> | ||
| 159 | + </div> | ||
| 160 | + </div> | ||
| 161 | + <div class="row"> | ||
| 162 | + <div class="col-sm-12"> | ||
| 163 | + <span class="text"> | ||
| 164 | + A senha deve ter 6 ou mais caracteres e conter números e letras. | ||
| 165 | + </span> | ||
| 166 | + </div> | ||
| 167 | + </div> | ||
| 168 | + <div class="form-group"> | ||
| 169 | + <input type="checkbox" id="termosDeUso" name="termosDeUso" value="aceito" ng-model="termosDeUso" required> | ||
| 170 | + Já li os | ||
| 171 | + <a href="">Termos de Uso</a> | ||
| 172 | + e concordo com os mesmos* | ||
| 173 | + </input> | ||
| 174 | + <form-messages field="cadastroForm.termosDeUso" ></show-message> | ||
| 175 | + </div> | ||
| 176 | + <div class="form-group"> | ||
| 177 | + <span>Digite o texto da imagem</span> | ||
| 178 | + <p>O Captcha vai aqui</p> | ||
| 179 | + </div> | ||
| 180 | + <div class="form-group"> | ||
| 181 | + <button class="btn btn-lg btn-block btn-submit " ng-class=" {'disabled' : !termosDeUso }"type="submit">Cadastrar</button> | ||
| 182 | + </div> | ||
| 183 | + </form> | ||
| 184 | + </div> | ||
| 185 | + </div> | ||
| 186 | + </div> | ||
| 187 | + </div> | ||
| 188 | + </div> | ||
| 189 | + </section> |
src/app/pages/propostas/propostas.controller.js
src/assets/images/icons/sprite.png