initial commit

This commit is contained in:
2020-11-05 17:59:28 +01:00
parent fb82fcd2b4
commit ba8c797f7e
21 changed files with 737 additions and 316 deletions
+1 -40
View File
@@ -1,41 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Maven: org.zkoss.zk:zkbind:9.0.0-Eval" level="project" />
<orderEntry type="library" name="Maven: org.javassist:javassist:3.18.2-GA" level="project" />
<orderEntry type="library" name="Maven: org.zkoss.zk:zul:9.0.0-Eval" level="project" />
<orderEntry type="library" name="Maven: org.zkoss.zk:zk:9.0.0-Eval" level="project" />
<orderEntry type="library" name="Maven: org.zkoss.common:zweb:9.0.0-Eval" level="project" />
<orderEntry type="library" name="Maven: org.zkoss.common:zcommon:9.0.0-Eval" level="project" />
<orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.3" level="project" />
<orderEntry type="library" name="Maven: org.zkoss.common:zel:9.0.0-Eval" level="project" />
<orderEntry type="library" name="Maven: org.apache-extras.beanshell:bsh:2.0b6" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.5" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.slf4j:slf4j-jdk14:1.7.5" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.8" level="project" />
<orderEntry type="library" name="Maven: com.google.javascript:closure-compiler-unshaded:v20170626" level="project" />
<orderEntry type="library" name="Maven: com.google.javascript:closure-compiler-externs:v20170626" level="project" />
<orderEntry type="library" name="Maven: args4j:args4j:2.33" level="project" />
<orderEntry type="library" name="Maven: com.google.errorprone:error_prone_annotations:2.0.18" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:guava:20.0" level="project" />
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.7" level="project" />
<orderEntry type="library" name="Maven: com.google.code.findbugs:jsr305:3.0.1" level="project" />
<orderEntry type="library" name="Maven: com.google.jsinterop:jsinterop-annotations:1.0.0" level="project" />
<orderEntry type="library" name="Maven: org.zkoss.zk:zkwebfragment:9.0.0-Eval" level="project" />
<orderEntry type="library" name="Maven: org.zkoss.zk:zkplus:9.0.0-Eval" level="project" />
<orderEntry type="library" name="Maven: org.zkoss.zk:zhtml:9.0.0-Eval" level="project" />
<orderEntry type="library" name="Maven: org.zkoss:zsoup:1.8.2.5" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.6" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:javax.servlet-api:3.1.0" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: mysql:mysql-connector-java:8.0.17" level="project" />
<orderEntry type="library" name="Maven: com.google.protobuf:protobuf-java:3.6.1" level="project" />
</component>
</module>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4" />
@@ -1,246 +0,0 @@
package at.windesign.application.serie;
import java.awt.*;
import java.util.Objects;
import java.util.SortedMap;
class serie
{
private int m_seriesID;
private String m_seriesName;
private int m_seriesFirstAired;
private String m_seriesResolution;
private boolean m_seriesCliffhanger;
private String m_seriesStatus;
private String m_seriesDownload;
private String m_seriesLocalPath;
private String m_seriesPoster;
private String m_seriesBackdrop;
private String m_seriesOverview;
private SortedMap<Integer, Integer> m_episodeState;
private int m_minSeason;
private int m_maxSeason;
private int m_stateInit;
private int m_stateProg;
private int m_stateDone;
public serie()
{
}
public serie(int seriesID, String seriesName, int seriesFirstAired, String seriesResolution, boolean seriesCliffhanger, String seriesStatus, String seriesDownload, String localPath, String seriesPoster, String seriesBackdrop, String seriesOverview, SortedMap<Integer, Integer> episodeState, int minSeason, int maxSeason, int stateInit, int stateProg, int stateDone)
{
m_seriesID = seriesID;
m_seriesName = seriesName;
m_seriesFirstAired = seriesFirstAired;
m_seriesResolution = seriesResolution;
m_seriesCliffhanger = seriesCliffhanger;
m_seriesStatus = seriesStatus;
m_seriesDownload = seriesDownload;
m_seriesLocalPath = localPath;
m_seriesPoster = seriesPoster;
m_seriesBackdrop = seriesBackdrop;
m_seriesOverview = seriesOverview;
m_episodeState = episodeState;
m_minSeason = minSeason;
m_maxSeason = maxSeason;
m_stateInit = stateInit;
m_stateProg = stateProg;
m_stateDone = stateDone;
}
public int getSeriesID()
{
return m_seriesID;
}
public void setSeriesID(int seriesID)
{
m_seriesID = seriesID;
}
public String getSeriesName()
{
return m_seriesName;
}
public void setSeriesName(String seriesName)
{
m_seriesName = seriesName;
}
public int getSeriesFirstAired()
{
return m_seriesFirstAired;
}
public void setSeriesFirstAired(int seriesFirstAired)
{
m_seriesFirstAired = seriesFirstAired;
}
public String getSeriesResolution()
{
return m_seriesResolution;
}
public void setSeriesResolution(String seriesResolution)
{
m_seriesResolution = seriesResolution;
}
public boolean getSeriesCliffhanger()
{
return m_seriesCliffhanger;
}
public void setSeriesCliffhanger(boolean seriesCliffhanger)
{
m_seriesCliffhanger = seriesCliffhanger;
}
public String getSeriesStatus()
{
return m_seriesStatus;
}
public void setSeriesStatus(String seriesStatus)
{
m_seriesStatus = seriesStatus;
}
public String getSeriesDownload()
{
return m_seriesDownload;
}
public void setSeriesDownload(String seriesDownload)
{
m_seriesDownload = seriesDownload;
}
public String getSeriesLocalPath()
{
return m_seriesLocalPath;
}
public void setSeriesLocalPath(String seriesLocalPath)
{
m_seriesLocalPath = seriesLocalPath;
}
public String getSeriesPoster()
{
return m_seriesPoster;
}
public void setSeriesPoster(String seriesPoster)
{
m_seriesPoster = seriesPoster;
}
public String getSeriesBackdrop()
{
return m_seriesBackdrop;
}
public void setSeriesBackdrop(String seriesBackdrop)
{
m_seriesBackdrop = seriesBackdrop;
}
public String getSeriesOverview()
{
return m_seriesOverview;
}
public void setSeriesOverview(String seriesOverview)
{
m_seriesOverview = seriesOverview;
}
public SortedMap<Integer, Integer> getEpisodeState()
{
return m_episodeState;
}
public void setEpisodeState(SortedMap<Integer, Integer> episodeState)
{
m_episodeState = episodeState;
}
public int getMinSeason()
{
return m_minSeason;
}
public void setMinSeason(int minSeason)
{
m_minSeason = minSeason;
}
public int getMaxSeason()
{
return m_maxSeason;
}
public void setMaxSeason(int maxSeason)
{
m_maxSeason = maxSeason;
}
public int getStateInit()
{
return m_stateInit;
}
public void setStateInit(int stateInit)
{
m_stateInit = stateInit;
}
public int getStateProg()
{
return m_stateProg;
}
public void setStateProg(int stateProg)
{
m_stateProg = stateProg;
}
public int getStateDone()
{
return m_stateDone;
}
public void setStateDone(int stateDone)
{
m_stateDone = stateDone;
}
public String getSeriesStyle()
{
String style = "";
if(m_seriesCliffhanger)
style = style + "font-style: italic; ";
if(Objects.equals(m_seriesStatus, "Returning Series"))
style = style + "font-weight: bold; ";
String color = "";
if(m_stateProg > 0)
color = "background-color: #0000C0; color: #FFFFFF";
else if(m_stateInit > 0)
color = "background-color: #C0C0C0;";
else if(m_stateDone > 0)
color = "background-color: #00C000;";
style += color;
return style;
}
}
@@ -0,0 +1,574 @@
package at.windesign.application.serie;
import java.awt.*;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.time.LocalDate;
import java.util.Objects;
import java.util.SortedMap;
import static org.zkoss.zk.ui.util.Clients.alert;
class serieData
{
private int m_seriesID;
private String m_seriesName;
private String m_seriesOriginalName;
private String m_seriesBackdrop;
private String m_seriesCreatedBy;
private String m_seriesHomepage;
private Date m_seriesLastAired;
private String m_seriesLanguages;
private String m_seriesNetworks;
private int m_seriesNrEpisodes;
private int m_seriesNrSeasons;
private String m_seriesOriginCountries;
private String m_seriesOriginalLanguage;
private int m_seriesPopularity;
private String m_seriesPoster;
private String m_seriesProductionCompanies;
private String m_seriesType;
private double m_seriesVoteAverage;
private int m_seriesVoteCount;
private String m_seriesOverview;
private Date m_seriesFirstAired;
private String m_seriesCast;
private String m_seriesCrew;
private String m_seriesGenre;
private String m_seriesIMDBID;
private String m_seriesFreebaseMID;
private String m_seriesFreebaseID;
private String m_seriesTVDBID;
private String m_seriesTVRageID;
private String m_seriesStatus;
private String m_seriesDownload;
private String m_seriesLocalPath;
private String m_seriesResolution;
private boolean m_seriesCliffhanger;
private SortedMap<Integer, Integer> m_episodeState;
private int m_minSeason;
private int m_maxSeason;
private int m_stateInit;
private int m_stateProg;
private int m_stateDone;
private final serieDataSource ds = serieDataSource.INSTANCE;
public serieData()
{
}
public int getSeriesID()
{
return m_seriesID;
}
public void setSeriesID(int seriesID)
{
m_seriesID = seriesID;
}
public String getSeriesName()
{
return m_seriesName;
}
public void setSeriesName(String seriesName)
{
m_seriesName = seriesName;
}
public String getSeriesOriginalName()
{
return m_seriesOriginalName;
}
public void setSeriesOriginalName(String seriesOriginalName)
{
m_seriesOriginalName = seriesOriginalName;
}
public String getSeriesBackdrop()
{
return m_seriesBackdrop;
}
public void setSeriesBackdrop(String seriesBackdrop)
{
m_seriesBackdrop = seriesBackdrop;
}
public String getSeriesCreatedBy()
{
return m_seriesCreatedBy;
}
public void setSeriesCreatedBy(String seriesCreatedBy)
{
m_seriesCreatedBy = seriesCreatedBy;
}
public String getSeriesHomepage()
{
return m_seriesHomepage;
}
public void setSeriesHomepage(String seriesHomepage)
{
m_seriesHomepage = seriesHomepage;
}
public Date getSeriesLastAired()
{
return m_seriesLastAired;
}
public void setSeriesLastAired(Date seriesLastAired)
{
m_seriesLastAired = seriesLastAired;
}
public String getSeriesLanguages()
{
return m_seriesLanguages;
}
public void setSeriesLanguages(String seriesLanguages)
{
m_seriesLanguages = seriesLanguages;
}
public String getSeriesNetworks()
{
return m_seriesNetworks;
}
public void setSeriesNetworks(String seriesNetworks)
{
m_seriesNetworks = seriesNetworks;
}
public int getSeriesNrEpisodes()
{
return m_seriesNrEpisodes;
}
public void setSeriesNrEpisodes(int seriesNrEpisodes)
{
m_seriesNrEpisodes = seriesNrEpisodes;
}
public int getSeriesNrSeasons()
{
return m_seriesNrSeasons;
}
public void setSeriesNrSeasons(int seriesNrSeasons)
{
m_seriesNrSeasons = seriesNrSeasons;
}
public String getSeriesOriginCountries()
{
return m_seriesOriginCountries;
}
public void setSeriesOriginCountries(String seriesOriginCountries)
{
m_seriesOriginCountries = seriesOriginCountries;
}
public String getSeriesOriginalLanguage()
{
return m_seriesOriginalLanguage;
}
public void setSeriesOriginalLanguage(String seriesOriginalLanguage)
{
m_seriesOriginalLanguage = seriesOriginalLanguage;
}
public int getSeriesPopularity()
{
return m_seriesPopularity;
}
public void setSeriesPopularity(int seriesPopularity)
{
m_seriesPopularity = seriesPopularity;
}
public String getSeriesPoster()
{
return m_seriesPoster;
}
public void setSeriesPoster(String seriesPoster)
{
m_seriesPoster = seriesPoster;
}
public String getSeriesProductionCompanies()
{
return m_seriesProductionCompanies;
}
public void setSeriesProductionCompanies(String seriesProductionCompanies)
{
m_seriesProductionCompanies = seriesProductionCompanies;
}
public String getSeriesType()
{
return m_seriesType;
}
public void setSeriesType(String seriesType)
{
m_seriesType = seriesType;
}
public double getSeriesVoteAverage()
{
return m_seriesVoteAverage;
}
public void setSeriesVoteAverage(double seriesVoteAverage)
{
m_seriesVoteAverage = seriesVoteAverage;
}
public int getSeriesVoteCount()
{
return m_seriesVoteCount;
}
public void setSeriesVoteCount(int seriesVoteCount)
{
m_seriesVoteCount = seriesVoteCount;
}
public String getSeriesOverview()
{
return m_seriesOverview;
}
public void setSeriesOverview(String seriesOverview)
{
m_seriesOverview = seriesOverview;
}
public Date getSeriesFirstAired()
{
return m_seriesFirstAired;
}
public void setSeriesFirstAired(Date seriesFirstAired)
{
m_seriesFirstAired = seriesFirstAired;
}
public String getSeriesCast()
{
return m_seriesCast;
}
public void setSeriesCast(String seriesCast)
{
m_seriesCast = seriesCast;
}
public String getSeriesCrew()
{
return m_seriesCrew;
}
public void setSeriesCrew(String seriesCrew)
{
m_seriesCrew = seriesCrew;
}
public String getSeriesGenre()
{
return m_seriesGenre;
}
public void setSeriesGenre(String seriesGenre)
{
m_seriesGenre = seriesGenre;
}
public String getSeriesIMDBID()
{
return m_seriesIMDBID;
}
public void setSeriesIMDBID(String seriesIMDBID)
{
m_seriesIMDBID = seriesIMDBID;
}
public String getSeriesFreebaseMID()
{
return m_seriesFreebaseMID;
}
public void setSeriesFreebaseMID(String seriesFreebaseMID)
{
m_seriesFreebaseMID = seriesFreebaseMID;
}
public String getSeriesFreebaseID()
{
return m_seriesFreebaseID;
}
public void setSeriesFreebaseID(String seriesFreebaseID)
{
m_seriesFreebaseID = seriesFreebaseID;
}
public String getSeriesTVDBID()
{
return m_seriesTVDBID;
}
public void setSeriesTVDBID(String seriesTVDBID)
{
m_seriesTVDBID = seriesTVDBID;
}
public String getSeriesTVRageID()
{
return m_seriesTVRageID;
}
public void setSeriesTVRageID(String seriesTVRageID)
{
m_seriesTVRageID = seriesTVRageID;
}
public String getSeriesStatus()
{
return m_seriesStatus;
}
public void setSeriesStatus(String seriesStatus)
{
m_seriesStatus = seriesStatus;
}
public String getSeriesDownload()
{
return m_seriesDownload;
}
public void setSeriesDownload(String seriesDownload)
{
m_seriesDownload = seriesDownload;
}
public String getSeriesLocalPath()
{
return m_seriesLocalPath;
}
public void setSeriesLocalPath(String seriesLocalPath)
{
m_seriesLocalPath = seriesLocalPath;
}
public String getSeriesResolution()
{
return m_seriesResolution;
}
public void setSeriesResolution(String seriesResolution)
{
m_seriesResolution = seriesResolution;
}
public boolean getSeriesCliffhanger()
{
return m_seriesCliffhanger;
}
public void setSeriesCliffhanger(boolean seriesCliffhanger)
{
m_seriesCliffhanger = seriesCliffhanger;
}
public SortedMap<Integer, Integer> getEpisodeState()
{
return m_episodeState;
}
public void setEpisodeState(SortedMap<Integer, Integer> episodeState)
{
m_episodeState = episodeState;
}
public void setEpisodeState(int season, int episode, int state)
{
m_episodeState.put(season << 8 + episode, state);
}
public int getMinSeason()
{
return m_minSeason;
}
public void setMinSeason(int minSeason)
{
m_minSeason = minSeason;
}
public int getMaxSeason()
{
return m_maxSeason;
}
public void setMaxSeason(int maxSeason)
{
m_maxSeason = maxSeason;
}
public int getStateInit()
{
return m_stateInit;
}
public void setStateInit(int stateInit)
{
m_stateInit = stateInit;
}
public int getStateProg()
{
return m_stateProg;
}
public void setStateProg(int stateProg)
{
m_stateProg = stateProg;
}
public int getStateDone()
{
return m_stateDone;
}
public void setStateDone(int stateDone)
{
m_stateDone = stateDone;
}
public String getSeriesStyle()
{
String style = "";
if(m_seriesCliffhanger)
style = style + "font-style: italic; ";
if(Objects.equals(m_seriesStatus, "Returning Series"))
style = style + "font-weight: bold; ";
String color = "";
if(m_stateProg > 0)
color = "background-color: #0000C0; color: #FFFFFF";
else if(m_stateInit > 0)
color = "background-color: #C0C0C0;";
else if(m_stateDone > 0)
color = "background-color: #00C000;";
style += color;
return style;
}
public boolean save()
{
try
{
Statement stmt = ds.getStatement();
int cnt = stmt.executeUpdate(
"UPDATE serie" +
" SET seriesName='" + m_seriesName + "'," +
" originalName='" + m_seriesOriginalName + "'," +
" backdropPath='" + m_seriesBackdrop + "'," +
" backdropPath='" + m_seriesCreatedBy + "'," +
" backdropPath='" + m_seriesHomepage + "'," +
" backdropPath='" + m_seriesLastAired + "'," +
" backdropPath='" + m_seriesLanguages + "'," +
" backdropPath='" + m_seriesNetworks + "'," +
" backdropPath=" + m_seriesNrEpisodes + "," +
" backdropPath=" + m_seriesNrSeasons + "," +
" backdropPath='" + m_seriesOriginCountries + "'," +
" backdropPath='" + m_seriesOriginalLanguage + "'," +
" backdropPath=" + m_seriesPopularity + "," +
" posterPath='" + m_seriesPoster + "'," +
" posterPath='" + m_seriesProductionCompanies + "'," +
" posterPath='" + m_seriesType + "'," +
" posterPath=" + m_seriesVoteAverage + "," +
" posterPath=" + m_seriesVoteCount + "," +
" overview='" + m_seriesOverview + "'," +
" firstAired='" + m_seriesFirstAired + "'," +
" resolution='" + m_seriesCast + "'," +
" resolution='" + m_seriesCrew + "'," +
" resolution='" + m_seriesGenre + "'," +
" resolution='" + m_seriesIMDBID + "'," +
" resolution='" + m_seriesFreebaseMID + "'," +
" resolution='" + m_seriesFreebaseID + "'," +
" resolution='" + m_seriesTVDBID + "'," +
" resolution='" + m_seriesTVRageID + "'," +
" status='" + m_seriesStatus + "'," +
" download='" + m_seriesDownload + "'," +
" localPath='" + m_seriesLocalPath + "'," +
" resolution='" + m_seriesResolution + "'," +
" cliffhanger=" + m_seriesCliffhanger +
" WHERE seriesID=" + m_seriesID + ";");
}
catch(SQLException e)
{
e.printStackTrace();
}
finally
{
ds.close();
}
/*
"SELECT serie.seriesID seriesID," +
" serie.seriesName seriesName," +
" YEAR(serie.firstAired) seriesFirstAired," +
" serie.resolution seriesResolution," +
" serie.cliffhanger seriesCliffhanger," +
" serie.status seriesStatus," +
" serie.download seriesDownload," +
" serie.localPath seriesLocalPath," +
" serie.posterPath seriesPoster," +
" serie.backdropPath seriesBackdrop," +
" serie.overview seriesOverview," +
" season.seasonNumber seasonNumber," +
" episode.episodeNumber episodeNumber," +
" episode.state episodeState," +
" ( SELECT MIN(s.seasonNumber) FROM season s WHERE s.seriesID = serie.seriesID ) minSeason," +
" ( SELECT MAX(s.seasonNumber) FROM season s WHERE s.seriesID = serie.seriesID ) maxSeason" +
" FROM serie" +
" LEFT JOIN season ON serie.seriesID = season.seriesID" +
" LEFT JOIN episode ON serie.seriesID = episode.seriesID AND season.seasonNumber = episode.seasonNumber" +
" WHERE season.seasonNumber != 0 OR" +
" serie.seriesID >= 1000000" +
" ORDER BY serie.seriesName," +
" serie.firstAired," +
" season.seasonNumber," +
" episode.episodeNumber;"
);
*/
return true;
}
}
@@ -21,7 +21,8 @@ public enum serieDataSource
try
{
Class.forName("com.mysql.cj.jdbc.Driver");
} catch(ClassNotFoundException e)
}
catch(ClassNotFoundException e)
{
e.printStackTrace();
}
@@ -34,10 +35,12 @@ public enum serieDataSource
{
Statement stmt = this.getStatement();
stmt.close();
} catch(SQLException e)
}
catch(SQLException e)
{
e.printStackTrace();
} finally
}
finally
{
this.close();
}
@@ -61,7 +64,8 @@ public enum serieDataSource
conn.close();
conn = null;
}
} catch(SQLException e)
}
catch(SQLException e)
{
e.printStackTrace();
}
@@ -52,10 +52,13 @@ public class serieDetailsForwardComposer extends GenericForwardComposer<Componen
@Wire
protected Button cancelButton;
@Wire
protected Button updateButton;
@Wire
protected Button deleteButton;
private serie m_serie;
private serieData m_serie;
@Override
public void doAfterCompose(Component comp) throws Exception
@@ -72,10 +75,12 @@ public class serieDetailsForwardComposer extends GenericForwardComposer<Componen
detailsSerie.setHeight(hD - 10 + "px");
if(arg.containsKey("serie"))
m_serie = (serie) arg.get("serie");
m_serie = (serieData) arg.get("serie");
else
detailsSerie.detach();
detailsSerie.setAttribute("serie", m_serie);
if(m_serie.getSeriesBackdrop() != null)
{
String uri = "http://image.tmdb.org/t/p/original" + m_serie.getSeriesBackdrop();
@@ -1,11 +1,14 @@
package at.windesign.application.serie;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.event.Event;
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;
import org.zkoss.zul.*;
import java.util.Iterator;
import java.util.List;
public class serieDetailsSelectorComposer extends SelectorComposer<Component>
{
@@ -15,13 +18,24 @@ public class serieDetailsSelectorComposer extends SelectorComposer<Component>
private Window detailsSerie;
@Wire
protected Label title;
protected Textbox downloadLink;
private serie m_serie;
@Wire
protected Textbox localPath;
@Wire
protected Combobox resolution;
@Wire
protected Checkbox cliffhanger;
@Listen("onClick = #saveButton")
public void save()
{
serieData serie = getCurrentValues();
serie.save();
alert("Data Saved!");
detailsSerie.onClose();
}
@@ -31,9 +45,70 @@ public class serieDetailsSelectorComposer extends SelectorComposer<Component>
detailsSerie.onClose();
}
@Listen("onClick = #updateButton")
public void update()
{
serieData serie = (serieData) detailsSerie.getAttribute("serie");
detailsSerie.onClose();
}
@Listen("onClick = #deleteButton")
public void delete()
{
detailsSerie.onClose();
serieData serie = (serieData) detailsSerie.getAttribute("serie");
Messagebox.show("Are you sure to delete \"" + serie.getSeriesName() + "\"?", "Confirm Dialog", Messagebox.YES | Messagebox.NO, Messagebox.QUESTION, new org.zkoss.zk.ui.event.EventListener()
{
public void onEvent(Event evt) throws InterruptedException
{
if(evt.getName().equals("onYES"))
{
alert("Data Saved!");
detailsSerie.onClose();
}
else
{
detailsSerie.onClose();
}
}
});
}
private serieData getCurrentValues()
{
serieData serie = (serieData) detailsSerie.getAttribute("serie");
serie.setSeriesDownload(downloadLink.getValue());
serie.setSeriesLocalPath(localPath.getValue());
serie.setSeriesResolution(resolution.getValue());
serie.setSeriesCliffhanger(cliffhanger.isChecked());
for(Component comp : detailsSerie.getChildren())
{
String id = comp.getId();
if(id.startsWith("groupboxSeason"))
parseSeason((Groupbox) comp, serie);
}
return serie;
}
private void parseSeason(Groupbox groupbox, serieData serie)
{
int season = Integer.parseInt(groupbox.getId().substring(14));
for(Component comp : groupbox.getChildren())
{
String id = comp.getId();
if(id.startsWith("radiogroupSeason"))
{
Radiogroup group = (Radiogroup) comp;
int episode = Integer.parseInt(id.substring(id.indexOf("_") + 1));
int state = group.getSelectedIndex()+1;
serie.setEpisodeState(season, episode, state);
}
}
}
}
@@ -9,6 +9,7 @@ import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.SortedMap;
import java.util.TimeZone;
import java.util.TreeMap;
public class serieListForwardComposer extends GenericForwardComposer
@@ -74,7 +75,6 @@ public class serieListForwardComposer extends GenericForwardComposer
for(int i = minSeason; i <= maxSeason; i++)
{
Listheader seasonHeader = new Listheader("Season " + i);
// seasonHeader.setHflex("min");
head.appendChild(seasonHeader);
maxEpisode.put(i, 0);
listHeader.put(i, seasonHeader);
@@ -89,15 +89,38 @@ public class serieListForwardComposer extends GenericForwardComposer
ResultSet rs = stmt.executeQuery(
"SELECT serie.seriesID seriesID," +
" serie.seriesName seriesName," +
" YEAR(serie.firstAired) seriesFirstAired," +
" serie.resolution seriesResolution," +
" serie.cliffhanger seriesCliffhanger," +
" serie.originalName seriesOriginalName," +
" serie.backdropPath seriesBackdrop," +
" serie.createdBy seriesCreatedBy," +
" serie.homepage seriesHomepage," +
" serie.lastAired seriesLastAired," +
" serie.languages seriesLanguages," +
" serie.networks seriesNetworks," +
" serie.nrEpisodes seriesNrEpisodes," +
" serie.nrSeasons seriesNrSeasons," +
" serie.originCountries seriesOriginCountries," +
" serie.originalLanguage seriesOriginalLanguage," +
" serie.popularity seriesPopularity," +
" serie.posterPath seriesPoster," +
" serie.productionCompanies seriesProductionCompanies," +
" serie.type seriesType," +
" serie.voteAverage seriesVoteAverage," +
" serie.voteCount seriesVoteCount," +
" serie.overview seriesOverview," +
" serie.firstAired seriesFirstAired," +
" serie.cast seriesCast," +
" serie.crew seriesCrew," +
" serie.genre seriesGenre," +
" serie.imdbid seriesIMDBID," +
" serie.freebasemid seriesFreebaseMID," +
" serie.freebaseid seriesFreebaseID," +
" serie.tvdbid seriesTVDBID," +
" serie.tvrageid seriesTVRageID," +
" serie.status seriesStatus," +
" serie.download seriesDownload," +
" serie.localPath seriesLocalPath," +
" serie.posterPath seriesPoster," +
" serie.backdropPath seriesBackdrop," +
" serie.overview seriesOverview," +
" serie.resolution seriesResolution," +
" serie.cliffhanger seriesCliffhanger," +
" season.seasonNumber seasonNumber," +
" episode.episodeNumber episodeNumber," +
" episode.state episodeState," +
@@ -115,7 +138,7 @@ public class serieListForwardComposer extends GenericForwardComposer
);
// fetch all events from database
serie serie = new serie();
serieData serie = new serieData();
int oldID = -1;
int stateInit = 0;
int stateProg = 0;
@@ -143,19 +166,42 @@ public class serieListForwardComposer extends GenericForwardComposer
}
oldID = rs.getInt("seriesID");
serie = new serie();
serie = new serieData();
serie.setSeriesID(rs.getInt("seriesID"));
serie.setSeriesName(rs.getString("seriesName"));
serie.setSeriesFirstAired(rs.getInt("seriesFirstAired"));
serie.setSeriesResolution(rs.getString("seriesResolution"));
serie.setSeriesCliffhanger(rs.getBoolean("seriesCliffhanger"));
serie.setSeriesOriginalName(rs.getString("seriesOriginalName"));
serie.setSeriesBackdrop(rs.getString("seriesBackdrop"));
serie.setSeriesCreatedBy(rs.getString("seriesCreatedBy"));
serie.setSeriesHomepage(rs.getString("seriesHomepage"));
serie.setSeriesLastAired(rs.getDate("seriesLastAired"));
serie.setSeriesLanguages(rs.getString("seriesLanguages"));
serie.setSeriesNetworks(rs.getString("seriesNetworks"));
serie.setSeriesNrEpisodes(rs.getInt("seriesNrEpisodes"));
serie.setSeriesNrSeasons(rs.getInt("seriesNrSeasons"));
serie.setSeriesOriginCountries(rs.getString("seriesOriginCountries"));
serie.setSeriesOriginalLanguage(rs.getString("seriesOriginalLanguage"));
serie.setSeriesPopularity(rs.getInt("seriesPopularity"));
serie.setSeriesPoster(rs.getString("seriesPoster"));
serie.setSeriesProductionCompanies(rs.getString("seriesProductionCompanies"));
serie.setSeriesType(rs.getString("seriesType"));
serie.setSeriesVoteAverage(rs.getDouble("seriesVoteAverage"));
serie.setSeriesVoteCount(rs.getInt("seriesVoteCount"));
serie.setSeriesOverview(rs.getString("seriesOverview"));
serie.setSeriesFirstAired(rs.getDate("seriesFirstAired"));
serie.setSeriesCast(rs.getString("seriesCast"));
serie.setSeriesCrew(rs.getString("seriesCrew"));
serie.setSeriesGenre(rs.getString("seriesGenre"));
serie.setSeriesIMDBID(rs.getString("seriesIMDBID"));
serie.setSeriesFreebaseMID(rs.getString("seriesFreebaseMID"));
serie.setSeriesFreebaseID(rs.getString("seriesFreebaseID"));
serie.setSeriesTVDBID(rs.getString("seriesTVDBID"));
serie.setSeriesTVRageID(rs.getString("seriesTVRageID"));
serie.setSeriesStatus(rs.getString("seriesStatus"));
serie.setSeriesDownload(rs.getString("seriesDownload"));
serie.setSeriesLocalPath(rs.getString("seriesLocalPath"));
serie.setSeriesPoster(rs.getString("seriesPoster"));
serie.setSeriesBackdrop(rs.getString("seriesBackdrop"));
serie.setSeriesOverview(rs.getString("seriesOverview"));
serie.setSeriesResolution(rs.getString("seriesResolution"));
serie.setSeriesCliffhanger(rs.getBoolean("seriesCliffhanger"));
serie.setMinSeason(rs.getInt("minSeason"));
serie.setMaxSeason(rs.getInt("maxSeason"));
}
@@ -25,14 +25,13 @@ public class serieListSelectorComposer extends SelectorComposer<Component>
if(item == null)
return;
serie s = (serie) item.getValue();
serieData s = (serieData) item.getValue();
Map<String, Object> arguments = new HashMap<String, Object>();
arguments.put("serie", s);
String template = "/serie/detailsSerie.zul";
// String template = "/testing/test.zul";
Window window = (Window) Executions.createComponents(template, null, arguments);
window.doModal();
@@ -18,7 +18,7 @@ public class serieRenderer implements ListitemRenderer
@Override
public void render(Listitem item, Object o, int i) throws Exception
{
final serie data = (serie) o;
final serieData data = (serieData) o;
Listcell seriesNameCell = new Listcell(data.getSeriesName());
Listcell seriesFirstAiredCell = new Listcell(String.valueOf(data.getSeriesFirstAired()));
+1
View File
@@ -54,6 +54,7 @@
pack="center">
<button id="saveButton" label="Save"/>
<button id="cancelButton" label="Cancel"/>
<button id="updateButton" label="Update"/>
<button id="deleteButton" label="Delete"/>
</hbox>
</window>
@@ -1,2 +1,4 @@
at\windesign\application\serie\serieDetailsSelectorComposer.class
at\windesign\application\serie\serieDetailsForwardComposer.class
at\windesign\application\serie\serieDetailsSelectorComposer$1.class
at\windesign\application\main\indexForwardComposer.class
@@ -1,7 +1,7 @@
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieDataSource.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieData.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\testing\testForwardComposer.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieDetailsSelectorComposer.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serie.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieListSelectorComposer.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieListForwardComposer.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieDetailsForwardComposer.java