changeset 98:62be8de89560

add new columns : book year and edition year in Topic page.
author Calvin Yeh <cyeh@mpipw-berlin.mpg.com>
date Fri, 29 Sep 2017 15:52:11 +0200
parents 2ac9b2e3fb57
children e24e7cfe337e
files src/main/java/de/mpiwg/web/jsp/HomePage.java src/main/java/de/mpiwg/web/jsp/JSPProxy.java
diffstat 2 files changed, 97 insertions(+), 59 deletions(-) [+]
line wrap: on
line diff
--- a/src/main/java/de/mpiwg/web/jsp/HomePage.java	Fri Sep 29 15:50:33 2017 +0200
+++ b/src/main/java/de/mpiwg/web/jsp/HomePage.java	Fri Sep 29 15:52:11 2017 +0200
@@ -9,27 +9,12 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import de.mpiwg.web.branch.*;
 import org.apache.commons.lang.StringUtils;
 import org.apache.log4j.Logger;
 import de.mpiwg.gazetteer.bo.LGBranch;
 import de.mpiwg.gazetteer.bo.LGTopicSectionRelation;
-import de.mpiwg.gazetteer.db.DBBook;
-import de.mpiwg.gazetteer.db.DBSection;
-import de.mpiwg.gazetteer.utils.DBService;
 import de.mpiwg.gazetteer.utils.DataProvider;
-import de.mpiwg.web.branch.SortBranchByAdminType;
-import de.mpiwg.web.branch.SortBranchByBookId;
-import de.mpiwg.web.branch.SortBranchByBookName;
-import de.mpiwg.web.branch.SortBranchByBranchId;
-import de.mpiwg.web.branch.SortBranchByDynasty;
-import de.mpiwg.web.branch.SortBranchByLabel;
-import de.mpiwg.web.branch.SortBranchByLastModified;
-import de.mpiwg.web.branch.SortBranchByLevel1;
-import de.mpiwg.web.branch.SortBranchByLevel2;
-import de.mpiwg.web.branch.SortBranchByPeriod;
-import de.mpiwg.web.branch.SortBranchByPublishedInDataverse;
-import de.mpiwg.web.branch.SortBranchBySectionName;
-import de.mpiwg.web.branch.SortBranchBySectionStartPage;
 
 public class HomePage  extends AbstractJSPPage{
 
@@ -53,6 +38,8 @@
 	private String adminTypeFilter = new String();
 	private String bookIdFilter = new String();
 	private String periodFilter = new String();
+    private String bookYearFilter = new String();
+    private String editionYearFilter = new String();
 	private String sectionNameFilter = new String();
 	private String labelFilter = new String();
 
@@ -74,6 +61,8 @@
 		this.level1Filter = getParameter("level1Filter");
 		this.level2Filter = getParameter("level2Filter");
 		this.periodFilter = getParameter("periodFilter");
+        this.bookYearFilter = getParameter("bookYearFilter");
+        this.editionYearFilter = getParameter("editionYearFilter");
 		this.sectionNameFilter = getParameter("sectionNameFilter");
 		this.labelFilter = getParameter("labelFilter");
 		this.dynastyFilter = getParameter("dynastyFilter");
@@ -229,7 +218,65 @@
 		this.bookIdFilter = bookIdFilter;
 	}
 
