Commit 44be72c89ee25fd1693cf09affbf4d3af6aa99e9

Authored by Eric Fernandez
1 parent 021b79827d
Exists in master

First Version

Showing 1 changed file with 3 additions and 3 deletions   Show diff stats
src/js/controller.js
1 angular.module('focaModalDomicilio') 1 angular.module('focaModalDomicilio')
2 .controller('focaModalDomicilioController', 2 .controller('focaModalDomicilioController',
3 [ 3 [
4 '$filter', 4 '$filter',
5 '$scope', 5 '$scope',
6 '$uibModalInstance', 6 '$uibModalInstance',
7 // 'idCliente', 7 'idCliente',
8 'focaModalDomicilioService', 8 'focaModalDomicilioService',
9 function($filter, $scope, $uibModalInstance, focaModalDomicilioService) { 9 function($filter, $scope, $uibModalInstance, idCliente,focaModalDomicilioService) {
10 10
11 focaModalDomicilioService.getDomiciliosByIdCliente(1).then( 11 focaModalDomicilioService.getDomiciliosByIdCliente(idCliente).then(
12 function(res) { 12 function(res) {
13 $scope.domicilios = res.data; 13 $scope.domicilios = res.data;
14 $scope.search(); 14 $scope.search();
15 } 15 }
16 ); 16 );
17 17
18 // pagination 18 // pagination
19 $scope.numPerPage = 5; 19 $scope.numPerPage = 5;
20 $scope.currentPage = 1; 20 $scope.currentPage = 1;
21 $scope.filteredDomicilios = []; 21 $scope.filteredDomicilios = [];
22 $scope.currentPageDomicilios = []; 22 $scope.currentPageDomicilios = [];
23 $scope.selectedDomicilio = -1; 23 $scope.selectedDomicilio = -1;
24 24
25 //METODOS 25 //METODOS
26 $scope.search = function() { 26 $scope.search = function() {
27 $scope.filteredDomicilios = $filter('filter')( 27 $scope.filteredDomicilios = $filter('filter')(
28 $scope.domicilios, 28 $scope.domicilios,
29 {$: $scope.filters} 29 {$: $scope.filters}
30 ); 30 );
31 31
32 $scope.lastPage = Math.ceil( 32 $scope.lastPage = Math.ceil(
33 $scope.filteredDomicilios.length / $scope.numPerPage 33 $scope.filteredDomicilios.length / $scope.numPerPage
34 ); 34 );
35 35
36 $scope.resetPage(); 36 $scope.resetPage();
37 }; 37 };
38 38
39 $scope.resetPage = function() { 39 $scope.resetPage = function() {
40 $scope.currentPage = 1; 40 $scope.currentPage = 1;
41 $scope.selectPage(1); 41 $scope.selectPage(1);
42 }; 42 };
43 43
44 $scope.selectPage = function(page) { 44 $scope.selectPage = function(page) {
45 var start = (page - 1) * $scope.numPerPage; 45 var start = (page - 1) * $scope.numPerPage;
46 var end = start + $scope.numPerPage; 46 var end = start + $scope.numPerPage;
47 $scope.paginas = []; 47 $scope.paginas = [];
48 $scope.paginas = calcularPages(page); 48 $scope.paginas = calcularPages(page);
49 $scope.currentPageDomicilios = $scope.filteredDomicilios.slice(start, end); 49 $scope.currentPageDomicilios = $scope.filteredDomicilios.slice(start, end);
50 $scope.currentPage = page; 50 $scope.currentPage = page;
51 }; 51 };
52 52
53 $scope.select = function(domicilio) { 53 $scope.select = function(domicilio) {
54 $uibModalInstance.close(domicilio); 54 $uibModalInstance.close(domicilio);
55 }; 55 };
56 56
57 $scope.cancel = function() { 57 $scope.cancel = function() {
58 $uibModalInstance.dismiss('cancel'); 58 $uibModalInstance.dismiss('cancel');
59 }; 59 };
60 60
61 $scope.busquedaDown = function(key) { 61 $scope.busquedaDown = function(key) {
62 if (key === 40) { 62 if (key === 40) {
63 primera(key); 63 primera(key);
64 } 64 }
65 }; 65 };
66 66
67 $scope.busquedaPress = function(key) { 67 $scope.busquedaPress = function(key) {
68 if (key === 13) { 68 if (key === 13) {
69 primera(key); 69 primera(key);
70 } 70 }
71 }; 71 };
72 72
73 $scope.itemDomicilio = function(key) { 73 $scope.itemDomicilio = function(key) {
74 if (key === 38) { 74 if (key === 38) {
75 anterior(key); 75 anterior(key);
76 } 76 }
77 77
78 if (key === 40) { 78 if (key === 40) {
79 siguiente(key); 79 siguiente(key);
80 } 80 }
81 81
82 if (key === 37) { 82 if (key === 37) {
83 retrocederPagina(); 83 retrocederPagina();
84 } 84 }
85 85
86 if (key === 39) { 86 if (key === 39) {
87 avanzarPagina(); 87 avanzarPagina();
88 } 88 }
89 }; 89 };
90 90
91 function calcularPages(paginaActual) { 91 function calcularPages(paginaActual) {
92 var paginas = []; 92 var paginas = [];
93 paginas.push(paginaActual); 93 paginas.push(paginaActual);
94 94
95 if (paginaActual - 1 > 1) { 95 if (paginaActual - 1 > 1) {
96 96
97 paginas.unshift(paginaActual - 1); 97 paginas.unshift(paginaActual - 1);
98 if (paginaActual - 2 > 1) { 98 if (paginaActual - 2 > 1) {
99 paginas.unshift(paginaActual - 2); 99 paginas.unshift(paginaActual - 2);
100 } 100 }
101 } 101 }
102 102
103 if (paginaActual + 1 < $scope.lastPage) { 103 if (paginaActual + 1 < $scope.lastPage) {
104 paginas.push(paginaActual + 1); 104 paginas.push(paginaActual + 1);
105 if (paginaActual + 2 < $scope.lastPage) { 105 if (paginaActual + 2 < $scope.lastPage) {
106 paginas.push(paginaActual + 2); 106 paginas.push(paginaActual + 2);
107 } 107 }
108 } 108 }
109 109
110 if (paginaActual !== 1) { 110 if (paginaActual !== 1) {
111 paginas.unshift(1); 111 paginas.unshift(1);
112 } 112 }
113 113
114 if (paginaActual !== $scope.lastPage) { 114 if (paginaActual !== $scope.lastPage) {
115 paginas.push($scope.lastPage); 115 paginas.push($scope.lastPage);
116 } 116 }
117 117
118 return paginas; 118 return paginas;
119 } 119 }
120 120
121 function primera() { 121 function primera() {
122 $scope.selectedDomicilio = 0; 122 $scope.selectedDomicilio = 0;
123 } 123 }
124 124
125 function anterior() { 125 function anterior() {
126 if ($scope.selectedDomicilio === 0 && $scope.currentPage > 1) { 126 if ($scope.selectedDomicilio === 0 && $scope.currentPage > 1) {
127 retrocederPagina(); 127 retrocederPagina();
128 } else { 128 } else {
129 $scope.selectedDomicilio--; 129 $scope.selectedDomicilio--;
130 } 130 }
131 } 131 }
132 132
133 function siguiente() { 133 function siguiente() {
134 if ($scope.selectedDomicilio < $scope.currentPageDomicilios.length - 1 ) { 134 if ($scope.selectedDomicilio < $scope.currentPageDomicilios.length - 1 ) {
135 $scope.selectedDomicilio++; 135 $scope.selectedDomicilio++;
136 } else { 136 } else {
137 avanzarPagina(); 137 avanzarPagina();
138 } 138 }
139 } 139 }
140 140
141 function retrocederPagina() { 141 function retrocederPagina() {
142 if ($scope.currentPage > 1) { 142 if ($scope.currentPage > 1) {
143 $scope.selectPage($scope.currentPage - 1); 143 $scope.selectPage($scope.currentPage - 1);
144 $scope.selectedDomicilio = $scope.numPerPage - 1; 144 $scope.selectedDomicilio = $scope.numPerPage - 1;
145 } 145 }
146 } 146 }
147 147
148 function avanzarPagina() { 148 function avanzarPagina() {
149 if ($scope.currentPage < $scope.lastPage) { 149 if ($scope.currentPage < $scope.lastPage) {
150 $scope.selectPage($scope.currentPage + 1); 150 $scope.selectPage($scope.currentPage + 1);
151 $scope.selectedDomicilio = 0; 151 $scope.selectedDomicilio = 0;
152 } 152 }
153 } 153 }
154 } 154 }
155 ] 155 ]
156 ); 156 );
157 157