angular.module('focaConfiguracion') .factory("RequestHeadersInterceptor", [ '$localStorage', '$cookies', '$injector', function($localStorage, $cookies, $injector) { function getPuntoVenta(config) { var url = $injector.get('API_ENDPOINT').URL; if (url) { var $http = $injector.get('$http'); var $timeout = $injector.get('$timeout'); config.url = url + '/config/punto-venta'; $timeout(function() { $http(config).then(function(res) { $cookies.put('puntoVenta', res.data[0]); }); }, 10000); } } var request = { request: function(config) { var nombreUsuario = $cookies.get('nombreUsuario'); var puntoVenta = $cookies.get('puntoVenta'); if (!puntoVenta) { getPuntoVenta(angular.copy(config)); } config.headers["X-Terminal-Key"] = $localStorage.terminalKey; config.headers["X-Nombre-Usuario"] = nombreUsuario; config.headers["X-Punto-Venta"] = puntoVenta; return config; } } return request; } ]);