From 31d74c1ac385543eb0da7b484de4889e1d476d5a Mon Sep 17 00:00:00 2001 From: Herwig Birke Date: Mon, 2 Nov 2020 17:16:13 +0100 Subject: [PATCH] initial commit --- pom.xml | 7 ++ .../main/indexForwardComposer.java | 29 ++++++++ .../{Serie.java => serie/serie.java} | 8 +-- .../serieDataSource.java} | 6 +- .../serie/serieDetailsForwardComposer.java | 67 ++++++++++++++++++ .../serie/serieDetailsSelectorComposer.java | 39 ++++++++++ .../serieListForwardComposer.java} | 21 +++--- .../serie/serieListSelectorComposer.java | 39 ++++++++++ .../serieRenderer.java} | 7 +- .../windesign/application/seriesListener.java | 37 ---------- src/main/webapp/index.zul | 41 +++++++---- .../centerSerie.zul} | 5 +- src/main/webapp/serie/detailsSerie.zul | 10 +++ .../at/windesign/application/Serie.class | Bin 4093 -> 0 bytes .../application/SeriesDataSource.class | Bin 2408 -> 0 bytes .../application/seriesListController.class | Bin 6215 -> 0 bytes .../application/seriesListener.class | Bin 1221 -> 0 bytes .../application/seriesRenderer.class | Bin 4163 -> 0 bytes target/maven-archiver/pom.properties | 2 +- .../compile/default-compile/createdFiles.lst | 4 +- .../compile/default-compile/inputFiles.lst | 15 ++-- target/multimedia.war | Bin 27513090 -> 27552201 bytes target/multimedia/index.zul | 12 ++-- 23 files changed, 260 insertions(+), 89 deletions(-) create mode 100644 src/main/java/at/windesign/application/main/indexForwardComposer.java rename src/main/java/at/windesign/application/{Serie.java => serie/serie.java} (96%) rename src/main/java/at/windesign/application/{SeriesDataSource.java => serie/serieDataSource.java} (91%) create mode 100644 src/main/java/at/windesign/application/serie/serieDetailsForwardComposer.java create mode 100644 src/main/java/at/windesign/application/serie/serieDetailsSelectorComposer.java rename src/main/java/at/windesign/application/{seriesListController.java => serie/serieListForwardComposer.java} (87%) create mode 100644 src/main/java/at/windesign/application/serie/serieListSelectorComposer.java rename src/main/java/at/windesign/application/{seriesRenderer.java => serie/serieRenderer.java} (93%) delete mode 100644 src/main/java/at/windesign/application/seriesListener.java rename src/main/webapp/{centerSeries.zul => serie/centerSerie.zul} (62%) create mode 100644 src/main/webapp/serie/detailsSerie.zul delete mode 100644 target/classes/at/windesign/application/Serie.class delete mode 100644 target/classes/at/windesign/application/SeriesDataSource.class delete mode 100644 target/classes/at/windesign/application/seriesListController.class delete mode 100644 target/classes/at/windesign/application/seriesListener.class delete mode 100644 target/classes/at/windesign/application/seriesRenderer.class diff --git a/pom.xml b/pom.xml index a523abf..ea13df2 100644 --- a/pom.xml +++ b/pom.xml @@ -68,6 +68,13 @@ ${commons-io} + + javax.servlet + javax.servlet-api + 3.1.0 + provided + + mysql mysql-connector-java diff --git a/src/main/java/at/windesign/application/main/indexForwardComposer.java b/src/main/java/at/windesign/application/main/indexForwardComposer.java new file mode 100644 index 0000000..9a6e679 --- /dev/null +++ b/src/main/java/at/windesign/application/main/indexForwardComposer.java @@ -0,0 +1,29 @@ +package at.windesign.application.main; + +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.select.annotation.Wire; +import org.zkoss.zk.ui.util.GenericForwardComposer; +import org.zkoss.zul.Label; +import org.zkoss.zul.Window; + +import java.net.URL; + +public class indexForwardComposer extends GenericForwardComposer +{ + private static final long serialVersionUID = 1L; + + @Wire + private Window mainWindow; + + @Wire + protected Label width; + + @Wire + protected Label height; + + @Override + public void doAfterCompose(Component comp) throws Exception + { + super.doAfterCompose(comp); + } +} diff --git a/src/main/java/at/windesign/application/Serie.java b/src/main/java/at/windesign/application/serie/serie.java similarity index 96% rename from src/main/java/at/windesign/application/Serie.java rename to src/main/java/at/windesign/application/serie/serie.java index 36df2e5..9696cac 100644 --- a/src/main/java/at/windesign/application/Serie.java +++ b/src/main/java/at/windesign/application/serie/serie.java @@ -1,8 +1,8 @@ -package at.windesign.application; +package at.windesign.application.serie; import java.util.SortedMap; -class Serie +class serie { private int m_seriesID; private String m_seriesName; @@ -17,11 +17,11 @@ class Serie private int m_minSeason; private int m_maxSeason; - public Serie() + public serie() { } - public Serie(int seriesID, String seriesName, int seriesFirstAired, String seriesResolution, boolean seriesCliffhanger, String seriesStatus, String seriesDownload, String seriesPoster, String seriesBackdrop, SortedMap episodeState, int minSeason, int maxSeason) + public serie(int seriesID, String seriesName, int seriesFirstAired, String seriesResolution, boolean seriesCliffhanger, String seriesStatus, String seriesDownload, String seriesPoster, String seriesBackdrop, SortedMap episodeState, int minSeason, int maxSeason) { m_seriesID = seriesID; m_seriesName = seriesName; diff --git a/src/main/java/at/windesign/application/SeriesDataSource.java b/src/main/java/at/windesign/application/serie/serieDataSource.java similarity index 91% rename from src/main/java/at/windesign/application/SeriesDataSource.java rename to src/main/java/at/windesign/application/serie/serieDataSource.java index 89310f9..310266a 100644 --- a/src/main/java/at/windesign/application/SeriesDataSource.java +++ b/src/main/java/at/windesign/application/serie/serieDataSource.java @@ -1,11 +1,11 @@ -package at.windesign.application; +package at.windesign.application.serie; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; -public enum SeriesDataSource +public enum serieDataSource { INSTANCE; @@ -27,7 +27,7 @@ public enum SeriesDataSource } } - private SeriesDataSource() + private serieDataSource() { // drop the table if it exists try diff --git a/src/main/java/at/windesign/application/serie/serieDetailsForwardComposer.java b/src/main/java/at/windesign/application/serie/serieDetailsForwardComposer.java new file mode 100644 index 0000000..fee45af --- /dev/null +++ b/src/main/java/at/windesign/application/serie/serieDetailsForwardComposer.java @@ -0,0 +1,67 @@ +package at.windesign.application.serie; + +import org.zkoss.image.AImage; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.Desktop; +import org.zkoss.zk.ui.select.annotation.Wire; +import org.zkoss.zk.ui.util.GenericForwardComposer; +import org.zkoss.zul.Label; +import org.zkoss.zul.Window; + +import java.net.URL; + +public class serieDetailsForwardComposer extends GenericForwardComposer +{ + private static final long serialVersionUID = 1L; + + @Wire + private Window resultWin; + + @Wire + protected Label title; + + private serie m_serie; + + @Override + public void doAfterCompose(Component comp) throws Exception + { + super.doAfterCompose(comp); + + int hD = (int)self.getDesktop().getAttribute("desktopHeight"); + int wD = (int)self.getDesktop().getAttribute("desktopWidth"); + + resultWin.setWidth(wD - 10 + "px"); + resultWin.setHeight(hD - 10 + "px"); + + if(arg.containsKey("serie")) + m_serie = (serie) arg.get("serie"); + else + resultWin.detach(); + + String uri = "http://image.tmdb.org/t/p/original" + m_serie.getSeriesBackdrop(); + URL url = new URL(uri); + AImage img = new AImage(url); + + int w = Integer.parseInt(resultWin.getWidth().replace("px", "")); + int h = Integer.parseInt(resultWin.getHeight().replace("px", "")); + int wI = img.getWidth(); + int hI = img.getHeight(); + int wR = w; + int hR = hI*w/wI; + + if(hR < h) + { + hR = h; + wR = wI*h/hI; + } + + String size = String.valueOf(wR) + "px " + String.valueOf(hR) + "px"; + String format = "background:url('%1$s') no-repeat center center fixed; -webkit-background-size: " + size + "; -moz-background-size: \" + size + \"; -o-background-size: \" + size + \"; background-size: \" + size + \";"; + String style = String.format(format, uri); + resultWin.setContentStyle(style); +// resultWin.setTitle(m_serie.getSeriesName()); +// resultWin.setTitle(resultWin.getWidth() + " x " + resultWin.getHeight()); +// resultWin.setTitle(m_serie.getParentWidth() + " x " + m_serie.getParentHeight()); +// resultWin.setTitle(wD + " x " + hD); + } +} diff --git a/src/main/java/at/windesign/application/serie/serieDetailsSelectorComposer.java b/src/main/java/at/windesign/application/serie/serieDetailsSelectorComposer.java new file mode 100644 index 0000000..212b517 --- /dev/null +++ b/src/main/java/at/windesign/application/serie/serieDetailsSelectorComposer.java @@ -0,0 +1,39 @@ +package at.windesign.application.serie; + +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.select.SelectorComposer; +import org.zkoss.zk.ui.select.annotation.Listen; +import org.zkoss.zk.ui.select.annotation.Wire; +import org.zkoss.zul.Label; +import org.zkoss.zul.Window; + +public class serieDetailsSelectorComposer extends SelectorComposer +{ + private static final long serialVersionUID = 1L; + + @Wire + private Window resultWin; + + @Wire + protected Label title; + + private serie m_serie; + + @Listen("onClick = #saveButton") + public void save() + { + resultWin.onClose(); + } + + @Listen("onClick = #cancelButton") + public void cancel() + { + resultWin.onClose(); + } + + @Listen("onClick = #deleteButton") + public void delete() + { + resultWin.onClose(); + } +} \ No newline at end of file diff --git a/src/main/java/at/windesign/application/seriesListController.java b/src/main/java/at/windesign/application/serie/serieListForwardComposer.java similarity index 87% rename from src/main/java/at/windesign/application/seriesListController.java rename to src/main/java/at/windesign/application/serie/serieListForwardComposer.java index 9e807fc..96ba0a5 100644 --- a/src/main/java/at/windesign/application/seriesListController.java +++ b/src/main/java/at/windesign/application/serie/serieListForwardComposer.java @@ -1,4 +1,4 @@ -package at.windesign.application; +package at.windesign.application.serie; import org.zkoss.zk.ui.Component; @@ -11,14 +11,13 @@ import java.sql.Statement; import java.util.SortedMap; import java.util.TreeMap; -public class seriesListController extends GenericForwardComposer +public class serieListForwardComposer extends GenericForwardComposer { - protected Listbox seriesList; // autowired - private ListModelList seriesListModel; // the model of the listbox - private seriesRenderer renderer; - private seriesListener itemListener = new seriesListener(); + protected Listbox seriesList; // autowired + private ListModelList seriesListModel; // the model of the listbox + private serieRenderer renderer; - private final SeriesDataSource ds = SeriesDataSource.INSTANCE; + private final serieDataSource ds = serieDataSource.INSTANCE; @Override public void doAfterCompose(Component comp) throws Exception @@ -49,8 +48,6 @@ public class seriesListController extends GenericForwardComposer seriesListModel = new ListModelList(); seriesList.setModel(seriesListModel); - seriesList.addEventListener("onSelect", itemListener); - itemListener.setSeriesList(seriesList); Listhead head = seriesList.getListhead(); Listheader seriesName = new Listheader("Series Name"); @@ -75,7 +72,7 @@ public class seriesListController extends GenericForwardComposer head.appendChild(seasonHeader); } - renderer = new seriesRenderer(); + renderer = new serieRenderer(); seriesList.setItemRenderer(renderer); try @@ -108,7 +105,7 @@ public class seriesListController extends GenericForwardComposer ); // fetch all events from database - Serie serie = new Serie(); + serie serie = new serie(); int oldID = -1; SortedMap episodeState = new TreeMap<>(); @@ -126,7 +123,7 @@ public class seriesListController extends GenericForwardComposer } oldID = rs.getInt("seriesID"); - serie = new Serie(); + serie = new serie(); serie.setSeriesID(rs.getInt("seriesID")); serie.setSeriesName(rs.getString("seriesName")); diff --git a/src/main/java/at/windesign/application/serie/serieListSelectorComposer.java b/src/main/java/at/windesign/application/serie/serieListSelectorComposer.java new file mode 100644 index 0000000..f9d60f6 --- /dev/null +++ b/src/main/java/at/windesign/application/serie/serieListSelectorComposer.java @@ -0,0 +1,39 @@ +package at.windesign.application.serie; + +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.Executions; +import org.zkoss.zk.ui.select.SelectorComposer; +import org.zkoss.zk.ui.select.annotation.Listen; +import org.zkoss.zk.ui.select.annotation.Wire; +import org.zkoss.zul.Listbox; +import org.zkoss.zul.Listitem; +import org.zkoss.zul.Window; + +import java.util.HashMap; +import java.util.Map; + +public class serieListSelectorComposer extends SelectorComposer +{ + @Wire + private Listbox seriesList; + + @Listen("onDoubleClick = #seriesList") + public void onClick() + { + Listitem item = seriesList.getSelectedItem(); + + if(item == null) + return; + + serie s = (serie) item.getValue(); + + Map arguments = new HashMap(); + + arguments.put("serie", s); + + String template = "/serie/detailsSerie.zul"; + Window window = (Window) Executions.createComponents(template, null, arguments); + + window.doModal(); + } +} diff --git a/src/main/java/at/windesign/application/seriesRenderer.java b/src/main/java/at/windesign/application/serie/serieRenderer.java similarity index 93% rename from src/main/java/at/windesign/application/seriesRenderer.java rename to src/main/java/at/windesign/application/serie/serieRenderer.java index 4992cd6..0e75f43 100644 --- a/src/main/java/at/windesign/application/seriesRenderer.java +++ b/src/main/java/at/windesign/application/serie/serieRenderer.java @@ -1,7 +1,6 @@ -package at.windesign.application; +package at.windesign.application.serie; import org.zkoss.image.Images; -import org.zkoss.zk.ui.sys.ComponentsCtrl; import org.zkoss.zul.*; import java.awt.*; @@ -9,7 +8,7 @@ import java.awt.image.BufferedImage; import java.util.SortedMap; import java.util.TreeMap; -public class seriesRenderer implements ListitemRenderer +public class serieRenderer implements ListitemRenderer { private Integer stateWidth = 4; private Integer stateHeight = 20; @@ -19,7 +18,7 @@ public class seriesRenderer implements ListitemRenderer @Override public void render(Listitem item, Object o, int i) throws Exception { - final Serie data = (Serie) o; + final serie data = (serie) o; Listcell seriesNameCell = new Listcell(data.getSeriesName()); Listcell seriesFirstAiredCell = new Listcell(String.valueOf(data.getSeriesFirstAired())); diff --git a/src/main/java/at/windesign/application/seriesListener.java b/src/main/java/at/windesign/application/seriesListener.java deleted file mode 100644 index cf75683..0000000 --- a/src/main/java/at/windesign/application/seriesListener.java +++ /dev/null @@ -1,37 +0,0 @@ -package at.windesign.application; - -import org.zkoss.zk.ui.event.Event; -import org.zkoss.zk.ui.event.EventListener; -import org.zkoss.zul.Listbox; -import org.zkoss.zul.Listitem; -import org.zkoss.zul.Messagebox; - -import static org.zkoss.zk.ui.util.Clients.alert; - -public class seriesListener implements EventListener -{ - Listbox m_seriesList; - - public seriesListener() - { - } - - public void setSeriesList(Listbox seriesList) - { - m_seriesList = seriesList; - } - - public boolean isAsap() - { -// TODO Auto-generated method stub - return true; - } - - @Override - public void onEvent(Event arg) - { - Listitem item = m_seriesList.getSelectedItem(); - Serie s = (Serie) item.getValue(); - Messagebox.show(s.getSeriesName()); - } -} diff --git a/src/main/webapp/index.zul b/src/main/webapp/index.zul index f013693..2e363d0 100644 --- a/src/main/webapp/index.zul +++ b/src/main/webapp/index.zul @@ -1,15 +1,30 @@ - - - - -
- -
-
+ + + + + +
+ +
+
+ + void onClientInfo(ClientInfoEvent evt) { + + + } + +
diff --git a/src/main/webapp/centerSeries.zul b/src/main/webapp/serie/centerSerie.zul similarity index 62% rename from src/main/webapp/centerSeries.zul rename to src/main/webapp/serie/centerSerie.zul index a850f7e..6a225b7 100644 --- a/src/main/webapp/centerSeries.zul +++ b/src/main/webapp/serie/centerSerie.zul @@ -1,5 +1,6 @@ -
+ +