- Sortierung der Publikationen der Abteilungen korrigiert
- Doppeltes Element aus XML-Output entfernt git-svn-id: https://svn.libreccm.org/ccm/trunk@964 8810af33-2d31-482b-a856-94f89814c4dfmaster
parent
abe446f128
commit
29de3391f4
|
|
@ -147,9 +147,6 @@ public class PublicationXmlHelper {
|
||||||
"yearOfPublication");
|
"yearOfPublication");
|
||||||
yearElem.setText(publication.getYearOfPublication().toString());
|
yearElem.setText(publication.getYearOfPublication().toString());
|
||||||
}
|
}
|
||||||
generateXmlElement(publicationElem,
|
|
||||||
"yearOfPublication",
|
|
||||||
publication.getYearOfPublication());
|
|
||||||
generateXmlElement(publicationElem, "misc", publication.getMisc());
|
generateXmlElement(publicationElem, "misc", publication.getMisc());
|
||||||
generateXmlElement(parent, "abstract", publication.getAbstract());
|
generateXmlElement(parent, "abstract", publication.getAbstract());
|
||||||
generateAuthorsXml(publicationElem);
|
generateAuthorsXml(publicationElem);
|
||||||
|
|
|
||||||
|
|
@ -42,6 +42,7 @@ import com.arsdigita.persistence.SessionManager;
|
||||||
import com.arsdigita.xml.Element;
|
import com.arsdigita.xml.Element;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
import java.util.Comparator;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
import java.util.LinkedList;
|
import java.util.LinkedList;
|
||||||
|
|
@ -67,7 +68,7 @@ public class SciDepartmentWithPublicationsPanel extends SciDepartmentPanel {
|
||||||
private static final String AUTHORS = "authors";
|
private static final String AUTHORS = "authors";
|
||||||
private static final String YEAR_OF_PUBLICATION = "yearOfPublication";
|
private static final String YEAR_OF_PUBLICATION = "yearOfPublication";
|
||||||
private static final String YEAR_ASC = "yearAsc";
|
private static final String YEAR_ASC = "yearAsc";
|
||||||
private static final String YEAR_DESC = "yearAsc";
|
private static final String YEAR_DESC = "yearDesc";
|
||||||
private String show;
|
private String show;
|
||||||
private boolean displayPublications = true;
|
private boolean displayPublications = true;
|
||||||
private boolean displayWorkingPapers = true;
|
private boolean displayWorkingPapers = true;
|
||||||
|
|
@ -90,15 +91,17 @@ public class SciDepartmentWithPublicationsPanel extends SciDepartmentPanel {
|
||||||
"com.arsdigita.cms.contenttypes.getAllYearsOfPublication");
|
"com.arsdigita.cms.contenttypes.getAllYearsOfPublication");
|
||||||
yearFilter.setDataQuery(query, "yearOfPublication");
|
yearFilter.setDataQuery(query, "yearOfPublication");
|
||||||
filters.put(YEAR_OF_PUBLICATION, yearFilter);
|
filters.put(YEAR_OF_PUBLICATION, yearFilter);
|
||||||
|
|
||||||
|
sortFields.put(YEAR_DESC,
|
||||||
|
new SortField<Publication>(YEAR_DESC,
|
||||||
|
new SciPublicationYearDescComparator()));
|
||||||
sortFields.put(TITLE,
|
sortFields.put(TITLE,
|
||||||
new SortField<Publication>(TITLE,
|
new SortField<Publication>(TITLE,
|
||||||
new SciPublicationTitleComparator()));
|
new SciPublicationTitleComparator()));
|
||||||
sortFields.put(YEAR_ASC,
|
sortFields.put(YEAR_ASC,
|
||||||
new SortField<Publication>(YEAR_ASC,
|
new SortField<Publication>(YEAR_ASC,
|
||||||
new SciPublicationYearAscComparator()));
|
new SciPublicationYearAscComparator()));
|
||||||
sortFields.put(YEAR_DESC,
|
|
||||||
new SortField<Publication>(YEAR_DESC,
|
|
||||||
new SciPublicationYearDescComparator()));
|
|
||||||
/*sortFields.put(AUTHORS,
|
/*sortFields.put(AUTHORS,
|
||||||
new SortField<Publication>(AUTHORS,
|
new SortField<Publication>(AUTHORS,
|
||||||
new SciPublicationAuthorComparator()));*/
|
new SciPublicationAuthorComparator()));*/
|
||||||
|
|
@ -210,11 +213,10 @@ public class SciDepartmentWithPublicationsPanel extends SciDepartmentPanel {
|
||||||
protected void generateFiltersXml(
|
protected void generateFiltersXml(
|
||||||
final List<Publication> publications,
|
final List<Publication> publications,
|
||||||
final Element element) {
|
final Element element) {
|
||||||
final Element sortFieldsElement = element.newChildElement("sortFields");
|
final Element filterElement = element.newChildElement("filters");
|
||||||
sortFieldsElement.addAttribute("sortBy", sortByKey);
|
|
||||||
for (Map.Entry<String, SortField<Publication>> sortField :
|
for (Map.Entry<String, Filter> filterEntry : filters.entrySet()) {
|
||||||
sortFields.entrySet()) {
|
filterEntry.getValue().generateXml(filterElement);
|
||||||
sortField.getValue().generateXml(sortFieldsElement);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -236,8 +238,9 @@ public class SciDepartmentWithPublicationsPanel extends SciDepartmentPanel {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sortFields.containsKey(sortByKey)) {
|
if (sortFields.containsKey(sortByKey)) {
|
||||||
Collections.sort(publications, sortFields.get(sortByKey).
|
Comparator<Publication> comparator = sortFields.get(sortByKey).
|
||||||
getComparator());
|
getComparator();
|
||||||
|
Collections.sort(publications, comparator);
|
||||||
} else {
|
} else {
|
||||||
Collections.sort(publications, new SciPublicationTitleComparator());
|
Collections.sort(publications, new SciPublicationTitleComparator());
|
||||||
}
|
}
|
||||||
|
|
@ -320,7 +323,7 @@ public class SciDepartmentWithPublicationsPanel extends SciDepartmentPanel {
|
||||||
publicationsWithoutDoubles = new LinkedList<Publication>(
|
publicationsWithoutDoubles = new LinkedList<Publication>(
|
||||||
publicationsSet);
|
publicationsSet);
|
||||||
|
|
||||||
applySortFields(publications, state.getRequest());
|
applySortFields(publicationsWithoutDoubles, state.getRequest());
|
||||||
|
|
||||||
//Collections.sort(publicationsWithoutDoubles,
|
//Collections.sort(publicationsWithoutDoubles,
|
||||||
// new SciPublicationTitleComparator());
|
// new SciPublicationTitleComparator());
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue