예제 #1
0
        public PartialViewResult EditBoundingBox()
        {
            var tenant          = HttpRequestStorage.Tenant;
            var tenantAttribute = MultiTenantHelpers.GetTenantAttributeFromCache();
            var viewModel       = new EditBoundingBoxViewModel(tenantAttribute);

            return(ViewEditBoundingBox(viewModel, tenantAttribute));
        }
예제 #2
0
        public ActionResult EditBoundingBox(EditBoundingBoxViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                var tenant          = HttpRequestStorage.Tenant;
                var tenantAttribute = MultiTenantHelpers.GetTenantAttributeFromCache();
                return(ViewEditBoundingBox(viewModel, tenantAttribute));
            }

            viewModel.UpdateModel();
            MultiTenantHelpers.ClearTenantAttributeCacheForAllTenants();
            return(new ModalDialogFormJsonResult());
        }
예제 #3
0
        private PartialViewResult ViewEditBoundingBox(EditBoundingBoxViewModel viewModel, TenantAttribute tenantAttribute)
        {
            var boundingBoxLayer = new LayerGeoJson("Bounding Box",
                                                    new FeatureCollection(new List <TenantAttribute> {
                tenantAttribute
            }
                                                                          .Select(x => DbGeometryToGeoJsonHelper.FromDbGeometry(x.DefaultBoundingBox)).ToList()),
                                                    FirmaHelpers.DefaultColorRange[0],
                                                    0.8m,
                                                    LayerInitialVisibility.LayerInitialVisibilityEnum.Show);
            var mapInitJson = new MapInitJson("TenantEditBoundingBoxMap", 10, MapInitJson.GetConfiguredGeospatialAreaMapLayers(), MapInitJson.GetExternalMapLayers(), BoundingBox.MakeBoundingBoxFromLayerGeoJsonList(new List <LayerGeoJson> {
                boundingBoxLayer
            }));
            var editBoundingBoxUrl = new SitkaRoute <TenantController>(c => c.EditBoundingBox()).BuildUrlFromExpression();

            var viewData = new EditBoundingBoxViewData(mapInitJson, editBoundingBoxUrl, EditBoundingBoxFormID);

            return(RazorPartialView <EditBoundingBox, EditBoundingBoxViewData, EditBoundingBoxViewModel>(viewData, viewModel));
        }