Commit 282a6b71ab3fb82b444a90e92fd7c9ee21bc6062
1 parent
f69ffc79
Exists in
master
and in
8 other branches
Fix topic-selector model reference
Showing
4 changed files
with
11 additions
and
30 deletions
Show diff stats
src/app/components/topics-select/topics-select.directive.js
@@ -24,23 +24,19 @@ | @@ -24,23 +24,19 @@ | ||
24 | } | 24 | } |
25 | 25 | ||
26 | TopicsSelectController.prototype.init = function() { | 26 | TopicsSelectController.prototype.init = function() { |
27 | - var vm = this; | ||
28 | - | ||
29 | - // vm.topics = null; | ||
30 | - // vm.selectedTopic = null; | ||
31 | - vm.topicFilter = vm.selectedTopic; | 27 | + // var vm = this; |
32 | }; | 28 | }; |
33 | 29 | ||
34 | TopicsSelectController.prototype.selectTopic = function() { | 30 | TopicsSelectController.prototype.selectTopic = function() { |
35 | var vm = this; | 31 | var vm = this; |
36 | 32 | ||
37 | - if (vm.topicFilter === null) { | 33 | + if (vm.selectedTopic === null) { |
38 | vm.$log.debug('Default topic selected.'); | 34 | vm.$log.debug('Default topic selected.'); |
39 | return; | 35 | return; |
40 | } | 36 | } |
41 | 37 | ||
42 | // send event to all controllers | 38 | // send event to all controllers |
43 | - vm.$rootScope.$broadcast('change-selectedTopic', vm.topicFilter); | 39 | + vm.$rootScope.$broadcast('change-selectedTopic', vm.selectedTopic); |
44 | }; | 40 | }; |
45 | 41 | ||
46 | var directive = { | 42 | var directive = { |
src/app/components/topics-select/topics-select.html
1 | <div class="topics-dropdown"> | 1 | <div class="topics-dropdown"> |
2 | <select | 2 | <select |
3 | - ng-model="vm.topicFilter" | 3 | + ng-model="vm.selectedTopic" |
4 | ng-change="vm.selectTopic()" | 4 | ng-change="vm.selectTopic()" |
5 | ng-options="topic.title for topic in vm.topics track by topic.slug" | 5 | ng-options="topic.title for topic in vm.topics track by topic.slug" |
6 | class="form-control"> | 6 | class="form-control"> |
7 | - <option value="">-- Selecione um programa --</option> | ||
8 | </select> | 7 | </select> |
9 | </div> | 8 | </div> |
src/app/pages/propostas/propostas.controller.js
@@ -100,7 +100,6 @@ | @@ -100,7 +100,6 @@ | ||
100 | var vm = this; | 100 | var vm = this; |
101 | 101 | ||
102 | vm.DialogaService.getProgramsByThemeId(themeId, function (programs){ | 102 | vm.DialogaService.getProgramsByThemeId(themeId, function (programs){ |
103 | - vm.$log.debug('programs', programs); | ||
104 | 103 | ||
105 | vm.filtredPrograms = programs; | 104 | vm.filtredPrograms = programs; |
106 | 105 | ||
@@ -164,12 +163,16 @@ | @@ -164,12 +163,16 @@ | ||
164 | vm.$scope.$watch('pagePropostas.selectedTheme', function(newValue, oldValue) { | 163 | vm.$scope.$watch('pagePropostas.selectedTheme', function(newValue, oldValue) { |
165 | vm.search.tema = newValue ? newValue.slug : null; | 164 | vm.search.tema = newValue ? newValue.slug : null; |
166 | vm.$location.search('tema', vm.search.tema); | 165 | vm.$location.search('tema', vm.search.tema); |
167 | - vm.filtredProposals = vm.getFiltredProposals(); | 166 | + |
167 | + if(vm.selectedTheme && vm.selectedTheme.id){ | ||
168 | + vm.loadPrograms(vm.selectedTheme.id, function(){ | ||
169 | + vm.filtredProposals = vm.getFiltredProposals(); | ||
170 | + }); | ||
171 | + } | ||
168 | }); | 172 | }); |
169 | 173 | ||
170 | vm.$scope.$on('change-selectedTopic', function (event, selectedTopic) { | 174 | vm.$scope.$on('change-selectedTopic', function (event, selectedTopic) { |
171 | vm.selectedProgram = selectedTopic; | 175 | vm.selectedProgram = selectedTopic; |
172 | - vm.$log.debug('change-selectedTopic', selectedTopic); | ||
173 | }); | 176 | }); |
174 | 177 | ||
175 | vm.$scope.$watch('pagePropostas.selectedProgram', function(newValue, oldValue) { | 178 | vm.$scope.$watch('pagePropostas.selectedProgram', function(newValue, oldValue) { |
@@ -185,23 +188,6 @@ | @@ -185,23 +188,6 @@ | ||
185 | }); | 188 | }); |
186 | }; | 189 | }; |
187 | 190 | ||
188 | - // PropostasPageController.prototype.filter = function() { | ||
189 | - // var vm = this; | ||
190 | - | ||
191 | - // if (vm.search && vm.search.tema) { | ||
192 | - // var slug = vm.search.tema; | ||
193 | - // vm.$log.debug('filter by theme', slug); | ||
194 | - | ||
195 | - // vm.DialogaService.getThemeBySlug(slug, function(theme){ | ||
196 | - // vm.selectedTheme = theme; | ||
197 | - // vm.$log.debug('getThemeBySlug.slug', slug); | ||
198 | - // vm.$log.debug('getThemeBySlug.selectedTheme', theme); | ||
199 | - // }, function(error){ | ||
200 | - // vm.$log.error('Error when try to "getThemeBySlug"', error); | ||
201 | - // }); | ||
202 | - // } | ||
203 | - // }; | ||
204 | - | ||
205 | PropostasPageController.prototype.showAllPrograms = function($event) { | 191 | PropostasPageController.prototype.showAllPrograms = function($event) { |
206 | var vm = this; | 192 | var vm = this; |
207 | $event.stopPropagation(); | 193 | $event.stopPropagation(); |
src/app/pages/propostas/ranking.html
@@ -23,7 +23,7 @@ | @@ -23,7 +23,7 @@ | ||
23 | <div ng-if="pagePropostas.themes"> | 23 | <div ng-if="pagePropostas.themes"> |
24 | <category-list categories="pagePropostas.themes" selected-category="pagePropostas.selectedTheme" disable-unselect="true"></category-list> | 24 | <category-list categories="pagePropostas.themes" selected-category="pagePropostas.selectedTheme" disable-unselect="true"></category-list> |
25 | </div> | 25 | </div> |
26 | - <div ng-if="pagePropostas.filtredPrograms" class="topics-select--wrapper"> | 26 | + <div ng-if="pagePropostas.filtredPrograms && pagePropostas.selectedProgram" class="topics-select--wrapper"> |
27 | <topics-select topics="pagePropostas.filtredPrograms" selected-topic="pagePropostas.selectedProgram"></topics-select> | 27 | <topics-select topics="pagePropostas.filtredPrograms" selected-topic="pagePropostas.selectedProgram"></topics-select> |
28 | </div> | 28 | </div> |
29 | <div ng-if="!pagePropostas.themes && pagePropostas.loadingThemes"> | 29 | <div ng-if="!pagePropostas.themes && pagePropostas.loadingThemes"> |