Commit df7f097e36b45361183e4274295831046e68dd15
1 parent
fbf44189
Exists in
master
and in
8 other branches
Improve icons
Showing
7 changed files
with
105 additions
and
52 deletions
Show diff stats
src/app/components/proposal-box/proposal-box.directive.js
@@ -9,14 +9,15 @@ | @@ -9,14 +9,15 @@ | ||
9 | function proposalBox() { | 9 | function proposalBox() { |
10 | 10 | ||
11 | /** @ngInject */ | 11 | /** @ngInject */ |
12 | - function ProposalBoxController($scope, $state, STATUS_VOTE, $log) { | 12 | + function ProposalBoxController($scope, $state, VOTE_STATUS, VOTE_OPTIONS, $log) { |
13 | $log.debug('ProposalBoxController'); | 13 | $log.debug('ProposalBoxController'); |
14 | 14 | ||
15 | var vm = this; | 15 | var vm = this; |
16 | vm.$scope = $scope; | 16 | vm.$scope = $scope; |
17 | vm.$state = $state; | 17 | vm.$state = $state; |
18 | + vm.VOTE_STATUS = VOTE_STATUS; | ||
19 | + vm.VOTE_OPTIONS = VOTE_OPTIONS; | ||
18 | vm.$log = $log; | 20 | vm.$log = $log; |
19 | - vm.STATUS_VOTE = STATUS_VOTE; | ||
20 | 21 | ||
21 | vm.init(); | 22 | vm.init(); |
22 | vm.addListeners(); | 23 | vm.addListeners(); |
@@ -34,13 +35,15 @@ | @@ -34,13 +35,15 @@ | ||
34 | ProposalBoxController.prototype.addListeners = function () { | 35 | ProposalBoxController.prototype.addListeners = function () { |
35 | var vm = this; | 36 | var vm = this; |
36 | 37 | ||
37 | - vm.$scope.$on('proposal-vote:success', function(e, data){ | ||
38 | - vm.STATE = vm.STATUS_VOTE.SUCCESS; | ||
39 | - vm.message = data.message; | ||
40 | - }); | ||
41 | - | ||
42 | - vm.$scope.$on('proposal-vote:error', function(e, data){ | ||
43 | - vm.STATE = vm.STATUS_VOTE.ERROR; | 38 | + vm.$scope.$on('proposal-box:vote-response', function(e, data){ |
39 | + if(data.success) { | ||
40 | + vm.STATE = vm.VOTE_STATUS.SUCCESS; | ||
41 | + } | ||
42 | + | ||
43 | + if(data.error) { | ||
44 | + vm.STATE = vm.VOTE_STATUS.ERROR; | ||
45 | + | ||
46 | + } | ||
44 | vm.message = data.message; | 47 | vm.message = data.message; |
45 | }); | 48 | }); |
46 | }; | 49 | }; |
@@ -59,24 +62,33 @@ | @@ -59,24 +62,33 @@ | ||
59 | ProposalBoxController.prototype.voteUp = function () { | 62 | ProposalBoxController.prototype.voteUp = function () { |
60 | var vm = this; | 63 | var vm = this; |
61 | 64 | ||
62 | - vm.STATE = vm.STATUS_VOTE.LOADING; | ||
63 | - vm.$scope.$emit('proposal-vote:voteUp', vm.proposal.id); | 65 | + vm.STATE = vm.VOTE_STATUS.LOADING; |
66 | + vm.$scope.$emit('proposal-box:vote', { | ||
67 | + OPTION: vm.VOTE_OPTIONS.UP, | ||
68 | + proposal_id: vm.proposal.id | ||
69 | + }); | ||
64 | vm.$log.debug('Sending vote'); | 70 | vm.$log.debug('Sending vote'); |
65 | }; | 71 | }; |
66 | 72 | ||
67 | ProposalBoxController.prototype.voteDown = function () { | 73 | ProposalBoxController.prototype.voteDown = function () { |
68 | var vm = this; | 74 | var vm = this; |
69 | 75 | ||
70 | - vm.STATE = vm.STATUS_VOTE.LOADING; | ||
71 | - vm.$scope.$emit('proposal-vote:voteDown', vm.proposal.id); | 76 | + vm.STATE = vm.VOTE_STATUS.LOADING; |
77 | + vm.$scope.$emit('proposal-box:vote', { | ||
78 | + OPTION: vm.VOTE_OPTIONS.DOWN, | ||
79 | + proposal_id: vm.proposal.id | ||
80 | + }); | ||
72 | vm.$log.debug('Sending vote'); | 81 | vm.$log.debug('Sending vote'); |
73 | }; | 82 | }; |
74 | 83 | ||
75 | - ProposalBoxController.prototype.next = function () { | 84 | + ProposalBoxController.prototype.skip = function () { |
76 | var vm = this; | 85 | var vm = this; |
77 | 86 | ||
78 | - vm.STATE = vm.STATUS_VOTE.LOADING; | ||
79 | - vm.$scope.$emit('proposal-vote:next', vm.proposal.id); | 87 | + vm.STATE = vm.VOTE_STATUS.LOADING; |
88 | + vm.$scope.$emit('proposal-box:vote', { | ||
89 | + OPTION: vm.VOTE_OPTIONS.SKIP, | ||
90 | + proposal_id: vm.proposal.id | ||
91 | + }); | ||
80 | vm.$log.debug('Sending vote'); | 92 | vm.$log.debug('Sending vote'); |
81 | }; | 93 | }; |
82 | 94 |
src/app/components/proposal-box/proposal-box.html
1 | -<div class="proposal-box" ng-class="[{'focus': (vm.focus || (vm.STATE === vm.STATUS_VOTE.LOADING) )}, vm.category.slug]"> | ||
2 | - <div ng-show="(vm.STATE === vm.STATUS_VOTE.SUCCESS) || (vm.STATE === vm.STATUS_VOTE.ERROR)"> | 1 | +<div class="proposal-box" ng-class="[{'focus': (vm.focus || (vm.STATE === vm.VOTE_STATUS.LOADING) )}, vm.category.slug]"> |
2 | + <div ng-show="(vm.STATE === vm.VOTE_STATUS.SUCCESS) || (vm.STATE === vm.VOTE_STATUS.ERROR)"> | ||
3 | FEEDBACK | 3 | FEEDBACK |
4 | </div> | 4 | </div> |
5 | - <div ng-hide="(vm.STATE === vm.STATUS_VOTE.SUCCESS) || (vm.STATE === vm.STATUS_VOTE.ERROR)"> | ||
6 | - <div ng-show="vm.STATE === vm.STATUS_VOTE.LOADING"> | 5 | + <div ng-hide="(vm.STATE === vm.VOTE_STATUS.SUCCESS) || (vm.STATE === vm.VOTE_STATUS.ERROR)"> |
6 | + <div ng-show="vm.STATE === vm.VOTE_STATUS.LOADING"> | ||
7 | <div class="proposal-loading"> | 7 | <div class="proposal-loading"> |
8 | <div class="shadow"></div> | 8 | <div class="shadow"></div> |
9 | <div class="text"> | 9 | <div class="text"> |
@@ -36,7 +36,7 @@ | @@ -36,7 +36,7 @@ | ||
36 | </div> | 36 | </div> |
37 | </div> | 37 | </div> |
38 | <div class="col-xs-4"> | 38 | <div class="col-xs-4"> |
39 | - <div class="action next" ng-click="vm.next()"> | 39 | + <div class="action skip" ng-click="vm.skip()"> |
40 | <div class="icon-circle"> | 40 | <div class="icon-circle"> |
41 | <span class="glyphicon glyphicon-share-alt" aria-hidden="true"></span> | 41 | <span class="glyphicon glyphicon-share-alt" aria-hidden="true"></span> |
42 | </div> | 42 | </div> |
src/app/components/proposal-box/proposal-box.scss
@@ -115,8 +115,25 @@ | @@ -115,8 +115,25 @@ | ||
115 | .icon-circle { | 115 | .icon-circle { |
116 | cursor: pointer; | 116 | cursor: pointer; |
117 | 117 | ||
118 | - -webkit-box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.3); | ||
119 | - -moz-box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.3); | ||
120 | - box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.3); | 118 | + -webkit-box-shadow: inset 0px -2px 2px 0px rgba(0,0,0,0.3); |
119 | + -moz-box-shadow: inset 0px -2px 2px 0px rgba(0,0,0,0.3); | ||
120 | + box-shadow: inset 0px -2px 2px 0px rgba(0,0,0,0.3); | ||
121 | + | ||
122 | + -webkit-transition: all 0.3s ease; | ||
123 | + -moz-transition: all 0.3s ease; | ||
124 | + transition: all 0.3s ease; | ||
125 | + | ||
126 | + &:hover { | ||
127 | + -webkit-box-shadow: none; | ||
128 | + -moz-box-shadow: none; | ||
129 | + box-shadow: none; | ||
130 | + } | ||
131 | + | ||
132 | + &:active, | ||
133 | + &:focus { | ||
134 | + -webkit-box-shadow: inset 0px 2px 2px 0px rgba(0,0,0,0.3); | ||
135 | + -moz-box-shadow: inset 0px 2px 2px 0px rgba(0,0,0,0.3); | ||
136 | + box-shadow: inset 0px 2px 2px 0px rgba(0,0,0,0.3); | ||
137 | + } | ||
121 | } | 138 | } |
122 | } | 139 | } |
src/app/index.constants.js
@@ -5,8 +5,8 @@ | @@ -5,8 +5,8 @@ | ||
5 | angular | 5 | angular |
6 | .module('dialoga') | 6 | .module('dialoga') |
7 | .constant('PATH', { | 7 | .constant('PATH', { |
8 | - host: 'http://hom.dialoga.gov.br', | ||
9 | - image: 'http://hom.login.dialoga.gov.br' | 8 | + host: 'http://dialoga.gov.br', |
9 | + image: 'http://login.dialoga.gov.br' | ||
10 | }) | 10 | }) |
11 | .constant('API', { | 11 | .constant('API', { |
12 | token: null, | 12 | token: null, |
@@ -32,11 +32,16 @@ | @@ -32,11 +32,16 @@ | ||
32 | notAuthenticated: 'auth-not-authenticated', | 32 | notAuthenticated: 'auth-not-authenticated', |
33 | notAuthorized: 'auth-not-authorized' | 33 | notAuthorized: 'auth-not-authorized' |
34 | }) | 34 | }) |
35 | - .constant('STATUS_VOTE', { | 35 | + .constant('VOTE_STATUS', { |
36 | SUCCESS: 0x1, | 36 | SUCCESS: 0x1, |
37 | ERROR: 0x10, | 37 | ERROR: 0x10, |
38 | LOADING: 0x100 | 38 | LOADING: 0x100 |
39 | }) | 39 | }) |
40 | + .constant('VOTE_OPTIONS', { | ||
41 | + UP: 0x1, | ||
42 | + DOWN: 0x10, | ||
43 | + SKIP: 0x100 | ||
44 | + }) | ||
40 | .constant('USER_ROLES', { | 45 | .constant('USER_ROLES', { |
41 | all: '*', | 46 | all: '*', |
42 | admin: 'admin', | 47 | admin: 'admin', |
src/app/index.scss
@@ -217,19 +217,34 @@ body { | @@ -217,19 +217,34 @@ body { | ||
217 | } | 217 | } |
218 | 218 | ||
219 | .vote_for &, | 219 | .vote_for &, |
220 | - .next &, | 220 | + .skip &, |
221 | .vote_against & { | 221 | .vote_against & { |
222 | padding-top: 12px; | 222 | padding-top: 12px; |
223 | } | 223 | } |
224 | 224 | ||
225 | .vote_for & { | 225 | .vote_for & { |
226 | background-color: #4AC97A; | 226 | background-color: #4AC97A; |
227 | + | ||
228 | + &:hover { background-color: lighten(#4AC97A, 10%); } | ||
229 | + | ||
230 | + &:active, | ||
231 | + &:focus { background-color: darken(#4AC97A, 10%)} | ||
227 | } | 232 | } |
228 | - .next & { | 233 | + .skip & { |
229 | background-color: #EEB453; | 234 | background-color: #EEB453; |
235 | + | ||
236 | + &:hover { background-color: lighten(#EEB453, 10%); } | ||
237 | + | ||
238 | + &:active, | ||
239 | + &:focus { background-color: darken(#EEB453, 10%)} | ||
230 | } | 240 | } |
231 | .vote_against & { | 241 | .vote_against & { |
232 | background-color: #EC4C68; | 242 | background-color: #EC4C68; |
243 | + | ||
244 | + &:hover { background-color: lighten(#EC4C68, 10%); } | ||
245 | + | ||
246 | + &:active, | ||
247 | + &:focus { background-color: darken(#EC4C68, 10%)} | ||
233 | } | 248 | } |
234 | } | 249 | } |
235 | 250 |
src/app/pages/auth/auth.controller.js
1 | -(function () { | 1 | +(function() { |
2 | 'use strict'; | 2 | 'use strict'; |
3 | 3 | ||
4 | angular | 4 | angular |
@@ -41,7 +41,7 @@ | @@ -41,7 +41,7 @@ | ||
41 | 41 | ||
42 | vm.search = vm.$location.search(); | 42 | vm.search = vm.$location.search(); |
43 | var redirect = vm.search.redirect_uri || ''; | 43 | var redirect = vm.search.redirect_uri || ''; |
44 | - if(redirect && redirect.length > 0){ | 44 | + if (redirect && redirect.length > 0) { |
45 | vm.params = JSON.parse('{"' + decodeURI(redirect).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g,'":"') + '"}'); | 45 | vm.params = JSON.parse('{"' + decodeURI(redirect).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g,'":"') + '"}'); |
46 | vm.hasRedirect = true; | 46 | vm.hasRedirect = true; |
47 | } | 47 | } |
@@ -49,13 +49,13 @@ | @@ -49,13 +49,13 @@ | ||
49 | // attach events | 49 | // attach events |
50 | vm.currentUser = vm.Session.getCurrentUser(); | 50 | vm.currentUser = vm.Session.getCurrentUser(); |
51 | 51 | ||
52 | - // handle login | ||
53 | - vm.$scope.$on(vm.AUTH_EVENTS.loginSuccess, function () { | 52 | + // handle login |
53 | + vm.$scope.$on(vm.AUTH_EVENTS.loginSuccess, function() { | ||
54 | vm.currentUser = vm.Session.getCurrentUser(); | 54 | vm.currentUser = vm.Session.getCurrentUser(); |
55 | }); | 55 | }); |
56 | 56 | ||
57 | // handle logout | 57 | // handle logout |
58 | - vm.$scope.$on(vm.AUTH_EVENTS.logoutSuccess, function () { | 58 | + vm.$scope.$on(vm.AUTH_EVENTS.logoutSuccess, function() { |
59 | vm.currentUser = vm.Session.getCurrentUser(); | 59 | vm.currentUser = vm.Session.getCurrentUser(); |
60 | }); | 60 | }); |
61 | }; | 61 | }; |
@@ -65,30 +65,30 @@ | @@ -65,30 +65,30 @@ | ||
65 | 65 | ||
66 | // load terms | 66 | // load terms |
67 | vm.loadingTerms = true; | 67 | vm.loadingTerms = true; |
68 | - vm.DialogaService.getTerms(function(data){ | 68 | + vm.DialogaService.getTerms(function(data) { |
69 | vm.loadingTerms = false; | 69 | vm.loadingTerms = false; |
70 | vm.terms = data.article; | 70 | vm.terms = data.article; |
71 | - }, function(error){ | 71 | + }, function(error) { |
72 | // vm.$log.debug('handleSuccess.error', error); | 72 | // vm.$log.debug('handleSuccess.error', error); |
73 | vm.loadingTerms = false; | 73 | vm.loadingTerms = false; |
74 | vm.error = error; | 74 | vm.error = error; |
75 | }); | 75 | }); |
76 | }; | 76 | }; |
77 | 77 | ||
78 | - AuthPageController.prototype.attachListeners = function () { | 78 | + AuthPageController.prototype.attachListeners = function() { |
79 | var vm = this; | 79 | var vm = this; |
80 | 80 | ||
81 | - vm.$scope.$on('oauthClientPluginResult', function(event, response){ | 81 | + vm.$scope.$on('oauthClientPluginResult', function(event, response) { |
82 | vm.$log.debug('response', response); | 82 | vm.$log.debug('response', response); |
83 | 83 | ||
84 | // var logged_id = response.data.logged_id; | 84 | // var logged_id = response.data.logged_id; |
85 | // var private_token = response.data.private_token; | 85 | // var private_token = response.data.private_token; |
86 | // var user = response.data.user; | 86 | // var user = response.data.user; |
87 | - | 87 | + |
88 | }); | 88 | }); |
89 | }; | 89 | }; |
90 | 90 | ||
91 | - AuthPageController.prototype.onClickLogout = function (){ | 91 | + AuthPageController.prototype.onClickLogout = function() { |
92 | var vm = this; | 92 | var vm = this; |
93 | 93 | ||
94 | vm.AuthService.logout(); | 94 | vm.AuthService.logout(); |
@@ -97,7 +97,7 @@ | @@ -97,7 +97,7 @@ | ||
97 | AuthPageController.prototype.submitSigup = function(credentials) { | 97 | AuthPageController.prototype.submitSigup = function(credentials) { |
98 | var vm = this; | 98 | var vm = this; |
99 | 99 | ||
100 | - vm.AuthService.register(credentials).then(function(response){ | 100 | + vm.AuthService.register(credentials).then(function(response) { |
101 | vm.$log.debug('register success.response', response); | 101 | vm.$log.debug('register success.response', response); |
102 | 102 | ||
103 | // TODO: mensagens de sucesso | 103 | // TODO: mensagens de sucesso |
@@ -105,7 +105,7 @@ | @@ -105,7 +105,7 @@ | ||
105 | // 'Verifique seu email para confirmar o cadastro.' | 105 | // 'Verifique seu email para confirmar o cadastro.' |
106 | vm.successMessage = '<h3>Cadastro efetuado com sucesso.</h3>' + '<p>Verifique seu <b>email</b> para confirmar o cadastro.</p>'; | 106 | vm.successMessage = '<h3>Cadastro efetuado com sucesso.</h3>' + '<p>Verifique seu <b>email</b> para confirmar o cadastro.</p>'; |
107 | vm.redirectBack(); | 107 | vm.redirectBack(); |
108 | - }, function(response){ | 108 | + }, function(response) { |
109 | vm.$log.debug('register error.response', response); | 109 | vm.$log.debug('register error.response', response); |
110 | 110 | ||
111 | // TODO: mensagens de erro | 111 | // TODO: mensagens de erro |
@@ -127,29 +127,29 @@ | @@ -127,29 +127,29 @@ | ||
127 | }); | 127 | }); |
128 | }; | 128 | }; |
129 | 129 | ||
130 | - AuthPageController.prototype.redirectBack = function(){ | 130 | + AuthPageController.prototype.redirectBack = function() { |
131 | var vm = this; | 131 | var vm = this; |
132 | 132 | ||
133 | - if(!vm.hasRedirect){ | 133 | + if (!vm.hasRedirect) { |
134 | vm.$log.warn('No redirect params defined.'); | 134 | vm.$log.warn('No redirect params defined.'); |
135 | return; | 135 | return; |
136 | } | 136 | } |
137 | 137 | ||
138 | // start countdown | 138 | // start countdown |
139 | vm.countdown = vm.delay; | 139 | vm.countdown = vm.delay; |
140 | - (function countdown(){ | ||
141 | - vm.$timeout(function(){ | 140 | + (function countdown() { |
141 | + vm.$timeout(function() { | ||
142 | vm.countdown--; | 142 | vm.countdown--; |
143 | vm.$log.debug('vm.countdown', vm.countdown); | 143 | vm.$log.debug('vm.countdown', vm.countdown); |
144 | - if(vm.countdown > 0){ | 144 | + if (vm.countdown > 0) { |
145 | countdown(); | 145 | countdown(); |
146 | } | 146 | } |
147 | }, 1000); | 147 | }, 1000); |
148 | })(); | 148 | })(); |
149 | 149 | ||
150 | - vm.$timeout(function(){ | 150 | + vm.$timeout(function() { |
151 | var state = vm.params.state; | 151 | var state = vm.params.state; |
152 | - switch(state){ | 152 | + switch (state){ |
153 | case 'inicio': | 153 | case 'inicio': |
154 | vm.$state.go(state, { | 154 | vm.$state.go(state, { |
155 | event_id: vm.params.event_id, | 155 | event_id: vm.params.event_id, |
@@ -169,15 +169,15 @@ | @@ -169,15 +169,15 @@ | ||
169 | }, vm.delay * 1000); | 169 | }, vm.delay * 1000); |
170 | }; | 170 | }; |
171 | 171 | ||
172 | - AuthPageController.prototype.authWithFacebook = function(){ | 172 | + AuthPageController.prototype.authWithFacebook = function() { |
173 | var vm = this; | 173 | var vm = this; |
174 | var url = 'http://login.dialoga.gov.br/plugin/oauth_client/facebook?oauth_client_popup=true&id=1'; | 174 | var url = 'http://login.dialoga.gov.br/plugin/oauth_client/facebook?oauth_client_popup=true&id=1'; |
175 | vm.$window.oauthClientAction(url); | 175 | vm.$window.oauthClientAction(url); |
176 | }; | 176 | }; |
177 | 177 | ||
178 | - AuthPageController.prototype.authWithGooglePlus = function(){ | 178 | + AuthPageController.prototype.authWithGooglePlus = function() { |
179 | var vm = this; | 179 | var vm = this; |
180 | - | 180 | + |
181 | var url = 'http://login.dialoga.gov.br/plugin/oauth_client/google_oauth2?oauth_client_popup=true&id=4'; | 181 | var url = 'http://login.dialoga.gov.br/plugin/oauth_client/google_oauth2?oauth_client_popup=true&id=4'; |
182 | vm.$window.oauthClientAction(url); | 182 | vm.$window.oauthClientAction(url); |
183 | }; | 183 | }; |
src/app/pages/programas/programa.controller.js
@@ -135,6 +135,10 @@ | @@ -135,6 +135,10 @@ | ||
135 | vm.creatingProposal = false; | 135 | vm.creatingProposal = false; |
136 | }); | 136 | }); |
137 | }); | 137 | }); |
138 | + | ||
139 | + vm.$scope.$on('proposal-box:vote', function(event, params) { | ||
140 | + | ||
141 | + }); | ||
138 | }; | 142 | }; |
139 | 143 | ||
140 | ProgramaPageController.prototype.showProposalsList = function() { | 144 | ProgramaPageController.prototype.showProposalsList = function() { |