/**
* @ngdoc managers
* @name IncidenteEnterManager
* @module s4c.managers.IncidenteEnterManager
*
* @description
* `IncidenteEnterManager` Componente para comunicação entre uma página html qualquer e o controller da diretiva
*
*
*/
(function () {
'use strict';
function IncidenteEnterManager(MainState, CamadasService, MapaService) {
var service = {
ativo: false,
latlng: null,
/**
* @method abrir
* @param {*} e
*/
abrir: function (e) {
service.latlng = e.latlng;
service.ativo = true;
var incidenteEnter = MainState.getDirective('incidenteEnter');
incidenteEnter.abrir(service.latlng);
incidenteEnter.updateNow();
},
/**
* @method abrirAlfinete
* @param {*} marker
* @param {*} chavePoi
*/
abrirAlfinete: function (marker, chavePoi) {
service.latlng = marker.getLatLng();
service.ativo = true;
var incidenteEnter = MainState.getDirective('incidenteEnter');
incidenteEnter.abrirAlfinete(marker, chavePoi);
},
/**
* @method abrirCentro
*/
abrirCentro: function () {
MapaService.obterPontoCentral()
.then(function (center) {
this.abrir({
latlng: center
});
}.bind(this));
},
/**
* @method fechar
*/
fechar: function () {
service.ativo = false;
var incidenteEnter = MainState.getDirective('incidenteEnter');
incidenteEnter.onClose();
}
};
return service;
}
IncidenteEnterManager.$inject = [
'MainState',
'CamadasService',
'MapaService'
];
angular.module('s4c.managers')
.service('IncidenteEnterManager', IncidenteEnterManager);
})();