-	private void updateCurrentBranches() {
+    public String getLevel1Filter() {
+        return level1Filter;
+    }
+
+
+    public void setLevel1Filter(String level1Filter) {
+        this.level1Filter = level1Filter;
+    }
+
+
+    public String getLevel2Filter() {
+        return level2Filter;
+    }
+
+
+    public void setLevel2Filter(String level2Filter) {
+        this.level2Filter = level2Filter;
+    }
+
+
+    public String getDynastyFilter() {
+        return dynastyFilter;
+    }
+
+
+    public void setDynastyFilter(String dynastyFilter) {
+        this.dynastyFilter = dynastyFilter;
+    }
+
+
+    public String getAdminTypeFilter() {
+        return adminTypeFilter;
+    }
+
+
+    public void setAdminTypeFilter(String adminTypeFilter) {
+        this.adminTypeFilter = adminTypeFilter;
+    }
+
+    public String getBookYearFilter() {
+        return bookYearFilter;
+    }
+
+
+    public void setBookYearFilter(String bookYearFilter) {
+        this.bookYearFilter = bookYearFilter;
+    }
+
+    public String getEditionYearFilter() {
+        return editionYearFilter;
+    }
+
+
+    public void setEditionYearFilter(String editionYearFilter) {
+        this.editionYearFilter = editionYearFilter;
+    }
+
+
+    private void updateCurrentBranches() {
 
 		//this.displayBranchList = this.filteredBranchList;
 
@@ -274,6 +321,8 @@
 					(StringUtils.isEmpty(adminTypeFilter) || StringUtils.startsWith(branch.getBook().getAdmin_type(), adminTypeFilter)) &&
 					(StringUtils.isEmpty(bookIdFilter) || StringUtils.startsWith(branch.getBook().getId(), bookIdFilter)) &&
 					(StringUtils.isEmpty(periodFilter) || StringUtils.startsWith(branch.getBook().getPeriod(), periodFilter)) &&
+                    (StringUtils.isEmpty(bookYearFilter) || branch.getBook().getBookYear() == Integer.parseInt(bookYearFilter)) &&
+                    (StringUtils.isEmpty(editionYearFilter) || branch.getBook().getEditionYear() == Integer.parseInt(editionYearFilter)) &&
 					(StringUtils.isEmpty(sectionNameFilter) || StringUtils.startsWith(branch.getSection().getName(), sectionNameFilter)) &&
 					(StringUtils.isEmpty(labelFilter) || StringUtils.startsWith(branch.getLabel(), labelFilter))
 					){
@@ -501,6 +550,29 @@
 		Collections.reverse(this.completeBranchList);
 		filter();
 	}
+
+    public void sortByBookYearUp(){
+        Collections.sort(this.completeBranchList, new SortBranchByBookYear());
+        filter();
+    }
+
+    public void sortByBookYearDown(){
+        Collections.sort(this.completeBranchList, new SortBranchByBookYear());
+        Collections.reverse(completeBranchList);
+        filter();
+    }
+
+    public void sortByEditionYearUp(){
+        Collections.sort(this.completeBranchList, new SortBranchByEditionYear());
+        filter();
+    }
+
+    public void sortByEditionYearDown(){
+        Collections.sort(this.completeBranchList, new SortBranchByEditionYear());
+        Collections.reverse(completeBranchList);
+        filter();
+    }
+
 	public void sortBySectionNameUp() {
 		Collections.sort(this.completeBranchList, new SortBranchBySectionName());
 		filter();
@@ -581,46 +653,6 @@
 		this.paginator = paginator;
 	}
 
-
-	public String getLevel1Filter() {
-		return level1Filter;
-	}
-
-
-	public void setLevel1Filter(String level1Filter) {
-		this.level1Filter = level1Filter;
-	}
-
-
-	public String getLevel2Filter() {
-		return level2Filter;
-	}
-
-
-	public void setLevel2Filter(String level2Filter) {
-		this.level2Filter = level2Filter;
-	}
-
-
-	public String getDynastyFilter() {
-		return dynastyFilter;
-	}
-
-
-	public void setDynastyFilter(String dynastyFilter) {
-		this.dynastyFilter = dynastyFilter;
-	}
-
-
-	public String getAdminTypeFilter() {
-		return adminTypeFilter;
-	}
-
-
-	public void setAdminTypeFilter(String adminTypeFilter) {
-		this.adminTypeFilter = adminTypeFilter;
-	}
-
 	public void firstPage() {
 		this.paginator.first();
 		this.updateCurrentBranches();
--- a/src/main/java/de/mpiwg/web/jsp/JSPProxy.java	Fri Sep 29 15:50:33 2017 +0200
+++ b/src/main/java/de/mpiwg/web/jsp/JSPProxy.java	Fri Sep 29 15:52:11 2017 +0200
@@ -136,12 +136,18 @@
 					getSessionBean().getHomePage().sortBySectionStartPageUp();
 				} else if(StringUtils.equals(action, "sortBySectionStartPageDown")) {
 					getSessionBean().getHomePage().sortBySectionStartPageDown();
-
-
 				} else if(StringUtils.equals(action, "sortByPeriodUp")) {
 					getSessionBean().getHomePage().sortByPeriodUp();
 				} else if(StringUtils.equals(action, "sortByPeriodDown")) {
 					getSessionBean().getHomePage().sortByPeriodDown();
+                } else if(StringUtils.equals(action, "sortByBookYearUp")) {
+                    getSessionBean().getHomePage().sortByBookYearUp();
+                } else if(StringUtils.equals(action, "sortByBookYearDown")) {
+                    getSessionBean().getHomePage().sortByBookYearDown();
+                } else if(StringUtils.equals(action, "sortByEditionYearUp")) {
+                    getSessionBean().getHomePage().sortByEditionYearUp();
+                } else if(StringUtils.equals(action, "sortByEditionYearDown")) {
+                    getSessionBean().getHomePage().sortByEditionYearDown();
 				} else if(StringUtils.equals(action, "sortBySectionNameUp")) {
 					getSessionBean().getHomePage().sortBySectionNameUp();
 				} else if(StringUtils.equals(action, "sortBySectionNameDown")) {