| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| import org.apache.ofbiz.common.geo.GeoWorker |
| import org.apache.ofbiz.base.util.UtilMisc |
| import org.apache.ofbiz.base.util.UtilValidate |
| import org.apache.ofbiz.base.util.UtilProperties |
| |
| uiLabelMap = UtilProperties.getResourceBundleMap("PartyUiLabels", locale) |
| uiLabelMap.addBottomResourceBundle("CommonUiLabels") |
| |
| partyId = parameters.partyId ?: parameters.party_id |
| userLoginId = parameters.userlogin_id ?: parameters.userLoginId |
| |
| if (!partyId && userLoginId) { |
| thisUserLogin = from("UserLogin").where("userLoginId", userLoginId).queryOne() |
| if (thisUserLogin) { |
| partyId = thisUserLogin.partyId |
| } |
| } |
| geoPointId = parameters.geoPointId |
| context.partyId = partyId |
| |
| if (!geoPointId) { |
| latestGeoPoint = GeoWorker.findLatestGeoPoint(delegator, "PartyAndGeoPoint", "partyId", partyId, null, null) |
| } else { |
| latestGeoPoint = from("GeoPoint").where("geoPointId", geoPointId).queryOne() |
| } |
| if (latestGeoPoint) { |
| context.latestGeoPoint = latestGeoPoint |
| |
| List geoCenter = UtilMisc.toList(UtilMisc.toMap("lat", latestGeoPoint.latitude, "lon", latestGeoPoint.longitude, "zoom", "13")) |
| |
| if (UtilValidate.isNotEmpty(latestGeoPoint) && latestGeoPoint.containsKey("latitude") && latestGeoPoint.containsKey("longitude")) { |
| List geoPoints = UtilMisc.toList(UtilMisc.toMap("lat", latestGeoPoint.latitude, "lon", latestGeoPoint.longitude, "partyId", partyId, |
| "link", UtilMisc.toMap("url", "viewprofile?partyId="+ partyId, "label", uiLabelMap.PartyProfile + " " + uiLabelMap.CommonOf + " " + partyId))) |
| |
| Map geoChart = UtilMisc.toMap("width", "500px", "height", "450px", "controlUI" , "small", "dataSourceId", latestGeoPoint.dataSourceId, "points", geoPoints) |
| context.geoChart = geoChart |
| } |
| if (latestGeoPoint && latestGeoPoint.elevationUomId) { |
| elevationUom = from("Uom").where("uomId", latestGeoPoint.elevationUomId).queryOne() |
| context.elevationUomAbbr = elevationUom.abbreviation |
| } |
| } |