Commit 95923e8300cb39985a4e53d9641917378ac5e79d

Authored by Rafael Diego
1 parent aa0e62e2

formulario de envio de propostas

src/app/components/cadastro-proposta/cadastro-proposta.directive.js 0 → 100644
... ... @@ -0,0 +1,65 @@
  1 +(function() {
  2 + 'use strict';
  3 +
  4 + angular
  5 + .module('dialoga')
  6 + .directive('cadastroProposta', cadastroProposta);
  7 +
  8 + /** @ngInject */
  9 + function cadastroProposta() {
  10 +
  11 + /** @ngInject */
  12 + function CadastroPropostaController(ArticleService, $scope, $element, $timeout, $log) {
  13 + $log.debug('cadastroPropostaController');
  14 +
  15 + var vm = this;
  16 + vm.ArticleService = ArticleService;
  17 + vm.$scope = $scope;
  18 + vm.$element = $element;
  19 + vm.$timeout = $timeout;
  20 + vm.$log = $log;
  21 +
  22 + vm.init();
  23 +
  24 + vm.loadData();
  25 + }
  26 +
  27 + CadastroPropostaController.prototype.loadData = function () {
  28 + // async values
  29 + var vm = this;
  30 +
  31 + // requeue to wait until DOM be created
  32 + vm.$timeout(function(){
  33 + attachPopover.call(vm);
  34 + }, 100);
  35 + };
  36 +
  37 + function attachPopover(){
  38 + var vm = this;
  39 +
  40 + vm.popover = angular.element(vm.$element.find('.texto-proposta'));
  41 + vm.popover.popover({
  42 + html: true,
  43 + placement: 'right',
  44 + animation: true,
  45 + 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ê.'
  47 + });
  48 + }
  49 +
  50 + var directive = {
  51 + restrict: 'E',
  52 + templateUrl: 'app/components/cadastro-proposta/cadastro-proposta.html',
  53 + scope: {
  54 + programa: '=',
  55 + proposta: '=',
  56 + },
  57 + controller: CadastroPropostaController,
  58 + controllerAs: 'vm',
  59 + bindToController: true
  60 + };
  61 +
  62 + return directive;
  63 + }
  64 +
  65 +})();
... ...
src/app/components/cadastro-proposta/cadastro-proposta.html 0 → 100644
... ... @@ -0,0 +1,45 @@
  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>
0 46 \ No newline at end of file
... ...
src/app/components/cadastro-proposta/cadastro-proposta.scss 0 → 100644
... ... @@ -0,0 +1,27 @@
  1 +.envio-proposta {
  2 + .titulo-envio-proposta{
  3 + color: #2D7B66;
  4 + }
  5 +
  6 + .bloco-programa {
  7 + border-color: gray;
  8 + border-width: 1px;
  9 + border-style: solid;
  10 + border-radius: 5px;
  11 + padding: 15px;
  12 + }
  13 +
  14 + .texto-programa {
  15 + font-weight: 600;
  16 + }
  17 +
  18 + .linha-proposta {
  19 + margin-bottom: 40px;
  20 + }
  21 +
  22 + .texto-proposta {
  23 + width: 100%;
  24 + height: 200px;
  25 + resize: none;
  26 + }
  27 +}
... ...
src/app/index.route.js
... ... @@ -35,6 +35,7 @@
35 35 'footer': { templateUrl: 'app/pages/footer/footer.html' }
36 36 }
37 37 })
  38 + // apenas para teste das mensagens
38 39 .state('mensagem', {
39 40 url: '/mensagem',
40 41 ncyBreadcrumb: {label: 'Mensagem'},
... ... @@ -129,6 +130,20 @@
129 130 'footer': { templateUrl: 'app/pages/footer/footer.html' }
130 131 }
131 132 })
  133 + // apenas para teste do cadastro das propostas
  134 + .state('cadastro-propostas', {
  135 + url: '/cadastro-propostas',
  136 + ncyBreadcrumb: {label: 'Cadastro de Propostas'},
  137 + views: {
  138 + 'header': { templateUrl: 'app/pages/header/header.html' },
  139 + 'main': {
  140 + templateUrl: 'app/pages/propostas/cadastro-proposta.html',
  141 + controller: 'CadastroPropostaController',
  142 + controllerAs: 'pagePropostas'
  143 + },
  144 + 'footer': { templateUrl: 'app/pages/footer/footer.html' }
  145 + }
  146 + })
