angular.module('focaBotoneraLateral') .service('focaBotoneraLateralService', ['$localStorage', function ($localStorage) { this.botones = { teclado: true, salir: false, cancelar: false, pausar: false, guardar: false, guardando: false, funcionGuardar: undefined, pathCancelar: undefined, custom: [] }; this.pausarData = { label: '', val: '' }; this.rutasPausadas = { label: 'rutas', val: [] }; this.showTeclado = function (value) { this.botones.teclado = value; }; this.showSalir = function (value) { this.botones.custom = []; this.botones.salir = value; }; this.showPausar = function (value) { this.botones.custom = []; this.botones.pausar = value; }; this.setPausarData = function (obj) { this.pausarData = obj; }; this.setRutasPausadas = function (obj) { var auxArray = []; this.rutasPausadas.val.push(obj.val); angular.forEach(this.rutasPausadas.val, function (ruta) { var exists = false; angular.forEach(auxArray, function (val2) { if (angular.equals(ruta, val2)) { exists = true }; }); if (exists == false && ruta !== "") { auxArray.push(ruta); } }); this.rutasPausadas.val = auxArray; }; this.showCancelar = function (value, path) { this.botones.custom = []; this.botones.cancelar = value; this.botones.pathCancelar = (path) ? path : undefined; }; this.showGuardar = function (value, funcion) { angular.element('#guardar').removeClass('guardado'); this.botones.custom = []; this.botones.guardar = value; if (value) this.botones.funcionGuardar = funcion; }; this.addCustomButton = function (title, funcion) { this.botones.custom.push({ title: title, funcion: funcion }); }; this.startGuardar = function () { this.botones.guardando = true; }; this.endGuardar = function (guardado) { this.botones.guardando = false; if (guardado) angular.element('#guardar').addClass('guardado'); }; this.setLSItem = function () { $localStorage[this.pausarData.label] = JSON.stringify(this.pausarData.val); }; this.setLSRuta = function () { $localStorage[this.rutasPausadas.label] = JSON.stringify(this.rutasPausadas.val); }; }]);