diff --git a/.idea/compiler.xml b/.idea/compiler.xml
new file mode 100644
index 0000000..f7f7329
--- /dev/null
+++ b/.idea/compiler.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/dbnavigator.xml b/.idea/dbnavigator.xml
new file mode 100644
index 0000000..17f7bea
--- /dev/null
+++ b/.idea/dbnavigator.xml
@@ -0,0 +1,461 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
new file mode 100644
index 0000000..8e7ceb1
--- /dev/null
+++ b/.idea/jarRepositories.xml
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_annotations_2_10_0.xml b/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_annotations_2_10_0.xml
new file mode 100644
index 0000000..c708510
--- /dev/null
+++ b/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_annotations_2_10_0.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_core_2_10_0.xml b/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_core_2_10_0.xml
new file mode 100644
index 0000000..ba1879a
--- /dev/null
+++ b/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_core_2_10_0.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_databind_2_10_0.xml b/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_databind_2_10_0.xml
new file mode 100644
index 0000000..1296654
--- /dev/null
+++ b/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_databind_2_10_0.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__com_google_protobuf_protobuf_java_3_6_1.xml b/.idea/libraries/Maven__com_google_protobuf_protobuf_java_3_6_1.xml
new file mode 100644
index 0000000..233670d
--- /dev/null
+++ b/.idea/libraries/Maven__com_google_protobuf_protobuf_java_3_6_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__com_omertron_themoviedbapi_4_4.xml b/.idea/libraries/Maven__com_omertron_themoviedbapi_4_4.xml
new file mode 100644
index 0000000..c7771fe
--- /dev/null
+++ b/.idea/libraries/Maven__com_omertron_themoviedbapi_4_4.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__commons_codec_commons_codec_1_14.xml b/.idea/libraries/Maven__commons_codec_commons_codec_1_14.xml
new file mode 100644
index 0000000..50b8f2b
--- /dev/null
+++ b/.idea/libraries/Maven__commons_codec_commons_codec_1_14.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__commons_fileupload_commons_fileupload_1_4.xml b/.idea/libraries/Maven__commons_fileupload_commons_fileupload_1_4.xml
new file mode 100644
index 0000000..3b9dcc0
--- /dev/null
+++ b/.idea/libraries/Maven__commons_fileupload_commons_fileupload_1_4.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__commons_io_commons_io_2_6.xml b/.idea/libraries/Maven__commons_io_commons_io_2_6.xml
new file mode 100644
index 0000000..d722698
--- /dev/null
+++ b/.idea/libraries/Maven__commons_io_commons_io_2_6.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__commons_logging_commons_logging_1_2.xml b/.idea/libraries/Maven__commons_logging_commons_logging_1_2.xml
new file mode 100644
index 0000000..eab40b3
--- /dev/null
+++ b/.idea/libraries/Maven__commons_logging_commons_logging_1_2.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__javax_servlet_javax_servlet_api_3_1_0.xml b/.idea/libraries/Maven__javax_servlet_javax_servlet_api_3_1_0.xml
new file mode 100644
index 0000000..c24f7e3
--- /dev/null
+++ b/.idea/libraries/Maven__javax_servlet_javax_servlet_api_3_1_0.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__mysql_mysql_connector_java_8_0_17.xml b/.idea/libraries/Maven__mysql_mysql_connector_java_8_0_17.xml
new file mode 100644
index 0000000..a84c3cf
--- /dev/null
+++ b/.idea/libraries/Maven__mysql_mysql_connector_java_8_0_17.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_apache_commons_commons_lang3_3_7.xml b/.idea/libraries/Maven__org_apache_commons_commons_lang3_3_7.xml
new file mode 100644
index 0000000..28edf49
--- /dev/null
+++ b/.idea/libraries/Maven__org_apache_commons_commons_lang3_3_7.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_apache_extras_beanshell_bsh_2_0b6.xml b/.idea/libraries/Maven__org_apache_extras_beanshell_bsh_2_0b6.xml
new file mode 100644
index 0000000..3b84834
--- /dev/null
+++ b/.idea/libraries/Maven__org_apache_extras_beanshell_bsh_2_0b6.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_apache_httpcomponents_httpclient_4_5_3.xml b/.idea/libraries/Maven__org_apache_httpcomponents_httpclient_4_5_3.xml
new file mode 100644
index 0000000..c82bb7c
--- /dev/null
+++ b/.idea/libraries/Maven__org_apache_httpcomponents_httpclient_4_5_3.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_apache_httpcomponents_httpcore_4_4_6.xml b/.idea/libraries/Maven__org_apache_httpcomponents_httpcore_4_4_6.xml
new file mode 100644
index 0000000..a9f6e19
--- /dev/null
+++ b/.idea/libraries/Maven__org_apache_httpcomponents_httpcore_4_4_6.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_ini4j_ini4j_0_5_4.xml b/.idea/libraries/Maven__org_ini4j_ini4j_0_5_4.xml
new file mode 100644
index 0000000..9e114a8
--- /dev/null
+++ b/.idea/libraries/Maven__org_ini4j_ini4j_0_5_4.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_javassist_javassist_3_18_2_GA.xml b/.idea/libraries/Maven__org_javassist_javassist_3_18_2_GA.xml
new file mode 100644
index 0000000..f1307ae
--- /dev/null
+++ b/.idea/libraries/Maven__org_javassist_javassist_3_18_2_GA.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml b/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml
new file mode 100644
index 0000000..20e8163
--- /dev/null
+++ b/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_yamj_api_common_2_1.xml b/.idea/libraries/Maven__org_yamj_api_common_2_1.xml
new file mode 100644
index 0000000..71c3f20
--- /dev/null
+++ b/.idea/libraries/Maven__org_yamj_api_common_2_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_common_zcommon_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_common_zcommon_9_5_0_1.xml
new file mode 100644
index 0000000..6117b37
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_common_zcommon_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_common_zel_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_common_zel_9_5_0_1.xml
new file mode 100644
index 0000000..235c435
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_common_zel_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_common_zweb_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_common_zweb_9_5_0_1.xml
new file mode 100644
index 0000000..ad78d0a
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_common_zweb_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_theme_atlantic_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_theme_atlantic_9_5_0_1.xml
new file mode 100644
index 0000000..44761b9
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_theme_atlantic_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_theme_breeze_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_theme_breeze_9_5_0_1.xml
new file mode 100644
index 0000000..b8a3a2e
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_theme_breeze_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_theme_sapphire_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_theme_sapphire_9_5_0_1.xml
new file mode 100644
index 0000000..994bf2f
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_theme_sapphire_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_theme_silvertail_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_theme_silvertail_9_5_0_1.xml
new file mode 100644
index 0000000..92ec7bd
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_theme_silvertail_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_zk_zhtml_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_zk_zhtml_9_5_0_1.xml
new file mode 100644
index 0000000..8f0ee9b
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_zk_zhtml_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_zk_zk_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_zk_zk_9_5_0_1.xml
new file mode 100644
index 0000000..d9a87c1
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_zk_zk_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_zk_zkbind_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_zk_zkbind_9_5_0_1.xml
new file mode 100644
index 0000000..ea4dbe4
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_zk_zkbind_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_zk_zkplus_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_zk_zkplus_9_5_0_1.xml
new file mode 100644
index 0000000..1905385
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_zk_zkplus_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_zk_zkwebfragment_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_zk_zkwebfragment_9_5_0_1.xml
new file mode 100644
index 0000000..363b70f
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_zk_zkwebfragment_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_zk_zul_9_5_0_1.xml b/.idea/libraries/Maven__org_zkoss_zk_zul_9_5_0_1.xml
new file mode 100644
index 0000000..fa74058
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_zk_zul_9_5_0_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_zkoss_zsoup_1_8_2_5.xml b/.idea/libraries/Maven__org_zkoss_zsoup_1_8_2_5.xml
new file mode 100644
index 0000000..846eccc
--- /dev/null
+++ b/.idea/libraries/Maven__org_zkoss_zsoup_1_8_2_5.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..972ec8d
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..1f5129b
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..35eb1dd
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/multimedia.iml b/multimedia.iml
index 1e07365..2a74695 100644
--- a/multimedia.iml
+++ b/multimedia.iml
@@ -41,5 +41,6 @@
+
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 39ee75f..c7391df 100644
--- a/pom.xml
+++ b/pom.xml
@@ -144,6 +144,13 @@
silvertail
${zk.version}
+
+
+ org.ini4j
+ ini4j
+ 0.5.4
+
${project.artifactId}
diff --git a/src/main/java/at/windesign/application/main/indexForwardComposer.java b/src/main/java/at/windesign/application/main/indexForwardComposer.java
index c2cb786..c90023d 100644
--- a/src/main/java/at/windesign/application/main/indexForwardComposer.java
+++ b/src/main/java/at/windesign/application/main/indexForwardComposer.java
@@ -1,18 +1,21 @@
package at.windesign.application.main;
+import jdk.internal.event.Event;
import org.zkoss.lang.Library;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions;
+import org.zkoss.zk.ui.event.ForwardEvent;
import org.zkoss.zk.ui.select.annotation.Wire;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zul.*;
+import org.ini4j.Ini;
import java.io.*;
import java.net.URL;
public class indexForwardComposer extends GenericForwardComposer
{
- private static final long serialVersionUID = 1L;
+ private static final long serialVersionUID = 1L;
@Wire
private Window mainWindow;
@@ -31,23 +34,34 @@ public class indexForwardComposer extends GenericForwardComposer
{
super.doAfterCompose(comp);
- String redir = "";
+ int tabIndex = 0;
- try
+ File iniFile = new File(System.getProperty("java.io.tmpdir") + "/multimedia.ini");
+ if(iniFile.exists())
{
- File file = new File(System.getProperty("java.io.tmpdir") + "/redir");
- BufferedReader reader = new BufferedReader(new FileReader(file));
- redir = reader.readLine();
- reader.close();
- file.delete();
+ Ini ini = new Ini(iniFile);
+ tabIndex = Integer.parseInt(ini.get("main", "currentTab"));
}
- catch (Exception e)
+
+ tabbox.setSelectedIndex(tabIndex);
+ }
+
+ public void onSelect$tabbox(ForwardEvent fe)
+ {
+ int index = tabbox.getSelectedIndex();
+ Ini ini = null;
+ try
{
+ File iniFile = new File(System.getProperty("java.io.tmpdir") + "/multimedia.ini");
+ if(!iniFile.exists())
+ iniFile.createNewFile();
+ ini = new Ini(iniFile);
+ ini.put("main", "currentTab", index);
+ ini.store();
}
-
- if(redir.compareToIgnoreCase("movie") == 0)
+ catch(IOException e)
{
- tabbox.setSelectedIndex(1);
+ e.printStackTrace();
}
}
}
diff --git a/src/main/java/at/windesign/application/movie/movieDataSource.java b/src/main/java/at/windesign/application/movie/movieDataSource.java
index 1ead30b..06194b3 100644
--- a/src/main/java/at/windesign/application/movie/movieDataSource.java
+++ b/src/main/java/at/windesign/application/movie/movieDataSource.java
@@ -1,5 +1,7 @@
package at.windesign.application.movie;
+import org.zkoss.zul.Messagebox;
+
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
@@ -24,12 +26,12 @@ public enum movieDataSource
catch(ClassNotFoundException e)
{
e.printStackTrace();
+ Messagebox.show(e.getMessage());
}
}
private movieDataSource()
{
- // drop the table if it exists
try
{
Statement stmt = this.getStatement();
@@ -38,6 +40,7 @@ public enum movieDataSource
catch(SQLException e)
{
e.printStackTrace();
+ Messagebox.show(e.getMessage());
}
finally
{
@@ -74,6 +77,7 @@ public enum movieDataSource
catch(SQLException e)
{
e.printStackTrace();
+ Messagebox.show(e.getMessage());
}
}
}
diff --git a/src/main/java/at/windesign/application/movie/movieDetailsForwardComposer.java b/src/main/java/at/windesign/application/movie/movieDetailsForwardComposer.java
index 6f794fc..b1f7c9f 100644
--- a/src/main/java/at/windesign/application/movie/movieDetailsForwardComposer.java
+++ b/src/main/java/at/windesign/application/movie/movieDetailsForwardComposer.java
@@ -17,7 +17,7 @@ public class movieDetailsForwardComposer extends GenericForwardComposer
}
@Listen("onClick = #saveButton")
- public void save() throws FileNotFoundException
+ public void save()
{
ListModelList resultListModel = (ListModelList) resultList.getModel();
List dataList = resultListModel.getInnerList();
@@ -119,11 +117,6 @@ public class movieDiscoverSelectorComposer extends SelectorComposer
}
}
}
- OutputStream tempFile = new FileOutputStream(System.getProperty("java.io.tmpdir") + "/redir");
- PrintStream printStream = new PrintStream(tempFile);
- printStream.print("movie");
- printStream.close();
-
Executions.sendRedirect("");
}
discoverMovie.onClose();
diff --git a/src/main/java/at/windesign/application/movie/movieListForwardComposer.java b/src/main/java/at/windesign/application/movie/movieListForwardComposer.java
index bab7db5..a70e717 100644
--- a/src/main/java/at/windesign/application/movie/movieListForwardComposer.java
+++ b/src/main/java/at/windesign/application/movie/movieListForwardComposer.java
@@ -2,18 +2,33 @@ package at.windesign.application.movie;
import at.windesign.application.serie.serieDataSource;
import at.windesign.application.serie.serieUtils;
+import org.ini4j.Ini;
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.Listbox;
-import org.zkoss.zul.Tab;
-import org.zkoss.zul.Tabbox;
-import org.zkoss.zul.Window;
+import org.zkoss.zul.*;
+
+import java.io.File;
public class movieListForwardComposer extends GenericForwardComposer
{
protected Listbox movieList; // autowired
+ @Wire
+ protected Checkbox useFilterMovie;
+
+ @Wire
+ protected Checkbox filterInitializedMovie;
+
+ @Wire
+ protected Checkbox filterInProgressMovie;
+
+ @Wire
+ protected Checkbox filterDoneMovie;
+
+ @Wire
+ protected Checkbox applyFilterMovie;
+
@Wire
private Tab tabMovies;
@@ -22,8 +37,33 @@ public class movieListForwardComposer extends GenericForwardComposer
{
super.doAfterCompose(comp);
+ boolean bUseFilter = false;
+ boolean bFilterInitialize = false;
+ boolean bFilterInProgress = false;
+ boolean bFilterDone = false;
+
+ File iniFile = new File(System.getProperty("java.io.tmpdir") + "/multimedia.ini");
+ if(iniFile.exists())
+ {
+ Ini ini = new Ini(iniFile);
+
+ bUseFilter = Boolean.parseBoolean(ini.get("filter", "useFilterMovie"));
+ bFilterInitialize = Boolean.parseBoolean(ini.get("filter", "filterInitializedMovie"));
+ bFilterInProgress = Boolean.parseBoolean(ini.get("filter", "filterInProgressMovie"));
+ bFilterDone = Boolean.parseBoolean(ini.get("filter", "filterDoneMovie"));
+
+ useFilterMovie.setChecked(bUseFilter);
+ filterInitializedMovie.setChecked(bFilterInitialize);
+ filterInProgressMovie.setChecked(bFilterInProgress);
+ filterDoneMovie.setChecked(bFilterDone);
+
+ filterInitializedMovie.setDisabled(!bUseFilter);
+ filterInProgressMovie.setDisabled(!bUseFilter);
+ filterDoneMovie.setDisabled(!bUseFilter);
+ }
+
movieDataSource ds = movieDataSource.INSTANCE;
- movieUtils.loadMovies(ds, movieList);
+ movieUtils.loadMovies(ds, movieList, bUseFilter, bFilterInitialize, bFilterInProgress, bFilterDone);
ds = movieDataSource.INSTANCE;
movieUtils.movieMetrics(tabMovies, ds);
diff --git a/src/main/java/at/windesign/application/movie/movieListSelectorComposer.java b/src/main/java/at/windesign/application/movie/movieListSelectorComposer.java
index 7fd9bf3..eabdd47 100644
--- a/src/main/java/at/windesign/application/movie/movieListSelectorComposer.java
+++ b/src/main/java/at/windesign/application/movie/movieListSelectorComposer.java
@@ -1,5 +1,6 @@
package at.windesign.application.movie;
+import org.ini4j.Ini;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.Path;
@@ -12,6 +13,8 @@ import org.zkoss.zk.ui.util.Clients;
import org.zkoss.zul.*;
import org.zkoss.zul.impl.LabelElement;
+import java.io.File;
+import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
@@ -20,6 +23,18 @@ public class movieListSelectorComposer extends SelectorComposer
@Wire
private Listbox movieList;
+ @Wire
+ private Checkbox useFilterMovie;
+
+ @Wire
+ private Checkbox filterInitializedMovie;
+
+ @Wire
+ private Checkbox filterInProgressMovie;
+
+ @Wire
+ private Checkbox filterDoneMovie;
+
@Listen("onDoubleClick = #movieList")
public void onClickMovieList()
{
@@ -176,4 +191,47 @@ public class movieListSelectorComposer extends SelectorComposer
}
);
}
+
+ @Listen("onClick = #useFilterMovie")
+ public void onUseFilter()
+ {
+ if(useFilterMovie.isChecked())
+ {
+ filterInitializedMovie.setDisabled(false);
+ filterInProgressMovie.setDisabled(false);
+ filterDoneMovie.setDisabled(false);
+ }
+ else
+ {
+ filterInitializedMovie.setDisabled(true);
+ filterInProgressMovie.setDisabled(true);
+ filterDoneMovie.setDisabled(true);
+ }
+ }
+
+ @Listen("onClick = #applyFilterMovie")
+ public void onApplyFilter()
+ {
+ Ini ini = null;
+ try
+ {
+ File iniFile = new File(System.getProperty("java.io.tmpdir") + "/multimedia.ini");
+ if(!iniFile.exists())
+ iniFile.createNewFile();
+ ini = new Ini(iniFile);
+ ini.put("main", "currentTab", 1);
+ ini.put("filter", "useFilterMovie", useFilterMovie.isChecked());
+ ini.put("filter", "filterInitializedMovie", filterInitializedMovie.isChecked());
+ ini.put("filter", "filterInProgressMovie", filterInProgressMovie.isChecked());
+ ini.put("filter", "filterDoneMovie", filterDoneMovie.isChecked());
+
+ ini.store();
+
+ Executions.sendRedirect("");
+ }
+ catch(IOException e)
+ {
+ e.printStackTrace();
+ }
+ }
}
diff --git a/src/main/java/at/windesign/application/movie/movieSearchSelectorComposer.java b/src/main/java/at/windesign/application/movie/movieSearchSelectorComposer.java
index 573a041..9c900f7 100644
--- a/src/main/java/at/windesign/application/movie/movieSearchSelectorComposer.java
+++ b/src/main/java/at/windesign/application/movie/movieSearchSelectorComposer.java
@@ -7,6 +7,7 @@ import com.omertron.themoviedbapi.model.movie.MovieInfo;
import com.omertron.themoviedbapi.results.ResultList;
import com.omertron.themoviedbapi.tools.HttpTools;
import org.apache.http.client.HttpClient;
+import org.ini4j.Ini;
import org.yamj.api.common.http.SimpleHttpClientBuilder;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Execution;
@@ -18,10 +19,7 @@ import org.zkoss.zk.ui.select.annotation.Listen;
import org.zkoss.zk.ui.select.annotation.Wire;
import org.zkoss.zul.*;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.OutputStream;
-import java.io.PrintStream;
+import java.io.*;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
@@ -72,7 +70,7 @@ public class movieSearchSelectorComposer extends SelectorComposer
}
@Listen("onClick = #saveButton")
- public void save() throws FileNotFoundException
+ public void save()
{
ListModelList resultListModel = (ListModelList) resultList.getModel();
List dataList = resultListModel.getInnerList();
@@ -108,10 +106,21 @@ public class movieSearchSelectorComposer extends SelectorComposer
}
}
}
- OutputStream tempFile = new FileOutputStream(System.getProperty("java.io.tmpdir") + "/redir");
- PrintStream printStream = new PrintStream(tempFile);
- printStream.print("movie");
- printStream.close();
+
+ Ini ini = null;
+ try
+ {
+ File iniFile = new File(System.getProperty("java.io.tmpdir") + "/multimedia.ini");
+ if(!iniFile.exists())
+ iniFile.createNewFile();
+ ini = new Ini(iniFile);
+ ini.put("main", "currentTab", "1");
+ ini.store();
+ }
+ catch(IOException e)
+ {
+ e.printStackTrace();
+ }
Executions.sendRedirect("");
}
diff --git a/src/main/java/at/windesign/application/movie/movieUpdateSelectorComposer.java b/src/main/java/at/windesign/application/movie/movieUpdateSelectorComposer.java
index 5cddea6..1e299b1 100644
--- a/src/main/java/at/windesign/application/movie/movieUpdateSelectorComposer.java
+++ b/src/main/java/at/windesign/application/movie/movieUpdateSelectorComposer.java
@@ -1,6 +1,7 @@
package at.windesign.application.movie;
import com.omertron.themoviedbapi.MovieDbException;
+import org.ini4j.Ini;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Execution;
import org.zkoss.zk.ui.Executions;
@@ -195,12 +196,6 @@ public class movieUpdateSelectorComposer extends SelectorComposer
{
movieProgressLabel.setValue("Finish!");
updateMovie.detach();
-
- OutputStream tempFile = new FileOutputStream(System.getProperty("java.io.tmpdir") + "/redir");
- PrintStream printStream = new PrintStream(tempFile);
- printStream.print("movie");
- printStream.close();
-
Executions.sendRedirect("");
}
}
diff --git a/src/main/java/at/windesign/application/movie/movieUtils.java b/src/main/java/at/windesign/application/movie/movieUtils.java
index 40cfc73..8a1800d 100644
--- a/src/main/java/at/windesign/application/movie/movieUtils.java
+++ b/src/main/java/at/windesign/application/movie/movieUtils.java
@@ -12,7 +12,7 @@ import java.util.TreeMap;
public class movieUtils
{
- static public void loadMovies(movieDataSource ds, Listbox moviesList)
+ static public void loadMovies(movieDataSource ds, Listbox moviesList, boolean useFilter, boolean filterInitialize, boolean filterInProgress, boolean filterDone)
{
List movieList = new ArrayList<>();
SortedMap listHeader = new TreeMap<>();
@@ -134,8 +134,34 @@ public class movieUtils
for(movieData movie : movieList)
{
- movieListModel.add(movie);
- movie.setModel(movieListModel);
+ boolean insert = false;
+
+ if(useFilter)
+ {
+ if(filterInitialize)
+ {
+ if(movie.getState() == 1)
+ insert = true;
+ }
+ if(filterInProgress)
+ {
+ if(movie.getState() == 2)
+ insert = true;
+ }
+ if(filterDone)
+ {
+ if(movie.getState() == 3)
+ insert = true;
+ }
+ }
+ else
+ insert = true;
+
+ if(insert)
+ {
+ movieListModel.add(movie);
+ movie.setModel(movieListModel);
+ }
}
}
diff --git a/src/main/java/at/windesign/application/serie/serieDataSource.java b/src/main/java/at/windesign/application/serie/serieDataSource.java
index a7848a4..55e1438 100644
--- a/src/main/java/at/windesign/application/serie/serieDataSource.java
+++ b/src/main/java/at/windesign/application/serie/serieDataSource.java
@@ -1,5 +1,7 @@
package at.windesign.application.serie;
+import org.zkoss.zul.Messagebox;
+
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
@@ -24,12 +26,12 @@ public enum serieDataSource
catch(ClassNotFoundException e)
{
e.printStackTrace();
+ Messagebox.show(e.getMessage());
}
}
private serieDataSource()
{
- // drop the table if it exists
try
{
Statement stmt = this.getStatement();
@@ -38,6 +40,7 @@ public enum serieDataSource
catch(SQLException e)
{
e.printStackTrace();
+ Messagebox.show(e.getMessage());
}
finally
{
@@ -74,6 +77,7 @@ public enum serieDataSource
catch(SQLException e)
{
e.printStackTrace();
+ Messagebox.show(e.getMessage());
}
}
}
diff --git a/src/main/java/at/windesign/application/serie/serieDetailsForwardComposer.java b/src/main/java/at/windesign/application/serie/serieDetailsForwardComposer.java
index 6cbc93c..28e23df 100644
--- a/src/main/java/at/windesign/application/serie/serieDetailsForwardComposer.java
+++ b/src/main/java/at/windesign/application/serie/serieDetailsForwardComposer.java
@@ -283,7 +283,7 @@ public class serieDetailsForwardComposer extends GenericForwardComposer
}
}
}
- OutputStream tempFile = new FileOutputStream(System.getProperty("java.io.tmpdir") + "/redir");
- PrintStream printStream = new PrintStream(tempFile);
- printStream.print("serie");
- printStream.close();
-
Executions.sendRedirect("");
}
discoverSerie.onClose();
diff --git a/src/main/java/at/windesign/application/serie/serieListForwardComposer.java b/src/main/java/at/windesign/application/serie/serieListForwardComposer.java
index f3dc49e..2f1d23b 100644
--- a/src/main/java/at/windesign/application/serie/serieListForwardComposer.java
+++ b/src/main/java/at/windesign/application/serie/serieListForwardComposer.java
@@ -3,11 +3,14 @@ package at.windesign.application.serie;
import at.windesign.application.movie.movieDataSource;
import at.windesign.application.movie.movieUtils;
+import org.ini4j.Ini;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Path;
+import org.zkoss.zk.ui.select.annotation.Wire;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zul.*;
+import java.io.File;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
@@ -15,19 +18,59 @@ import java.util.*;
public class serieListForwardComposer extends GenericForwardComposer
{
- protected Listbox seriesList; // autowired
+ protected Listbox seriesList; // autowired
+
+ @Wire
+ protected Checkbox useFilter;
+
+ @Wire
+ protected Checkbox filterInitialized;
+
+ @Wire
+ protected Checkbox filterInProgress;
+
+ @Wire
+ protected Checkbox filterDone;
+
+ @Wire
+ protected Checkbox applyFilter;
@Override
public void doAfterCompose(Component comp) throws Exception
{
super.doAfterCompose(comp);
+ boolean bUseFilter = false;
+ boolean bFilterInitialize = false;
+ boolean bFilterInProgress = false;
+ boolean bFilterDone = false;
+
+ File iniFile = new File(System.getProperty("java.io.tmpdir") + "/multimedia.ini");
+ if(iniFile.exists())
+ {
+ Ini ini = new Ini(iniFile);
+
+ bUseFilter = Boolean.parseBoolean(ini.get("filter", "useFilter"));
+ bFilterInitialize = Boolean.parseBoolean(ini.get("filter", "filterInitialized"));
+ bFilterInProgress = Boolean.parseBoolean(ini.get("filter", "filterInProgress"));
+ bFilterDone = Boolean.parseBoolean(ini.get("filter", "filterDone"));
+
+ useFilter.setChecked(bUseFilter);
+ filterInitialized.setChecked(bFilterInitialize);
+ filterInProgress.setChecked(bFilterInProgress);
+ filterDone.setChecked(bFilterDone);
+
+ filterInitialized.setDisabled(!bUseFilter);
+ filterInProgress.setDisabled(!bUseFilter);
+ filterDone.setDisabled(!bUseFilter);
+ }
+
serieDataSource ds = serieDataSource.INSTANCE;
- serieUtils.loadSeries(ds, seriesList);
+ serieUtils.loadSeries(ds, seriesList, bUseFilter, bFilterInitialize, bFilterInProgress, bFilterDone);
- Window mainWindow = (Window) Path.getComponent("/mainWindow");
- Tab tabSeries = (Tab)mainWindow.getFellow("tabSeries");
- ds = serieDataSource.INSTANCE;
+ Window mainWindow = (Window) Path.getComponent("/mainWindow");
+ Tab tabSeries = (Tab) mainWindow.getFellow("tabSeries");
+ ds = serieDataSource.INSTANCE;
serieUtils.serieMetrics(tabSeries, ds);
}
}
diff --git a/src/main/java/at/windesign/application/serie/serieListSelectorComposer.java b/src/main/java/at/windesign/application/serie/serieListSelectorComposer.java
index 98f7955..f0a3d82 100644
--- a/src/main/java/at/windesign/application/serie/serieListSelectorComposer.java
+++ b/src/main/java/at/windesign/application/serie/serieListSelectorComposer.java
@@ -1,5 +1,6 @@
package at.windesign.application.serie;
+import org.ini4j.Ini;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.Path;
@@ -11,6 +12,8 @@ import org.zkoss.zk.ui.select.annotation.Wire;
import org.zkoss.zul.*;
import org.zkoss.zul.impl.LabelElement;
+import java.io.File;
+import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.SortedMap;
@@ -20,6 +23,18 @@ public class serieListSelectorComposer extends SelectorComposer
@Wire
private Listbox seriesList;
+ @Wire
+ private Checkbox useFilter;
+
+ @Wire
+ private Checkbox filterInitialized;
+
+ @Wire
+ private Checkbox filterInProgress;
+
+ @Wire
+ private Checkbox filterDone;
+
@Listen("onDoubleClick = #seriesList")
public void onClickSeriesList()
{
@@ -103,6 +118,8 @@ public class serieListSelectorComposer extends SelectorComposer
updateSerie();
else if(label.compareToIgnoreCase("delete") == 0)
deleteSerie();
+ else if(label.compareToIgnoreCase("open download link...") == 0)
+ openDownloadLinkSerie();
}
public void setAllProgressToDone()
@@ -135,6 +152,25 @@ public class serieListSelectorComposer extends SelectorComposer
model.add(index, s);
}
+ public void openDownloadLinkSerie()
+ {
+ Listitem item = seriesList.getSelectedItem();
+
+ if(item == null)
+ return;
+
+ serieData s = (serieData) item.getValue();
+ String downloadLink = s.getSeriesDownload();
+
+ if(downloadLink == null)
+ downloadLink = "";
+
+// if(downloadLink.length() == 0)
+// return;
+
+ Executions.getCurrent().sendRedirect(downloadLink,"_blank");
+ }
+
public void updateSerie()
{
Listitem item = seriesList.getSelectedItem();
@@ -157,8 +193,7 @@ public class serieListSelectorComposer extends SelectorComposer
mNew.setModel(model);
model.remove(index);
model.add(index, mNew);
- }
- catch(Exception e)
+ } catch(Exception e)
{
}
}
@@ -173,28 +208,68 @@ public class serieListSelectorComposer extends SelectorComposer
serieData s = (serieData) item.getValue();
Messagebox.show("Are you sure to delete \"" + s.getSeriesName() + "\"?",
- "Question", Messagebox.OK | Messagebox.CANCEL,
- Messagebox.QUESTION,
- new org.zkoss.zk.ui.event.EventListener()
+ "Question", Messagebox.OK | Messagebox.CANCEL,
+ Messagebox.QUESTION,
+ new org.zkoss.zk.ui.event.EventListener()
+ {
+ public void onEvent(Event e)
+ {
+ if("onOK".equals(e.getName()))
{
- public void onEvent(Event e)
- {
- if("onOK".equals(e.getName()))
- {
- s.delete();
- seriesList.removeItemAt(item.getIndex());
-
- Window mainWindow = (Window) Path.getComponent("/mainWindow");
- Tab tabSeries = (Tab) mainWindow.getFellow("tabSeries");
- serieDataSource ds = serieDataSource.INSTANCE;
- serieUtils.serieMetrics(tabSeries, ds);
- }
- else if("onCancel".equals(e.getName()))
- {
- return;
- }
- }
+ s.delete();
+ seriesList.removeItemAt(item.getIndex());
+
+ Window mainWindow = (Window) Path.getComponent("/mainWindow");
+ Tab tabSeries = (Tab) mainWindow.getFellow("tabSeries");
+ serieDataSource ds = serieDataSource.INSTANCE;
+ serieUtils.serieMetrics(tabSeries, ds);
+ } else if("onCancel".equals(e.getName()))
+ {
+ return;
}
- );
+ }
+ }
+ );
+ }
+
+ @Listen("onClick = #useFilter")
+ public void onUseFilter()
+ {
+ if(useFilter.isChecked())
+ {
+ filterInitialized.setDisabled(false);
+ filterInProgress.setDisabled(false);
+ filterDone.setDisabled(false);
+ } else
+ {
+ filterInitialized.setDisabled(true);
+ filterInProgress.setDisabled(true);
+ filterDone.setDisabled(true);
+ }
+ }
+
+ @Listen("onClick = #applyFilter")
+ public void onApplyFilter()
+ {
+ Ini ini = null;
+ try
+ {
+ File iniFile = new File(System.getProperty("java.io.tmpdir") + "/multimedia.ini");
+ if(!iniFile.exists())
+ iniFile.createNewFile();
+ ini = new Ini(iniFile);
+ ini.put("main", "currentTab", 0);
+ ini.put("filter", "useFilter", useFilter.isChecked());
+ ini.put("filter", "filterInitialized", filterInitialized.isChecked());
+ ini.put("filter", "filterInProgress", filterInProgress.isChecked());
+ ini.put("filter", "filterDone", filterDone.isChecked());
+
+ ini.store();
+
+ Executions.sendRedirect("");
+ } catch(IOException e)
+ {
+ e.printStackTrace();
+ }
}
}
diff --git a/src/main/java/at/windesign/application/serie/serieSearchSelectorComposer.java b/src/main/java/at/windesign/application/serie/serieSearchSelectorComposer.java
index 2eb053f..a8c21fa 100644
--- a/src/main/java/at/windesign/application/serie/serieSearchSelectorComposer.java
+++ b/src/main/java/at/windesign/application/serie/serieSearchSelectorComposer.java
@@ -8,6 +8,7 @@ import com.omertron.themoviedbapi.model.movie.MovieInfo;
import com.omertron.themoviedbapi.model.tv.TVBasic;
import com.omertron.themoviedbapi.results.ResultList;
import org.apache.http.client.HttpClient;
+import org.ini4j.Ini;
import org.yamj.api.common.http.SimpleHttpClientBuilder;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Execution;
@@ -17,10 +18,7 @@ import org.zkoss.zk.ui.select.annotation.Listen;
import org.zkoss.zk.ui.select.annotation.Wire;
import org.zkoss.zul.*;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.OutputStream;
-import java.io.PrintStream;
+import java.io.*;
import java.sql.Date;
import java.util.List;
@@ -101,11 +99,6 @@ public class serieSearchSelectorComposer extends SelectorComposer
}
}
}
- OutputStream tempFile = new FileOutputStream(System.getProperty("java.io.tmpdir") + "/redir");
- PrintStream printStream = new PrintStream(tempFile);
- printStream.print("serie");
- printStream.close();
-
Executions.sendRedirect("");
}
searchSerie.onClose();
diff --git a/src/main/java/at/windesign/application/serie/serieUpdateSelectorComposer.java b/src/main/java/at/windesign/application/serie/serieUpdateSelectorComposer.java
index a08f97a..18db348 100644
--- a/src/main/java/at/windesign/application/serie/serieUpdateSelectorComposer.java
+++ b/src/main/java/at/windesign/application/serie/serieUpdateSelectorComposer.java
@@ -1,6 +1,7 @@
package at.windesign.application.serie;
import com.omertron.themoviedbapi.MovieDbException;
+import org.ini4j.Ini;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Execution;
import org.zkoss.zk.ui.Executions;
@@ -217,12 +218,6 @@ public class serieUpdateSelectorComposer extends SelectorComposer
{
serieProgressLabel.setValue("Finish!");
updateSerie.detach();
-
- OutputStream tempFile = new FileOutputStream(System.getProperty("java.io.tmpdir") + "/redir");
- PrintStream printStream = new PrintStream(tempFile);
- printStream.print("serie");
- printStream.close();
-
Executions.sendRedirect("");
}
}
diff --git a/src/main/java/at/windesign/application/serie/serieUtils.java b/src/main/java/at/windesign/application/serie/serieUtils.java
index 73454aa..d7c9b3d 100644
--- a/src/main/java/at/windesign/application/serie/serieUtils.java
+++ b/src/main/java/at/windesign/application/serie/serieUtils.java
@@ -1,6 +1,7 @@
package at.windesign.application.serie;
import at.windesign.application.movie.movieDataSource;
+import org.ini4j.Ini;
import org.zkoss.zul.*;
import java.io.PrintWriter;
@@ -17,7 +18,7 @@ public class serieUtils
static private Integer stateWidth = 4;
static private Integer stateHeight = 20;
- static public void loadSeries(serieDataSource ds, Listbox seriesList)
+ static public void loadSeries(serieDataSource ds, Listbox seriesList, boolean useFilter, boolean filterInitialize, boolean filterInProgress, boolean filterDone)
{
List serieList = new ArrayList<>();
int minSeason = 0;
@@ -30,9 +31,9 @@ public class serieUtils
Statement stmt = ds.getStatement();
ResultSet rs = stmt.executeQuery(
"SELECT MIN(seasonNumber) minSeason," +
- " MAX(seasonNumber) maxSeason" +
- " FROM season;"
- );
+ " MAX(seasonNumber) maxSeason" +
+ " FROM season;"
+ );
while(rs.next())
{
@@ -83,68 +84,121 @@ public class serieUtils
ResultSet rs = stmt.executeQuery(
"SELECT serie.seriesID seriesID," +
- " serie.seriesName seriesName," +
- " 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.resolution seriesResolution," +
- " serie.cliffhanger seriesCliffhanger," +
- " season._id season_ID," +
- " IF(IFNULL(season.airDate, '1900-01-01') = '','1900-01-01', IFNULL(season.airDate, '1900-01-01')) seasonAirDate," +
- " season.name seasonName," +
- " season.overview seasonOverview," +
- " season.id seasonID," +
- " season.posterPath seasonPosterPath," +
- " season.seasonNumber seasonNumber," +
- " episode.id episodeID," +
- " episode.name episodeName," +
- " episode.episodeNumber episodeNumber," +
- " IF(IFNULL(episode.airDate, '1900-01-01') = '','1900-01-01', IFNULL(episode.airDate, '1900-01-01')) episodeAirDate," +
- " episode.guestStars episodeGuestStars," +
- " episode.overview episodeOverview," +
- " episode.productioncode episodeProductionCode," +
- " episode.stillPath episodeStillPath," +
- " episode.voteAverage episodeVoteAverage," +
- " episode.voteCount episodeVoteCount," +
- " episode.crew episodeCrew," +
- " episode.state episodeState" +
- " 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 AND episode.episodeNumber IS NOT NULL) OR" +
- " serie.seriesID >= 1000000" +
- " ORDER BY serie.seriesName," +
- " serie.firstAired," +
- " season.seasonNumber," +
- " episode.episodeNumber;"
- );
+ " serie.seriesName seriesName," +
+//OPTIMIZE " serie.originalName seriesOriginalName," +
+ " serie.backdropPath seriesBackdrop," +
+//OPTIMIZE " serie.createdBy seriesCreatedBy," +
+//OPTIMIZE " serie.homepage seriesHomepage," +
+//OPTIMIZE " serie.lastAired seriesLastAired," +
+//OPTIMIZE " serie.languages seriesLanguages," +
+//OPTIMIZE " serie.networks seriesNetworks," +
+ " serie.nrEpisodes seriesNrEpisodes," +
+ " serie.nrSeasons seriesNrSeasons," +
+ " serie.originCountries seriesOriginCountries," +
+//OPTIMIZE " serie.originalLanguage seriesOriginalLanguage," +
+//OPTIMIZE " serie.popularity seriesPopularity," +
+//OPTIMIZE " serie.posterPath seriesPoster," +
+ " serie.productionCompanies seriesProductionCompanies," +
+//OPTIMIZE " serie.type seriesType," +
+//OPTIMIZE " serie.voteAverage seriesVoteAverage," +
+//OPTIMIZE " serie.voteCount seriesVoteCount," +
+ " serie.overview seriesOverview," +
+ " serie.firstAired seriesFirstAired," +
+ " serie.cast seriesCast," +
+ " serie.crew seriesCrew," +
+ " serie.genre seriesGenre," +
+//OPTIMIZE " serie.imdbid seriesIMDBID," +
+//OPTIMIZE " serie.freebasemid seriesFreebaseMID," +
+//OPTIMIZE " serie.freebaseid seriesFreebaseID," +
+//OPTIMIZE " serie.tvdbid seriesTVDBID," +
+//OPTIMIZE " serie.tvrageid seriesTVRageID," +
+ " serie.status seriesStatus," +
+ " serie.download seriesDownload," +
+ " serie.localPath seriesLocalPath," +
+ " serie.resolution seriesResolution," +
+ " serie.cliffhanger seriesCliffhanger," +
+//OPTIMIZE " season._id season_ID," +
+//OPTIMIZE " IF(IFNULL(season.airDate, '1900-01-01') = '','1900-01-01', IFNULL(season.airDate, '1900-01-01')) seasonAirDate," +
+//OPTIMIZE " season.name seasonName," +
+//OPTIMIZE " season.overview seasonOverview," +
+ " season.id seasonID," +
+//OPTIMIZE " season.posterPath seasonPosterPath," +
+ " season.seasonNumber seasonNumber," +
+ " episode.id episodeID," +
+//OPTIMIZE " episode.name episodeName," +
+ " episode.episodeNumber episodeNumber," +
+//OPTIMIZE " IF(IFNULL(episode.airDate, '1900-01-01') = '','1900-01-01', IFNULL(episode.airDate, '1900-01-01')) episodeAirDate," +
+//OPTIMIZE " episode.guestStars episodeGuestStars," +
+//OPTIMIZE " episode.overview episodeOverview," +
+//OPTIMIZE " episode.productioncode episodeProductionCode," +
+//OPTIMIZE " episode.stillPath episodeStillPath," +
+//OPTIMIZE " episode.voteAverage episodeVoteAverage," +
+//OPTIMIZE " episode.voteCount episodeVoteCount," +
+//OPTIMIZE " episode.crew episodeCrew," +
+ " episode.state episodeState" +
+ " FROM serie" +
+ " JOIN season ON (season.seasonNumber != 0 AND serie.seriesID = season.seriesID)" +
+ " JOIN episode ON (episode.episodeNumber IS NOT NULL AND episode.state IS NOT NULL AND serie.seriesID = episode.seriesID AND season.seasonNumber = episode.seasonNumber)" +
+ " WHERE serie.seriesID < 1000000" +
+ " UNION" +
+ " SELECT serie.seriesID seriesID," +
+ " serie.seriesName seriesName," +
+//OPTIMIZE " serie.originalName seriesOriginalName," +
+ " serie.backdropPath seriesBackdrop," +
+//OPTIMIZE " serie.createdBy seriesCreatedBy," +
+//OPTIMIZE " serie.homepage seriesHomepage," +
+//OPTIMIZE " serie.lastAired seriesLastAired," +
+//OPTIMIZE " serie.languages seriesLanguages," +
+//OPTIMIZE " serie.networks seriesNetworks," +
+ " serie.nrEpisodes seriesNrEpisodes," +
+ " serie.nrSeasons seriesNrSeasons," +
+ " serie.originCountries seriesOriginCountries," +
+//OPTIMIZE " serie.originalLanguage seriesOriginalLanguage," +
+//OPTIMIZE " serie.popularity seriesPopularity," +
+//OPTIMIZE " serie.posterPath seriesPoster," +
+ " serie.productionCompanies seriesProductionCompanies," +
+//OPTIMIZE " serie.type seriesType," +
+//OPTIMIZE " serie.voteAverage seriesVoteAverage," +
+//OPTIMIZE " serie.voteCount seriesVoteCount," +
+ " serie.overview seriesOverview," +
+ " serie.firstAired seriesFirstAired," +
+ " serie.cast seriesCast," +
+ " serie.crew seriesCrew," +
+ " serie.genre seriesGenre," +
+//OPTIMIZE " serie.imdbid seriesIMDBID," +
+//OPTIMIZE " serie.freebasemid seriesFreebaseMID," +
+//OPTIMIZE " serie.freebaseid seriesFreebaseID," +
+//OPTIMIZE " serie.tvdbid seriesTVDBID," +
+//OPTIMIZE " serie.tvrageid seriesTVRageID," +
+ " serie.status seriesStatus," +
+ " serie.download seriesDownload," +
+ " serie.localPath seriesLocalPath," +
+ " serie.resolution seriesResolution," +
+ " serie.cliffhanger seriesCliffhanger," +
+//OPTIMIZE " season._id season_ID," +
+//OPTIMIZE " IF(IFNULL(season.airDate, '1900-01-01') = '','1900-01-01', IFNULL(season.airDate, '1900-01-01')) seasonAirDate," +
+//OPTIMIZE " season.name seasonName," +
+//OPTIMIZE " season.overview seasonOverview," +
+ " 0 seasonID," +
+//OPTIMIZE " season.posterPath seasonPosterPath," +
+ " 0 seasonNumber," +
+ " 0 episodeID," +
+//OPTIMIZE " episode.name episodeName," +
+ " 0 episodeNumber," +
+//OPTIMIZE " IF(IFNULL(episode.airDate, '1900-01-01') = '','1900-01-01', IFNULL(episode.airDate, '1900-01-01')) episodeAirDate," +
+//OPTIMIZE " episode.guestStars episodeGuestStars," +
+//OPTIMIZE " episode.overview episodeOverview," +
+//OPTIMIZE " episode.productioncode episodeProductionCode," +
+//OPTIMIZE " episode.stillPath episodeStillPath," +
+//OPTIMIZE " episode.voteAverage episodeVoteAverage," +
+//OPTIMIZE " episode.voteCount episodeVoteCount," +
+//OPTIMIZE " episode.crew episodeCrew," +
+ " 0 episodeState" +
+ " FROM serie" +
+ " WHERE serie.seriesID >= 1000000" +
+ " ORDER BY seriesName," +
+ " seriesFirstAired;"
+ );
// fetch all events from database
serieData serie = new serieData();
@@ -165,14 +219,14 @@ public class serieUtils
if(serieID != oldSerieID)
{
oldSerieID = serieID;
- serie = newSerie(rs);
+ serie = newSerie(rs);
serieList.add(serie);
oldSeasonID = seasonID;
- season = newSeason(rs);
+ season = newSeason(rs);
oldEpisodeID = episodeID;
- episode = newEpisode(rs);
+ episode = newEpisode(rs);
switch(rs.getInt("episodeState"))
{
@@ -190,10 +244,10 @@ public class serieUtils
else if(seasonID != oldSeasonID)
{
oldSeasonID = seasonID;
- season = newSeason(rs);
+ season = newSeason(rs);
oldEpisodeID = episodeID;
- episode = newEpisode(rs);
+ episode = newEpisode(rs);
switch(rs.getInt("episodeState"))
{
@@ -211,7 +265,7 @@ public class serieUtils
else if(episodeID != oldEpisodeID)
{
oldEpisodeID = episodeID;
- episode = newEpisode(rs);
+ episode = newEpisode(rs);
switch(rs.getInt("episodeState"))
{
@@ -252,8 +306,34 @@ public class serieUtils
for(serieData serie : serieList)
{
- seriesListModel.add(serie);
- serie.setModel(seriesListModel);
+ boolean insert = false;
+
+ if(useFilter)
+ {
+ if(filterInitialize)
+ {
+ if(serie.getStateInit() > 0)
+ insert = true;
+ }
+ if(filterInProgress)
+ {
+ if(serie.getStateProg() > 0)
+ insert = true;
+ }
+ if(filterDone)
+ {
+ if(serie.getStateDone() > 0 && serie.getStateInit() == 0 && serie.getStateProg() == 0)
+ insert = true;
+ }
+ }
+ else
+ insert = true;
+
+ if(insert)
+ {
+ seriesListModel.add(serie);
+ serie.setModel(seriesListModel);
+ }
}
for(int i = minSeason; i <= maxSeason; i++)
@@ -269,16 +349,16 @@ public class serieUtils
episodeData episode = new episodeData();
episode.setEpisodeID(rs.getInt("episodeID"));
- episode.setEpisodeName(rs.getString("episodeName"));
+//OPTIMIZE episode.setEpisodeName(rs.getString("episodeName"));
episode.setEpisodeNumber(rs.getInt("episodeNumber"));
- episode.setEpisodeAirDate(rs.getDate("episodeAirDate"));
- episode.setEpisodeGuestStars(rs.getString("episodeGuestStars"));
- episode.setEpisodeOverview(rs.getString("episodeOverview"));
- episode.setEpisodeProductionCode(rs.getString("episodeProductionCode"));
- episode.setEpisodeStillPath(rs.getString("episodeStillPath"));
- episode.setEpisodeVoteAverage(rs.getDouble("episodeVoteAverage"));
- episode.setEpisodeVoteCount(rs.getInt("episodeVoteCount"));
- episode.setEpisodeCrew(rs.getString("episodeCrew"));
+//OPTIMIZE episode.setEpisodeAirDate(rs.getDate("episodeAirDate"));
+//OPTIMIZE episode.setEpisodeGuestStars(rs.getString("episodeGuestStars"));
+//OPTIMIZE episode.setEpisodeOverview(rs.getString("episodeOverview"));
+//OPTIMIZE episode.setEpisodeProductionCode(rs.getString("episodeProductionCode"));
+//OPTIMIZE episode.setEpisodeStillPath(rs.getString("episodeStillPath"));
+//OPTIMIZE episode.setEpisodeVoteAverage(rs.getDouble("episodeVoteAverage"));
+//OPTIMIZE episode.setEpisodeVoteCount(rs.getInt("episodeVoteCount"));
+//OPTIMIZE episode.setEpisodeCrew(rs.getString("episodeCrew"));
episode.setEpisodeState(rs.getInt("episodeState"));
return episode;
@@ -288,12 +368,12 @@ public class serieUtils
{
seasonData season = new seasonData();
- season.setSeason_ID(rs.getString("season_ID"));
- season.setSeasonAirDate(rs.getDate("seasonAirDate"));
- season.setSeasonName(rs.getString("seasonName"));
- season.setSeasonOverview(rs.getString("seasonOverview"));
+//OPTIMIZE season.setSeason_ID(rs.getString("season_ID"));
+//OPTIMIZE season.setSeasonAirDate(rs.getDate("seasonAirDate"));
+//OPTIMIZE season.setSeasonName(rs.getString("seasonName"));
+//OPTIMIZE season.setSeasonOverview(rs.getString("seasonOverview"));
season.setSeasonID(rs.getInt("seasonID"));
- season.setSeasonPosterPath(rs.getString("seasonPosterPath"));
+//OPTIMIZE season.setSeasonPosterPath(rs.getString("seasonPosterPath"));
season.setSeasonNumber(rs.getInt("seasonNumber"));
return season;
@@ -305,33 +385,33 @@ public class serieUtils
serie.setSeriesID(rs.getInt("seriesID"));
serie.setSeriesName(rs.getString("seriesName"));
- serie.setSeriesOriginalName(rs.getString("seriesOriginalName"));
+//OPTIMIZE 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"));
+//OPTIMIZE serie.setSeriesCreatedBy(rs.getString("seriesCreatedBy"));
+//OPTIMIZE serie.setSeriesHomepage(rs.getString("seriesHomepage"));
+//OPTIMIZE serie.setSeriesLastAired(rs.getDate("seriesLastAired"));
+//OPTIMIZE serie.setSeriesLanguages(rs.getString("seriesLanguages"));
+//OPTIMIZE 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.getDouble("seriesPopularity"));
- serie.setSeriesPoster(rs.getString("seriesPoster"));
+//OPTIMIZE serie.setSeriesOriginalLanguage(rs.getString("seriesOriginalLanguage"));
+//OPTIMIZE serie.setSeriesPopularity(rs.getDouble("seriesPopularity"));
+//OPTIMIZE 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"));
+//OPTIMIZE serie.setSeriesType(rs.getString("seriesType"));
+//OPTIMIZE serie.setSeriesVoteAverage(rs.getDouble("seriesVoteAverage"));
+//OPTIMIZE 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"));
+//OPTIMIZE serie.setSeriesIMDBID(rs.getString("seriesIMDBID"));
+//OPTIMIZE serie.setSeriesFreebaseMID(rs.getString("seriesFreebaseMID"));
+//OPTIMIZE serie.setSeriesFreebaseID(rs.getString("seriesFreebaseID"));
+//OPTIMIZE serie.setSeriesTVDBID(rs.getString("seriesTVDBID"));
+//OPTIMIZE serie.setSeriesTVRageID(rs.getString("seriesTVRageID"));
serie.setSeriesStatus(rs.getString("seriesStatus"));
serie.setSeriesDownload(rs.getString("seriesDownload"));
serie.setSeriesLocalPath(rs.getString("seriesLocalPath"));
diff --git a/src/main/webapp/WEB-INF/zk.xml b/src/main/webapp/WEB-INF/zk.xml
index cf3aaa6..6696157 100644
--- a/src/main/webapp/WEB-INF/zk.xml
+++ b/src/main/webapp/WEB-INF/zk.xml
@@ -12,6 +12,10 @@
org.zkoss.theme.preferred
- breeze_c
+
+
+ atlantic
+
+
diff --git a/src/main/webapp/index.zul b/src/main/webapp/index.zul
index 9859fce..f315863 100644
--- a/src/main/webapp/index.zul
+++ b/src/main/webapp/index.zul
@@ -14,8 +14,8 @@
-
-
+
+
diff --git a/src/main/webapp/movie/centerMovie.zul b/src/main/webapp/movie/centerMovie.zul
index 87adec6..4b157c0 100644
--- a/src/main/webapp/movie/centerMovie.zul
+++ b/src/main/webapp/movie/centerMovie.zul
@@ -2,23 +2,46 @@
vflex="true"
apply="at.windesign.application.movie.movieListForwardComposer, at.windesign.application.movie.movieListSelectorComposer"
>
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
Overview