From 7c325d1a9b7b4dccfeaf2cf4230631ed7e194cd3 Mon Sep 17 00:00:00 2001 From: Matija Obreza Date: Tue, 2 Sep 2014 00:22:04 +0200 Subject: [PATCH] Country and Institute overviews --- .../servlet/controller/CountryController.java | 22 +++++++++++++++++++ .../controller/ExplorerController.java | 2 +- .../servlet/controller/WiewsController.java | 18 +++++++++++++++ .../resources/content/language.properties | 8 +++---- src/main/webapp/WEB-INF/jsp/accession/map.jsp | 2 +- .../webapp/WEB-INF/jsp/accession/overview.jsp | 10 ++++++--- .../webapp/WEB-INF/jsp/country/details.jsp | 1 + src/main/webapp/WEB-INF/jsp/wiews/details.jsp | 2 ++ src/main/webapp/html/css/custom.css | 8 ++++++- 9 files changed, 63 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/genesys2/server/servlet/controller/CountryController.java b/src/main/java/org/genesys2/server/servlet/controller/CountryController.java index 6670bee2e..687aa8b32 100644 --- a/src/main/java/org/genesys2/server/servlet/controller/CountryController.java +++ b/src/main/java/org/genesys2/server/servlet/controller/CountryController.java @@ -16,8 +16,12 @@ package org.genesys2.server.servlet.controller; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; import java.util.List; +import javax.servlet.http.HttpServletRequest; + import org.genesys2.server.model.impl.Country; import org.genesys2.server.model.impl.FaoInstitute; import org.genesys2.server.service.ContentService; @@ -25,6 +29,9 @@ import org.genesys2.server.service.FilterConstants; import org.genesys2.server.service.GenesysService; import org.genesys2.server.service.GeoService; import org.genesys2.server.service.InstituteService; +import org.genesys2.server.service.impl.FilterHandler; +import org.genesys2.server.service.impl.FilterHandler.AppliedFilter; +import org.genesys2.server.service.impl.FilterHandler.AppliedFilters; import org.genesys2.spring.ResourceNotFoundException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; @@ -130,4 +137,19 @@ public class CountryController extends BaseController { return "redirect:/explore"; } + + + @RequestMapping("/{country}/overview") + public String viewData(HttpServletRequest request, @PathVariable(value = "country") String countryStr) throws UnsupportedEncodingException { + _logger.debug("Viewing country " + countryStr); + final Country country = geoService.getCountry(countryStr); + if (country == null) { + throw new ResourceNotFoundException(); + } + + AppliedFilters appliedFilters=new AppliedFilters(); + appliedFilters.add(new AppliedFilter().setFilterName(FilterConstants.ORGCTY_ISO3).addFilterValue(new FilterHandler.LiteralValueFilter(country.getCode3()))); + + return "forward:/explore/overview?filter=" + URLEncoder.encode(appliedFilters.toString(), "UTF8"); + } } diff --git a/src/main/java/org/genesys2/server/servlet/controller/ExplorerController.java b/src/main/java/org/genesys2/server/servlet/controller/ExplorerController.java index 4938454d8..2116965b0 100644 --- a/src/main/java/org/genesys2/server/servlet/controller/ExplorerController.java +++ b/src/main/java/org/genesys2/server/servlet/controller/ExplorerController.java @@ -452,7 +452,7 @@ public class ExplorerController extends BaseController { // JSP works with JsonObject final Map> filters = mapper.readValue(appliedFilters.toString(), Map.class); model.addAttribute("filters", filters); - + model.addAttribute("jsonFilter", appliedFilters.toString()); // Composition overview overviewInstitutes(model, appliedFilters); diff --git a/src/main/java/org/genesys2/server/servlet/controller/WiewsController.java b/src/main/java/org/genesys2/server/servlet/controller/WiewsController.java index 531d4a3bc..3d5b1df2b 100644 --- a/src/main/java/org/genesys2/server/servlet/controller/WiewsController.java +++ b/src/main/java/org/genesys2/server/servlet/controller/WiewsController.java @@ -18,10 +18,13 @@ package org.genesys2.server.servlet.controller; import java.io.IOException; import java.io.OutputStream; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; import java.util.HashMap; import java.util.List; import java.util.Map; +import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.genesys2.server.model.genesys.Taxonomy2; @@ -199,6 +202,21 @@ public class WiewsController extends BaseController { model.addAttribute("page", page); return "redirect:/explore"; } + + + @RequestMapping("/{wiewsCode}/overview") + public String viewData(HttpServletRequest request, @PathVariable(value = "wiewsCode") String wiewsCode) throws UnsupportedEncodingException { + _logger.debug("Viewing institute overview " + wiewsCode); + final FaoInstitute faoInstitute = instituteService.getInstitute(wiewsCode); + if (faoInstitute == null) { + throw new ResourceNotFoundException(); + } + + AppliedFilters appliedFilters=new AppliedFilters(); + appliedFilters.add(new AppliedFilter().setFilterName(FilterConstants.INSTCODE).addFilterValue(new FilterHandler.LiteralValueFilter(faoInstitute.getCode()))); + + return "forward:/explore/overview?filter=" + URLEncoder.encode(appliedFilters.toString(), "UTF8"); + } @RequestMapping("/{wiewsCode}/t/{genus}") public String viewDataByGenusSpecies(ModelMap model, @PathVariable(value = "wiewsCode") String wiewsCode, @PathVariable(value = "genus") String genus, diff --git a/src/main/resources/content/language.properties b/src/main/resources/content/language.properties index fbb5f2cf4..7ee35e6d1 100644 --- a/src/main/resources/content/language.properties +++ b/src/main/resources/content/language.properties @@ -165,8 +165,8 @@ faoInstitute.requests.mailto=Email address for material requests: faoInstitute.allow.requests=Allow material requests faoInstitute.sgsv=Code SGSV -view.accessions=View accessions... -view.datasets=View datasets... +view.accessions=Browse accessions +view.datasets=View datasets paged.pageOfPages=Page {0} of {1} paged.totalElements={0} entries @@ -525,7 +525,7 @@ stats.number-of-countries={0} Countries stats.number-of-institutes={0} Institutes stats.number-of-accessions={0} Accessions -navigate.back=Back +navigate.back=\u21E0 Back content.page.list.title=Article list @@ -546,5 +546,5 @@ data-overview.sources=Sources of material data-overview.management=Collection management data-overview.availability=Availability of material data-overview.otherCount=Other -data-overview.missingCount=Not provided +data-overview.missingCount=Not specified data-overview.totalCount=Total diff --git a/src/main/webapp/WEB-INF/jsp/accession/map.jsp b/src/main/webapp/WEB-INF/jsp/accession/map.jsp index 93318005f..4d69038f9 100644 --- a/src/main/webapp/WEB-INF/jsp/accession/map.jsp +++ b/src/main/webapp/WEB-INF/jsp/accession/map.jsp @@ -22,7 +22,7 @@
- +
diff --git a/src/main/webapp/WEB-INF/jsp/accession/overview.jsp b/src/main/webapp/WEB-INF/jsp/accession/overview.jsp index 3e26a0fac..bdbc40dd0 100644 --- a/src/main/webapp/WEB-INF/jsp/accession/overview.jsp +++ b/src/main/webapp/WEB-INF/jsp/accession/overview.jsp @@ -12,9 +12,13 @@
- diff --git a/src/main/webapp/WEB-INF/jsp/wiews/details.jsp b/src/main/webapp/WEB-INF/jsp/wiews/details.jsp index b62adbe4b..7ae19f528 100644 --- a/src/main/webapp/WEB-INF/jsp/wiews/details.jsp +++ b/src/main/webapp/WEB-INF/jsp/wiews/details.jsp @@ -30,7 +30,9 @@ "> + "> +
"> diff --git a/src/main/webapp/html/css/custom.css b/src/main/webapp/html/css/custom.css index 4f38d382e..2b796d47c 100755 --- a/src/main/webapp/html/css/custom.css +++ b/src/main/webapp/html/css/custom.css @@ -2010,4 +2010,10 @@ html[dir="rtl"] .text-left { table.terms-table td { padding: 4px 10px; -} \ No newline at end of file +} + +.jumbotron { + padding-top: 24px; + padding-bottom: 24px; + line-height: 1.5; +} -- GitLab