132 147 .state('propostas-conteudo', {
133 148 url: '/propostas/:id',
134 149 ncyBreadcrumb: {
... ...
src/app/layout.scss
... ... @@ -124,16 +124,60 @@
124 124 color: #ff4431
125 125 }
126 126  
127   -.modal-termos-uso-header{
128   - border-bottom: none;
  127 +.modal-termos-uso{
  128 + &-header{
  129 + border-bottom: none;
129 130 padding: 0px;
130 131 min-height: 10px;
131 132 border-bottom: none;
132 133 padding: 0px;
133   -}
  134 + position: relative;
  135 + top: -30px;
  136 + right: 0px;
  137 + }
134 138  
135   -.modal-termos-uso-body {
136   - padding: 30px;
  139 + &-body {
  140 + padding: 25px 35px;
137 141 height: 500px;
138   - overflow-y: auto;
  142 +
  143 + &-inner{
  144 + background-color: lightgray;
  145 + overflow-y: auto;
  146 + padding: 15px;
  147 + height: 440px;
  148 + }
  149 + }
  150 +}
  151 +
  152 +.modal-fechar-pequeno {
  153 + font-size: 15px;
139 154 }
  155 +
  156 +.modal-fechar-grande {
  157 + font-size: 24px;
  158 +}
  159 +
  160 +// Sobreescreve a classe do bootstrap
  161 +.close {
  162 + // position: absolute;
  163 + color: white;
  164 + opacity: 1;
  165 + font-weight: normal;
  166 +}
  167 +
  168 +// Cria uma barra de rolagem parecida com a pedida, mas aplica pro site todo
  169 +// ::-webkit-scrollbar {
  170 +// width: 12px;
  171 +// background-color: gray;
  172 +// }
  173 +
  174 +// ::-webkit-scrollbar-track {
  175 +// -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
  176 +// border-radius: 10px;
  177 +// }
  178 +
  179 +// ::-webkit-scrollbar-thumb {
  180 +// border-radius: 10px;
  181 +// -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);
  182 +// background-color: black;
  183 +// }
140 184 \ No newline at end of file
... ...
src/app/pages/auth/message.html
... ... @@ -15,54 +15,46 @@
15 15 <div class="modal-content">
16 16 <div class="modal-header modal-termos-uso-header">
17 17 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
18   - <span aria-hidden="true">&times;</span>
  18 + <span aria-hidden="true" class="modal-fechar-pequeno">FECHAR</span>
  19 + <span aria-hidden="true" class="modal-fechar-grande">X</span>
19 20 </button>
20 21 </div>
21 22 <div class="modal-body modal-termos-uso-body">
  23 + <div class="modal-termos-uso-body-inner">
22 24 <h3>Termos de Uso</h3>
23 25 <p>
24 26 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
25   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
26   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
27   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
28   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
29   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
  27 + tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  28 + quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  29 + consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
  30 + cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
  31 + proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
30 32 </p>
31 33 <p>
32 34 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
33   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
34   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
35   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
36   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
37   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
  35 + tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  36 + quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  37 + consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
  38 + cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
  39 + proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
38 40 </p>
39 41 <p>
40 42 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
41   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
42   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
43   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
44   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
45   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
  43 + tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  44 + quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  45 + consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
  46 + cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
  47 + proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
46 48 </p>
47   -
48   - <p>
49   - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
50   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
51   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
52   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
53   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
54   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
55   - </p>
56   -
57 49 <p>
58 50 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
59   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
60   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
61   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
62   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
63   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
  51 + tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  52 + quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  53 + consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
  54 + cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
  55 + proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
64 56 </p>
65   -
  57 + </div>
66 58 </div>
67 59 </div>
68 60 </div>
... ...
src/app/pages/auth/signin.html
1 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 7 </div>
8 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 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   - </div>
56   - </div>
57   - <div class="row">
58   - <div class="col-md-5">
59   - <button type="button" class="btn btn-lg btn-block btn-social btn-facebook">
60   - <div class="border-social-icon border-social-facebook">
61   - <span class="glyphicon icon-google-plus icon-white" aria-hidden="true">
62   - <!-- Facebook -->
63   - <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25">
64   - <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"/>
65   - </svg>
66   - </span>
67   - </div>
68   - <span class="text">Entrar com Facebook</span>
69   - </button>
70   - </div>
71   - <div class="col-md-5">
72   - <button type="button" class="btn btn-lg btn-block btn-social btn-google-plus">
73   - <div class="border-social-icon border-social-googlePlus">
74   - <span class="glyphicon icon-google-plus icon-white" aria-hidden="true">
75   - <!-- Google Plus -->
76   - <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25">
77   - <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"/>
78   - </svg>
79   - </span>
80   - </div>
81   - <span class="text">Entrar com Google+</span>
82   - </button>
83   - </div>
84   - </div>
85   - </div>
86   - <div class="col-sm-6">
87   - <div class="row">
88   - <div class="col-sm-12">
89   - <h2>Ou cadastre-se</h2>
90   - <p>
91   - Para fazer parte do Dialoga Brasil, interagir com as propostas e enviar as suas!
92   - </p>
93   - </div>
94   - </div>
95   - <div class="row">
96   - <div class="col-md-6">
97   - <button type="button" class="btn btn-lg btn-block btn-social btn-facebook">
98   - <div class="border-social-icon border-social-facebook">
99   - <span class="glyphicon icon-google-plus icon-white" aria-hidden="true">
100   - <!-- Google Plus -->
101   - <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25">
102   - <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"/>
103   - </svg>
104   - </span>
105   - </div>
106   - <span class="text">Conectar pelo Facebook</span>
107   - </button>
108   - </div>
109   - <div class="col-md-6">
110   - <button type="button" class="btn btn-lg btn-block btn-social btn-google-plus">
111   - <div class="border-social-icon border-social-googlePlus">
112   - <span class="glyphicon icon-google-plus icon-white" aria-hidden="true">
113   - <!-- Google Plus -->
114   - <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 33 33" width="25" height="25">
115   - <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"/>
116   - </svg>
117   - </span>
118   - </div>
119   - <span class="text">Conectar pelo Google+</span>
120   - </button>
121   - </div>
122   - </div>
123   - <div class="row">
124   - <div class="col-sm-12">
125   - <hr class="separator separator-cadastro"></hr>
126   - </div>
127   - </div>
128   - <div class="row">
129   - <div class="col-sm-12">
130   - <form name="cadastroForm">
131   - <div class="form-group">
132   - <label for="inputNome">Nome:</label>
133   - <span class="pull-right">*Dados obrigatórios</span>
134   - <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>
135   - <div ng-show="cadastroForm.inputNome.$touched">
136   - <div ng-messages="cadastroForm.inputNome.$error">
137   - <div ng-messages-include="app/pages/geral/error-messages.html"></div>
138   - </div>
139   - </div>
140   - </div>
141   - <div class="form-group">
142   - <label for="inputEmail">E-mail*</label>
143   - <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>
144   - <div ng-show="cadastroForm.inputEmail.$touched">
145   - <div ng-messages="cadastroForm.inputEmail.$error">
146   - <div ng-messages-include="app/pages/geral/error-messages.html"></div>
147   - </div>
148   - </div>
149   - </div>
150   - <div class="row">
151   - <div class="col-sm-6">
152   - <div class="form-group">
153   - <label for="inputPassword">Senha:</label>
154   - <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>
155   - <div ng-show="cadastroForm.inputPassword.$touched">
156   - <div ng-messages="cadastroForm.inputPassword.$error">
157   - <div ng-messages-include="app/pages/geral/error-messages.html"></div>
158   - </div>
159   - </div>
160   - </div>
161   - </div>
162   - <div class="col-sm-6">
163   - <div class="form-group">
164   - <label for="inputRepeatPassword">Confirmar Senha:</label>
165   - <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>
166   - <div ng-show="cadastroForm.inputRepeatPassword.$touched">
167   - <div ng-messages="cadastroForm.inputRepeatPassword.$error">
168   - <div ng-messages-include="app/pages/geral/error-messages.html"></div>
169   - </div>
170   - </div>
171   - </div>
172   - </div>
173   - </div>
174   - <div class="row">
175   - <div class="col-sm-12">
176   - <span class="text">
177   - A senha deve ter 6 ou mais caracteres e conter números e letras.
178   - </span>
179   - </div>
180   - </div>
181   - <div class="form-group">
182   - <input type="checkbox" id="termosDeUso" name="termosDeUso" value="aceito" required>
183   - Já li os
184   - <a href="">Termos de Uso</a>
185   - e concordo com os mesmos*
186   - </input>
187   - <div ng-show="cadastroForm.termosDeUso.$touched">
188   - <div ng-messages="cadastroForm.termosDeUso.$error">
189   - <div ng-messages-include="app/pages/geral/error-messages.html"></div>
190   - </div>
191   - </div>
192   - </div>
193   - <div class="form-group">
194   - <span>Digite o texto da imagem</span>
195   - <p>O Captcha vai aqui</p>
196   - </div>
197   - <div class="form-group">
198   - <button class="btn btn-lg btn-block btn-submit" type="submit">Cadastrar</button>
199   - </div>
200   - </form>
201   - </div>
202   - </div>
203   - </div>
  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>
204 205 </div>
205 206 </div>
206 207 </div>
... ...
src/app/pages/geral/termosDeUso.html
... ... @@ -1,92 +0,0 @@
1   -<div class="modal fade modalTermosDeUso" id="termosDeUso" tabindex="-1" role="dialog" aria-labelledby="termosDeUsoLabel">
2   - <div class="modal-dialog" role="document">
3   - <div class="modal-content">
4   - <div class="modal-header">
5   - <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
6   - <h4 class="modal-title" id="termosDeUsoLabel">Termos de Uso</h4>
7   - </div>
8   - <div class="modal-body">
9   - <p>
10   - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
11   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
12   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
13   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
14   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
15   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
16   - </p>
17   -
18   - <p>
19   - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
20   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
21   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
22   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
23   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
24   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
25   - </p>
26   -
27   - <p>
28   - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
29   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
30   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
31   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
32   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
33   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
34   - </p>
35   -
36   - <p>
37   - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
38   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
39   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
40   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
41   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
42   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
43   - </p>
44   -
45   - <p>
46   - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
47   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
48   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
49   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
50   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
51   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
52   - </p>
53   -
54   - <p>
55   - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
56   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
57   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
58   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
59   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
60   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
61   - </p>
62   -
63   - <p>
64   - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
65   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
66   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
67   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
68   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
69   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
70   - </p>
71   -
72   - <p>
73   - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
74   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
75   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
76   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
77   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
78   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
79   - </p>
80   -
81   - <p>
82   - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
83   - tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
84   - quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
85   - consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
86   - cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
87   - proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
88   - </p>
89   - </div>
90   - </div>
91   - </div>
92   - </div>
93 0 \ No newline at end of file
src/app/pages/propostas/cadastro-proposta.html 0 → 100644
... ... @@ -0,0 +1,16 @@
  1 +<div class="container">
  2 + <div class="row">
  3 + <div class="col-sm-12">
  4 + <!-- <div ncy-breadcrumb></div> -->
  5 + </div>
  6 + </div>
  7 +</div>
  8 +
  9 +<!-- <div class="container page--propostas">
  10 + <h1>TODO: Home > Proposta</h1>
  11 +</div> -->
  12 +<section class="section-gray auth-content ng-scope">
  13 + <div class="container">
  14 + <cadastro-proposta></cadastro-proposta>
  15 + </div>
  16 +</section>
0 17 \ No newline at end of file
... ...