@@ -111,14 +111,11 @@ function renderContent(contentElement, cdata, settings, mode, wfsData, selectedG
111111function renderDetailContent ( contentElement , cdata , settings , wfsData ) {
112112 if ( ! wfsData ?. totalFeatures ) {
113113 renderPlaceholder ( contentElement , 'empty' ) ;
114- } else if ( settings . isMultiSelect || cdata . geometry_ids ?. length > 1 ) {
114+ } else {
115115 renderMap (
116116 contentElement , cdata , settings , wfsData , false ,
117117 renderViewGeometriesButton ( contentElement , settings , wfsData )
118118 ) ;
119- } else {
120- renderMap ( contentElement , cdata , settings , wfsData , false ) ;
121- renderViewGeometryButton ( contentElement , settings , wfsData , getGeometryId ( cdata ) ) ;
122119 }
123120}
124121
@@ -159,17 +156,6 @@ function isAddingGeometriesAllowed(cdata, settings) {
159156 return settings . isMultiSelect || ! cdata . geometry_ids ?. length
160157}
161158
162- function renderViewGeometryButton ( contentElement , settings , wfsData , geometryId ) {
163- const showGeometryButton = new CUI . ButtonHref ( {
164- href : getViewGeometryUrl ( settings , wfsData , geometryId ) ,
165- target : '_blank' ,
166- icon_left : new CUI . Icon ( { class : 'fa-external-link' } ) ,
167- text : $$ ( 'custom.data.type.nfis.geometry.viewGeometry' )
168- } ) ;
169-
170- CUI . dom . append ( contentElement , showGeometryButton ) ;
171- }
172-
173159function renderViewGeometriesButton ( contentElement , settings , wfsData ) {
174160 return ( extent ) => {
175161 const showGeometryButton = new CUI . ButtonHref ( {
@@ -217,7 +203,10 @@ function createLinkExistingGeometryButton(contentElement, cdata, settings) {
217203}
218204
219205function editGeometry ( contentElement , cdata , settings , wfsData , uuid ) {
220- window . open ( getEditGeometryUrl ( settings , wfsData , uuid ) , '_blank' ) ;
206+ const extent = wfsData ?. features . find ( feature => feature . properties . ouuid === uuid ) ?. bbox ;
207+ if ( ! extent ) return ;
208+
209+ window . open ( getEditGeometryUrl ( settings , wfsData , extent ) , '_blank' ) ;
221210 openEditGeometryModal ( contentElement , cdata , settings , wfsData ) ;
222211}
223212
@@ -567,28 +556,20 @@ function configureCursor(map) {
567556 } ) ;
568557}
569558
570- function getViewGeometryUrl ( settings , wfsData , geometryId ) {
571- const masterportalUrl = getBaseConfiguration ( ) . masterportal_url ;
572- const layerIds = getMasterportalLayerIds ( settings . fieldConfiguration , wfsData ) ;
573- if ( ! masterportalUrl || ! layerIds . length ) return '' ;
574-
575- return masterportalUrl + '?zoomToGeometry=' + geometryId + '&layerids=' + layerIds . join ( ',' )
576- }
577-
578559function getViewGeometriesUrl ( settings , wfsData , extent ) {
579560 const masterportalUrl = getBaseConfiguration ( ) . masterportal_url ;
580561 const layerIds = getMasterportalLayerIds ( settings . fieldConfiguration , wfsData ) ;
581562 if ( ! masterportalUrl || ! layerIds . length ) return '' ;
582563
583- return masterportalUrl + '?zoomToExtent=' + extent . join ( ',' ) + '&layerids=' + layerIds . join ( ',' )
564+ return masterportalUrl + '?zoomToExtent=' + extent . join ( ',' ) + '&layerids=' + layerIds . join ( ',' ) ;
584565}
585566
586- function getEditGeometryUrl ( settings , wfsData , geometryId ) {
567+ function getEditGeometryUrl ( settings , wfsData , extent ) {
587568 const masterportalUrl = getBaseConfiguration ( ) . masterportal_url ;
588569 const layerIds = getMasterportalLayerIds ( settings . fieldConfiguration , wfsData ) ;
589570 if ( ! masterportalUrl || ! layerIds . length ) return '' ;
590571
591- return masterportalUrl + '?zoomToGeometry =' + geometryId + '&isinitopen=wfst' + '&layerids=' + layerIds . join ( ',' )
572+ return masterportalUrl + '?zoomToExtent =' + extent . join ( ',' ) + '&isinitopen=wfst' + '&layerids=' + layerIds . join ( ',' ) ;
592573}
593574
594575function getCreateGeometryUrl ( settings , wfsData ) {
0 commit comments