function AddressFocusHelper() { } AddressFocusHelper.AddressText = null; AddressFocusHelper.AddressGraphic = null; AddressFocusHelper.AddressBufferCenterLat = null; AddressFocusHelper.AddressBufferCenterLng = null; AddressFocusHelper.AddressBufferRadius = null; AddressFocusHelper.AddressBufferGraphic = null; AddressFocusHelper.ShouldZoomToExtent = true; AddressFocusHelper.GeometryLayerDojoClickConnection = null;
AddressFocusHelper.PlaceAddressGraphic = function (b, c, a) {
    $("#main-address-search").val(a); $("#address-form-search").val(a); AddressFocusHelper.RemoveBufferGraphic(); AddressDistanceHelper.RemovePolylineOverlay(); var d = MapHelper.GetGraphicsLayer("geometryLayer"); if (d) {
        d.clear(); AddressFocusHelper.GeometryLayerDojoClickConnection != void 0 && AddressFocusHelper.GeometryLayerDojoClickConnection != null && dojo.disconnect(AddressFocusHelper.GeometryLayerDojoClickConnection); var e = new esri.geometry.Point(b, c, new esri.SpatialReference({ wkid: Configuration.SpatialReferenceWKID_BING }));
        AddressFocusHelper.AddressGraphic = new esri.Graphic(e, Configuration.AddressGraphicSymbol); AddressFocusHelper.AddressBufferCenterLat = c; AddressFocusHelper.AddressBufferCenterLng = b; AddressFocusHelper.AddressText = a; AddressFocusHelper.GeometryLayerDojoClickConnection = dojo.connect(d, "onClick", function () { MapHelper.ShowAddressGraphicInfoWindow() }); $("#address-form-radius-list").attr({ disabled: false }); b = $("#address-form-radius-list").val(); b == "0.0" && (CookieHelper.HasCookie() && CookieHelper.GetCookieData().units ==
"kilometres" ? (b = "0.621371", $("#address-form-radius-list").val("0.621371")) : (b = "1.0", $("#address-form-radius-list").val("1.0"))); AddressFocusHelper.FocusCrimeAroundAddress(b, AddressFocusHelper.AddressGraphic)
    } 
};
AddressFocusHelper.FocusCrimeAroundAddress = function (b, c) {
    $("#address-form-radius-list, #address-info-window-radius-list").val(b); if (b == "0.0") AddressFocusHelper.RemoveAddressFocus(); else if ($("#address-nav-link").removeAttr("class").addClass("focus"), c != void 0 && c != null) {
        Configuration.ShowingBuffer = true; AddressFocusHelper.AddressBufferRadius = b; var a = new esri.tasks.BufferParameters; a.distances = [b]; a.bufferSpatialReference = new esri.SpatialReference({ wkid: Configuration.SpatialReferenceWKID }); a.outSpatialReference =
Map.Map.spatialReference; a.unit = esri.tasks.GeometryService.UNIT_STATUTE_MILE; a.geometries = [c.geometry]; Configuration.GeometryService.buffer(a, function (a) { AddressFocusHelper.ShowBuffer(a) }, function (a) {
    Configuration.ShowingBuffer = false; a = "The geometry service's buffer() method failed. \r\nCode: " + a.code + "\r\nMessage: " + a.message + "\r\nDetails:" + a.details; ConsoleLogHelper.AddMessage(a); $("#loading-message").show(); $("#loading-message").attr("class", "error").html("<h4>We're having some issues ... </h4>" +
a + '<br/><a class="button" href="default.aspx">Restart Application</a>').show().modal({ appendTo: "form", close: false, escClose: false, overlayClose: false, opacity: 15, overlayCss: { backgroundColor: "#000"} })
}); EventBinderHelper.EnableRemoveFocusButtons()
    } else Configuration.ShowingBuffer = false, ConsoleLogHelper.AddMessage("AddressFocusHelper.FocusCrimeAroundAddress failed. Graphic is undefined or null.")
};
AddressFocusHelper.ShowBuffer = function (b) {
    if (b != void 0 && b != null) {
        var c = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_SOLID, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([5, 95, 158, 0.65]), 2), new dojo.Color([145, 209, 255, 0.35])); dojo.forEach(b, function (a) { AddressFocusHelper.AddressBufferGraphic = new esri.Graphic(a, c); a = MapHelper.GetGraphicsLayer("geometryLayer"); a != null && (a.clear(), a.add(AddressFocusHelper.AddressBufferGraphic), a.add(AddressFocusHelper.AddressGraphic)) });
        AddressFocusHelper.AddressBufferGraphic != void 0 && AddressFocusHelper.AddressBufferGraphic != null ? (AddressFocusHelper.ShouldZoomToExtent == true ? Map.Map.setExtent(AddressFocusHelper.AddressBufferGraphic.geometry.getExtent().expand(1.5)) : Configuration.IsShowingCrime && MapHelper.GetCrimes(), AddressFocusHelper.ShouldZoomToExtent = true) : ConsoleLogHelper.AddMessage("There was a problem drawing buffer. AddressFocusHelper.AddressBufferGraphic is null or undefined."); Map.Map.infoWindow.hide(); setTimeout(function () { MapHelper.ShowAddressGraphicInfoWindow() },
500)
    } else ConsoleLogHelper.AddMessage("There was a problem executing buffer. No features were returned")
};
AddressFocusHelper.RemoveAddressFocus = function () { Map.Map.infoWindow.hide(); AddressFocusHelper.AddressText = null; MapHelper.ClearGraphicsLayer("geometryLayer"); if (Configuration.ShowingBuffer) Configuration.ShowingBuffer = false, AddressFocusHelper.AddressBufferGraphic = null, EventBinderHelper.DisableRemoveFocusButtons(), $("#address-nav-link").removeAttr("class"), $("#address-form-radius-list").val("0.0").attr({ disabled: true }); Configuration.ShowingBuffer = false; Configuration.IsShowingCrime && MapHelper.GetCrimes() };
AddressFocusHelper.RemoveBufferGraphic = function () { MapHelper.ClearGraphicsLayer("geometryLayer"); ConsoleLogHelper.AddMessage("AddressFocusHelper.RemoveBufferGraphic() completed.") };
