diff --git a/src/js/controller.js b/src/js/controller.js index badf1bc..09ea013 100644 --- a/src/js/controller.js +++ b/src/js/controller.js @@ -7,18 +7,28 @@ angular.module('focaAgendarVisita') $uibModal, focaBotoneraLateralService, $filter, focaModalService, focaSeguimientoService ) { - $scope.focused = 0; - $scope.rol = 1; - $scope.visita = {}; - $scope.now = new Date(); - $scope.botonera = focaAgendarVisitaService.getBotonera(); - $timeout(function() { - focaBotoneraLateralService.showSalir(true); - focaBotoneraLateralService.showPausar(true); - focaBotoneraLateralService.showGuardar(true, $scope.guardar); - }); - $timeout(function() {getLSVisita();}); + config(); + init(); + + function config(){ + $scope.focused = 0; + $scope.rol = 1; + $scope.visita = {}; + $scope.now = new Date(); + } + + function init(){ + $scope.botonera = focaAgendarVisitaService.getBotonera(); + $timeout(function() { + focaBotoneraLateralService.showSalir(false); + focaBotoneraLateralService.showPausar(true); + focaBotoneraLateralService.showGuardar(true, $scope.guardar); + focaBotoneraLateralService.addCustomButton('Salir', salir); + }); + + $timeout(function() {getLSVisita();}); + } $scope.seleccionarCliente = function() { var modalInstance = $uibModal.open( @@ -44,19 +54,19 @@ angular.module('focaAgendarVisita') ); }; function setearVisita(visita){ - $scope.visita = visita; + $scope.visita = visita; $scope.$broadcast('addCabecera', { label: 'Cliente:', valor: $filter('rellenarDigitos')(visita.cliente.cod, 3) + ' - ' + visita.cliente.nom - }); + }); } function getLSVisita(){ - var visita= JSON.parse($localStorage.visita || null); + var visita = JSON.parse($localStorage.visita || null); if (visita) { setearVisita(visita); delete $localStorage.visita; - } + } } $scope.seleccionarVisitante = function() { @@ -158,6 +168,19 @@ angular.module('focaAgendarVisita') $location.path('/'); }); }; + function salir() { + var confirmar = angular.equals($scope.visita, {}); + + if (!confirmar) { + focaModalService.confirm( + '¿Está seguro de que desea salir? Se perderán todos los datos cargados.' + ).then(function(data) { + if (data) $location.path('/'); + }); + } else { + $location.path('/'); + } + } } ]) .controller('focaModalTipoVisita', ['$uibModalInstance', '$scope',