Commit de0d0a786db539c5c27e4e5f4a80e10f4e9c4693
1 parent
94323b65
Exists in
master
and in
8 other branches
Fix search button and scroll
Showing
4 changed files
with
40 additions
and
8 deletions
Show diff stats
src/app/pages/programas/programas.controller.js
@@ -139,6 +139,21 @@ | @@ -139,6 +139,21 @@ | ||
139 | 139 | ||
140 | }; | 140 | }; |
141 | 141 | ||
142 | + ProgramasPageController.prototype.submitSearch = function() { | ||
143 | + var vm = this; | ||
144 | + | ||
145 | + vm.loadingFilter = true; | ||
146 | + | ||
147 | + // scroll to result grid | ||
148 | + var $searchResult = angular.element('#search-result'); | ||
149 | + if ($searchResult && $searchResult.length > 0) { | ||
150 | + angular.element('body').animate({scrollTop: $searchResult.offset().top}, 'fast'); | ||
151 | + vm.filtredPrograms = vm.getFiltredPrograms(); | ||
152 | + }else { | ||
153 | + vm.$log.warn('#search-result element not found.'); | ||
154 | + } | ||
155 | + }; | ||
156 | + | ||
142 | ProgramasPageController.prototype.showAllPrograms = function($event) { | 157 | ProgramasPageController.prototype.showAllPrograms = function($event) { |
143 | var vm = this; | 158 | var vm = this; |
144 | $event.stopPropagation(); | 159 | $event.stopPropagation(); |
src/app/pages/programas/programas.html
@@ -26,7 +26,7 @@ | @@ -26,7 +26,7 @@ | ||
26 | <label for="articleQueryFilter" class="control-label sr-only">Buscar programas:</label> | 26 | <label for="articleQueryFilter" class="control-label sr-only">Buscar programas:</label> |
27 | <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pageProgramas.query" placeholder="Buscar programas" aria-label="Buscar programas" > | 27 | <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pageProgramas.query" placeholder="Buscar programas" aria-label="Buscar programas" > |
28 | <span class="input-group-btn"> | 28 | <span class="input-group-btn"> |
29 | - <button type="button" class="btn btn-default" ng-click="pageProgramas.search()"> | 29 | + <button type="button" class="btn btn-default" ng-click="pageProgramas.submitSearch()"> |
30 | <span class="icon-circle icon-small color-theme-common-bg"> | 30 | <span class="icon-circle icon-small color-theme-common-bg"> |
31 | <span class="glyphicon glyphicon-search"></span> | 31 | <span class="glyphicon glyphicon-search"></span> |
32 | </span> | 32 | </span> |
@@ -58,7 +58,7 @@ | @@ -58,7 +58,7 @@ | ||
58 | <label for="articleQueryFilter" class="control-label sr-only">Buscar programas:</label> | 58 | <label for="articleQueryFilter" class="control-label sr-only">Buscar programas:</label> |
59 | <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pageProgramas.query" placeholder="Buscar programas" aria-label="Buscar programas" > | 59 | <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pageProgramas.query" placeholder="Buscar programas" aria-label="Buscar programas" > |
60 | <span class="input-group-btn"> | 60 | <span class="input-group-btn"> |
61 | - <button type="button" class="btn btn-default" ng-click="pageProgramas.search()"> | 61 | + <button type="button" class="btn btn-default" ng-click="pageProgramas.submitSearch()"> |
62 | <span class="icon-circle icon-small color-theme-common-bg"> | 62 | <span class="icon-circle icon-small color-theme-common-bg"> |
63 | <span class="glyphicon glyphicon-search"></span> | 63 | <span class="glyphicon glyphicon-search"></span> |
64 | </span> | 64 | </span> |
@@ -68,7 +68,7 @@ | @@ -68,7 +68,7 @@ | ||
68 | </div> | 68 | </div> |
69 | </div> | 69 | </div> |
70 | </div> | 70 | </div> |
71 | - <div class="row"> | 71 | + <div id="search-result" class="row"> |
72 | <div class="col-sm-12"> | 72 | <div class="col-sm-12"> |
73 | <header class="header"> | 73 | <header class="header"> |
74 | <h2>Conheça os programas</h2> | 74 | <h2>Conheça os programas</h2> |
src/app/pages/propostas/propostas.controller.js
@@ -6,11 +6,12 @@ | @@ -6,11 +6,12 @@ | ||
6 | .controller('PropostasPageController', PropostasPageController); | 6 | .controller('PropostasPageController', PropostasPageController); |
7 | 7 | ||
8 | /** @ngInject */ | 8 | /** @ngInject */ |
9 | - function PropostasPageController(DialogaService, $scope, $location, $filter, $log) { | 9 | + function PropostasPageController(DialogaService, $scope, $rootScope, $location, $filter, $log) { |
10 | var vm = this; | 10 | var vm = this; |
11 | 11 | ||
12 | vm.DialogaService = DialogaService; | 12 | vm.DialogaService = DialogaService; |
13 | vm.$scope = $scope; | 13 | vm.$scope = $scope; |
14 | + vm.$rootScope = $rootScope; | ||
14 | vm.$location = $location; | 15 | vm.$location = $location; |
15 | vm.$filter = $filter; | 16 | vm.$filter = $filter; |
16 | vm.$log = $log; | 17 | vm.$log = $log; |
@@ -18,6 +19,7 @@ | @@ -18,6 +19,7 @@ | ||
18 | vm.init(); | 19 | vm.init(); |
19 | vm.loadData(); | 20 | vm.loadData(); |
20 | // vm.attachListeners(); // attach listeners after load data (SYNC) | 21 | // vm.attachListeners(); // attach listeners after load data (SYNC) |
22 | + vm.$rootScope.focusMainContent(); | ||
21 | 23 | ||
22 | $log.debug('PropostasPageController'); | 24 | $log.debug('PropostasPageController'); |
23 | } | 25 | } |
@@ -156,4 +158,19 @@ | @@ -156,4 +158,19 @@ | ||
156 | return output; | 158 | return output; |
157 | }; | 159 | }; |
158 | 160 | ||
161 | + PropostasPageController.prototype.submitSearch = function() { | ||
162 | + var vm = this; | ||
163 | + | ||
164 | + vm.loadingFilter = true; | ||
165 | + | ||
166 | + // scroll to result grid | ||
167 | + var $searchResult = angular.element('#search-result'); | ||
168 | + if ($searchResult && $searchResult.length > 0) { | ||
169 | + angular.element('body').animate({scrollTop: $searchResult.offset().top}, 'fast'); | ||
170 | + vm.filtredProposals = vm.getFiltredProposals(); | ||
171 | + }else { | ||
172 | + vm.$log.warn('#search-result element not found.'); | ||
173 | + } | ||
174 | + }; | ||
175 | + | ||
159 | })(); | 176 | })(); |
src/app/pages/propostas/propostas.html
@@ -6,7 +6,7 @@ | @@ -6,7 +6,7 @@ | ||
6 | </div> | 6 | </div> |
7 | </div> | 7 | </div> |
8 | 8 | ||
9 | -<div class="page--propostas"> | 9 | +<div class="page--propostas" role="main"> |
10 | 10 | ||
11 | <section class="section-info" ng-if="pagePropostas.loading || pagePropostas.error"> | 11 | <section class="section-info" ng-if="pagePropostas.loading || pagePropostas.error"> |
12 | <div class="container"> | 12 | <div class="container"> |
@@ -46,7 +46,7 @@ | @@ -46,7 +46,7 @@ | ||
46 | <label for="articleQueryFilter" class="control-label sr-only">Buscar propostas:</label> | 46 | <label for="articleQueryFilter" class="control-label sr-only">Buscar propostas:</label> |
47 | <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pagePropostas.query" placeholder="Buscar propostas" aria-label="Buscar propostas" > | 47 | <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pagePropostas.query" placeholder="Buscar propostas" aria-label="Buscar propostas" > |
48 | <span class="input-group-btn"> | 48 | <span class="input-group-btn"> |
49 | - <button type="button" class="btn btn-default" ng-click="pagePropostas.search()"> | 49 | + <button type="button" class="btn btn-default" ng-click="pagePropostas.submitSearch()"> |
50 | <span class="icon-circle icon-small color-theme-common-bg"> | 50 | <span class="icon-circle icon-small color-theme-common-bg"> |
51 | <span class="glyphicon glyphicon-search"></span> | 51 | <span class="glyphicon glyphicon-search"></span> |
52 | </span> | 52 | </span> |
@@ -78,7 +78,7 @@ | @@ -78,7 +78,7 @@ | ||
78 | <label for="articleQueryFilter" class="control-label sr-only">Buscar propostas:</label> | 78 | <label for="articleQueryFilter" class="control-label sr-only">Buscar propostas:</label> |
79 | <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pagePropostas.query" placeholder="Buscar propostas" aria-label="Buscar propostas" > | 79 | <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pagePropostas.query" placeholder="Buscar propostas" aria-label="Buscar propostas" > |
80 | <span class="input-group-btn"> | 80 | <span class="input-group-btn"> |
81 | - <button type="button" class="btn btn-default" ng-click="pagePropostas.search()"> | 81 | + <button type="button" class="btn btn-default" ng-click="pagePropostas.submitSearch()"> |
82 | <span class="icon-circle icon-small color-theme-common-bg"> | 82 | <span class="icon-circle icon-small color-theme-common-bg"> |
83 | <span class="glyphicon glyphicon-search"></span> | 83 | <span class="glyphicon glyphicon-search"></span> |
84 | </span> | 84 | </span> |
@@ -89,7 +89,7 @@ | @@ -89,7 +89,7 @@ | ||
89 | </div> | 89 | </div> |
90 | </div> | 90 | </div> |
91 | 91 | ||
92 | - <div class="row" ng-if="pagePropostas.proposals"> | 92 | + <div id="search-result" class="row" ng-if="pagePropostas.proposals"> |
93 | <div class="col-sm-12"> | 93 | <div class="col-sm-12"> |
94 | <header class="header"> | 94 | <header class="header"> |
95 | <h2>Total de Propostas: "<b>{{pagePropostas.filtredProposals.length}} propostas</b>"</h2> | 95 | <h2>Total de Propostas: "<b>{{pagePropostas.filtredProposals.length}} propostas</b>"</h2> |