diff --git a/src/main/java/no/nibio/vips/logic/entity/Observation.java b/src/main/java/no/nibio/vips/logic/entity/Observation.java index 594d19751645e761dab01d4746f07074c67cd0c2..e87c5a595f6cddb3a059223a273b70eb6480108b 100755 --- a/src/main/java/no/nibio/vips/logic/entity/Observation.java +++ b/src/main/java/no/nibio/vips/logic/entity/Observation.java @@ -639,9 +639,9 @@ public class Observation implements Serializable, no.nibio.vips.observation.Obse this.getObservationId(), this.getTimeOfObservation(), this.getOrganismId(), - this.getOrganism().getLocalName(locale), + this.getOrganism().getLocalName(locale).trim() != "" ? this.getOrganism().getLocalName(locale) : this.getOrganism().getLatinName(), this.getCropOrganismId(), - this.getCropOrganism().getLocalName(locale), + this.getCropOrganism().getLocalName(locale).trim() != "" ? this.getCropOrganism().getLocalName(locale) : this.getCropOrganism().getLatinName(), // Specific geoInfo trumps location. This is to be interpreted // as that the observation has been geographically masked by // choice of the observer diff --git a/src/main/java/no/nibio/vips/logic/service/ObservationService.java b/src/main/java/no/nibio/vips/logic/service/ObservationService.java index 0fd87b88ae23815ad57d7a27246a025727af17c2..03b34a0fd35421f1616c4e45cc354bc45e00ba42 100755 --- a/src/main/java/no/nibio/vips/logic/service/ObservationService.java +++ b/src/main/java/no/nibio/vips/logic/service/ObservationService.java @@ -142,16 +142,19 @@ public class ObservationService { @QueryParam("cropCategoryId") List<Integer> cropCategoryId, @QueryParam("from") String fromStr, @QueryParam("to") String toStr, - @QueryParam("userUUID") String userUUID - + @QueryParam("userUUID") String userUUID, + @QueryParam("locale") String localeStr ) { VipsLogicUser user = (VipsLogicUser) httpServletRequest.getSession().getAttribute("user"); + if(user == null && userUUID != null) { user = SessionControllerGetter.getUserBean().findVipsLogicUser(UUID.fromString(userUUID)); } - //System.out.println("getFilteredObservationListItems"); + String locale = localeStr != null ? localeStr : + user != null ? user.getOrganizationId().getDefaultLocale() : + SessionControllerGetter.getUserBean().getOrganization(organizationId).getDefaultLocale(); return Response.ok().entity( getFilteredObservationsFromBackend( organizationId, @@ -161,7 +164,7 @@ public class ObservationService { fromStr, toStr, user - ).stream().map(obs -> obs.getListItem("nb")).collect(Collectors.toList()) + ).stream().map(obs -> obs.getListItem(locale)).collect(Collectors.toList()) ).build(); }