From deec8db23e73883cbb65164830d4ca4e457617bb Mon Sep 17 00:00:00 2001 From: jensp Date: Tue, 13 Dec 2011 16:35:46 +0000 Subject: [PATCH] Filter in den Mitglieder-, Projekt- und Publikationslisten verarbeiten Umlaute jetzt korrekt. git-svn-id: https://svn.libreccm.org/ccm/trunk@1337 8810af33-2d31-482b-a856-94f89814c4df --- .../ui/SciDepartmentMembersTab.java | 5 ++-- .../ui/SciDepartmentProjectsTab.java | 20 ++++++++-------- .../ui/SciDepartmentPublicationsTab.java | 23 ++++++++++--------- .../ui/SciInstituteMembersTab.java | 5 ++-- .../ui/SciInstituteProjectsTab.java | 20 ++++++++-------- .../ui/SciInstitutePublicationsTab.java | 23 ++++++++++--------- 6 files changed, 50 insertions(+), 46 deletions(-) diff --git a/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentMembersTab.java b/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentMembersTab.java index 6b5c00b82..245c6cc3c 100644 --- a/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentMembersTab.java +++ b/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentMembersTab.java @@ -9,6 +9,7 @@ import com.arsdigita.cms.contenttypes.ui.panels.CompareFilter; import com.arsdigita.cms.contenttypes.ui.panels.Paginator; import com.arsdigita.cms.contenttypes.ui.panels.TextFilter; import com.arsdigita.cms.dispatcher.SimpleXMLGenerator; +import com.arsdigita.globalization.Globalization; import com.arsdigita.persistence.DataQuery; import com.arsdigita.persistence.SessionManager; import com.arsdigita.xml.Element; @@ -176,7 +177,7 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab { private void applyStatusFilter(final DataQuery persons, final HttpServletRequest request) { - final String statusValue = request.getParameter(STATUS_PARAM); + final String statusValue = Globalization.decodeParameter(request, STATUS_PARAM); if ((statusValue != null) && !(statusValue.trim().isEmpty())) { statusFilter.setValue(statusValue); } @@ -189,7 +190,7 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab { private void applySurnameFilter(final DataQuery persons, final HttpServletRequest request) { - final String surnameValue = request.getParameter(SURNAME_PARAM); + final String surnameValue = Globalization.decodeParameter(request, SURNAME_PARAM); if ((surnameValue != null) && !(surnameValue.trim().isEmpty())) { surnameFilter.setValue(surnameValue); } diff --git a/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentProjectsTab.java b/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentProjectsTab.java index de5339b5b..32d83ce3d 100644 --- a/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentProjectsTab.java +++ b/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentProjectsTab.java @@ -12,6 +12,7 @@ import com.arsdigita.cms.contenttypes.ui.panels.Paginator; import com.arsdigita.cms.contenttypes.ui.panels.TextFilter; import com.arsdigita.cms.dispatcher.SimpleXMLGenerator; import com.arsdigita.domain.DomainObjectFactory; +import com.arsdigita.globalization.Globalization; import com.arsdigita.persistence.DataQuery; import com.arsdigita.persistence.OID; import com.arsdigita.persistence.SessionManager; @@ -19,7 +20,6 @@ import com.arsdigita.xml.Element; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Calendar; -import java.util.Date; import java.util.GregorianCalendar; import java.util.List; import javax.servlet.http.HttpServletRequest; @@ -111,11 +111,11 @@ public class SciDepartmentProjectsTab implements GenericOrgaUnitTab { + "end desc"); projects.addOrder("title asc"); - if (((request.getParameter(STATUS_PARAM) == null) - || request.getParameter(STATUS_PARAM).trim().isEmpty() - || CompareFilter.NONE.equals(request.getParameter(STATUS_PARAM))) - && ((request.getParameter(TITLE_PARAM) == null) - || request.getParameter(TITLE_PARAM).trim().isEmpty())) { + if (((Globalization.decodeParameter(request, STATUS_PARAM) == null) + || Globalization.decodeParameter(request, STATUS_PARAM).trim().isEmpty() + || CompareFilter.NONE.equals(Globalization.decodeParameter(request, STATUS_PARAM))) + && ((Globalization.decodeParameter(request, TITLE_PARAM) == null) + || Globalization.decodeParameter(request, TITLE_PARAM).trim().isEmpty())) { statusFilter.generateXml(filtersElem); @@ -153,8 +153,8 @@ public class SciDepartmentProjectsTab implements GenericOrgaUnitTab { config.getPageSize()); if ((paginator.getPageCount() > config.getEnableSearchLimit()) - || ((request.getParameter(TITLE_PARAM) != null) - || !(request.getParameter(TITLE_PARAM).trim().isEmpty()))) { + || ((Globalization.decodeParameter(request, TITLE_PARAM) != null) + || !(Globalization.decodeParameter(request, TITLE_PARAM).trim().isEmpty()))) { titleFilter.generateXml(filtersElem); } @@ -230,7 +230,7 @@ public class SciDepartmentProjectsTab implements GenericOrgaUnitTab { private void applyStatusFilter(final DataQuery projects, final HttpServletRequest request) { - final String statusValue = request.getParameter(STATUS_PARAM); + final String statusValue = Globalization.decodeParameter(request, STATUS_PARAM); if ((statusValue != null) && !(statusValue.trim().isEmpty())) { statusFilter.setValue(statusValue); } @@ -243,7 +243,7 @@ public class SciDepartmentProjectsTab implements GenericOrgaUnitTab { private void applyTitleFilter(final DataQuery projects, final HttpServletRequest request) { - final String titleValue = request.getParameter(TITLE_PARAM); + final String titleValue = Globalization.decodeParameter(request, TITLE_PARAM); if ((titleValue != null) && !(titleValue.trim().isEmpty())) { titleFilter.setValue(titleValue); } diff --git a/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentPublicationsTab.java b/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentPublicationsTab.java index 850847c1d..54ec12bd3 100644 --- a/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentPublicationsTab.java +++ b/ccm-sci-types-department/src/com/arsdigita/cms/contenttypes/ui/SciDepartmentPublicationsTab.java @@ -12,6 +12,7 @@ import com.arsdigita.cms.contenttypes.ui.panels.SelectFilter; import com.arsdigita.cms.contenttypes.ui.panels.TextFilter; import com.arsdigita.cms.dispatcher.SimpleXMLGenerator; import com.arsdigita.domain.DomainObjectFactory; +import com.arsdigita.globalization.Globalization; import com.arsdigita.persistence.DataQuery; import com.arsdigita.persistence.OID; import com.arsdigita.persistence.SessionManager; @@ -97,10 +98,10 @@ public class SciDepartmentPublicationsTab implements GenericOrgaUnitTab { final Element depPublicationsElem = parent.newChildElement( "departmentPublications"); - final String yearValue = request.getParameter(YEAR_PARAM); - final String titleValue = request.getParameter(TITLE_PARAM); - final String authorValue = request.getParameter(AUTHOR_PARAM); - //final String sortValue = request.getParameter(SORT_PARAM); + final String yearValue = Globalization.decodeParameter(request, YEAR_PARAM); + final String titleValue = Globalization.decodeParameter(request, TITLE_PARAM); + final String authorValue = Globalization.decodeParameter(request, AUTHOR_PARAM); + //final String sortValue = Globalization.decodeParameter(request, SORT_PARAM); final Element filtersElem = depPublicationsElem.newChildElement( "filters"); @@ -227,14 +228,14 @@ public class SciDepartmentPublicationsTab implements GenericOrgaUnitTab { yearFilter.generateXml(filtersElem); if ((paginator.getPageCount() > config.getEnableSearchLimit()) - || ((request.getParameter(TITLE_PARAM) != null) - && !(request.getParameter(TITLE_PARAM).trim().isEmpty()))) { + || ((Globalization.decodeParameter(request, TITLE_PARAM) != null) + && !(Globalization.decodeParameter(request, TITLE_PARAM).trim().isEmpty()))) { titleFilter.generateXml(filtersElem); } if ((paginator.getPageCount() > config.getEnableSearchLimit()) - || ((request.getParameter(AUTHOR_PARAM) != null) - && !(request.getParameter(AUTHOR_PARAM).trim().isEmpty()))) { + || ((Globalization.decodeParameter(request, AUTHOR_PARAM) != null) + && !(Globalization.decodeParameter(request, AUTHOR_PARAM).trim().isEmpty()))) { authorFilter.generateXml(filtersElem); } @@ -333,7 +334,7 @@ public class SciDepartmentPublicationsTab implements GenericOrgaUnitTab { private void applyYearFilter(final DataQuery publications, final HttpServletRequest request) { - final String yearValue = request.getParameter(YEAR_PARAM); + final String yearValue = Globalization.decodeParameter(request, YEAR_PARAM); if ((yearValue != null) && !(yearValue.trim().isEmpty())) { yearFilter.setValue(yearValue); } @@ -346,7 +347,7 @@ public class SciDepartmentPublicationsTab implements GenericOrgaUnitTab { private void applyTitleFilter(final DataQuery publications, final HttpServletRequest request) { - final String titleValue = request.getParameter(TITLE_PARAM); + final String titleValue = Globalization.decodeParameter(request, TITLE_PARAM); if ((titleValue != null) && !(titleValue.trim().isEmpty())) { titleFilter.setValue(titleValue); } @@ -359,7 +360,7 @@ public class SciDepartmentPublicationsTab implements GenericOrgaUnitTab { private void applyAuthorFilter(final DataQuery publications, final HttpServletRequest request) { - final String authorValue = request.getParameter(AUTHOR_PARAM); + final String authorValue = Globalization.decodeParameter(request, AUTHOR_PARAM); if ((authorValue != null) && !(authorValue.trim().isEmpty())) { authorFilter.setValue(authorValue); } diff --git a/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstituteMembersTab.java b/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstituteMembersTab.java index 9f383680a..580d80d7a 100644 --- a/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstituteMembersTab.java +++ b/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstituteMembersTab.java @@ -9,6 +9,7 @@ import com.arsdigita.cms.contenttypes.ui.panels.CompareFilter; import com.arsdigita.cms.contenttypes.ui.panels.Paginator; import com.arsdigita.cms.contenttypes.ui.panels.TextFilter; import com.arsdigita.cms.dispatcher.SimpleXMLGenerator; +import com.arsdigita.globalization.Globalization; import com.arsdigita.persistence.DataQuery; import com.arsdigita.persistence.SessionManager; import com.arsdigita.xml.Element; @@ -175,7 +176,7 @@ public class SciInstituteMembersTab implements GenericOrgaUnitTab { private void applyStatusFilter(final DataQuery persons, final HttpServletRequest request) { - final String statusValue = request.getParameter(STATUS_PARAM); + final String statusValue = Globalization.decodeParameter(request, STATUS_PARAM); if ((statusValue != null) && !(statusValue.trim().isEmpty())) { statusFilter.setValue(statusValue); } @@ -188,7 +189,7 @@ public class SciInstituteMembersTab implements GenericOrgaUnitTab { private void applySurnameFilter(final DataQuery persons, final HttpServletRequest request) { - final String surnameValue = request.getParameter(SURNAME_PARAM); + final String surnameValue = Globalization.decodeParameter(request, SURNAME_PARAM); if ((surnameValue != null) && !(surnameValue.trim().isEmpty())) { surnameFilter.setValue(surnameValue); } diff --git a/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstituteProjectsTab.java b/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstituteProjectsTab.java index e38dfc495..a5377a2e7 100644 --- a/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstituteProjectsTab.java +++ b/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstituteProjectsTab.java @@ -12,6 +12,7 @@ import com.arsdigita.cms.contenttypes.ui.panels.Paginator; import com.arsdigita.cms.contenttypes.ui.panels.TextFilter; import com.arsdigita.cms.dispatcher.SimpleXMLGenerator; import com.arsdigita.domain.DomainObjectFactory; +import com.arsdigita.globalization.Globalization; import com.arsdigita.persistence.DataQuery; import com.arsdigita.persistence.OID; import com.arsdigita.persistence.SessionManager; @@ -19,7 +20,6 @@ import com.arsdigita.xml.Element; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Calendar; -import java.util.Date; import java.util.GregorianCalendar; import java.util.List; import javax.servlet.http.HttpServletRequest; @@ -111,11 +111,11 @@ public class SciInstituteProjectsTab implements GenericOrgaUnitTab { + "end desc"); projects.addOrder("title asc"); - if (((request.getParameter(STATUS_PARAM) == null) - || request.getParameter(STATUS_PARAM).trim().isEmpty() - || CompareFilter.NONE.equals(request.getParameter(STATUS_PARAM))) - && ((request.getParameter(TITLE_PARAM) == null) - || request.getParameter(TITLE_PARAM).trim().isEmpty())) { + if (((Globalization.decodeParameter(request, STATUS_PARAM) == null) + || Globalization.decodeParameter(request, STATUS_PARAM).trim().isEmpty() + || CompareFilter.NONE.equals(Globalization.decodeParameter(request, STATUS_PARAM))) + && ((Globalization.decodeParameter(request, TITLE_PARAM) == null) + || Globalization.decodeParameter(request, TITLE_PARAM).trim().isEmpty())) { statusFilter.generateXml(filtersElem); @@ -151,8 +151,8 @@ public class SciInstituteProjectsTab implements GenericOrgaUnitTab { config.getPageSize()); if ((paginator.getPageCount() > config.getEnableSearchLimit()) - || ((request.getParameter(TITLE_PARAM) != null) - || !(request.getParameter(TITLE_PARAM).trim().isEmpty()))) { + || ((Globalization.decodeParameter(request, TITLE_PARAM) != null) + || !(Globalization.decodeParameter(request, TITLE_PARAM).trim().isEmpty()))) { titleFilter.generateXml(filtersElem); } @@ -228,7 +228,7 @@ public class SciInstituteProjectsTab implements GenericOrgaUnitTab { private void applyStatusFilter(final DataQuery projects, final HttpServletRequest request) { - final String statusValue = request.getParameter(STATUS_PARAM); + final String statusValue = Globalization.decodeParameter(request, STATUS_PARAM); if ((statusValue != null) && !(statusValue.trim().isEmpty())) { statusFilter.setValue(statusValue); } @@ -241,7 +241,7 @@ public class SciInstituteProjectsTab implements GenericOrgaUnitTab { private void applyTitleFilter(final DataQuery projects, final HttpServletRequest request) { - final String titleValue = request.getParameter(TITLE_PARAM); + final String titleValue = Globalization.decodeParameter(request, TITLE_PARAM); if ((titleValue != null) && !(titleValue.trim().isEmpty())) { titleFilter.setValue(titleValue); } diff --git a/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstitutePublicationsTab.java b/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstitutePublicationsTab.java index 7000c2d95..1b9c677c4 100644 --- a/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstitutePublicationsTab.java +++ b/ccm-sci-types-institute/src/com/arsdigita/cms/contenttypes/ui/SciInstitutePublicationsTab.java @@ -12,6 +12,7 @@ import com.arsdigita.cms.contenttypes.ui.panels.SelectFilter; import com.arsdigita.cms.contenttypes.ui.panels.TextFilter; import com.arsdigita.cms.dispatcher.SimpleXMLGenerator; import com.arsdigita.domain.DomainObjectFactory; +import com.arsdigita.globalization.Globalization; import com.arsdigita.persistence.DataQuery; import com.arsdigita.persistence.OID; import com.arsdigita.persistence.SessionManager; @@ -107,10 +108,10 @@ public class SciInstitutePublicationsTab implements GenericOrgaUnitTab { final Element publicationsElem = parent.newChildElement( "institutePublications"); - final String yearValue = request.getParameter(YEAR_PARAM); - final String titleValue = request.getParameter(TITLE_PARAM); - final String authorValue = request.getParameter(AUTHOR_PARAM); - //final String sortValue = request.getParameter(SORT_PARAM); + final String yearValue = Globalization.decodeParameter(request, YEAR_PARAM); + final String titleValue = Globalization.decodeParameter(request, TITLE_PARAM); + final String authorValue = Globalization.decodeParameter(request, AUTHOR_PARAM); + //final String sortValue = Globalization.decodeParameter(request, SORT_PARAM); final Element filtersElem = publicationsElem.newChildElement( "filters"); @@ -252,14 +253,14 @@ public class SciInstitutePublicationsTab implements GenericOrgaUnitTab { yearFilter.generateXml(filtersElem); if ((paginator.getPageCount() > config.getEnableSearchLimit()) - || ((request.getParameter(TITLE_PARAM) != null) - && !(request.getParameter(TITLE_PARAM).trim().isEmpty()))) { + || ((Globalization.decodeParameter(request, TITLE_PARAM) != null) + && !(Globalization.decodeParameter(request, TITLE_PARAM).trim().isEmpty()))) { titleFilter.generateXml(filtersElem); } if ((paginator.getPageCount() > config.getEnableSearchLimit()) - || ((request.getParameter(AUTHOR_PARAM) != null) - && !(request.getParameter(AUTHOR_PARAM).trim().isEmpty()))) { + || ((Globalization.decodeParameter(request, AUTHOR_PARAM) != null) + && !(Globalization.decodeParameter(request, AUTHOR_PARAM).trim().isEmpty()))) { authorFilter.generateXml(filtersElem); } @@ -358,7 +359,7 @@ public class SciInstitutePublicationsTab implements GenericOrgaUnitTab { private void applyYearFilter(final DataQuery publications, final HttpServletRequest request) { - final String yearValue = request.getParameter(YEAR_PARAM); + final String yearValue = Globalization.decodeParameter(request, YEAR_PARAM); if ((yearValue != null) && !(yearValue.trim().isEmpty())) { yearFilter.setValue(yearValue); } @@ -371,7 +372,7 @@ public class SciInstitutePublicationsTab implements GenericOrgaUnitTab { private void applyTitleFilter(final DataQuery publications, final HttpServletRequest request) { - final String titleValue = request.getParameter(TITLE_PARAM); + final String titleValue = Globalization.decodeParameter(request, TITLE_PARAM); if ((titleValue != null) && !(titleValue.trim().isEmpty())) { titleFilter.setValue(titleValue); } @@ -384,7 +385,7 @@ public class SciInstitutePublicationsTab implements GenericOrgaUnitTab { private void applyAuthorFilter(final DataQuery publications, final HttpServletRequest request) { - final String authorValue = request.getParameter(AUTHOR_PARAM); + final String authorValue = Globalization.decodeParameter(request, AUTHOR_PARAM); if ((authorValue != null) && !(authorValue.trim().isEmpty())) { authorFilter.setValue(authorValue); }