Commit 2cd1adeb9e0b3871c83c04c1e9a57c09e440ca27

Authored by Jose Pinto
Exists in master

Merge remote-tracking branch 'upstream/master'

src/js/controller.js
1 angular.module('focaModalDomicilio') 1 angular.module('focaModalDomicilio')
2 .controller('focaModalDomicilioController', 2 .controller('focaModalDomicilioController',
3 [ 3 [
4 '$timeout',
4 '$filter', 5 '$filter',
5 '$scope', 6 '$scope',
6 '$uibModalInstance', 7 '$uibModalInstance',
7 'idCliente', 8 'idCliente',
8 'esNuevo', 9 'esNuevo',
9 'focaModalDomicilioService', 10 'focaModalDomicilioService',
11 '$uibModal',
10 '$uibModal', 12 function($filter, $scope, $uibModalInstance, idCliente, esNuevo,
11 function($filter, $scope, $uibModalInstance, idCliente, esNuevo, 13 focaModalDomicilioService, $uibModal) {
12 focaModalDomicilioService, $uibModal) { 14
13 15 $scope.buscar = function() {
14 $scope.buscar = function() { 16 focaModalDomicilioService
15 focaModalDomicilioService 17 .getDomiciliosEntregaByIdCliente($scope.idCliente)
16 .getDomiciliosEntregaByIdCliente($scope.idCliente) 18 .then(function(res) {
17 .then(function(res) { 19 $scope.domicilios = res.data;
18 $scope.domicilios = res.data; 20 $scope.search();
19 $scope.search(); 21 $scope.primerBusqueda = true;
20 $scope.primerBusqueda = true; 22 }
23 );
21 } 24 };
22 ); 25 $scope.filters = '';
23 }; 26 $scope.idCliente = idCliente;
24 $scope.idCliente = idCliente; 27 $scope.buscar();
25 $scope.buscar(); 28 $scope.ingreso = esNuevo;
26 $scope.ingreso = esNuevo; 29 $scope.primerBusqueda = false;
27 $scope.primerBusqueda = false; 30 $scope.contactos = [{}];
28 $scope.contactos = [{}]; 31 // pagination
29 // pagination 32 $scope.numPerPage = 5;
30 $scope.numPerPage = 5; 33 $scope.currentPage = 1;
31 $scope.currentPage = 1; 34 $scope.filteredDomicilios = [];
32 $scope.filteredDomicilios = []; 35 $scope.currentPageDomicilios = [];
33 $scope.currentPageDomicilios = []; 36 $scope.selectedDomicilio = -1;
34 $scope.selectedDomicilio = -1; 37
35 38 //METODOS
36 //METODOS 39 $scope.search = function(pressed) {
37 $scope.search = function() { 40 $scope.filteredDomicilios = $filter('filter')(
38 $scope.filteredDomicilios = $filter('filter')( 41 $scope.domicilios,
39 $scope.domicilios, 42 {$: $scope.filters}
43 );
44
45 if(pressed) {
46 if($scope.filteredDomicilios.length === 0) {
47 $timeout(function() {
48 angular.element('#search')[0].focus();
49 $scope.filters = '';
50 });
51 }else {
52 primera();
53 }
40 {$: $scope.filters} 54 }
41 ); 55
42 56 $scope.lastPage = Math.ceil(
43 $scope.lastPage = Math.ceil( 57 $scope.filteredDomicilios.length / $scope.numPerPage
44 $scope.filteredDomicilios.length / $scope.numPerPage 58 );
45 ); 59
46 60 $scope.resetPage();
47 $scope.resetPage(); 61 };
48 }; 62
49 63 $scope.resetPage = function() {
50 $scope.resetPage = function() { 64 $scope.currentPage = 1;
51 $scope.currentPage = 1; 65 $scope.selectPage(1);
52 $scope.selectPage(1); 66 };
53 }; 67
54 68 $scope.selectPage = function(page) {
55 $scope.selectPage = function(page) { 69 var start = (page - 1) * $scope.numPerPage;
56 var start = (page - 1) * $scope.numPerPage; 70 var end = start + $scope.numPerPage;
57 var end = start + $scope.numPerPage; 71 $scope.paginas = [];
58 $scope.paginas = []; 72 $scope.paginas = calcularPages(page);
59 $scope.paginas = calcularPages(page); 73 $scope.currentPageDomicilios = $scope.filteredDomicilios.slice(start, end);
60 $scope.currentPageDomicilios = $scope.filteredDomicilios.slice(start, end); 74 $scope.currentPage = page;
61 $scope.currentPage = page; 75 };
62 }; 76
63 77 $scope.select = function(domicilio) {
64 $scope.select = function(domicilio) { 78 $uibModalInstance.close(domicilio);
65 $uibModalInstance.close(domicilio); 79 };
66 }; 80
67 81 $scope.cancel = function() {
68 $scope.cancel = function() { 82 $uibModalInstance.dismiss('cancel');
69 $uibModalInstance.dismiss('cancel'); 83 };
70 }; 84
71 85 $scope.busquedaDown = function(key) {
72 $scope.busquedaDown = function(key) { 86 if (key === 40) {
73 if (key === 40) { 87 primera(key);
74 primera(key); 88 }
75 } 89 };
76 }; 90
77 91 $scope.busquedaPress = function(key) {
78 $scope.busquedaPress = function(key) { 92 if (key === 13) {
79 if (key === 13) { 93 $scope.search(true);
80 primera(key); 94 }
81 } 95 };
82 }; 96
83 97 $scope.itemDomicilio = function(key) {
84 $scope.itemDomicilio = function(key) { 98 if (key === 38) {
85 if (key === 38) { 99 anterior(key);
86 anterior(key); 100 }
87 } 101
88 102 if (key === 40) {
89 if (key === 40) { 103 siguiente(key);
90 siguiente(key); 104 }
91 } 105
92 106 if (key === 37) {
93 if (key === 37) { 107 retrocederPagina();
94 retrocederPagina(); 108 }
95 } 109
96 110 if (key === 39) {
97 if (key === 39) { 111 avanzarPagina();
98 avanzarPagina(); 112 }
99 } 113 };
100 }; 114
101 115 $scope.agregarDomicilio = function() {
102 $scope.agregarDomicilio = function() { 116 $scope.domicilio.valores = [];
103 $scope.domicilio.valores = []; 117 $scope.domicilio.idCliente = $scope.idCliente;
104 $scope.domicilio.idCliente = $scope.idCliente; 118 if($scope.domicilio.calle) {
105 if($scope.domicilio.calle) { 119 $scope.domicilio.valores.push({
106 $scope.domicilio.valores.push({ 120 ID_ADAC_1: 1,
107 ID_ADAC_1: 1, 121 dato: $scope.domicilio.calle
108 dato: $scope.domicilio.calle 122 });
109 }); 123 }
110 } 124 if($scope.domicilio.numeroCalle) {
111 if($scope.domicilio.numeroCalle) { 125 $scope.domicilio.valores.push({
112 $scope.domicilio.valores.push({ 126 ID_ADAC_1: 2,
113 ID_ADAC_1: 2, 127 dato: $scope.domicilio.numeroCalle
114 dato: $scope.domicilio.numeroCalle 128 });
115 }); 129 }
116 } 130 if($scope.domicilio.localidad) {
117 if($scope.domicilio.localidad) { 131 $scope.domicilio.valores.push({
118 $scope.domicilio.valores.push({ 132 ID_ADAC_1: 3,
119 ID_ADAC_1: 3, 133 dato: $scope.domicilio.localidad
120 dato: $scope.domicilio.localidad 134 });
121 }); 135 }
122 } 136 if($scope.domicilio.provincia) {
123 if($scope.domicilio.provincia) { 137 $scope.domicilio.valores.push({
124 $scope.domicilio.valores.push({ 138 ID_ADAC_1: 4,
125 ID_ADAC_1: 4, 139 dato: $scope.domicilio.provincia
126 dato: $scope.domicilio.provincia 140 });
127 }); 141 }
128 } 142 //domicilios de entrega corresponden al 1
129 //domicilios de entrega corresponden al 1 143 focaModalDomicilioService
130 focaModalDomicilioService 144 .obtenerUltimoPorNivelPadre(1)
131 .obtenerUltimoPorNivelPadre(1) 145 .then(function(res) {
132 .then(function(res) { 146 $scope.domicilio.nivel1 = 1;//domicilio de entrega corresponde 1
133 $scope.domicilio.nivel1 = 1;//domicilio de entrega corresponde 1 147 $scope.domicilio.nivel2 = res.data[0].ultimo + 1;
134 $scope.domicilio.nivel2 = res.data[0].ultimo + 1; 148 focaModalDomicilioService
135 focaModalDomicilioService 149 .guardarDomicilio($scope.domicilio)
136 .guardarDomicilio($scope.domicilio) 150 .then(function() {
137 .then(function() { 151 $scope.buscar();
138 $scope.buscar(); 152 $scope.ingreso = false;
139 $scope.ingreso = false; 153 $scope.domicilio = {};
140 $scope.domicilio = {}; 154 });
141 }); 155 });
142 }); 156 };
143 }; 157
144 158 $scope.verPuntosDescarga = function(key) {
145 $scope.verPuntosDescarga = function(key) { 159 var modalInstance = $uibModal.open(
146 var modalInstance = $uibModal.open( 160 {
147 { 161 ariaLabelledBy: 'Busqueda de Puntos de descarga',
148 ariaLabelledBy: 'Busqueda de Puntos de descarga', 162 templateUrl: 'modal-punto-descarga.html',
149 templateUrl: 'modal-punto-descarga.html', 163 controller: 'focaModalPuntoDescargaController',
150 controller: 'focaModalPuntoDescargaController', 164 size: 'md',
151 size: 'md', 165 resolve: {
152 resolve: { 166 filters: {
153 filters: { 167 idDomicilio: $scope.domicilios[key].id,
154 idDomicilio: $scope.domicilios[key].id, 168 idCliente: idCliente
155 idCliente: idCliente 169 }
156 } 170 }
157 } 171 }
158 } 172 );
159 ); 173 modalInstance.result.then(function(puntoDescarga) {
160 modalInstance.result.then(function(puntoDescarga) { 174 console.log(puntoDescarga);
161 console.log(puntoDescarga); 175 }, function() {
162 }, function() { 176 //TODO: función llamada cuando cancela el modal
163 //TODO: función llamada cuando cancela el modal 177 });
164 }); 178 };
165 }; 179
166 180 function calcularPages(paginaActual) {
167 function calcularPages(paginaActual) { 181 var paginas = [];
168 var paginas = []; 182 paginas.push(paginaActual);
169 paginas.push(paginaActual); 183
170 184 if (paginaActual - 1 > 1) {
171 if (paginaActual - 1 > 1) { 185
172 186 paginas.unshift(paginaActual - 1);
173 paginas.unshift(paginaActual - 1); 187 if (paginaActual - 2 > 1) {
174 if (paginaActual - 2 > 1) { 188 paginas.unshift(paginaActual - 2);
175 paginas.unshift(paginaActual - 2); 189 }
176 } 190 }
177 } 191
178 192 if (paginaActual + 1 < $scope.lastPage) {
179 if (paginaActual + 1 < $scope.lastPage) { 193 paginas.push(paginaActual + 1);
180 paginas.push(paginaActual + 1); 194 if (paginaActual + 2 < $scope.lastPage) {
181 if (paginaActual + 2 < $scope.lastPage) { 195 paginas.push(paginaActual + 2);
182 paginas.push(paginaActual + 2); 196 }
183 } 197 }
184 } 198
185 199 if (paginaActual !== 1) {
186 if (paginaActual !== 1) { 200 paginas.unshift(1);
187 paginas.unshift(1); 201 }
188 } 202
189 203 if (paginaActual !== $scope.lastPage) {
190 if (paginaActual !== $scope.lastPage) { 204 paginas.push($scope.lastPage);
191 paginas.push($scope.lastPage); 205 }
192 } 206
193 207 return paginas;
194 return paginas; 208 }
195 } 209
196 210 function primera() {
197 function primera() { 211 $scope.selectedDomicilio = 0;
198 $scope.selectedDomicilio = 0; 212 }
199 } 213
200 214 function anterior() {
201 function anterior() { 215 if ($scope.selectedDomicilio === 0 && $scope.currentPage > 1) {
202 if ($scope.selectedDomicilio === 0 && $scope.currentPage > 1) { 216 retrocederPagina();
203 retrocederPagina(); 217 } else {
204 } else { 218 $scope.selectedDomicilio--;
205 $scope.selectedDomicilio--; 219 }
206 } 220 }
207 } 221
208 222 function siguiente() {
209 function siguiente() { 223 if ($scope.selectedDomicilio < $scope.currentPageDomicilios.length ) {
210 if ($scope.selectedDomicilio < $scope.currentPageDomicilios.length ) { 224 $scope.selectedDomicilio++;
211 $scope.selectedDomicilio++; 225 } else {
212 } else { 226 avanzarPagina();
213 avanzarPagina(); 227 }
214 } 228 }
215 } 229
216 230 function retrocederPagina() {
217 function retrocederPagina() { 231 if ($scope.currentPage > 1) {
218 if ($scope.currentPage > 1) { 232 $scope.selectPage($scope.currentPage - 1);
219 $scope.selectPage($scope.currentPage - 1); 233 $scope.selectedDomicilio = $scope.numPerPage - 1;
220 $scope.selectedDomicilio = $scope.numPerPage - 1; 234 }
221 } 235 }
222 } 236
223 237 function avanzarPagina() {
224 function avanzarPagina() { 238 if ($scope.currentPage < $scope.lastPage) {
225 if ($scope.currentPage < $scope.lastPage) { 239 $scope.selectPage($scope.currentPage + 1);
226 $scope.selectPage($scope.currentPage + 1); 240 $scope.selectedDomicilio = 0;
227 $scope.selectedDomicilio = 0; 241 }
228 } 242 }
229 } 243 }
230 } 244 ]
231 ] 245 );
232 ); 246
src/views/modal-domicilio.html
1 <div class="modal-header py-1"> 1 <div class="modal-header py-1">
2 <div class="row w-100"> 2 <div class="row w-100">
3 <div class="col-lg-6"> 3 <div class="col-lg-6">
4 <h5 class="modal-title my-1" ng-hide="ingreso">Búsqueda de Domicilios</h5> 4 <h5 class="modal-title my-1" ng-hide="ingreso">Búsqueda de Domicilios</h5>
5 <h5 class="modal-title my-1" ng-show="ingreso">Crear domicilio</h5> 5 <h5 class="modal-title my-1" ng-show="ingreso">Crear domicilio</h5>
6 </div> 6 </div>
7 <div class="input-group col-lg-6 pr-0 my-2"> 7 <div class="input-group col-lg-6 pr-0 my-2">
8 <input 8 <input
9 type="text" 9 type="text"
10 class="form-control form-control-sm"
10 class="form-control form-control-sm" 11 id="search"
11 placeholder="Búsqueda" 12 placeholder="Búsqueda"
12 ng-model="filters" 13 ng-model="filters"
13 ng-change="search()" 14 ng-change="search()"
14 ng-keydown="busquedaDown($event.keyCode)" 15 ng-keydown="busquedaDown($event.keyCode)"
15 ng-keypress="busquedaPress($event.keyCode)" 16 ng-keypress="busquedaPress($event.keyCode)"
16 foca-focus="selectedDomicilio == -1" 17 foca-focus="selectedDomicilio == -1"
17 ng-focus="selectedDomicilio = -1" 18 ng-focus="selectedDomicilio = -1"
18 teclado-virtual 19 teclado-virtual
19 > 20 >
20 <div class="input-group-append"> 21 <div class="input-group-append">
21 <button 22 <button
22 ladda="searchLoading" 23 ladda="searchLoading"
23 class="btn btn-outline-secondary" 24 class="btn btn-outline-secondary"
25 type="button"
24 type="button" 26 ng-click="busquedaPress(13)"
25 > 27 >
26 <i class="fa fa-search" aria-hidden="true"></i> 28 <i class="fa fa-search" aria-hidden="true"></i>
27 </button> 29 </button>
28 </div> 30 </div>
29 </div> 31 </div>
30 </div> 32 </div>
31 </div> 33 </div>
32 <div class="modal-body" id="modal-body"> 34 <div class="modal-body" id="modal-body">
33 35
34 <div ng-show="!primerBusqueda"> 36 <div ng-show="!primerBusqueda">
35 Debe realizar una primer búsqueda. 37 Debe realizar una primer búsqueda.
36 </div> 38 </div>
37 39
38 <div ng-show="!ingreso"> 40 <div ng-show="!ingreso">
39 <table ng-show="!ingreso" class="table table-striped table-sm"> 41 <table ng-show="!ingreso" class="table table-striped table-sm">
40 <thead> 42 <thead>
41 <tr> 43 <tr>
42 <th>Titulo</th> 44 <th>Titulo</th>
43 <th>Calle</th> 45 <th>Calle</th>
44 <th>Localidad</th> 46 <th>Localidad</th>
45 <th>Provincia</th> 47 <th>Provincia</th>
46 <th></th> 48 <th></th>
47 <th></th> 49 <th></th>
48 </tr> 50 </tr>
49 </thead> 51 </thead>
50 <tbody> 52 <tbody>
51 <tr ng-show="currentPageDomicilios.length == 0 && primerBusqueda"> 53 <tr ng-show="currentPageDomicilios.length == 0 && primerBusqueda">
52 <td colspan="5"> 54 <td colspan="5">
53 No se encontraron resultados. 55 No se encontraron resultados.
54 </td> 56 </td>
55 </tr> 57 </tr>
56 <tr> 58 <tr>
57 <td colspan="4" ng-show="!ingreso"> 59 <td colspan="4" ng-show="!ingreso">
58 <input 60 <input
59 class="form-control form-control-sm" 61 class="form-control form-control-sm"
60 type="text" 62 type="text"
61 placeholder="Nuevo domicilio" 63 placeholder="Nuevo domicilio"
62 readonly 64 readonly
63 ng-click="ingreso = !ingreso" 65 ng-click="ingreso = !ingreso"
64 /> 66 />
65 </td> 67 </td>
66 <td colspan="1" ng-show="!ingreso"> 68 <td colspan="1" ng-show="!ingreso">
67 <button 69 <button
68 type="button" 70 type="button"
69 class="btn btn-sm p-1 float-right" 71 class="btn btn-sm p-1 float-right"
70 ng-class="{ 72 ng-class="{
71 'btn-secondary': selectedDomicilio != 0, 73 'btn-secondary': selectedDomicilio != 0,
72 'btn-primary': selectedDomicilio == 0 74 'btn-primary': selectedDomicilio == 0
73 }" 75 }"
74 foca-focus="selectedDomicilio == 0" 76 foca-focus="selectedDomicilio == 0"
75 ng-keydown="itemDomicilio($event.keyCode)" 77 ng-keydown="itemDomicilio($event.keyCode)"
76 ng-click="ingreso = !ingreso" 78 ng-click="ingreso = !ingreso"
77 > 79 >
78 <i class="fa fa-circle-thin" aria-hidden="true"></i> 80 <i class="fa fa-circle-thin" aria-hidden="true"></i>
79 </button> 81 </button>
80 </td> 82 </td>
81 </tr> 83 </tr>
82 <tr class="selectable" 84 <tr class="selectable"
83 ng-repeat="(key,domicilio) in currentPageDomicilios"> 85 ng-repeat="(key,domicilio) in currentPageDomicilios">
84 <td ng-bind="domicilio.titulo"></td> 86 <td ng-bind="domicilio.titulo"></td>
85 <td ng-bind="domicilio.Calle + ' ' + domicilio.Numero"></td> 87 <td ng-bind="domicilio.Calle + ' ' + domicilio.Numero"></td>
86 <td ng-bind="domicilio.Localidad"></td> 88 <td ng-bind="domicilio.Localidad"></td>
87 <td ng-bind="domicilio.Provincia"></td> 89 <td ng-bind="domicilio.Provincia"></td>
88 <td> 90 <td>
89 <button 91 <button
90 type="button" 92 type="button"
91 class="btn btn-sm p-1 float-right btn-secondary" 93 class="btn btn-sm p-1 float-right btn-secondary"
92 ng-click="verPuntosDescarga(key)" 94 ng-click="verPuntosDescarga(key)"
93 > 95 >
94 <i class="fa fa-arrow-down" aria-hidden="true"></i> 96 <i class="fa fa-arrow-down" aria-hidden="true"></i>
95 </button> 97 </button>
96 </td> 98 </td>
97 <td> 99 <td>
98 <button 100 <button
99 type="button" 101 type="button"
100 class="btn btn-sm p-1 float-right" 102 class="btn btn-sm p-1 float-right"
101 ng-class="{ 103 ng-class="{
102 'btn-secondary': selectedDomicilio != key + 1, 104 'btn-secondary': selectedDomicilio != key + 1,
103 'btn-primary': selectedDomicilio == key + 1 105 'btn-primary': selectedDomicilio == key + 1
104 }" 106 }"
105 foca-focus="selectedDomicilio == {{key + 1}}" 107 foca-focus="selectedDomicilio == {{key + 1}}"
106 ng-keydown="itemDomicilio($event.keyCode)" 108 ng-keydown="itemDomicilio($event.keyCode)"
107 ng-click="select(domicilio)" 109 ng-click="select(domicilio)"
108 > 110 >
109 <i class="fa fa-circle-thin" aria-hidden="true"></i> 111 <i class="fa fa-circle-thin" aria-hidden="true"></i>
110 </button> 112 </button>
111 </td> 113 </td>
112 </tr> 114 </tr>
113 </tbody> 115 </tbody>
114 </table> 116 </table>
115 </div> 117 </div>
116 <form name="formDomicilio" ng-show="ingreso"> 118 <form name="formDomicilio" ng-show="ingreso">
117 <div class="row"> 119 <div class="row">
118 <div class="col-4"> 120 <div class="col-4">
119 <label>Tipo</label> 121 <label>Tipo</label>
120 <select 122 <select
121 class="form-control" 123 class="form-control"
122 ng-disabled="true" 124 ng-disabled="true"
123 > 125 >
124 <option ng-value="2">Entrega</option> 126 <option ng-value="2">Entrega</option>
125 </select> 127 </select>
126 </div> 128 </div>
127 <div class="col-8"> 129 <div class="col-8">
128 <label>Titulo</label> 130 <label>Titulo</label>
129 <input 131 <input
130 type="text" 132 type="text"
131 foca-focus="ingreso" 133 foca-focus="ingreso"
132 class="form-control" 134 class="form-control"
133 ng-model="domicilio.titulo" 135 ng-model="domicilio.titulo"
134 placeholder="Ingrese título" 136 placeholder="Ingrese título"
135 ng-required="true" 137 ng-required="true"
136 teclado-virtual 138 teclado-virtual
137 /> 139 />
138 </div> 140 </div>
139 <div class="col-9"> 141 <div class="col-9">
140 <label>Calle</label> 142 <label>Calle</label>
141 <input 143 <input
142 type="text" 144 type="text"
143 class="form-control" 145 class="form-control"
144 ng-model="domicilio.calle" 146 ng-model="domicilio.calle"
145 placeholder="Ingrese calle" 147 placeholder="Ingrese calle"
146 ng-required="true" 148 ng-required="true"
147 /> 149 />
148 </div> 150 </div>
149 <div class="col-3"> 151 <div class="col-3">
150 <label>Nº</label> 152 <label>Nº</label>
151 <input 153 <input
152 type="text" 154 type="text"
153 class="form-control" 155 class="form-control"
154 ng-model="domicilio.numeroCalle" 156 ng-model="domicilio.numeroCalle"
155 placeholder="Ingrese Numero" 157 placeholder="Ingrese Numero"
156 ng-required="true" 158 ng-required="true"
157 teclado-virtual 159 teclado-virtual
158 /> 160 />
159 </div> 161 </div>
160 <div class="col-6"> 162 <div class="col-6">
161 <label>Localidad</label> 163 <label>Localidad</label>
162 <input 164 <input
163 type="text" 165 type="text"
164 class="form-control" 166 class="form-control"
165 ng-model="domicilio.localidad" 167 ng-model="domicilio.localidad"
166 placeholder="Ingrese localidad" 168 placeholder="Ingrese localidad"
167 ng-required="true" 169 ng-required="true"
168 teclado-virtual 170 teclado-virtual
169 /> 171 />
170 </div> 172 </div>
171 <div class="col-6"> 173 <div class="col-6">
172 <label>Provincia</label> 174 <label>Provincia</label>
173 <input 175 <input
174 type="text" 176 type="text"
175 class="form-control" 177 class="form-control"
176 ng-model="domicilio.provincia" 178 ng-model="domicilio.provincia"
177 placeholder="Ingrese provincia" 179 placeholder="Ingrese provincia"
178 ng-required="true" 180 ng-required="true"
179 /> 181 />
180 </div> 182 </div>
181 </div> 183 </div>
182 </form> 184 </form>
183 </div> 185 </div>
184 <div class="modal-footer"> 186 <div class="modal-footer">
185 <nav ng-show="currentPageDomicilios.length > 0 && !ingreso" class="mr-auto"> 187 <nav ng-show="currentPageDomicilios.length > 0 && !ingreso" class="mr-auto">
186 <ul class="pagination pagination-sm mb-0 justify-content-end"> 188 <ul class="pagination pagination-sm mb-0 justify-content-end">
187 <li class="page-item" ng-class="{'disabled': currentPage == 1}"> 189 <li class="page-item" ng-class="{'disabled': currentPage == 1}">
188 <a class="page-link" href="javascript:void();" ng-click="selectPage(currentPage - 1)"> 190 <a class="page-link" href="javascript:void();" ng-click="selectPage(currentPage - 1)">
189 <span aria-hidden="true">&laquo;</span> 191 <span aria-hidden="true">&laquo;</span>
190 <span class="sr-only">Anterior</span> 192 <span class="sr-only">Anterior</span>
191 </a> 193 </a>
192 </li> 194 </li>
193 <li 195 <li
194 class="page-item" 196 class="page-item"
195 ng-repeat="pagina in paginas" 197 ng-repeat="pagina in paginas"
196 ng-class="{'active': pagina == currentPage}" 198 ng-class="{'active': pagina == currentPage}"
197 > 199 >
198 <a 200 <a
199 class="page-link" 201 class="page-link"
200 href="javascript:void();" 202 href="javascript:void();"
201 ng-click="selectPage(pagina)" 203 ng-click="selectPage(pagina)"
202 ng-bind="pagina" 204 ng-bind="pagina"
203 ></a> 205 ></a>
204 </li> 206 </li>
205 <li class="page-item" ng-class="{'disabled': currentPage == lastPage}"> 207 <li class="page-item" ng-class="{'disabled': currentPage == lastPage}">
206 <a class="page-link" href="javascript:void();" ng-click="selectPage(currentPage + 1)"> 208 <a class="page-link" href="javascript:void();" ng-click="selectPage(currentPage + 1)">
207 <span aria-hidden="true">&raquo;</span> 209 <span aria-hidden="true">&raquo;</span>
208 <span class="sr-only">Siguiente</span> 210 <span class="sr-only">Siguiente</span>
209 </a> 211 </a>
210 </li> 212 </li>
211 </ul> 213 </ul>
212 </nav> 214 </nav>
213 <button 215 <button
214 ng-show="!ingreso" 216 ng-show="!ingreso"
215 class="btn btn-sm btn-secondary" 217 class="btn btn-sm btn-secondary"
216 type="button" 218 type="button"
217 ng-click="cancel()" 219 ng-click="cancel()"
218 >Volver 220 >Volver
219 </button> 221 </button>
220 <button 222 <button
221 ng-show="ingreso" 223 ng-show="ingreso"
222 class="btn btn-secondary btn-sm" 224 class="btn btn-secondary btn-sm"
223 type="button" 225 type="button"
224 ng-click="ingreso = !ingreso; domicilio = {}; contactos = [{}]" 226 ng-click="ingreso = !ingreso; domicilio = {}; contactos = [{}]"
225 >Cancelar 227 >Cancelar
226 </button> 228 </button>
227 <button 229 <button
228 ng-show="ingreso" 230 ng-show="ingreso"
229 class="btn btn-sm btn-primary" 231 class="btn btn-sm btn-primary"
230 type="button" 232 type="button"
231 ng-click="agregarDomicilio()" 233 ng-click="agregarDomicilio()"
232 ng-disabled="!formDomicilio.$valid" 234 ng-disabled="!formDomicilio.$valid"
233 >Agregar domicilio 235 >Agregar domicilio
234 </button> 236 </button>
235 </div> 237 </div>
236 238