summaryrefslogtreecommitdiffstats
path: root/Dozentenmodul/src/main/java
diff options
context:
space:
mode:
authorJonathan Bauer2014-09-10 14:54:40 +0200
committerJonathan Bauer2014-09-10 14:54:40 +0200
commit61e8e600dd1c9d6066711dfb9874e0117b87baf6 (patch)
treec5321291edcc9286fbe75f1cbf1a0548fb78da1d /Dozentenmodul/src/main/java
parentMerge branch 'maven' of git.openslx.org:openslx-ng/tutor-module into maven (diff)
downloadtutor-module-61e8e600dd1c9d6066711dfb9874e0117b87baf6.tar.gz
tutor-module-61e8e600dd1c9d6066711dfb9874e0117b87baf6.tar.xz
tutor-module-61e8e600dd1c9d6066711dfb9874e0117b87baf6.zip
mavenization v2
Diffstat (limited to 'Dozentenmodul/src/main/java')
-rw-r--r--Dozentenmodul/src/main/java/config/config_file.java19
-rw-r--r--Dozentenmodul/src/main/java/ftp/DownloadTask.java81
-rw-r--r--Dozentenmodul/src/main/java/ftp/FTPUtility.java86
-rw-r--r--Dozentenmodul/src/main/java/ftp/UploadTask.java178
-rw-r--r--Dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java249
-rw-r--r--Dozentenmodul/src/main/java/gui/image/CreateImageFreigabe_GUI.java12
-rw-r--r--Dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java164
-rw-r--r--Dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java857
-rw-r--r--Dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java137
-rw-r--r--Dozentenmodul/src/main/java/gui/image/EditImageFreigabe_GUI.java14
-rw-r--r--Dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java211
-rw-r--r--Dozentenmodul/src/main/java/gui/image/ExtendedSearchForImages_GUI.java278
-rw-r--r--Dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java278
-rw-r--r--Dozentenmodul/src/main/java/gui/image/FTPEditDownloader_GUI.java (renamed from Dozentenmodul/src/main/java/gui/image/FTPDownloader_GUI.java)286
-rw-r--r--Dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java300
-rw-r--r--Dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java635
-rw-r--r--Dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java552
-rw-r--r--Dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java504
-rw-r--r--Dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java777
-rw-r--r--Dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java1492
-rw-r--r--Dozentenmodul/src/main/java/gui/image/SearchMethodLecture_GUI.java290
-rw-r--r--Dozentenmodul/src/main/java/gui/intro/About_GUI.java8
-rw-r--r--Dozentenmodul/src/main/java/gui/intro/BillOfRights_GUI.java6
-rw-r--r--Dozentenmodul/src/main/java/gui/intro/Login_GUI.java172
-rw-r--r--Dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java212
-rw-r--r--Dozentenmodul/src/main/java/gui/intro/VmWareLink_GUI.java24
-rw-r--r--Dozentenmodul/src/main/java/gui/lecture/CreateLectureAllgemein_GUI.java116
-rw-r--r--Dozentenmodul/src/main/java/gui/lecture/CreateLectureLink_GUI.java733
-rw-r--r--Dozentenmodul/src/main/java/gui/lecture/DeleteLecture_GUI.java497
-rw-r--r--Dozentenmodul/src/main/java/gui/lecture/EditLectureAllgemein_GUI.java350
-rw-r--r--Dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java760
-rw-r--r--Dozentenmodul/src/main/java/gui/lecture/EditLectureSearch_GUI.java647
-rw-r--r--Dozentenmodul/src/main/java/gui/lecture/ExtendedSearchForLectures_GUI.java269
-rw-r--r--Dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java546
-rw-r--r--Dozentenmodul/src/main/java/gui/lecture/PermissionEditLecture_GUI.java (renamed from Dozentenmodul/src/main/java/gui/image/PermissionImage_GUI.java)87
-rw-r--r--Dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java1080
-rw-r--r--Dozentenmodul/src/main/java/models/Image.java24
-rw-r--r--Dozentenmodul/src/main/java/models/ImageRights.java45
-rw-r--r--Dozentenmodul/src/main/java/models/LectureRights.java37
-rw-r--r--Dozentenmodul/src/main/java/models/Links.java146
-rw-r--r--Dozentenmodul/src/main/java/models/SessionData.java2
-rw-r--r--Dozentenmodul/src/main/java/models/Version.java24
-rw-r--r--Dozentenmodul/src/main/java/models/person.java10
-rw-r--r--Dozentenmodul/src/main/java/thrift/MasterThriftConnection.java3
-rw-r--r--Dozentenmodul/src/main/java/util/GuiOrganizer.java25
-rw-r--r--Dozentenmodul/src/main/java/util/OpenLinks.java25
46 files changed, 9416 insertions, 3832 deletions
diff --git a/Dozentenmodul/src/main/java/config/config_file.java b/Dozentenmodul/src/main/java/config/config_file.java
index 5d59e22a..e2290f34 100644
--- a/Dozentenmodul/src/main/java/config/config_file.java
+++ b/Dozentenmodul/src/main/java/config/config_file.java
@@ -20,6 +20,7 @@ public class config_file {
//Pruefen ob Ordner schon existiert
if(config.exists()==false)
{
+ System.out.println("Ordner \"bwLehrpoolSuite\" exisitiert nicht - lege ihn jetzt an.");
//Wenn nicht erzeuge Ordner
config.mkdir();
@@ -30,33 +31,51 @@ public class config_file {
//Wenn in die Datei geschrieben werden kann
if(conf.canWrite()==true)
{
+ System.out.println("Erzeuge \"config.ini.\"");
//Schreibe Config
ini.put("main", "BillOfRights",false);
ini.put("main", "vmware", false);
+ ini.put("main", "Benutzername speichern", false);
+ ini.put("main", "Benutzername", "");
+ ini.put("main", "Letzter Downloadpfad", "");
+ ini.put("main", "Letzter Uploadpfad", "");
ini.store();
return true;
+ } else {
+ System.out.println("Konnte \"config.ini\" nicht anlegen - keine weitere Aktion.");
}
}
else
{
+ System.out.println("Ordner \"bwLehrpoolSuite\" existiert bereits - keine weitere Aktion.");
//Wenn Ordner schon existiert, pruefe ob Datei existiert
if(conf.exists()==false)
{
+ System.out.println("\"config.ini\" existiert nicht - lege jetzt an.");
//Wenn nicht, erzeuge diese
conf.createNewFile();
ini=new Wini(conf);
if(conf.canWrite()==true)
{
+ System.out.println("Schreibe jetzt \"config.ini\".");
//Schreibe Konfig in File
ini.put("main", "BillOfRights",false);
ini.put("main", "vmware", false);
+ ini.put("main", "Benutzername speichern", false);
+ ini.put("main", "Benutzername", "");
+ ini.put("main", "Letzter Downloadpfad", "");
+ ini.put("main", "Letzter Uploadpfad", "");
ini.store();
return true;
+ } else {
+ System.out.println("Kann \"config.ini\" nicht schreiben - keine weitere Aktion.");
}
+ } else {
+ System.out.println("\"config.ini\" existiert bereits - keine weitere Aktion.");
}
}
return true;
diff --git a/Dozentenmodul/src/main/java/ftp/DownloadTask.java b/Dozentenmodul/src/main/java/ftp/DownloadTask.java
index 83ad2c15..5592adba 100644
--- a/Dozentenmodul/src/main/java/ftp/DownloadTask.java
+++ b/Dozentenmodul/src/main/java/ftp/DownloadTask.java
@@ -1,6 +1,6 @@
package ftp;
-import gui.image.FTPDownloader_GUI;
+import gui.image.FTPEditDownloader_GUI;
import java.io.File;
import java.io.FileOutputStream;
@@ -10,91 +10,90 @@ import javax.swing.JOptionPane;
import javax.swing.SwingWorker;
/**
- * Execute file download in a background thread and update the progress.
+ * Execute file download in a background thread and update the progress.
+ *
* @author www.codejava.net
- *
+ *
*/
public class DownloadTask extends SwingWorker<Void, Void> {
private static final int BUFFER_SIZE = 4096;
-
+
private String host;
private int port;
private String username;
private String password;
-
private String downloadPath;
private String saveDir;
-
- @SuppressWarnings("unused")
- private FTPDownloader_GUI gui;
-
+ private int percentCompleted;
+
public DownloadTask(String host, int port, String username,
- String password, String downloadPath, String saveDir,
- FTPDownloader_GUI gui) {
+ String password, String downloadPath, String saveDir) {
this.host = host;
this.port = port;
this.username = username;
this.password = password;
this.downloadPath = downloadPath;
this.saveDir = saveDir;
- this.gui = gui;
-
+
}
/**
* Executed in background thread
- */
+ */
@Override
protected Void doInBackground() throws Exception {
FTPUtility util = new FTPUtility(host, port, username, password);
try {
util.connect();
-
+
byte[] buffer = new byte[BUFFER_SIZE];
int bytesRead = -1;
long totalBytesRead = 0;
- int percentCompleted = 0;
- long start=System.nanoTime();
- final double NANOS_PER_SECOND = 1000000000.0;
- final double BYTES_PER_MIB = 1024*1024;
+ percentCompleted = 0;
+ long start = System.nanoTime();
+ final double NANOS_PER_SECOND = 1000000000.0;
+ final double BYTES_PER_MIB = 1024 * 1024;
long fileSize = util.getFileSize(downloadPath);
- //gui.setFileSize(fileSize);
-
+ // gui.setFileSize(fileSize);
+
String fileName = new File(downloadPath).getName();
-
+
File downloadFile = new File(saveDir + File.separator + fileName);
FileOutputStream outputStream = new FileOutputStream(downloadFile);
-
+
util.downloadFile(downloadPath);
InputStream inputStream = util.getInputStream();
-
- while ((bytesRead = inputStream.read(buffer)) != -1 && isCancelled()==false) {
+
+ while ((bytesRead = inputStream.read(buffer)) != -1
+ && isCancelled() == false) {
outputStream.write(buffer, 0, bytesRead);
totalBytesRead += bytesRead;
- //System.out.println(totalBytesRead);
- double speed = NANOS_PER_SECOND / BYTES_PER_MIB * totalBytesRead / (System.nanoTime() - start + 1);
+ // System.out.println(totalBytesRead);
+ double speed = NANOS_PER_SECOND / BYTES_PER_MIB
+ * totalBytesRead / (System.nanoTime() - start + 1);
percentCompleted = (int) (totalBytesRead * 100 / fileSize);
setProgress(percentCompleted);
firePropertyChange("speed", 0, speed);
- firePropertyChange("filesize", 0,fileSize);
- firePropertyChange("bytesread", 0,totalBytesRead);
-
+ firePropertyChange("filesize", 0, fileSize);
+ firePropertyChange("bytesread", 0, totalBytesRead);
+
}
outputStream.close();
-
+
util.finish();
} catch (FTPException ex) {
- JOptionPane.showMessageDialog(null, "Error downloading file: " + ex.getMessage(),
- "Error", JOptionPane.ERROR_MESSAGE);
+ JOptionPane.showMessageDialog(null,
+ "Error downloading file: " + ex.getMessage(), "Error",
+ JOptionPane.ERROR_MESSAGE);
ex.printStackTrace();
setProgress(0);
- cancel(true);
+ cancel(true);
} finally {
util.disconnect();
}
-
+
return null;
}
@@ -103,10 +102,16 @@ public class DownloadTask extends SwingWorker<Void, Void> {
*/
@Override
protected void done() {
- if (!isCancelled()) {
+ if (!isCancelled() && percentCompleted==100) {
+ System.out.println("Datei erfolgreich heruntergeladen");
+ JOptionPane.showMessageDialog(null,
+ "Datei erfolgreich heruntergeladen.", "Message",
+ JOptionPane.INFORMATION_MESSAGE);
+ } else if(!isCancelled() && percentCompleted != 100){
+ System.out.println("Datein wurde unvollständig heruntergeladen");
JOptionPane.showMessageDialog(null,
- "File has been downloaded successfully!", "Message",
+ "Datei wurde unvollständig heruntergeladen. Bitte wiederholen.", "Message",
JOptionPane.INFORMATION_MESSAGE);
}
- }
+ }
} \ No newline at end of file
diff --git a/Dozentenmodul/src/main/java/ftp/FTPUtility.java b/Dozentenmodul/src/main/java/ftp/FTPUtility.java
index f2c51dfc..beae3f34 100644
--- a/Dozentenmodul/src/main/java/ftp/FTPUtility.java
+++ b/Dozentenmodul/src/main/java/ftp/FTPUtility.java
@@ -16,7 +16,6 @@ import org.apache.commons.net.ftp.FTPFile;
import org.apache.commons.net.ftp.FTPReply;
import org.apache.commons.net.ftp.FTPSClient;
-
/**
* A utility class that provides functionality for downloading files from a FTP
* server.
@@ -49,7 +48,7 @@ public class FTPUtility {
* Connect and login to the server.
*
* @throws FTPException
- * @throws NoSuchAlgorithmException
+ * @throws NoSuchAlgorithmException
*/
public void connect() throws FTPException, NoSuchAlgorithmException {
try {
@@ -58,8 +57,7 @@ public class FTPUtility {
if (!FTPReply.isPositiveCompletion(replyCode)) {
throw new FTPException("FTP serve refused connection.");
}
-
-
+
boolean logged = ftpClient.login(username, password);
if (!logged) {
// failed to login
@@ -122,43 +120,45 @@ public class FTPUtility {
throw new FTPException("Error downloading file: " + ex.getMessage());
}
}
-
-
- /**
- * Start uploading a file to the server
- * @param uploadFile the file to be uploaded
- * @param destDir destination directory on the server
- * where the file is stored
- * @throws FTPException if client-server communication error occurred
- */
- public void uploadFile(File uploadFile, String destDir) throws FTPException {
- try {
- boolean success = ftpClient.changeWorkingDirectory(destDir);
- if (!success) {
- throw new FTPException("Could not change working directory to "
- + destDir + ". The directory may not exist.");
- }
-
- success = ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
- if (!success) {
- throw new FTPException("Could not set binary file type.");
- }
-
- outputStream = ftpClient.storeFileStream(Image.image.getNewName());
-
- //ftpClient.rename(uploadFile.getName(), );
- } catch (IOException ex) {
- throw new FTPException("Error uploading file: " + ex.getMessage());
- }
- }
-
- /**
- * Write an array of bytes to the output stream.
- */
- public void writeFileBytes(byte[] bytes, int offset, int length)
- throws IOException {
- outputStream.write(bytes, offset, length);
- }
+
+ /**
+ * Start uploading a file to the server
+ *
+ * @param uploadFile
+ * the file to be uploaded
+ * @param destDir
+ * destination directory on the server where the file is stored
+ * @throws FTPException
+ * if client-server communication error occurred
+ */
+ public void uploadFile(File uploadFile, String destDir) throws FTPException {
+ try {
+ boolean success = ftpClient.changeWorkingDirectory(destDir);
+ if (!success) {
+ throw new FTPException("Could not change working directory to "
+ + destDir + ". The directory may not exist.");
+ }
+
+ success = ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
+ if (!success) {
+ throw new FTPException("Could not set binary file type.");
+ }
+
+ outputStream = ftpClient.storeFileStream(Image.image.getNewName());
+
+ // ftpClient.rename(uploadFile.getName(), );
+ } catch (IOException ex) {
+ throw new FTPException("Error uploading file: " + ex.getMessage());
+ }
+ }
+
+ /**
+ * Write an array of bytes to the output stream.
+ */
+ public void writeFileBytes(byte[] bytes, int offset, int length)
+ throws IOException {
+ outputStream.write(bytes, offset, length);
+ }
/**
* Complete the download operation.
@@ -191,11 +191,9 @@ public class FTPUtility {
public InputStream getInputStream() {
return inputStream;
}
-
+
public OutputStream getOutputStream() {
return outputStream;
}
-
-
} \ No newline at end of file
diff --git a/Dozentenmodul/src/main/java/ftp/UploadTask.java b/Dozentenmodul/src/main/java/ftp/UploadTask.java
index 06d76dc8..e7ebe43b 100644
--- a/Dozentenmodul/src/main/java/ftp/UploadTask.java
+++ b/Dozentenmodul/src/main/java/ftp/UploadTask.java
@@ -1,98 +1,108 @@
package ftp;
-
+
import java.io.File;
import java.io.FileInputStream;
-
+
import javax.swing.JOptionPane;
import javax.swing.SwingWorker;
import models.Image;
-
+
/**
* Executes the file upload in a background thread and updates progress to
* listeners that implement the java.beans.PropertyChangeListener interface.
+ *
* @author www.codejava.net
- *
+ *
*/
public class UploadTask extends SwingWorker<Void, Void> {
- private static final int BUFFER_SIZE = 4096;
-
- private String host;
- private int port;
- private String username;
- private String password;
-
- private String destDir;
- private File uploadFile;
-
- public UploadTask(String host, int port, String username, String password,
- String destDir, File uploadFile) {
- this.host = host;
- this.port = port;
- this.username = username;
- this.password = password;
- this.destDir = destDir;
- this.uploadFile = uploadFile;
-
- }
-
- /**
- * Executed in background thread
- */
- @Override
- protected Void doInBackground() throws Exception {
- FTPUtility util = new FTPUtility(host, port, username, password);
- try {
- util.connect();
- util.uploadFile(uploadFile, destDir);
-
- FileInputStream inputStream = new FileInputStream(uploadFile);
- byte[] buffer = new byte[BUFFER_SIZE];
- int bytesRead = -1;
- int i=0;
- long totalBytesRead = 0;
- int percentCompleted = 0;
- long fileSize = uploadFile.length();
- Image.image.setFilesize(fileSize);
- long start=System.nanoTime();
- final double NANOS_PER_SECOND = 1000000000.0;
- final double BYTES_PER_MIB = 1024*1024;
- while ((bytesRead = inputStream.read(buffer)) != -1 && isCancelled()==false) {
- util.writeFileBytes(buffer, 0, bytesRead);
- totalBytesRead += bytesRead;
- percentCompleted = (int) (totalBytesRead * 100 / fileSize);
- double speed = NANOS_PER_SECOND / BYTES_PER_MIB * totalBytesRead / (System.nanoTime() - start + 1);
- setProgress(percentCompleted);
- firePropertyChange("speed", 0, speed);
- firePropertyChange("filesize", 0,fileSize);
- firePropertyChange("bytesread", 0,totalBytesRead);
- }
-
- inputStream.close();
-
- util.finish();
- } catch (FTPException ex) {
- JOptionPane.showMessageDialog(null, "Error uploading file: " + ex.getMessage(),
- "Error", JOptionPane.ERROR_MESSAGE);
- ex.printStackTrace();
- setProgress(0);
- cancel(true);
- } finally {
- util.disconnect();
- }
-
- return null;
- }
-
- /**
- * Executed in Swing's event dispatching thread
- */
- @Override
- protected void done() {
- if (!isCancelled()) {
- JOptionPane.showMessageDialog(null,
- "File has been uploaded successfully!", "Message",
- JOptionPane.INFORMATION_MESSAGE);
- }
- }
+ private static final int BUFFER_SIZE = 4096;
+
+ private String host;
+ private int port;
+ private String username;
+ private String password;
+ private String destDir;
+ private File uploadFile;
+ private int percentCompleted;
+
+ public UploadTask(String host, int port, String username, String password,
+ String destDir, File uploadFile) {
+ this.host = host;
+ this.port = port;
+ this.username = username;
+ this.password = password;
+ this.destDir = destDir;
+ this.uploadFile = uploadFile;
+
+ }
+
+ /**
+ * Executed in background thread
+ */
+ @Override
+ protected Void doInBackground() throws Exception {
+ FTPUtility util = new FTPUtility(host, port, username, password);
+ try {
+ util.connect();
+ util.uploadFile(uploadFile, destDir);
+
+ FileInputStream inputStream = new FileInputStream(uploadFile);
+ byte[] buffer = new byte[BUFFER_SIZE];
+ int bytesRead = -1;
+ int i = 0;
+ long totalBytesRead = 0;
+ percentCompleted = 0;
+ long fileSize = uploadFile.length();
+ Image.image.setFilesize(fileSize);
+ long start = System.nanoTime();
+ final double NANOS_PER_SECOND = 1000000000.0;
+ final double BYTES_PER_MIB = 1024 * 1024;
+ while ((bytesRead = inputStream.read(buffer)) != -1
+ && isCancelled() == false) {
+ util.writeFileBytes(buffer, 0, bytesRead);
+ totalBytesRead += bytesRead;
+ percentCompleted = (int) (totalBytesRead * 100 / fileSize);
+ double speed = NANOS_PER_SECOND / BYTES_PER_MIB
+ * totalBytesRead / (System.nanoTime() - start + 1);
+ setProgress(percentCompleted);
+ firePropertyChange("speed", 0, speed);
+ firePropertyChange("filesize", 0, fileSize);
+ firePropertyChange("bytesread", 0, totalBytesRead);
+ }
+
+ inputStream.close();
+
+ util.finish();
+ } catch (FTPException ex) {
+ JOptionPane.showMessageDialog(null,
+ "Error uploading file: " + ex.getMessage(), "Error",
+ JOptionPane.ERROR_MESSAGE);
+ ex.printStackTrace();
+ setProgress(0);
+ cancel(true);
+ } finally {
+ util.disconnect();
+ }
+
+ return null;
+ }
+
+ /**
+ * Executed in Swing's event dispatching thread
+ */
+ @Override
+ protected void done() {
+ if (!isCancelled() && percentCompleted==100) {
+ System.out.println("Datei erfolgreich hochgeladen");
+ JOptionPane.showMessageDialog(null,
+ "Datei erfolgreich hochgeladen.", "Message",
+ JOptionPane.INFORMATION_MESSAGE);
+ } else if(!isCancelled() && percentCompleted != 100){
+ System.out.println("Datein wurde unvollständig hochgeladen");
+ JOptionPane.showMessageDialog(null,
+ "Datei wurde unvollständig hochgeladen. Bitte wiederholen.", "Message",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ }
} \ No newline at end of file
diff --git a/Dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java b/Dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java
index 6231c6f2..06835167 100644
--- a/Dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java
@@ -1,6 +1,5 @@
package gui.image;
-
import gui.intro.About_GUI;
import gui.intro.MainMenue_GUI;
@@ -39,6 +38,10 @@ import models.Links;
import models.person;
import util.GuiOrganizer;
import util.OpenLinks;
+import javax.swing.JScrollPane;
+import java.awt.event.KeyAdapter;
+import java.awt.event.KeyEvent;
+
@SuppressWarnings("serial")
public class CreateImageAllgemein_GUI extends JFrame {
@@ -50,6 +53,12 @@ public class CreateImageAllgemein_GUI extends JFrame {
private JTextField Hochschule;
private JTextField EMail;
private JTextField imagename;
+ private JTextArea textAreadesc;
+ private boolean textfieldsHaveContent = false; // no textfield is empty
+ private boolean descriptionLengthOK = false; //description may not be longer than 254 chars
+ private boolean nameIsOK = false; // imagename only contains letters
+ private final int MAX_DESCRIPTION_LENGTH = 254;
+ private JTextArea txtrGebenSieBitte_1;
/**
* Create the dialog.
@@ -58,31 +67,32 @@ public class CreateImageAllgemein_GUI extends JFrame {
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent arg0) {
- //Beendet das Fenster auf X
+ // Beendet das Fenster auf X
System.exit(0);
}
+
@Override
public void windowOpened(WindowEvent arg0) {
imagename.requestFocusInWindow();
}
});
- //Verhindert das Vergroessern des Fensters
+ // Verhindert das Vergroessern des Fensters
setResizable(false);
-
+
try {
- //setzt das Look & Feel
+ // setzt das Look & Feel
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException
| IllegalAccessException | UnsupportedLookAndFeelException e) {
// TODO Auto-generated catch block
e.printStackTrace();
JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e.getCause() + "\n" + e.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
- //Setzt den Titel
- setTitle("bwLehrpool Suite *Prototyp* - Image erzeugen");
- //Zentriert das Fenster
+ // Setzt den Titel
+ setTitle("bwLehrpool Suite - Image erzeugen");
+ // Zentriert das Fenster
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -99,11 +109,12 @@ public class CreateImageAllgemein_GUI extends JFrame {
panel.add(lblNewLabel);
lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
}
-
+
JTextPane txtpnBitteWhlenSie = new JTextPane();
txtpnBitteWhlenSie.setEditable(false);
txtpnBitteWhlenSie.setBackground(SystemColor.menu);
- txtpnBitteWhlenSie.setText("Geben Sie hier bitte einen sprechenden Imagename sowie Ihre Kontaktdaten an");
+ txtpnBitteWhlenSie
+ .setText("Geben Sie hier bitte einen sprechenden Imagenamen sowie Ihre Kontaktdaten an");
txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
panel.add(txtpnBitteWhlenSie);
}
@@ -112,19 +123,20 @@ public class CreateImageAllgemein_GUI extends JFrame {
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
getContentPane().add(contentPanel);
contentPanel.setLayout(null);
-
+
JPanel panel_1 = new JPanel();
panel_1.setBackground(SystemColor.menu);
- panel_1.setBorder(new TitledBorder(null, "Informationen zum Besitzer", TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_1.setBorder(new TitledBorder(null, "Informationen zum Besitzer",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel_1.setBounds(10, 66, 557, 369);
contentPanel.add(panel_1);
panel_1.setLayout(null);
-
+
JLabel label = new JLabel("Vorname: *");
label.setBackground(SystemColor.menu);
label.setBounds(10, 245, 125, 20);
panel_1.add(label);
-
+
Vorname = new JTextField();
Vorname.setEnabled(false);
Vorname.setEditable(false);
@@ -133,12 +145,12 @@ public class CreateImageAllgemein_GUI extends JFrame {
Vorname.setColumns(10);
Vorname.setBounds(145, 245, 350, 20);
panel_1.add(Vorname);
-
+
JLabel label_7 = new JLabel("Nachname: *");
label_7.setBackground(SystemColor.menu);
label_7.setBounds(10, 276, 125, 20);
panel_1.add(label_7);
-
+
Nachname = new JTextField();
Nachname.setEnabled(false);
Nachname.setEditable(false);
@@ -147,12 +159,12 @@ public class CreateImageAllgemein_GUI extends JFrame {
Nachname.setColumns(10);
Nachname.setBounds(145, 276, 350, 20);
panel_1.add(Nachname);
-
+
JLabel label_8 = new JLabel("Hochschule: *");
label_8.setBackground(SystemColor.menu);
label_8.setBounds(10, 307, 125, 20);
panel_1.add(label_8);
-
+
Hochschule = new JTextField();
Hochschule.setEnabled(false);
Hochschule.setEditable(false);
@@ -161,12 +173,12 @@ public class CreateImageAllgemein_GUI extends JFrame {
Hochschule.setColumns(10);
Hochschule.setBounds(145, 307, 350, 20);
panel_1.add(Hochschule);
-
+
JLabel label_9 = new JLabel("E-Mail: *");
label_9.setBackground(SystemColor.menu);
label_9.setBounds(10, 338, 125, 20);
panel_1.add(label_9);
-
+
EMail = new JTextField();
EMail.setEnabled(false);
EMail.setEditable(false);
@@ -175,68 +187,107 @@ public class CreateImageAllgemein_GUI extends JFrame {
EMail.setColumns(10);
EMail.setBounds(145, 338, 350, 20);
panel_1.add(EMail);
-
+
JLabel lblImagename = new JLabel("Imagename: *");
lblImagename.setBackground(SystemColor.menu);
- lblImagename.setBounds(10, 31, 125, 20);
+ lblImagename.setBounds(10, 23, 125, 20);
panel_1.add(lblImagename);
-
-
+
imagename = new JTextField();
+ imagename.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ textAreadesc.requestFocusInWindow();
+ }
+ });
imagename.setBackground(Color.WHITE);
imagename.setText((String) null);
imagename.setColumns(10);
- imagename.setBounds(145, 31, 350, 20);
- imagename.setText(Image.image.getImagename()); //null am Anfang, aber speichert die Eingabe, wenn man zurueck kommt zur Seite
+ imagename.setBounds(145, 23, 350, 20);
+ imagename.setText(Image.image.getImagename()); // null am Anfang, aber
+ // speichert die
+ // Eingabe, wenn man
+ // zurueck kommt zur
+ // Seite
panel_1.add(imagename);
-
+
JTextArea txtrGebenSieBitte = new JTextArea();
txtrGebenSieBitte.setEditable(false);
txtrGebenSieBitte.setBackground(SystemColor.menu);
txtrGebenSieBitte.setLineWrap(true);
txtrGebenSieBitte.setFont(new Font("Tahoma", Font.PLAIN, 12));
- txtrGebenSieBitte.setText("Geben Sie bitte einen sprechenden Namen f\u00FCr das Image an.\r\nDieser soll jedoch recht allgemein gehalten werden.\r\nBeispiel: \"Programmieren\", nicht \"Programmieren 1\"");
- txtrGebenSieBitte.setBounds(145, 62, 350, 110);
+ txtrGebenSieBitte
+ .setText("Geben Sie bitte einen sprechenden Namen f\u00FCr das Image an.\r\nDieser soll jedoch recht allgemein gehalten werden.\r\nBeispiel: \"Programmieren\", nicht \"Programmieren 1\"");
+ txtrGebenSieBitte.setBounds(145, 48, 350, 49);
panel_1.add(txtrGebenSieBitte);
+
+ JLabel lblBeschreibung = new JLabel("Beschreibung: *");
+ lblBeschreibung.setBackground(SystemColor.menu);
+ lblBeschreibung.setBounds(10, 110, 125, 20);
+ panel_1.add(lblBeschreibung);
+
+ JScrollPane scrollPane = new JScrollPane();
+ scrollPane.setBounds(145, 110, 350, 60);
+ panel_1.add(scrollPane);
+
+ textAreadesc = new JTextArea();
+ textAreadesc.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ textAreadesc.setLineWrap(true);
+ textAreadesc.setText((String) null);
+ textAreadesc.setText(Image.image.getDesc());// null am Anfang, aber
+ // speichert die Eingabe,
+ // wenn man zurueck kommt
+ // zur Seite
+ scrollPane.setViewportView(textAreadesc);
+
+ txtrGebenSieBitte_1 = new JTextArea();
+ txtrGebenSieBitte_1
+ .setText("Geben Sie bitte eine Beschreibung f\u00FCr das Image an.\r\nDiese soll jedoch recht spezifisch gehalten werden.\r\nBeispiel: \"Java-Enticklung mit eclipse und MySQL\"");
+ txtrGebenSieBitte_1.setLineWrap(true);
+ txtrGebenSieBitte_1.setFont(new Font("Tahoma", Font.PLAIN, 12));
+ txtrGebenSieBitte_1.setEditable(false);
+ txtrGebenSieBitte_1.setBackground(SystemColor.menu);
+ txtrGebenSieBitte_1.setBounds(145, 177, 350, 49);
+ panel_1.add(txtrGebenSieBitte_1);
+
JPanel panel = new JPanel();
panel.setBounds(10, 402, 577, 33);
contentPanel.add(panel);
panel.setLayout(null);
panel.setBorder(new EmptyBorder(5, 5, 5, 5));
panel.setBackground(SystemColor.menu);
-
+
JLabel lblPflichtfelder = new JLabel("* Pflichtfelder");
lblPflichtfelder.setBounds(10, 442, 136, 14);
contentPanel.add(lblPflichtfelder);
-
+
JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
lblHauptmen.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
- //oeffnet das Hauptmenue
+ // oeffnet das Hauptmenue
CreateImageAllgemein_GUI.this.setVisible(false);
- MainMenue_GUI main=new MainMenue_GUI();
+ MainMenue_GUI main = new MainMenue_GUI();
main.setVisible(true);
}
});
lblHauptmen.setForeground(Color.BLUE);
lblHauptmen.setBounds(10, 11, 61, 14);
contentPanel.add(lblHauptmen);
-
+
JLabel label_1 = new JLabel(">");
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
-
- JLabel lblVlimage = new JLabel("VL-Image");
+
+ JLabel lblVlimage = new JLabel("Image");
lblVlimage.setForeground(Color.BLUE);
lblVlimage.setBounds(81, 11, 45, 14);
contentPanel.add(lblVlimage);
-
+
JLabel label_2 = new JLabel(">");
label_2.setBounds(133, 11, 13, 14);
contentPanel.add(label_2);
-
+
JLabel lblNewLabel_1 = new JLabel("Neu");
lblNewLabel_1.setBounds(146, 11, 46, 14);
contentPanel.add(lblNewLabel_1);
@@ -251,7 +302,8 @@ public class CreateImageAllgemein_GUI extends JFrame {
backButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Image.image.setImagename(imagename.getText());
- MainMenue_GUI sr=new MainMenue_GUI();
+ Image.image.setDesc(textAreadesc.getText());
+ MainMenue_GUI sr = new MainMenue_GUI();
sr.setVisible(true);
dispose();
}
@@ -263,18 +315,24 @@ public class CreateImageAllgemein_GUI extends JFrame {
JButton continueButton = new JButton("Weiter");
continueButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- //Prueft die Eingabe
- if(imagename.getText().isEmpty()==false && Vorname.getText().isEmpty()==false && Nachname.getText().isEmpty()==false && Hochschule.getText().isEmpty()==false&&EMail.getText().isEmpty()==false)
- {
- //Schreibt die Daten in das Model
- Image.image.setImagename(imagename.getText());
- CreateImageTechnisch_GUI ea=new CreateImageTechnisch_GUI();
- ea.setVisible(true);
- dispose();
- }
- else{
- JOptionPane.showMessageDialog(null, "Bitte geben Sie alle notwendigen Daten an!",
- "Daten unvollst\u00e4ndig", JOptionPane.INFORMATION_MESSAGE);
+ // Prueft die Eingabe und leitet weiter zur naechsten
+ // Seite
+ if (checkContent() == true
+ && checkNameIsLettersOrNumbers() == true && descriptionLenghtOK() == true) {
+ // Schreibt die Daten in das Model
+ Image.image.setImagename(imagename.getText());
+ Image.image.setDesc(textAreadesc.getText());
+ // Info
+ System.out
+ .println("Alle Eingaben in Ordnung. Imagename= \""
+ + Image.image.getImagename()
+ + "\", Imagebeschreibung=\""
+ + Image.image.getDesc()+"\"");
+ CreateImageTechnisch_GUI ea = new CreateImageTechnisch_GUI();
+ ea.setVisible(true);
+ dispose();
+ } else {
+
}
}
});
@@ -283,34 +341,30 @@ public class CreateImageAllgemein_GUI extends JFrame {
getRootPane().setDefaultButton(continueButton);
}
}
-
+
JSeparator separator = new JSeparator();
separator.setBounds(0, 78, 597, 2);
getContentPane().add(separator);
-
+
JSeparator separator_1 = new JSeparator();
separator_1.setBounds(0, 627, 597, 2);
getContentPane().add(separator_1);
-
+
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
-
+
JMenu mnNewMenu_1 = new JMenu("Hilfe");
menuBar.add(mnNewMenu_1);
-
+
JMenuItem mntmFaq = new JMenuItem("FAQ");
mntmFaq.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
OpenLinks open = new OpenLinks();
-
URI windows;
try {
windows = new URI(Links.getFAQ());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
@@ -318,21 +372,16 @@ public class CreateImageAllgemein_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmFaq);
-
JMenuItem mntmOtrs = new JMenuItem("OTRS");
mntmOtrs.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
OpenLinks open = new OpenLinks();
-
URI windows;
try {
windows = new URI(Links.getOTRS());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
@@ -341,7 +390,7 @@ public class CreateImageAllgemein_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmOtrs);
-
+
JMenuItem menuItem = new JMenuItem("About");
menuItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
@@ -350,6 +399,66 @@ public class CreateImageAllgemein_GUI extends JFrame {
}
});
mnNewMenu_1.add(menuItem);
+
+ }// end main
+
+ public boolean checkNameIsLettersOrNumbers() {
+ nameIsOK = false;
+
+ // only allow letter from alphabet and numbers
+ if (imagename.getText().matches("[a-zA-Z0-9]+")) {
+ nameIsOK = true;
+ } else {
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Der Imagename darf keine Leer- oder Sonderzeichen enthalten.",
+ "Unerlaubte Zeichen",
+ JOptionPane.INFORMATION_MESSAGE);
+ }// if
+
+ return nameIsOK;
+ }// end nameIsOK
+
+ public boolean checkContent() {
+ textfieldsHaveContent = false;
+
+ // check if any textfield is empty
+ if (imagename.getText().isEmpty() == false
+ && textAreadesc.getText().isEmpty() == false
+ && Vorname.getText().isEmpty() == false
+ && Nachname.getText().isEmpty() == false
+ && Hochschule.getText().isEmpty() == false
+ && EMail.getText().isEmpty() == false) {
+ // all textfields have content
+ textfieldsHaveContent = true;
+ } else {
+ JOptionPane
+ .showMessageDialog(null,
+ "Bitte geben Sie alle notwendigen Daten an!",
+ "Daten unvollst\u00e4ndig",
+ JOptionPane.INFORMATION_MESSAGE);
+ }// end if
+
+ return textfieldsHaveContent;
+ }// end checkContent
+
+ public boolean descriptionLenghtOK(){
+ descriptionLengthOK=false;
+
+ //max length is 254 chars
+ if (textAreadesc.getText().length() >= MAX_DESCRIPTION_LENGTH) {
+ descriptionLengthOK=false;
+ JOptionPane
+ .showMessageDialog(null,
+ "Die Beschreibung darf max 254 Zeichen enthalten. Aktuell enthält sie "+textAreadesc.getText().length()+".",
+ "Beschreibung zu umfangreich",
+ JOptionPane.INFORMATION_MESSAGE);
+ }else {
+ descriptionLengthOK=true;
+
+ }
- }//end main
-}
+ return descriptionLengthOK;
+ }// enddescriptionLenghtOK()
+}// end Class
diff --git a/Dozentenmodul/src/main/java/gui/image/CreateImageFreigabe_GUI.java b/Dozentenmodul/src/main/java/gui/image/CreateImageFreigabe_GUI.java
index ec50440f..dea785d3 100644
--- a/Dozentenmodul/src/main/java/gui/image/CreateImageFreigabe_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/CreateImageFreigabe_GUI.java
@@ -67,7 +67,7 @@ public class CreateImageFreigabe_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
}
- setTitle("bwLehrpool Suite *Prototyp* - Image erzeugen");
+ setTitle("bwLehrpool Suite - Image erzeugen");
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -138,7 +138,7 @@ public class CreateImageFreigabe_GUI extends JFrame {
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
- JLabel lblVlimage = new JLabel("VL-Image");
+ JLabel lblVlimage = new JLabel("Image");
lblVlimage.setForeground(Color.BLUE);
lblVlimage.setBounds(81, 11, 45, 14);
contentPanel.add(lblVlimage);
@@ -176,7 +176,7 @@ public class CreateImageFreigabe_GUI extends JFrame {
continueButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Image.image.setShareMode(comboBox.getSelectedIndex());
- FTPCreateUploader_GUI ea = new FTPCreateUploader_GUI();
+ PermissionCreateImage_GUI ea = new PermissionCreateImage_GUI();
ea.setVisible(true);
dispose();
@@ -199,12 +199,6 @@ public class CreateImageFreigabe_GUI extends JFrame {
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
- JMenu mnNewMenu = new JMenu("Suchen");
- menuBar.add(mnNewMenu);
-
- JMenuItem mntmVlSuche = new JMenuItem("VL Suche");
- mnNewMenu.add(mntmVlSuche);
-
JMenu mnNewMenu_1 = new JMenu("Hilfe");
menuBar.add(mnNewMenu_1);
diff --git a/Dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java b/Dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java
index f861901f..a6b19c6c 100644
--- a/Dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java
@@ -16,9 +16,11 @@ import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.net.URI;
import java.net.URISyntaxException;
+import java.util.List;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
+import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
@@ -38,8 +40,13 @@ import javax.swing.border.TitledBorder;
import models.Image;
import models.Links;
+import server.Server.Client;
+import thrift.ThriftConnection;
import util.GuiOrganizer;
import util.OpenLinks;
+import javax.swing.JComboBox;
+
+import org.apache.thrift.TException;
@SuppressWarnings("serial")
public class CreateImageTechnisch_GUI extends JFrame {
@@ -48,15 +55,21 @@ public class CreateImageTechnisch_GUI extends JFrame {
String[] result;
JSpinner spinnerCPU;
JSpinner spinnerRam;
- JRadioButton rdbtnlicenseJa;
- JRadioButton rdbtnlicenseNein;
- JRadioButton rdbtnInternetJa;
- JRadioButton rdbtnInternetNein;
- JRadioButton radioButtonVorlageJa;
- JRadioButton radioButtonVorlageNein;
+ //JRadioButton rdbtnlicenseJa;
+ //JRadioButton rdbtnlicenseNein;
+ //JRadioButton rdbtnInternetJa;
+ //JRadioButton rdbtnInternetNein;
+ //JRadioButton radioButtonVorlageJa;
+ //JRadioButton radioButtonVorlageNein;
+ private JCheckBox chckbxIsTemplate;
+ private JCheckBox chckbxIsLicensed;
+ private JCheckBox chckbxIsInternetBlocked;
+ JComboBox comboBox;
private final ButtonGroup buttonGrouplicense = new ButtonGroup();
private final ButtonGroup buttonGroupInternet = new ButtonGroup();
private final ButtonGroup buttonGroupVorlage = new ButtonGroup();
+ ThriftConnection con = new ThriftConnection();
+ Client client = models.Client.clientcon.getClient();
/**
@@ -78,7 +91,7 @@ public class CreateImageTechnisch_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
}
- setTitle("bwLehrpool Suite *Prototyp* - Image erzeugen");
+ setTitle("bwLehrpool Suite - Image erzeugen");
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -104,7 +117,7 @@ public class CreateImageTechnisch_GUI extends JFrame {
txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
panel.add(txtpnBitteWhlenSie);
}
- contentPanel.setBounds(10, 85, 577, 493);
+ contentPanel.setBounds(10, 85, 577, 531);
contentPanel.setBackground(SystemColor.menu);
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
getContentPane().add(contentPanel);
@@ -113,75 +126,100 @@ public class CreateImageTechnisch_GUI extends JFrame {
JPanel panel_1 = new JPanel();
panel_1.setBackground(SystemColor.menu);
panel_1.setBorder(new TitledBorder(null, "Informationen zum Image", TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 52, 557, 138);
+ panel_1.setBounds(10, 36, 557, 166);
contentPanel.add(panel_1);
panel_1.setLayout(null);
-
- rdbtnlicenseNein = new JRadioButton("Nein");
- buttonGrouplicense.add(rdbtnlicenseNein);
- rdbtnlicenseNein.setBounds(377, 49, 46, 23);
- panel_1.add(rdbtnlicenseNein);
-
- rdbtnInternetNein = new JRadioButton("Nein");
- rdbtnInternetNein.setSelected(true);
- buttonGroupInternet.add(rdbtnInternetNein);
- rdbtnInternetNein.setBounds(377, 77, 46, 23);
- panel_1.add(rdbtnInternetNein);
+
JLabel lblInternetIstInnerhalb = new JLabel("Internet ist f\u00FCr dieses Image gesperrt:");
- lblInternetIstInnerhalb.setBounds(10, 78, 250, 20);
+ lblInternetIstInnerhalb.setBounds(10, 106, 250, 20);
panel_1.add(lblInternetIstInnerhalb);
JButton btnInternetSettings = new JButton("Einstellungen...");
btnInternetSettings.setEnabled(false);
- btnInternetSettings.setBounds(439, 77, 108, 23);
+ btnInternetSettings.setBounds(439, 105, 108, 23);
panel_1.add(btnInternetSettings);
- rdbtnInternetJa = new JRadioButton("Ja");
-
- buttonGroupInternet.add(rdbtnInternetJa);
- rdbtnInternetJa.setBounds(266, 77, 41, 23);
- panel_1.add(rdbtnInternetJa);
-
- rdbtnlicenseJa = new JRadioButton("Ja");
- rdbtnlicenseJa.setSelected(true);
- buttonGrouplicense.add(rdbtnlicenseJa);
- rdbtnlicenseJa.setBounds(266, 49, 41, 23);
- panel_1.add(rdbtnlicenseJa);
JLabel lblNewLabel_2 = new JLabel("Image enth\u00E4lt lizenzpflichtige Software:");
- lblNewLabel_2.setBounds(10, 50, 250, 20);
+ lblNewLabel_2.setBounds(10, 78, 250, 20);
panel_1.add(lblNewLabel_2);
+ chckbxIsTemplate = new JCheckBox("");
+ chckbxIsTemplate.setBounds(266, 50, 97, 23);
+ panel_1.add(chckbxIsTemplate);
+
+ chckbxIsLicensed = new JCheckBox("");
+ chckbxIsLicensed.setSelected(true);
+ chckbxIsLicensed.setBounds(266, 76, 97, 23);
+ panel_1.add(chckbxIsLicensed);
+
+ chckbxIsInternetBlocked = new JCheckBox("");
+ chckbxIsInternetBlocked.setBounds(266, 104, 97, 23);
+ panel_1.add(chckbxIsInternetBlocked);
+
JLabel lblLizenzserverEintragen = new JLabel("Lizenzserver eintragen:");
- lblLizenzserverEintragen.setBounds(10, 105, 250, 20);
+ lblLizenzserverEintragen.setBounds(10, 133, 250, 20);
panel_1.add(lblLizenzserverEintragen);
JButton btnLicenseServer = new JButton("Server-Adresse...");
btnLicenseServer.setEnabled(false);
- btnLicenseServer.setBounds(266, 104, 157, 23);
+ btnLicenseServer.setBounds(266, 132, 157, 23);
panel_1.add(btnLicenseServer);
JLabel lblImageIstEine = new JLabel("Image ist eine Vorlage:");
- lblImageIstEine.setBounds(10, 24, 250, 20);
+ lblImageIstEine.setBounds(10, 52, 250, 20);
panel_1.add(lblImageIstEine);
+
+
+ JLabel lblBetriebssystem = new JLabel("Betriebssystem:");
+ lblBetriebssystem.setBounds(10, 21, 250, 20);
+ panel_1.add(lblBetriebssystem);
+
+ if (Image.image.isVorlage() == true) {
+ //radioButtonVorlageJa.setSelected(true);
+ chckbxIsTemplate.setSelected(true);
+ } else {
+ //radioButtonVorlageNein.setSelected(true);
+ chckbxIsTemplate.setSelected(false);
+ }
+
+ if(Image.image.isInternet() == true ){
+ chckbxIsInternetBlocked.setSelected(true);
+ } else {
+ chckbxIsInternetBlocked.setSelected(false);
+ }
- radioButtonVorlageJa = new JRadioButton("Ja");
- buttonGroupVorlage.add(radioButtonVorlageJa);
- radioButtonVorlageJa.setSelected(true);
- radioButtonVorlageJa.setBounds(266, 23, 41, 23);
- panel_1.add(radioButtonVorlageJa);
+ /* TODO deprecated, as checked is default in new image
+ if (Image.image.isLicensed() == true) {
+ //rdbtnlicenseJa.setSelected(true);
+ chckbxIsLicensed.setSelected(true);
+ chckbxIsLicensed.isSelected();
+ } else {
+ //rdbtnlicenseNein.setSelected(true);
+ chckbxIsLicensed.setSelected(false);
+ }
+ */
- radioButtonVorlageNein = new JRadioButton("Nein");
- buttonGroupVorlage.add(radioButtonVorlageNein);
- radioButtonVorlageNein.setBounds(377, 23, 46, 23);
- panel_1.add(radioButtonVorlageNein);
+ comboBox = new JComboBox();
+ try {
+ List<String> os=client.getAllOS();
+
+ for(int i=0; i<os.size();i++){
+ comboBox.addItem(os.get(i).toString());
+ }
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ comboBox.setBounds(270, 21, 277, 20);
+ panel_1.add(comboBox);
JPanel panel_2 = new JPanel();
panel_2.setLayout(null);
panel_2.setBorder(new TitledBorder(null, "Empfehlung bez\u00fcglich Ressourcen", TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel_2.setBackground(SystemColor.menu);
- panel_2.setBounds(11, 196, 557, 338);
+ panel_2.setBounds(10, 207, 557, 324);
contentPanel.add(panel_2);
JLabel lblGbyte = new JLabel("GByte");
@@ -259,7 +297,7 @@ public class CreateImageTechnisch_GUI extends JFrame {
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
- JLabel lblVlimage = new JLabel("VL-Image");
+ JLabel lblVlimage = new JLabel("Image");
lblVlimage.setForeground(Color.BLUE);
lblVlimage.setBounds(81, 11, 45, 14);
contentPanel.add(lblVlimage);
@@ -282,7 +320,7 @@ public class CreateImageTechnisch_GUI extends JFrame {
cancelButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- if(rdbtnInternetJa.isSelected()==true)
+ if(chckbxIsInternetBlocked.isSelected()==true)
{
Image.image.setInternet(true);
}
@@ -291,7 +329,7 @@ public class CreateImageTechnisch_GUI extends JFrame {
Image.image.setInternet(false);
}
- if(rdbtnlicenseJa.isSelected()==true)
+ if(chckbxIsLicensed.isSelected()==true)
{
Image.image.setLicensed(true);
}
@@ -299,9 +337,16 @@ public class CreateImageTechnisch_GUI extends JFrame {
{
Image.image.setLicensed(false);
}
+
+ if(chckbxIsTemplate.isSelected() == true){
+ Image.image.setVorlage(true);
+ } else {
+ Image.image.setVorlage(false);
+ }
+
Image.image.setCpu(Integer.valueOf(spinnerCPU.getValue().toString()).intValue());
Image.image.setRam(Integer.valueOf(spinnerRam.getValue().toString()).intValue());
-
+ Image.image.setOS(comboBox.getSelectedItem().toString());
CreateImageAllgemein_GUI sr=new CreateImageAllgemein_GUI();
sr.setVisible(true);
dispose();
@@ -315,7 +360,8 @@ public class CreateImageTechnisch_GUI extends JFrame {
JButton continueButton = new JButton("Weiter");
continueButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- if(rdbtnInternetJa.isSelected()==true)
+
+ if(chckbxIsInternetBlocked.isSelected()==true)
{
Image.image.setInternet(true);
}
@@ -324,7 +370,7 @@ public class CreateImageTechnisch_GUI extends JFrame {
Image.image.setInternet(false);
}
- if(rdbtnlicenseJa.isSelected()==true)
+ if(chckbxIsLicensed.isSelected()==true)
{
Image.image.setLicensed(true);
}
@@ -332,7 +378,7 @@ public class CreateImageTechnisch_GUI extends JFrame {
{
Image.image.setLicensed(false);
}
- if(radioButtonVorlageJa.isSelected()==true)
+ if(chckbxIsTemplate.isSelected()==true)
{
Image.image.setVorlage(true);
}
@@ -342,6 +388,8 @@ public class CreateImageTechnisch_GUI extends JFrame {
}
Image.image.setCpu(Integer.valueOf(spinnerCPU.getValue().toString()).intValue());
Image.image.setRam(Integer.valueOf(spinnerRam.getValue().toString()).intValue());
+ Image.image.setOS(comboBox.getSelectedItem().toString());
+ System.out.println("Betriebssystem: "+Image.image.getOS()+", istVorlage: "+Image.image.isVorlage()+", Lizenzpflichtig: "+Image.image.isLicensed()+", Internetsperre: "+Image.image.isInternet()+", CPU: "+Image.image.getCpu()+", RAM: "+Image.image.getRam());
CreateImageFreigabe_GUI ea=new CreateImageFreigabe_GUI();
ea.setVisible(true);
dispose();
@@ -364,13 +412,7 @@ public class CreateImageTechnisch_GUI extends JFrame {
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
-
- JMenu mnNewMenu = new JMenu("Suchen");
- menuBar.add(mnNewMenu);
-
- JMenuItem mntmVlSuche = new JMenuItem("VL Suche");
- mnNewMenu.add(mntmVlSuche);
-
+
JMenu mnNewMenu_1 = new JMenu("Hilfe");
menuBar.add(mnNewMenu_1);
diff --git a/Dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java b/Dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java
index 67084a75..3b4cc3ba 100644
--- a/Dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java
@@ -18,8 +18,11 @@ import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.net.URI;
import java.net.URISyntaxException;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
import java.util.Iterator;
import java.util.List;
+import java.util.Map;
import javax.swing.JButton;
import javax.swing.JComboBox;
@@ -45,6 +48,8 @@ import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;
@@ -58,37 +63,75 @@ import server.Server.Client;
import thrift.ThriftConnection;
import util.GuiOrganizer;
import util.OpenLinks;
+import javax.swing.JTextArea;
@SuppressWarnings("serial")
public class DeleteImage_GUI extends JFrame {
private final JPanel contentPanel = new JPanel();
+ JLabel labelName;
+ JLabel labelUpdate;
+ JLabel labelVerantwortlicher;
+ JLabel labelWeitereVerantwortliche;
+ JLabel labelVorlage;
+ JLabel labelLizenzSoftware;
+ JLabel labelInternet;
+ JLabel labelRam;
+ JLabel labelCPU;
+ JLabel labelID;
+ JLabel labelVersion;
+ JTextArea textAreadesc;
+ private JLabel labelOS;
String[] result;
JRadioButton rdbtnInternetJa;
JRadioButton rdbtnInternetNein;
JComboBox<String> comboBox;
JTable tableAllImages;
JTable tablemyImages;
+ JTable tablePublicVorlagen;
private JTextField textFieldName;
JTabbedPane tabbedPane;
- String[] titles = { "Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung",
- "Verantwortlicher", "Letztes Update", "Schlagwort", "ID", "Version" };
- ThriftConnection con=new ThriftConnection();
+ boolean activeSearch = false;
+ String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung",
+ "Verantwortlicher", "Letztes Update", "ID", "Version", "Template" }; // Angezeigt
+ // werden
+ // aber
+ // nur
+ // Name
+ // (0),
+ // OS
+ // (2),
+ // Verantwortlicher
+ // (4),
+ // Letztes
+ // Update
+ // (5)
+ ThriftConnection con = new ThriftConnection();
Client client = models.Client.clientcon.getClient();
- final DefaultTableModel modelAll = new DefaultTableModel(titles, 0){
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- return false;
- }
+ final DefaultTableModel modelAll = new DefaultTableModel(titles, 0) {
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0) {
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final DefaultTableModel modelPublicVorlagen = new DefaultTableModel(titles,
+ 0) {
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
};
- final DefaultTableModel modelMyImages = new DefaultTableModel(titles,0){
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- return false;
- }
- };
final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
modelAll);
final TableRowSorter<TableModel> rowSorterMyImages = new TableRowSorter<TableModel>(
modelMyImages);
+ final TableRowSorter<TableModel> rowSorterPublicVorlagen = new TableRowSorter<TableModel>(
+ modelPublicVorlagen);
+ private JLabel lblBeschreibung_1;
+ private JTextField textField;
/**
* Create the dialog.
@@ -101,10 +144,83 @@ public class DeleteImage_GUI extends JFrame {
con.closeThriftConnection();
System.exit(0);
}
+
+ @Override
+ public void windowOpened(WindowEvent arg0) {
+ initTableModel(modelAll);
+ initTableModel(modelMyImages);
+ initTableModel(modelPublicVorlagen);
+
+ // auszublendende Angaben
+ // 1=Lizenzpflichtig
+ // 3=Veranstaltung
+ // 6=ID
+ // 7=Version
+ // 8=Template
+ tablemyImages.getColumnModel().getColumn(1).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(1).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(1).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setMaxWidth(0);
+
+ tablePublicVorlagen.getColumnModel().getColumn(1).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(1)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(1)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7)
+ .setMaxWidth(0);
+
+ tableAllImages.getColumnModel().getColumn(1).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(1).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(1).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setMaxWidth(0);
+ // bis hier
+ textFieldName.requestFocusInWindow();
+ }
});
// Verhindert das Vergroessern Des Fensters
setResizable(false);
-
+
try {
// Setzt das Look & Feel auf System
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
@@ -114,9 +230,9 @@ public class DeleteImage_GUI extends JFrame {
e.printStackTrace();
}
// Setzt den Fenstertitel
- setTitle("bwLehrpool Suite *Prototyp* - Image l\u00F6schen");
+ setTitle("bwLehrpool Suite - Image l\u00F6schen");
// Zentriert das Fenster in die Bildmitte
- setBounds(0, 0, 603, 722);
+ setBounds(0, 0, 918, 722);
GuiOrganizer.centerGUI(this);
final DefaultTableModel model = new DefaultTableModel(titles, 0);
@@ -125,7 +241,7 @@ public class DeleteImage_GUI extends JFrame {
{
JPanel panel = new JPanel();
panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 11, 577, 57);
+ panel.setBounds(10, 11, 892, 57);
getContentPane().add(panel);
panel.setLayout(null);
{
@@ -154,16 +270,16 @@ public class DeleteImage_GUI extends JFrame {
panel_1.setBackground(SystemColor.menu);
panel_1.setBorder(new TitledBorder(null, "Filterfunktionen",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 49, 557, 131);
+ panel_1.setBounds(10, 49, 557, 98);
contentPanel.add(panel_1);
panel_1.setLayout(null);
- JLabel lblNewLabel_2 = new JLabel("Anzeigename:");
- lblNewLabel_2.setBounds(10, 30, 250, 20);
+ JLabel lblNewLabel_2 = new JLabel("Name:");
+ lblNewLabel_2.setBounds(10, 30, 80, 20);
panel_1.add(lblNewLabel_2);
JLabel lblInternetIstInnerhalb = new JLabel("Betriebssystem:");
- lblInternetIstInnerhalb.setBounds(10, 58, 250, 20);
+ lblInternetIstInnerhalb.setBounds(10, 58, 80, 20);
panel_1.add(lblInternetIstInnerhalb);
textFieldName = new JTextField();
@@ -176,44 +292,36 @@ public class DeleteImage_GUI extends JFrame {
// Wenn Textfield nicht leer
if (stext != "") {
+ activeSearch = true;
// Filtere nach der Eingabe
rowSorterAll.setRowFilter(RowFilter.regexFilter(
textFieldName.getText(), 0));
rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
textFieldName.getText(), 0));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
-
+ } else {
+ activeSearch = false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ rowSorterAll.setRowFilter(null);
}
}
});
- textFieldName.setBounds(270, 30, 250, 20);
+ textFieldName.setBounds(96, 30, 166, 20);
panel_1.add(textFieldName);
textFieldName.setColumns(10);
- JLabel lblErweiterteSuche = new JLabel(
- "<html><u>Erweiterte Suche*Folgt noch...*</u></html>");
- lblErweiterteSuche.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
-
- // oeffnet das Fenster Extended GUI
- con.closeThriftConnection();
-
- // oeffnet das Fenster Extended GUI
-
- //ExtendedSearchForImages_GUI es = new ExtendedSearchForImages_GUI();
- //es.setVisible(true);
- }
- });
- lblErweiterteSuche.setForeground(Color.BLUE);
-
- lblErweiterteSuche.setBounds(332, 106, 188, 14);
- panel_1.add(lblErweiterteSuche);
-
comboBox = new JComboBox<String>();
try {
- // Holt sich eine Liste aller verf\u00FCgbaren Betriebssysteme vom Server
+ // Holt sich eine Liste aller verf\u00FCgbaren Betriebssysteme vom
+ // Server
List<String> list = client.getAllOS();
// Leeres Item hinzufuegen
comboBox.addItem("");
@@ -225,25 +333,45 @@ public class DeleteImage_GUI extends JFrame {
// TODO Auto-generated catch block
e2.printStackTrace();
JOptionPane.showMessageDialog(null,
- e2.getCause()+"\n"+e2.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e2.getCause() + "\n" + e2.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
// Registriert Auswahlaenderungen der Box
comboBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// Prueft das die Auswahl nicht leer ist
if (comboBox.getSelectedItem().toString() != "") {
- // Filtert nach dem ausgewaehlten Betriebssystem
+ activeSearch = true;
rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox
.getSelectedItem().toString(), 2));
rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
comboBox.getSelectedItem().toString(), 2));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ comboBox.getSelectedItem().toString(), 2));
+ } else {
+ activeSearch = false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ rowSorterAll.setRowFilter(null);
}
}
});
- comboBox.setBounds(270, 58, 250, 20);
+ comboBox.setBounds(96, 58, 166, 20);
panel_1.add(comboBox);
+
+ lblBeschreibung_1 = new JLabel("Beschreibung:");
+ lblBeschreibung_1.setBounds(291, 30, 80, 20);
+ panel_1.add(lblBeschreibung_1);
+
+ textField = new JTextField();
+ textField.setColumns(10);
+ textField.setBounds(381, 30, 166, 20);
+ panel_1.add(textField);
JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
lblHauptmen.addMouseListener(new MouseAdapter() {
@@ -254,7 +382,7 @@ public class DeleteImage_GUI extends JFrame {
con.closeThriftConnection();
// oeffnet das Hauuetmenue
-
+
DeleteImage_GUI.this.setVisible(false);
MainMenue_GUI main = new MainMenue_GUI();
main.setVisible(true);
@@ -268,59 +396,66 @@ public class DeleteImage_GUI extends JFrame {
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
- JLabel lblVlimage = new JLabel("VL-Image");
+ JLabel lblVlimage = new JLabel("Image");
lblVlimage.setForeground(Color.BLUE);
lblVlimage.setBounds(81, 11, 45, 14);
contentPanel.add(lblVlimage);
JLabel label_2 = new JLabel(">");
- label_2.setBounds(133, 11, 13, 14);
+ label_2.setBounds(115, 11, 13, 14);
contentPanel.add(label_2);
JLabel lblNewLabel_1 = new JLabel("Imageauswahl");
- lblNewLabel_1.setBounds(146, 11, 85, 14);
+ lblNewLabel_1.setBounds(128, 11, 85, 14);
contentPanel.add(lblNewLabel_1);
tabbedPane = new JTabbedPane(JTabbedPane.TOP);
tabbedPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent arg0) {
- System.out.println(tabbedPane.getSelectedIndex());
- if (tabbedPane.getSelectedIndex() == 0) {
+ // System.out.println(tabbedPane.getSelectedIndex());
+ if (tabbedPane.getSelectedIndex() == 0 && activeSearch == false) {
String username = person.verantwortlicher.getName() + " "
+ person.verantwortlicher.getVorname();
- // String username="Spitzer Tobias";
rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
username, 4));
- } else if (tabbedPane.getSelectedIndex() == 1) {
-
+ } else if (tabbedPane.getSelectedIndex() == 1
+ && activeSearch == false) {
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ } else if (tabbedPane.getSelectedIndex() == 2
+ && activeSearch == false) {
+ rowSorterAll.setRowFilter(null);
}
}
});
- tabbedPane.setBounds(10, 197, 557, 300);
+ tabbedPane.setBounds(10, 158, 557, 339);
contentPanel.add(tabbedPane);
- initTableModel(modelMyImages);
-
- JScrollPane scrollPaneAllImages = new JScrollPane();
- tableAllImages = new JTable();
- tableAllImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
- tableAllImages.setModel(modelAll);
- tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
- initTableModel(modelAll);
JScrollPane scrollPaneMyImage = new JScrollPane();
tablemyImages = new JTable();
+ tablemyImages.getSelectionModel().addListSelectionListener(
+ new ListSelectionListener() {
+ public void valueChanged(ListSelectionEvent e) {
+ String imageid = modelMyImages.getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 6)
+ .toString();
+ // System.out.println(imageid);
+ String version = modelMyImages.getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 7)
+ .toString();
+ // System.out.println(version);
+ writeImageData(imageid, version);
+ }
+ });
tablemyImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
- tablemyImages.setEnabled(true);
-
tablemyImages.setModel(modelMyImages);
-
tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit();
@@ -330,10 +465,6 @@ public class DeleteImage_GUI extends JFrame {
scrollPaneMyImage.setViewportView(tablemyImages);
tabbedPane.addTab("Meine Images", null, scrollPaneMyImage, null);
- tableAllImages.setRowSorter(rowSorterAll);
-
- scrollPaneAllImages.setViewportView(tableAllImages);
- tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
JScrollPane scrollPaneCoopImages = new JScrollPane();
JTable tableCoopImages = new JTable();
@@ -345,69 +476,318 @@ public class DeleteImage_GUI extends JFrame {
tableCoopImages.getColumnModel().getColumn(4).sizeWidthToFit();
tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit();
- scrollPaneCoopImages.setViewportView(tableCoopImages);
- tabbedPane.addTab("Kooperative Images", null, scrollPaneCoopImages,
- null);
- tabbedPane.setEnabledAt(2, false);
-
- JScrollPane scrollPanePublicImages = new JScrollPane();
- JTable tablePublicImages = new JTable();
- tablePublicImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
- tablePublicImages.setModel(model);
- tablePublicImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicImages.setViewportView(tablePublicImages);
- tabbedPane.addTab("\u00D6ffentliche Images", null,
- scrollPanePublicImages, null);
- tabbedPane.setEnabledAt(3, false);
-
JScrollPane scrollPanePublicVorlagen = new JScrollPane();
- JTable tablePublicVorlagen = new JTable();
+ tablePublicVorlagen = new JTable();
+ tablePublicVorlagen.getSelectionModel().addListSelectionListener(
+ new ListSelectionListener() {
+ public void valueChanged(ListSelectionEvent e) {
+ String imageid = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 6)
+ .toString();
+ // System.out.println(imageid);
+ String version = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 7)
+ .toString();
+ // System.out.println(version);
+ writeImageData(imageid, version);
+ }
+ });
+ tablePublicVorlagen.setModel(modelPublicVorlagen);
tablePublicVorlagen
.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
- tablePublicVorlagen.setModel(model);
+
tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit();
tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit();
tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
-
+ tablePublicVorlagen.setRowSorter(rowSorterPublicVorlagen);
scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
- tabbedPane.addTab("\u00D6ffentliche Vorlagen", null,
- scrollPanePublicVorlagen, null);
- tabbedPane.setEnabledAt(4, false);
+ tabbedPane.addTab("Vorlagen", null, scrollPanePublicVorlagen, null);
+
+ JScrollPane scrollPaneAllImages = new JScrollPane();
+ tableAllImages = new JTable();
+ tableAllImages.getSelectionModel().addListSelectionListener(
+ new ListSelectionListener() {
+ public void valueChanged(ListSelectionEvent e) {
+
+ String imageid = modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 6)
+ .toString();
+ // System.out.println(imageid);
+ String version = modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 7)
+ .toString();
+ // System.out.println(version);
+ writeImageData(imageid, version);
+
+ }
+ });
+ tableAllImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
+ tableAllImages.setModel(modelAll);
+ tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
+ tableAllImages.setRowSorter(rowSorterAll);
+
+ scrollPaneAllImages.setViewportView(tableAllImages);
+ tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
+
+ scrollPaneCoopImages.setViewportView(tableCoopImages);
+ tabbedPane.addTab("bwLehrpool", null, scrollPaneCoopImages, null);
+ tabbedPane.setEnabledAt(3, false);
JButton btnDelete = new JButton("L\u00F6schen");
btnDelete.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
- String imageid="";
- String imageversion="";
+ String imageid = "";
+ String imageversion = "";
int eingabe;
-
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
if (tablemyImages.getSelectedRowCount() != 0) {
// frage, soll das selektierte Daten geloescht werden?
eingabe = JOptionPane.showConfirmDialog(null,
- "Wollen Sie diese Daten l\u00f6schen?", "L\u00f6schen?",
- JOptionPane.YES_NO_OPTION);
+ "Wollen Sie diese Daten l\u00f6schen?",
+ "L\u00f6schen?", JOptionPane.YES_NO_OPTION);
if (eingabe == JOptionPane.YES_OPTION) {
imageid = modelMyImages.getValueAt(
tablemyImages
.convertRowIndexToModel(tablemyImages
- .getSelectedRow()), 7)
+ .getSelectedRow()), 6)
.toString();
imageversion = modelMyImages.getValueAt(
tablemyImages
.convertRowIndexToModel(tablemyImages
- .getSelectedRow()), 8)
+ .getSelectedRow()), 7)
+ .toString();
+
+ // TODO
+ // Image darf nur geloescht werden, wenn keine
+ // Veranstaltung mehr auf das Image verweist.
+ // Unbdingt abfragen!
+
+ try {
+ if (!client.connectedToLecture(imageid,
+ imageversion)) {
+ // System.out.println(imageid);
+ // System.out.println(imageversion);
+ try {
+ client.deleteImageServer(imageid,
+ imageversion);
+ if (client.deleteImageData(imageid,
+ imageversion)) {
+ // if (client.deleteImageServer(imageid
+ // ,imageversion)) {
+
+ DeleteImage_GUI di = new DeleteImage_GUI();
+ di.setVisible(true);
+ dispose();
+
+ /*
+ * } else {
+ *
+ * JOptionPane.showConfirmDialog(null,
+ * "Loeschen vom Server hat leider nicht geklappt!!"
+ * , imageversion,
+ * JOptionPane.OK_CANCEL_OPTION); }
+ */
+
+ } else {
+
+ JOptionPane
+ .showConfirmDialog(
+ null,
+ "L\u00f6schen von der DB hat leider nicht geklappt!!",
+ "Fehler",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ } catch (HeadlessException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(
+ null,
+ e.getCause() + "\n"
+ + e.getStackTrace(),
+ "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
+ } catch (TException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(
+ null,
+ e.getCause() + "\n"
+ + e.getStackTrace(),
+ "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
+ }
+
+ } else {
+
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Image kann nicht gel\u00f6scht werden, da mindestens eine Veranstaltung mit diesem Image verlinkt ist.",
+ "Verlinkung vorhanden",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ } catch (TException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(null, e.getCause()
+ + "\n" + e.getStackTrace(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ }
+ }
+
+ } else if (tablePublicVorlagen.getSelectedRowCount() != 0
+ && modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 4)
+ .equals(username)) {
+
+ // frage, soll das selektierte Daten geloescht werden?
+ eingabe = JOptionPane.showConfirmDialog(null,
+ "Wollen Sie diese Daten l\u00f6schen?",
+ "L\u00f6schen?", JOptionPane.YES_NO_OPTION);
+
+ if (eingabe == JOptionPane.YES_OPTION) {
+
+ imageid = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 6)
+ .toString();
+
+ imageversion = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 7)
+ .toString();
+
+ // TODO
+ // Image darf nur geloescht werden, wenn keine
+ // Veranstaltung mehr auf das Image verweist.
+ // Unbdingt abfragen!
+
+ try {
+ if (!client.connectedToLecture(imageid,
+ imageversion)) {
+ // System.out.println(imageid);
+ // System.out.println(imageversion);
+ try {
+ client.deleteImageServer(imageid,
+ imageversion);
+ if (client.deleteImageData(imageid,
+ imageversion)) {
+ // if (client.deleteImageServer(imageid
+ // ,imageversion)) {
+
+ DeleteImage_GUI di = new DeleteImage_GUI();
+ di.setVisible(true);
+ dispose();
+
+ /*
+ * } else {
+ *
+ * JOptionPane.showConfirmDialog(null,
+ * "Loeschen vom Server hat leider nicht geklappt!!"
+ * , imageversion,
+ * JOptionPane.OK_CANCEL_OPTION); }
+ */
+
+ } else {
+
+ JOptionPane
+ .showConfirmDialog(
+ null,
+ "L\u00f6schen von der DB hat leider nicht geklappt!!",
+ "Fehler",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ } catch (HeadlessException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(
+ null,
+ e.getCause() + "\n"
+ + e.getStackTrace(),
+ "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
+ } catch (TException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(
+ null,
+ e.getCause() + "\n"
+ + e.getStackTrace(),
+ "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
+ }
+
+ } else {
+
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Image kann nicht gel\u00f6scht werden, da mindestens eine Veranstaltung mit diesem Image verlinkt ist.",
+ "Verlinkung vorhanden",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ } catch (TException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(null, e.getCause()
+ + "\n" + e.getStackTrace(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ }
+ }
+
+ } else if (tableAllImages.getSelectedRowCount() != 0
+ && modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 4).equals(
+ username)) {
+
+ // frage, soll das selektierte Daten geloescht werden?
+ eingabe = JOptionPane.showConfirmDialog(null,
+ "Wollen Sie diese Daten l\u00f6schen?",
+ "L\u00f6schen?", JOptionPane.YES_NO_OPTION);
+
+ if (eingabe == JOptionPane.YES_OPTION) {
+
+ imageid = modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 6)
+ .toString();
+
+ imageversion = modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 7)
.toString();
// TODO
@@ -418,23 +798,20 @@ public class DeleteImage_GUI extends JFrame {
try {
if (!client.connectedToLecture(imageid,
imageversion)) {
- System.out.println(imageid);
- System.out.println(imageversion);
+ // System.out.println(imageid);
+ // System.out.println(imageversion);
try {
- client.deleteImageServer(imageid, imageversion);
+ client.deleteImageServer(imageid,
+ imageversion);
if (client.deleteImageData(imageid,
imageversion)) {
// if (client.deleteImageServer(imageid
// ,imageversion)) {
-
-
-
-
+
DeleteImage_GUI di = new DeleteImage_GUI();
di.setVisible(true);
dispose();
-
-
+
/*
* } else {
*
@@ -456,28 +833,37 @@ public class DeleteImage_GUI extends JFrame {
} catch (HeadlessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ JOptionPane.showMessageDialog(
+ null,
+ e.getCause() + "\n"
+ + e.getStackTrace(),
+ "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
} catch (TException e) {
// TODO Auto-generated catch block
e.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ JOptionPane.showMessageDialog(
+ null,
+ e.getCause() + "\n"
+ + e.getStackTrace(),
+ "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
} else {
-
- JOptionPane.showMessageDialog(null,
- "Image kann nicht gel\u00f6scht werden, da mindestens eine Veranstaltung mit diesem Image verlinkt ist.",
- "Verlinkung vorhanden", JOptionPane.INFORMATION_MESSAGE);
+
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Image kann nicht gel\u00f6scht werden, da mindestens eine Veranstaltung mit diesem Image verlinkt ist.",
+ "Verlinkung vorhanden",
+ JOptionPane.INFORMATION_MESSAGE);
}
} catch (TException e) {
// TODO Auto-generated catch block
e.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
+ JOptionPane.showMessageDialog(null, e.getCause()
+ + "\n" + e.getStackTrace(),
"Debug-Message", JOptionPane.ERROR_MESSAGE);
}
}
@@ -495,7 +881,7 @@ public class DeleteImage_GUI extends JFrame {
contentPanel.add(btnDelete);
{
JPanel buttonPane = new JPanel();
- buttonPane.setBounds(0, 640, 597, 33);
+ buttonPane.setBounds(0, 640, 902, 33);
buttonPane.setBackground(SystemColor.menu);
buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
getContentPane().add(buttonPane);
@@ -508,7 +894,6 @@ public class DeleteImage_GUI extends JFrame {
con.closeThriftConnection();
// oeffnet das Hauptmenue
-
MainMenue_GUI main = new MainMenue_GUI();
main.setVisible(true);
@@ -522,13 +907,138 @@ public class DeleteImage_GUI extends JFrame {
}
JSeparator separator = new JSeparator();
- separator.setBounds(0, 78, 597, 2);
+ separator.setBounds(0, 79, 912, 1);
getContentPane().add(separator);
JSeparator separator_1 = new JSeparator();
- separator_1.setBounds(0, 627, 597, 2);
+ separator_1.setBounds(0, 627, 912, 2);
getContentPane().add(separator_1);
+ JPanel panel = new JPanel();
+ panel.setLayout(null);
+ panel.setBorder(new TitledBorder(null, "Detailinformationen",
+
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(586, 85, 316, 531);
+ getContentPane().add(panel);
+
+ JLabel lblName = new JLabel("Name:");
+ lblName.setBounds(10, 87, 130, 14);
+ panel.add(lblName);
+
+ labelName = new JLabel("");
+ labelName.setBounds(10, 102, 296, 14);
+ panel.add(labelName);
+
+ JLabel lblVerantwortlicher = new JLabel("Verantwortlicher:");
+ lblVerantwortlicher.setBounds(10, 259, 130, 14);
+ panel.add(lblVerantwortlicher);
+
+ labelOS = new JLabel("");
+ labelOS.setBounds(10, 216, 296, 14);
+ panel.add(labelOS);
+
+ JLabel lblWeitereVerantwortliche = new JLabel("Betriebssystem:");
+ lblWeitereVerantwortliche.setBounds(10, 202, 130, 14);
+ panel.add(lblWeitereVerantwortliche);
+
+ labelVerantwortlicher = new JLabel("");
+ labelVerantwortlicher.setBounds(10, 272, 296, 14);
+ panel.add(labelVerantwortlicher);
+
+ JLabel label = new JLabel("Weitere Verantwortliche:");
+ label.setBounds(10, 284, 130, 14);
+ panel.add(label);
+
+ labelWeitereVerantwortliche = new JLabel("");
+ labelWeitereVerantwortliche.setBounds(10, 297, 296, 14);
+ panel.add(labelWeitereVerantwortliche);
+
+ labelUpdate = new JLabel("");
+ labelUpdate.setBounds(10, 245, 296, 14);
+ panel.add(labelUpdate);
+
+ JLabel lblLetztesUpdate = new JLabel("Letztes Update:");
+ lblLetztesUpdate.setBounds(10, 231, 130, 14);
+ panel.add(lblLetztesUpdate);
+
+ JLabel lblImageIstVorlage = new JLabel("Image ist Vorlage:");
+ lblImageIstVorlage.setBounds(10, 336, 130, 14);
+ panel.add(lblImageIstVorlage);
+
+ labelVorlage = new JLabel("");
+ labelVorlage.setBounds(10, 350, 296, 14);
+ panel.add(labelVorlage);
+
+ labelLizenzSoftware = new JLabel("");
+ labelLizenzSoftware.setBounds(10, 383, 296, 14);
+ panel.add(labelLizenzSoftware);
+
+ JLabel lblLizenzpflichtigeSoftware = new JLabel(
+ "Lizenzpflichtige Software:");
+ lblLizenzpflichtigeSoftware.setBounds(10, 367, 130, 14);
+ panel.add(lblLizenzpflichtigeSoftware);
+
+ JLabel lblInternet = new JLabel("Internetsperre vorhanden:");
+ lblInternet.setBounds(10, 400, 130, 14);
+ panel.add(lblInternet);
+
+ labelInternet = new JLabel("");
+ labelInternet.setBounds(10, 417, 296, 14);
+ panel.add(labelInternet);
+
+ JLabel lblEmpfehlungRam = new JLabel("Empfehlung RAM:");
+ lblEmpfehlungRam.setBounds(10, 432, 130, 14);
+ panel.add(lblEmpfehlungRam);
+
+ labelRam = new JLabel("");
+ labelRam.setBounds(10, 455, 296, 14);
+ panel.add(labelRam);
+
+ JLabel lblEmpfehlungCpu = new JLabel("Empfehlung CPU:");
+ lblEmpfehlungCpu.setBounds(10, 469, 130, 14);
+ panel.add(lblEmpfehlungCpu);
+
+ labelCPU = new JLabel("");
+ labelCPU.setBounds(10, 487, 296, 14);
+ panel.add(labelCPU);
+
+ JLabel lblTechnischeDaten = new JLabel("Technische Daten:");
+ lblTechnischeDaten.setBounds(10, 322, 296, 14);
+ panel.add(lblTechnischeDaten);
+
+ JLabel lblId = new JLabel("ID:");
+ lblId.setBounds(10, 23, 296, 14);
+ panel.add(lblId);
+
+ labelID = new JLabel("");
+ labelID.setBounds(10, 37, 296, 14);
+ panel.add(labelID);
+
+ labelVersion = new JLabel("");
+ labelVersion.setBounds(10, 73, 296, 14);
+ panel.add(labelVersion);
+
+ JLabel lblVersion = new JLabel("Version:");
+ lblVersion.setBounds(10, 57, 296, 14);
+ panel.add(lblVersion);
+
+ JLabel lblBeschreibung = new JLabel("Beschreibung:");
+ lblBeschreibung.setBounds(10, 119, 130, 14);
+ panel.add(lblBeschreibung);
+
+ JScrollPane scrollPane = new JScrollPane();
+ scrollPane.setBounds(10, 135, 296, 65);
+ panel.add(scrollPane);
+
+ textAreadesc = new JTextArea();
+ textAreadesc.setEditable(false);
+ textAreadesc.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ textAreadesc.setLineWrap(true);
+ textAreadesc.setBackground(SystemColor.menu);
+ scrollPane.setViewportView(textAreadesc);
+
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
@@ -539,15 +1049,15 @@ public class DeleteImage_GUI extends JFrame {
mntmFaq.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
+
OpenLinks open = new OpenLinks();
-
+
URI windows;
try {
windows = new URI(Links.getFAQ());
-
+
open.openWebpage(windows);
-
+
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
@@ -555,7 +1065,6 @@ public class DeleteImage_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmFaq);
-
JMenuItem mntmOtrs = new JMenuItem("OTRS");
mntmOtrs.addMouseListener(new MouseAdapter() {
@@ -563,22 +1072,22 @@ public class DeleteImage_GUI extends JFrame {
public void mousePressed(MouseEvent arg0) {
OpenLinks open = new OpenLinks();
-
+
URI windows;
try {
windows = new URI(Links.getOTRS());
-
+
open.openWebpage(windows);
-
+
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
+
}
});
mnNewMenu_1.add(mntmOtrs);
-
+
JMenuItem menuItem = new JMenuItem("About");
menuItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
@@ -590,7 +1099,7 @@ public class DeleteImage_GUI extends JFrame {
}
- // Initiale Beff\u00FClung eines Table models
+ // Initiale Beffuelung eines Table models
public DefaultTableModel initTableModel(DefaultTableModel model) {
List<server.Image> images;
try {
@@ -600,19 +1109,22 @@ public class DeleteImage_GUI extends JFrame {
Iterator<server.Image> i = images.iterator();
int x = 0;
-
+ SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
+ SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy hh:mm:ss");
while (i.hasNext()) {
- // erzeuge Objekte f\u00FCr die Tabelle
+
+ // System.out.println(out.format(in.parse(images.get(x).updateTime)));
+
+ // erzeuge Objekte fuer die Tabelle
Object[] obj = { images.get(x).getImageName(),
images.get(x).getLicenseRestriction(),
images.get(x).getOsName(),
images.get(x).getLectureName(),
images.get(x).getUserData(),
- images.get(x).getUpdateTime(), "", images.get(x).id,
- images.get(x).getVersion() };
- // System.out.println("id:"+images.get(x).getId());
- // F\u00FCge diese Objekte der Tabelle hinzu
-
+ out.format(in.parse(images.get(x).updateTime)),
+ images.get(x).id, images.get(x).getVersion(),
+ images.get(x).getIsTemplate() };
+ // Fuege diese Objekte der Tabelle hinzu
model.addRow(obj);
x++;
i.next();
@@ -620,14 +1132,49 @@ public class DeleteImage_GUI extends JFrame {
}
return model;
- } catch (TException e1) {
+ } catch (TException | ParseException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
return model;
}
+ public void writeImageData(String id, String version) {
+ try {
+ SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
+ SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy hh:mm:ss");
+ Map<String, String> res = client.getImageData(id, version);
+ labelName.setText(res.get("name"));
+ labelOS.setText(res.get("os"));
+ labelUpdate.setText(out.format(in.parse(res.get("lastupdate"))));
+ labelVerantwortlicher.setText(res.get("owner"));
+ labelWeitereVerantwortliche.setText("Noch nicht Verf�gbar");
+ if (res.get("template").equals("true")) {
+ labelVorlage.setText("Ja");
+ } else {
+ labelVorlage.setText("Nein");
+ }
+ if (res.get("license").equals("1")) {
+ labelLizenzSoftware.setText("Ja");
+ } else {
+ labelLizenzSoftware.setText("Nein");
+ }
+ if (res.get("internet").equals("1")) {
+ labelInternet.setText("Ja");
+ } else {
+ labelInternet.setText("Nein");
+ }
+ labelRam.setText(res.get("ram"));
+ labelCPU.setText(res.get("cpu"));
+ labelID.setText(res.get("id"));
+ labelVersion.setText(res.get("version"));
+ textAreadesc.setText(res.get("desc"));
+ } catch (TException | ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
}
diff --git a/Dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java b/Dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java
index 59483fde..4c6e5629 100644
--- a/Dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java
@@ -44,6 +44,7 @@ import server.Server.Client;
import thrift.ThriftConnection;
import util.GuiOrganizer;
import util.OpenLinks;
+import javax.swing.JScrollPane;
@SuppressWarnings("serial")
public class EditImageAllgemein_GUI extends JFrame {
@@ -55,6 +56,7 @@ public class EditImageAllgemein_GUI extends JFrame {
private JTextField Hochschule;
private JTextField EMail;
private JTextField imagename;
+ private JTextArea textAreadesc;
ThriftConnection con = new ThriftConnection();
Client client = models.Client.clientcon.getClient();
private JPanel panel_2;
@@ -63,6 +65,10 @@ public class EditImageAllgemein_GUI extends JFrame {
private JPanel buttonPane;
private JButton backButton;
private JButton okButton;
+ private boolean textfieldsHaveContent = false; //no textfield is empty
+ private boolean nameIsOK = false; //imagename only contains letters
+ private boolean descriptionLengthOK = false; //description may not be longer than MAX_DESCRIPTION_LENGTH
+ private final int MAX_DESCRIPTION_LENGTH = 254;
/**
* Create the dialog.
@@ -87,7 +93,7 @@ public class EditImageAllgemein_GUI extends JFrame {
e.printStackTrace();
}
// Setzt den Fenstertitel
- setTitle("bwLehrpool Suite *Prototyp* - Image bearbeiten");
+ setTitle("bwLehrpool Suite - Image bearbeiten");
// Zentriert das Fenster in der Bildmitte
setBounds(0, 0, 603, 722);
@@ -187,7 +193,7 @@ public class EditImageAllgemein_GUI extends JFrame {
JLabel lblImagename = new JLabel("Imagename: *");
lblImagename.setBackground(SystemColor.menu);
- lblImagename.setBounds(10, 31, 125, 20);
+ lblImagename.setBounds(10, 23, 125, 20);
panel_1.add(lblImagename);
imagename = new JTextField();
@@ -196,7 +202,7 @@ public class EditImageAllgemein_GUI extends JFrame {
imagename.setBackground(Color.WHITE);
imagename.setText(Image.image.getImagename());
imagename.setColumns(10);
- imagename.setBounds(145, 31, 350, 20);
+ imagename.setBounds(145, 23, 350, 20);
panel_1.add(imagename);
JTextArea txtrGebenSieBitte = new JTextArea();
@@ -205,8 +211,36 @@ public class EditImageAllgemein_GUI extends JFrame {
txtrGebenSieBitte.setFont(new Font("Tahoma", Font.PLAIN, 12));
txtrGebenSieBitte
.setText("Geben Sie bitte einen sprechenden Namen f\u00FCr das Image an.\r\nDieser soll jedoch recht allgemein gehalten werden.\r\nBeispiel: \"Programmieren\", nicht \"Programmieren 1\"");
- txtrGebenSieBitte.setBounds(145, 62, 350, 110);
+ txtrGebenSieBitte.setBounds(145, 48, 350, 55);
panel_1.add(txtrGebenSieBitte);
+
+ JLabel lblBeschreibung = new JLabel("Beschreibung: *");
+ lblBeschreibung.setBackground(SystemColor.menu);
+ lblBeschreibung.setBounds(10, 110, 125, 20);
+ panel_1.add(lblBeschreibung);
+
+ JScrollPane scrollPane = new JScrollPane();
+ scrollPane.setBounds(145, 110, 350, 60);
+ panel_1.add(scrollPane);
+
+ textAreadesc = new JTextArea();
+ textAreadesc.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ textAreadesc.setLineWrap(true);
+ textAreadesc.setText((String) null);
+ textAreadesc.setText(Image.image.getDesc());// null am Anfang, aber
+ // speichert die Eingabe,
+ // wenn man zurueck kommt
+ // zur Seite
+ scrollPane.setViewportView(textAreadesc);
+
+ JTextArea textArea = new JTextArea();
+ textArea.setText("Geben Sie bitte eine Beschreibung für das Image an.\r\nDiese soll jedoch recht spezifisch gehalten werden.\r\nBeispiel: \"Java-Enticklung mit eclipse und MySQL\"");
+ textArea.setLineWrap(true);
+ textArea.setFont(new Font("Tahoma", Font.PLAIN, 12));
+ textArea.setEditable(false);
+ textArea.setBackground(SystemColor.menu);
+ textArea.setBounds(145, 177, 350, 49);
+ panel_1.add(textArea);
JPanel panel = new JPanel();
panel.setBounds(10, 402, 577, 33);
@@ -239,7 +273,7 @@ public class EditImageAllgemein_GUI extends JFrame {
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
- JLabel lblVlimage = new JLabel("VL-Image");
+ JLabel lblVlimage = new JLabel("Image");
lblVlimage.setForeground(Color.BLUE);
lblVlimage.setBounds(81, 11, 45, 14);
contentPanel.add(lblVlimage);
@@ -279,23 +313,27 @@ public class EditImageAllgemein_GUI extends JFrame {
okButton = new JButton("Weiter");
okButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
- // check is textfield is empty
- if (imagename.getText().length() <= 0) {
- JOptionPane.showMessageDialog(null,
- "Bitte geben Sie einen Labornamen ein.",
- "Daten nicht vollst\u00e4ndig",
- JOptionPane.INFORMATION_MESSAGE);
-
- } else {
+ // Prueft die Eingabe und leitet weiter zur naechsten
+ // Seite
+ if (checkContent() == true && checkNameIsLettersOrNumbers() == true && descriptionLenghtOK()== true) {
// setze Namen, egal ob alt oder nicht
Image.image.setImagename(imagename.getText());
- System.out.println("Changing name to:" + imagename.getText()+ "\nNewName is: "+Image.image.getNewName());
+ Image.image.setDesc(textAreadesc.getText());
+ // Info
+ System.out
+ .println("Alle Eingaben in Ordnung. Imagename= \""
+ + Image.image.getImagename()
+ + "\", Imagebeschreibung=\""
+ + Image.image.getDesc()+"\"");
EditImageTechnisch_GUI ea = new EditImageTechnisch_GUI();
ea.setVisible(true);
dispose();
+
+ } else {
+
}// end else
}
});
@@ -408,6 +446,7 @@ public class EditImageAllgemein_GUI extends JFrame {
Image.image.setRam(Integer.parseInt(map.get("ram")));
Image.image.setCpu(Integer.parseInt(map.get("cpu")));
Image.image.setImagepath(map.get("path"));
+ Image.image.setDesc(map.get("desc"));
Image.image.setFilesize(Long.parseLong(map.get("filesize")));
int mode=0;
if(map.get("shareMode").equals("only_local")){
@@ -418,13 +457,75 @@ public class EditImageAllgemein_GUI extends JFrame {
mode=1;
}
Image.image.setShareMode(mode);
+ Image.image.setOS(map.get("os"));
} catch (TException e) {
// TODO Auto-generated catch block
e.printStackTrace();
JOptionPane.showMessageDialog(null,
- e.getCause() + "\n" + e.getMessage(), "Debug-Message",
+ e.getCause() + "\n" + e.getStackTrace(), "Debug-Message",
JOptionPane.ERROR_MESSAGE);
}
- }
-
-}
+ }//end initData()
+
+ public boolean checkNameIsLettersOrNumbers() {
+ nameIsOK = false;
+
+ //only allow letter from alphabet and nothing else
+ if (imagename.getText().matches("[a-zA-Z0-9]+")) {
+ nameIsOK = true;
+ } else {
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Der Imagename darf keine Leer- oder Sonderzeichen enthalten.",
+ "Unerlaubte Zeichen",
+ JOptionPane.INFORMATION_MESSAGE);
+ }// if
+
+ return nameIsOK;
+ }// end nameIsOK
+
+ public boolean checkContent(){
+ textfieldsHaveContent=false;
+
+ //check if any textfield is empty
+ if(imagename.getText().isEmpty() == false
+ && textAreadesc.getText().isEmpty() == false
+ && Vorname.getText().isEmpty() == false
+ && Nachname.getText().isEmpty() == false
+ && Hochschule.getText().isEmpty() == false
+ && EMail.getText().isEmpty() == false) {
+ //all textfields have content
+ textfieldsHaveContent = true;
+ } else {
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Bitte geben Sie alle notwendigen Daten an!",
+ "Daten unvollst\u00e4ndig",
+ JOptionPane.INFORMATION_MESSAGE);
+ }//end if
+
+ return textfieldsHaveContent;
+ }//end checkContent
+
+ public boolean descriptionLenghtOK(){
+ descriptionLengthOK=false;
+
+ //max length is 254 chars
+ if (textAreadesc.getText().length() >= MAX_DESCRIPTION_LENGTH) {
+ descriptionLengthOK=false;
+ JOptionPane
+ .showMessageDialog(null,
+ "Die Beschreibung darf max 254 Zeichen enthalten. Aktuell enthält sie "+textAreadesc.getText().length()+".",
+ "Beschreibung zu umfangreich",
+ JOptionPane.INFORMATION_MESSAGE);
+ }else {
+ descriptionLengthOK=true;
+
+ }
+
+ return descriptionLengthOK;
+ }// enddescriptionLenghtOK()
+
+}//end class
diff --git a/Dozentenmodul/src/main/java/gui/image/EditImageFreigabe_GUI.java b/Dozentenmodul/src/main/java/gui/image/EditImageFreigabe_GUI.java
index e28b774b..147900fe 100644
--- a/Dozentenmodul/src/main/java/gui/image/EditImageFreigabe_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/EditImageFreigabe_GUI.java
@@ -68,7 +68,7 @@ public class EditImageFreigabe_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
}
- setTitle("bwLehrpool Suite *Prototyp* - Image erzeugen");
+ setTitle("bwLehrpool Suite - Image erzeugen");
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -135,7 +135,7 @@ public class EditImageFreigabe_GUI extends JFrame {
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
- JLabel lblVlimage = new JLabel("VL-Image");
+ JLabel lblVlimage = new JLabel("Image");
lblVlimage.setForeground(Color.BLUE);
lblVlimage.setBounds(81, 11, 45, 14);
contentPanel.add(lblVlimage);
@@ -173,7 +173,7 @@ public class EditImageFreigabe_GUI extends JFrame {
continueButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Image.image.setShareMode(comboBox.getSelectedIndex());
- FTPEditUploader_GUI ea=new FTPEditUploader_GUI();
+ PermissionEditImage_GUI ea=new PermissionEditImage_GUI();
ea.setVisible(true);
dispose();
@@ -195,13 +195,7 @@ public class EditImageFreigabe_GUI extends JFrame {
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
-
- JMenu mnNewMenu = new JMenu("Suchen");
- menuBar.add(mnNewMenu);
-
- JMenuItem mntmVlSuche = new JMenuItem("VL Suche");
- mnNewMenu.add(mntmVlSuche);
-
+
JMenu mnNewMenu_1 = new JMenu("Hilfe");
menuBar.add(mnNewMenu_1);
diff --git a/Dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java b/Dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java
index 6573b802..5da9259e 100644
--- a/Dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java
@@ -16,6 +16,7 @@ import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.net.URI;
import java.net.URISyntaxException;
+import java.util.List;
import javax.swing.ButtonGroup;
@@ -37,10 +38,16 @@ import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
+import server.Server.Client;
+import thrift.ThriftConnection;
import util.GuiOrganizer;
import util.OpenLinks;
import models.Image;
import models.Links;
+import javax.swing.JComboBox;
+
+import org.apache.thrift.TException;
+import javax.swing.JCheckBox;
@SuppressWarnings("serial")
public class EditImageTechnisch_GUI extends JFrame {
@@ -49,16 +56,22 @@ public class EditImageTechnisch_GUI extends JFrame {
String[] result;
JSpinner spinnerCPU;
JSpinner spinnerRam;
- JRadioButton rdbtnlicenseJa;
- JRadioButton rdbtnlicenseNein;
- JRadioButton rdbtnInternetJa;
- JRadioButton rdbtnInternetNein;
- JRadioButton radioButtonVorlageJa;
- JRadioButton radioButtonVorlageNein;
+ //JRadioButton rdbtnlicenseJa;
+ //JRadioButton rdbtnlicenseNein;
+ //JRadioButton rdbtnInternetJa;
+ //JRadioButton rdbtnInternetNein;
+ //JRadioButton radioButtonVorlageJa;
+ //JRadioButton radioButtonVorlageNein;
+ private JCheckBox chckbxIsTemplate;
+ private JCheckBox chckbxIsLicensed;
+ private JCheckBox chckbxIsInternetBlocked;
private final ButtonGroup buttonGrouplicense = new ButtonGroup();
private final ButtonGroup buttonGroupInternet = new ButtonGroup();
private final ButtonGroup buttonGroupVorlage = new ButtonGroup();
-
+ JComboBox comboBox;
+ ThriftConnection con = new ThriftConnection();
+ Client client = models.Client.clientcon.getClient();
+
/**
* Create the dialog.
*/
@@ -84,7 +97,7 @@ public class EditImageTechnisch_GUI extends JFrame {
e.printStackTrace();
}
// Setzt den Titel des Fensters
- setTitle("bwLehrpool Suite *Prototyp* - Image bearbeiten");
+ setTitle("bwLehrpool Suite - Image bearbeiten");
// Zentriert das Fenster
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -111,7 +124,7 @@ public class EditImageTechnisch_GUI extends JFrame {
txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
panel.add(txtpnBitteWhlenSie);
}
- contentPanel.setBounds(10, 85, 577, 493);
+ contentPanel.setBounds(10, 85, 577, 532);
contentPanel.setBackground(SystemColor.menu);
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
getContentPane().add(contentPanel);
@@ -121,75 +134,133 @@ public class EditImageTechnisch_GUI extends JFrame {
panel_1.setBackground(SystemColor.menu);
panel_1.setBorder(new TitledBorder(null, "Informationen zum Image",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 25, 557, 136);
+ panel_1.setBounds(10, 25, 557, 167);
contentPanel.add(panel_1);
panel_1.setLayout(null);
JLabel lblNewLabel_2 = new JLabel(
"Image enth\u00E4lt lizenzpflichtige Software:");
- lblNewLabel_2.setBounds(10, 46, 250, 20);
+ lblNewLabel_2.setBounds(10, 77, 250, 20);
panel_1.add(lblNewLabel_2);
-
- rdbtnlicenseJa = new JRadioButton("Ja");
- rdbtnlicenseJa.setSelected(true);
- buttonGrouplicense.add(rdbtnlicenseJa);
- rdbtnlicenseJa.setBounds(266, 45, 109, 23);
- panel_1.add(rdbtnlicenseJa);
-
- rdbtnlicenseNein = new JRadioButton("Nein");
- buttonGrouplicense.add(rdbtnlicenseNein);
- rdbtnlicenseNein.setBounds(377, 45, 109, 23);
- panel_1.add(rdbtnlicenseNein);
- if (Image.image.isLicensed() == true) {
- rdbtnlicenseJa.setSelected(true);
- } else {
- rdbtnlicenseNein.setSelected(true);
- }
+
+ chckbxIsTemplate = new JCheckBox("");
+ chckbxIsTemplate.setBounds(266, 50, 97, 23);
+ panel_1.add(chckbxIsTemplate);
+
+ chckbxIsLicensed = new JCheckBox("");
+ chckbxIsLicensed.setBounds(266, 76, 97, 23);
+ panel_1.add(chckbxIsLicensed);
+
+ chckbxIsInternetBlocked = new JCheckBox("");
+ chckbxIsInternetBlocked.setBounds(266, 104, 97, 23);
+ panel_1.add(chckbxIsInternetBlocked);
+
+ //rdbtnlicenseJa = new JRadioButton("Ja");
+ //rdbtnlicenseJa.setSelected(true);
+ //buttonGrouplicense.add(rdbtnlicenseJa);
+ //rdbtnlicenseJa.setBounds(266, 76, 109, 23);
+ //panel_1.add(rdbtnlicenseJa);
+
+ //rdbtnlicenseNein = new JRadioButton("Nein");
+ //buttonGrouplicense.add(rdbtnlicenseNein);
+ //rdbtnlicenseNein.setBounds(377, 76, 53, 23);
+ //panel_1.add(rdbtnlicenseNein);
+
JLabel lblInternetIstInnerhalb = new JLabel(
"Internet ist innerhalb des Image gesperrt:");
- lblInternetIstInnerhalb.setBounds(10, 74, 250, 20);
+ lblInternetIstInnerhalb.setBounds(10, 105, 250, 20);
panel_1.add(lblInternetIstInnerhalb);
- rdbtnInternetJa = new JRadioButton("Ja");
+ /*rdbtnInternetJa = new JRadioButton("Ja");
buttonGroupInternet.add(rdbtnInternetJa);
- rdbtnInternetJa.setBounds(266, 73, 109, 23);
+ rdbtnInternetJa.setBounds(266, 104, 109, 23);
panel_1.add(rdbtnInternetJa);
rdbtnInternetNein = new JRadioButton("Nein");
rdbtnInternetNein.setSelected(true);
buttonGroupInternet.add(rdbtnInternetNein);
- rdbtnInternetNein.setBounds(377, 73, 109, 23);
+ rdbtnInternetNein.setBounds(377, 104, 53, 23);
panel_1.add(rdbtnInternetNein);
-
+ */
JLabel label = new JLabel("Lizenzserver eintragen:");
- label.setBounds(10, 103, 250, 20);
+ label.setBounds(10, 134, 250, 20);
panel_1.add(label);
JButton button = new JButton("Server-Adresse...");
button.setEnabled(false);
- button.setBounds(266, 102, 157, 23);
+ button.setBounds(266, 133, 157, 23);
panel_1.add(button);
JLabel label_4 = new JLabel("Image ist eine Vorlage:");
- label_4.setBounds(10, 20, 250, 20);
+ label_4.setBounds(10, 51, 250, 20);
panel_1.add(label_4);
- radioButtonVorlageJa = new JRadioButton("Ja");
- buttonGroupVorlage.add(radioButtonVorlageJa);
- radioButtonVorlageJa.setSelected(true);
- radioButtonVorlageJa.setBounds(266, 19, 41, 23);
- panel_1.add(radioButtonVorlageJa);
+ //radioButtonVorlageJa = new JRadioButton("Ja");
+ //buttonGroupVorlage.add(radioButtonVorlageJa);
+ //radioButtonVorlageJa.setBounds(266, 50, 41, 23);
+ //panel_1.add(radioButtonVorlageJa);
+
+ //radioButtonVorlageNein = new JRadioButton("Nein");
+ //radioButtonVorlageNein.setSelected(true);
+ //buttonGroupVorlage.add(radioButtonVorlageNein);
+ //radioButtonVorlageNein.setBounds(377, 50, 46, 23);
+ //panel_1.add(radioButtonVorlageNein);
+
+ JLabel lblBetriebssystem = new JLabel("Betriebssystem:");
+ lblBetriebssystem.setBounds(10, 26, 250, 20);
+ panel_1.add(lblBetriebssystem);
+
+ comboBox = new JComboBox();
+ try {
+ List<String> os=client.getAllOS();
+ for(int i=0;i<os.size();i++)
+ {
+ comboBox.addItem(os.get(i).toString());
+
+ }
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ System.out.println("OS Model:" + Image.image.getOS());
+ for(int i =0;i<comboBox.getItemCount();i++)
+ {
+ if(comboBox.getItemAt(i).equals(Image.image.getOS()+" bit")){
+
+ comboBox.setSelectedIndex(i);
+
+ }
+ }
+ System.out.println(comboBox.getSelectedItem().toString());
+ comboBox.setBounds(270, 26, 277, 20);
+ panel_1.add(comboBox);
+
+
- radioButtonVorlageNein = new JRadioButton("Nein");
- buttonGroupVorlage.add(radioButtonVorlageNein);
- radioButtonVorlageNein.setBounds(377, 19, 46, 23);
- panel_1.add(radioButtonVorlageNein);
if (Image.image.isVorlage() == true) {
- radioButtonVorlageJa.setSelected(true);
+ //radioButtonVorlageJa.setSelected(true);
+ chckbxIsTemplate.setSelected(true);
+ } else {
+ //radioButtonVorlageNein.setSelected(true);
+ chckbxIsTemplate.setSelected(false);
+ }
+
+ if(Image.image.isInternet() == true ){
+ chckbxIsInternetBlocked.setSelected(true);
+ } else {
+ chckbxIsInternetBlocked.setSelected(false);
+ }
+
+ if (Image.image.isLicensed() == true) {
+ //rdbtnlicenseJa.setSelected(true);
+ chckbxIsLicensed.setSelected(true);
+ chckbxIsLicensed.isSelected();
} else {
- radioButtonVorlageNein.setSelected(true);
+ //rdbtnlicenseNein.setSelected(true);
+ chckbxIsLicensed.setSelected(false);
}
+
JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
lblHauptmen.addMouseListener(new MouseAdapter() {
@Override
@@ -209,7 +280,7 @@ public class EditImageTechnisch_GUI extends JFrame {
label_1.setBounds(69, 0, 13, 14);
contentPanel.add(label_1);
- JLabel lblVlimage = new JLabel("VL-Image");
+ JLabel lblVlimage = new JLabel("Image");
lblVlimage.setForeground(Color.BLUE);
lblVlimage.setBounds(81, 0, 45, 14);
contentPanel.add(lblVlimage);
@@ -228,7 +299,7 @@ public class EditImageTechnisch_GUI extends JFrame {
"Empfehlung bez\u00fcglich Ressourcen", TitledBorder.LEADING,
TitledBorder.TOP, null, null));
panel_2.setBackground(SystemColor.menu);
- panel_2.setBounds(10, 172, 557, 338);
+ panel_2.setBounds(10, 203, 557, 329);
contentPanel.add(panel_2);
JTextArea txtrHinweisSolltenSie = new JTextArea();
@@ -236,26 +307,26 @@ public class EditImageTechnisch_GUI extends JFrame {
txtrHinweisSolltenSie.setFont(new Font("Tahoma", Font.PLAIN, 13));
txtrHinweisSolltenSie
.setText("Hinweis: Sollten Sie keine Software einsetzen, die viele Ressourcen ben\u00F6tigt,\r\nk\u00F6nnen Sie sich an den Beispielwerten orientieren.");
- txtrHinweisSolltenSie.setBounds(10, 25, 537, 55);
+ txtrHinweisSolltenSie.setBounds(10, 43, 537, 55);
panel_2.add(txtrHinweisSolltenSie);
JLabel lblNewLabel_3 = new JLabel(
"Wie viel Arbeitsspeicher empfehlen Sie f\u00FCr das Image:");
- lblNewLabel_3.setBounds(10, 91, 280, 20);
+ lblNewLabel_3.setBounds(10, 109, 280, 20);
panel_2.add(lblNewLabel_3);
JLabel lblMindestens = new JLabel("mindestens");
- lblMindestens.setBounds(315, 91, 60, 20);
+ lblMindestens.setBounds(315, 109, 60, 20);
panel_2.add(lblMindestens);
spinnerRam = new JSpinner();
spinnerRam.setModel(new SpinnerNumberModel(1, 1, 8, 1));
- spinnerRam.setBounds(385, 88, 29, 20);
+ spinnerRam.setBounds(385, 106, 29, 20);
spinnerRam.setValue(Image.image.getRam());
panel_2.add(spinnerRam);
JLabel lblGbyte = new JLabel("GByte");
- lblGbyte.setBounds(424, 91, 46, 20);
+ lblGbyte.setBounds(424, 109, 46, 20);
panel_2.add(lblGbyte);
JTextArea txtrBeispielWindows = new JTextArea();
@@ -263,7 +334,7 @@ public class EditImageTechnisch_GUI extends JFrame {
.setText("Beispiel:\r\nWindows 7 32/64 Bit: 2 GByte\r\nLinux/Unix 32/64 Bit: 1 GByte");
txtrBeispielWindows.setFont(new Font("Tahoma", Font.PLAIN, 11));
txtrBeispielWindows.setBackground(SystemColor.menu);
- txtrBeispielWindows.setBounds(20, 111, 280, 55);
+ txtrBeispielWindows.setBounds(20, 129, 280, 55);
panel_2.add(txtrBeispielWindows);
JTextArea txtrBeispielWindows_1 = new JTextArea();
@@ -271,26 +342,26 @@ public class EditImageTechnisch_GUI extends JFrame {
.setText("Beispiel:\r\nWindows 7 32/64 Bit: 1 Kern\r\nLinux/Unix 32/64 Bit: 1 Kern");
txtrBeispielWindows_1.setFont(new Font("Tahoma", Font.PLAIN, 11));
txtrBeispielWindows_1.setBackground(SystemColor.menu);
- txtrBeispielWindows_1.setBounds(20, 226, 280, 55);
+ txtrBeispielWindows_1.setBounds(20, 244, 280, 55);
panel_2.add(txtrBeispielWindows_1);
JLabel lblWieVieleCpus = new JLabel(
"Wie viele CPUs empfehlen Sie f\u00FCr das Image:");
- lblWieVieleCpus.setBounds(10, 201, 280, 20);
+ lblWieVieleCpus.setBounds(10, 219, 280, 20);
panel_2.add(lblWieVieleCpus);
JLabel label_3 = new JLabel("mindestens");
- label_3.setBounds(315, 201, 60, 20);
+ label_3.setBounds(315, 219, 60, 20);
panel_2.add(label_3);
spinnerCPU = new JSpinner();
spinnerCPU.setModel(new SpinnerNumberModel(1, 1, 4, 1));
- spinnerCPU.setBounds(385, 198, 29, 20);
+ spinnerCPU.setBounds(385, 216, 29, 20);
spinnerCPU.setValue(Image.image.getCpu());
panel_2.add(spinnerCPU);
JLabel lblKerne = new JLabel("Kerne");
- lblKerne.setBounds(424, 201, 46, 20);
+ lblKerne.setBounds(424, 219, 46, 20);
panel_2.add(lblKerne);
{
JPanel buttonPane = new JPanel();
@@ -307,17 +378,25 @@ public class EditImageTechnisch_GUI extends JFrame {
spinnerCPU.getValue().toString()).intValue());
Image.image.setRam(Integer.valueOf(
spinnerRam.getValue().toString()).intValue());
- if (rdbtnInternetJa.isSelected() == true) {
+ if (chckbxIsInternetBlocked.isSelected() == true) {
Image.image.setInternet(true);
} else {
Image.image.setInternet(false);
}
- if (rdbtnlicenseJa.isSelected() == true) {
+ if (chckbxIsLicensed.isSelected() == true) {
Image.image.setLicensed(true);
} else {
Image.image.setLicensed(false);
}
+
+ if (chckbxIsTemplate.isSelected() == true) {
+ Image.image.setVorlage(true);
+ } else {
+ Image.image.setVorlage(false);
+ }
+
+ Image.image.setOS(comboBox.getSelectedItem().toString());
// oeffnet das vorherige Fenster
EditImageAllgemein_GUI ei = new EditImageAllgemein_GUI();
ei.setVisible(true);
@@ -336,22 +415,26 @@ public class EditImageTechnisch_GUI extends JFrame {
spinnerCPU.getValue().toString()).intValue());
Image.image.setRam(Integer.valueOf(
spinnerRam.getValue().toString()).intValue());
- if (rdbtnInternetJa.isSelected() == true) {
+ if (chckbxIsInternetBlocked.isSelected() == true) {
Image.image.setInternet(true);
} else {
Image.image.setInternet(false);
}
- if (rdbtnlicenseJa.isSelected() == true) {
+ if (chckbxIsLicensed.isSelected() == true) {
Image.image.setLicensed(true);
} else {
Image.image.setLicensed(false);
}
- if (radioButtonVorlageJa.isSelected() == true) {
+
+ if (chckbxIsTemplate.isSelected() == true) {
Image.image.setVorlage(true);
} else {
Image.image.setVorlage(false);
}
+
+ Image.image.setOS(comboBox.getSelectedItem().toString());
+ System.out.println("Betriebssystem: "+Image.image.getOS()+", istVorlage: "+Image.image.isVorlage()+", Lizenzpflichtig: "+Image.image.isLicensed()+", Internetsperre: "+Image.image.isInternet()+", CPU: "+Image.image.getCpu()+", RAM: "+Image.image.getRam());
// oeffnet das naechste Fenster
EditImageFreigabe_GUI ea=new EditImageFreigabe_GUI();
ea.setVisible(true);
diff --git a/Dozentenmodul/src/main/java/gui/image/ExtendedSearchForImages_GUI.java b/Dozentenmodul/src/main/java/gui/image/ExtendedSearchForImages_GUI.java
deleted file mode 100644
index 872e8f8d..00000000
--- a/Dozentenmodul/src/main/java/gui/image/ExtendedSearchForImages_GUI.java
+++ /dev/null
@@ -1,278 +0,0 @@
-package gui.image;
-
-
-import gui.image.CreateImageAllgemein_GUI;
-import gui.image.FTPCreateUploader_GUI;
-import gui.intro.About_GUI;
-
-import java.awt.FlowLayout;
-import java.awt.Font;
-import java.awt.SystemColor;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.List;
-
-import javax.swing.JButton;
-import javax.swing.JCheckBox;
-import javax.swing.JComboBox;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JMenu;
-import javax.swing.JMenuBar;
-import javax.swing.JMenuItem;
-import javax.swing.JPanel;
-import javax.swing.JSeparator;
-import javax.swing.JTextField;
-import javax.swing.JTextPane;
-import javax.swing.UIManager;
-import javax.swing.UnsupportedLookAndFeelException;
-import javax.swing.border.EmptyBorder;
-import javax.swing.border.TitledBorder;
-
-import org.apache.thrift.TException;
-
-import models.Links;
-import models.Search;
-import server.Server.Client;
-import thrift.ThriftConnection;
-import util.GuiOrganizer;
-import util.OpenLinks;
-
-@SuppressWarnings("serial")
-public class ExtendedSearchForImages_GUI extends JFrame {
-
- private final JPanel contentPanel = new JPanel();
- String[] result;
- private JTextField textField;
- private JTextField textField_1;
- JCheckBox chckbxBestehendesImage;
- JCheckBox chckbxRohling;
- JComboBox<String> comboBox;
- Search search=new Search();
- ThriftConnection con = new ThriftConnection();
- Client client = models.Client.clientcon.getClient();
-
- /**
- * Create the dialog.
- */
- public ExtendedSearchForImages_GUI() {
-
- setResizable(false);
-
- try {
- UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
- } catch (ClassNotFoundException | InstantiationException
- | IllegalAccessException | UnsupportedLookAndFeelException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- setTitle("bwLehrpool Suite *Prototyp* - Erweiterte Suche");
- setBounds(0, 0, 603, 722);
- GuiOrganizer.centerGUI(this);
-
- getContentPane().setLayout(null);
- {
- JPanel panel = new JPanel();
- panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 11, 577, 57);
- getContentPane().add(panel);
- panel.setLayout(null);
- {
- JLabel lblNewLabel = new JLabel("Weitere Suchoptionen");
- lblNewLabel.setBounds(10, 11, 509, 22);
- panel.add(lblNewLabel);
- lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
- }
-
- JTextPane txtpnBitteWhlenSie = new JTextPane();
- txtpnBitteWhlenSie.setEditable(false);
- txtpnBitteWhlenSie.setBackground(SystemColor.menu);
- txtpnBitteWhlenSie.setText("beschreibung");
- txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
- panel.add(txtpnBitteWhlenSie);
- }
- contentPanel.setBounds(10, 85, 577, 493);
- contentPanel.setBackground(SystemColor.menu);
- contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
- getContentPane().add(contentPanel);
- contentPanel.setLayout(null);
-
- JPanel panel_1 = new JPanel();
- panel_1.setBackground(SystemColor.menu);
- panel_1.setBorder(new TitledBorder(null, "Image-Typ", TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 11, 557, 95);
- contentPanel.add(panel_1);
- panel_1.setLayout(null);
-
- JLabel lblNewLabel_2 = new JLabel("Image-Typ");
- lblNewLabel_2.setBounds(10, 39, 176, 20);
- panel_1.add(lblNewLabel_2);
-
- chckbxBestehendesImage = new JCheckBox("Bestehendes Image");
- chckbxBestehendesImage.setSelected(search.isExistingImage());
- chckbxBestehendesImage.setBounds(192, 38, 138, 23);
- panel_1.add(chckbxBestehendesImage);
-
- chckbxRohling = new JCheckBox("Rohling");
- chckbxRohling.setSelected(search.isRohling());
- chckbxRohling.setBounds(332, 38, 97, 23);
- panel_1.add(chckbxRohling);
-
- JPanel panel = new JPanel();
- panel.setLayout(null);
- panel.setBorder(new TitledBorder(null, "Image-Inhalt", TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 117, 557, 95);
- contentPanel.add(panel);
-
- JLabel lblEnthalteneSoftware = new JLabel("Enthaltene Software");
- lblEnthalteneSoftware.setBounds(10, 39, 176, 20);
- panel.add(lblEnthalteneSoftware);
-
- textField = new JTextField();
- textField.setBounds(196, 39, 351, 20);
- textField.setText(search.getSoftware());
- panel.add(textField);
- textField.setColumns(10);
-
- JLabel lblNewLabel_1 = new JLabel("Bitte mit ; getrennt angeben");
- lblNewLabel_1.setBounds(196, 70, 351, 14);
- panel.add(lblNewLabel_1);
-
- JPanel panel_2 = new JPanel();
- panel_2.setLayout(null);
- panel_2.setBorder(new TitledBorder(null, "Informationen zum Ersteller", TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_2.setBackground(SystemColor.menu);
- panel_2.setBounds(10, 223, 557, 123);
- contentPanel.add(panel_2);
-
- JLabel lblNachnameDesErstellers = new JLabel("Nachname des Erstellers");
- lblNachnameDesErstellers.setBounds(10, 39, 176, 20);
- panel_2.add(lblNachnameDesErstellers);
-
- textField_1 = new JTextField();
- textField_1.setColumns(10);
- textField_1.setBounds(196, 39, 351, 20);
- textField_1.setText(search.getCreator());
- panel_2.add(textField_1);
-
- JLabel lblHochschuleuniversitt = new JLabel("Hochschule/Universit\u00E4t");
- lblHochschuleuniversitt.setBounds(10, 70, 176, 20);
- panel_2.add(lblHochschuleuniversitt);
-
- comboBox = new JComboBox<String>();
- try {
- List<String> universities=client.getAllUniversities();
- for(int i=0; i< universities.size();i++)
- {
- comboBox.addItem(universities.get(i).toString());
- }
- } catch (TException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }
- comboBox.setBounds(196, 70, 351, 20);
- panel_2.add(comboBox);
- {
- JPanel buttonPane = new JPanel();
- buttonPane.setBounds(0, 640, 597, 33);
- buttonPane.setBackground(SystemColor.menu);
- buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
- getContentPane().add(buttonPane);
- {
- JButton cancelButton = new JButton("\u00DCbernehmen");
- cancelButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- search.setExistingImage(chckbxBestehendesImage.isSelected());
- search.setRohling(chckbxRohling.isSelected());
- search.setSoftware(textField.getText());
- search.setCreator(textField_1.getText());
- search.setHochschule(comboBox.getSelectedItem().toString());
- System.out.println("Working :" +search.getSoftware());
- dispose();
- }
- });
- cancelButton.setActionCommand("Cancel");
- buttonPane.add(cancelButton);
- }
- }
-
- JSeparator separator = new JSeparator();
- separator.setBounds(0, 78, 597, 2);
- getContentPane().add(separator);
-
- JSeparator separator_1 = new JSeparator();
- separator_1.setBounds(0, 627, 597, 2);
- getContentPane().add(separator_1);
-
- JMenuBar menuBar = new JMenuBar();
- setJMenuBar(menuBar);
-
- JMenu mnNewMenu = new JMenu("Suchen");
- menuBar.add(mnNewMenu);
-
- JMenuItem mntmVlSuche = new JMenuItem("VL Suche");
- mnNewMenu.add(mntmVlSuche);
-
- JMenu mnNewMenu_1 = new JMenu("Hilfe");
- menuBar.add(mnNewMenu_1);
-
- JMenuItem mntmFaq = new JMenuItem("FAQ");
- mntmFaq.addMouseListener(new MouseAdapter() {
- @Override
- public void mousePressed(MouseEvent arg0) {
-
- OpenLinks open = new OpenLinks();
-
- URI windows;
- try {
- windows = new URI(Links.getFAQ());
-
- open.openWebpage(windows);
-
- } catch (URISyntaxException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- });
- mnNewMenu_1.add(mntmFaq);
-
-
- JMenuItem mntmOtrs = new JMenuItem("OTRS");
- mntmOtrs.addMouseListener(new MouseAdapter() {
- @Override
- public void mousePressed(MouseEvent arg0) {
-
- OpenLinks open = new OpenLinks();
-
- URI windows;
- try {
- windows = new URI(Links.getOTRS());
-
- open.openWebpage(windows);
-
- } catch (URISyntaxException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- }
- });
- mnNewMenu_1.add(mntmOtrs);
-
- JMenuItem mntmAbout = new JMenuItem("About");
- mntmAbout.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- About_GUI ab = new About_GUI();
- ab.setVisible(true);
- }
- });
- mnNewMenu_1.add(mntmAbout);
-
- }
-}
diff --git a/Dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java b/Dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java
index 88457e5a..a9461bb4 100644
--- a/Dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java
@@ -14,6 +14,7 @@ import java.awt.event.WindowEvent;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.io.File;
+import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import java.text.DateFormat;
@@ -43,6 +44,8 @@ import models.SessionData;
import models.person;
import org.apache.thrift.TException;
+import org.ini4j.InvalidFileFormatException;
+import org.ini4j.Wini;
import server.Server.Client;
import thrift.ThriftConnection;
@@ -73,6 +76,7 @@ public class FTPCreateUploader_GUI extends JFrame implements
JLabel labelfilesize;
JLabel labelZeit;
JLabel labelverbleibend;
+ JFileChooser fc;
long filesize;
double speed;
long bytesread;
@@ -83,29 +87,47 @@ public class FTPCreateUploader_GUI extends JFrame implements
JButton btnUploadStarten = new JButton("Upload auf Server starten");
JButton btnZurck = new JButton("Zur\u00FCck");
int progress = 0; // progress of upload
+ private boolean isCurrentlyLoading = false; // currently up or downloading
+ // file
-
/**
* Create the frame.
*/
public FTPCreateUploader_GUI() {
+
+ final Object[] options = { "Beenden", "Abbrechen" };
+
addWindowListener(new WindowAdapter() {
+
@Override
public void windowClosing(WindowEvent arg0) {
+
if (taskrun == true) {
- try {
- client.DeleteFtpUser(user.userName);
- } catch (TException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
- }
- task.cancel(true);
- }
- con.closeThriftConnection();
- System.exit(0);
+ // check if user wants to quit.
+ int choice = JOptionPane
+ .showOptionDialog(
+ null,
+ "Aktuell ist ein Upload aktiv. Wollen Sie diesen Abbrechen und das Programm beenden?",
+ "Upload aktiv",
+ JOptionPane.YES_NO_CANCEL_OPTION,
+ JOptionPane.QUESTION_MESSAGE, null,
+ options, options[1]);
+ // 0=beenden, 1=abbrechen
+ if (choice == 0) {
+ try {
+ client.DeleteFtpUser(user.userName);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ task.cancel(true);
+ con.closeThriftConnection();
+ System.exit(0);
+ }// end if choice
+ } else {
+ // no upload running, close window
+ System.exit(0);
+ }// end if taskrun
}// end window closing
});
setResizable(false);
@@ -117,13 +139,15 @@ public class FTPCreateUploader_GUI extends JFrame implements
// TODO Auto-generated catch block
e.printStackTrace();
JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e.getCause() + "\n" + e.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
// filename=name;
setBackground(Color.WHITE);
- setTitle("Dozentenmodul *Prototyp* - Image erzeugen");
+ setTitle("Dozentenmodul - Image erzeugen");
+ // Aktion die beim Schliessen durchgefuehrt werden soll
+ setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -137,7 +161,22 @@ public class FTPCreateUploader_GUI extends JFrame implements
JButton btnSpeicherortAuswhlen = new JButton("Image ausw\u00E4hlen");
btnSpeicherortAuswhlen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
- JFileChooser fc = new JFileChooser();
+ try {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ fc = new JFileChooser(ini.get("main",
+ "Letzter Uploadpfad", String.class));
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
+
fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
fc.showOpenDialog(getParent());
@@ -159,16 +198,28 @@ public class FTPCreateUploader_GUI extends JFrame implements
btnSpeicherortAuswhlen.setVerticalAlignment(SwingConstants.TOP);
contentPanel.add(btnSpeicherortAuswhlen);
}
-
lblPath = new JLabel("");
+ try {
+ Wini ini = new Wini(new File("C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ lblPath.setText(ini.get("main", "Letzter Uploadpfad", String.class));
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
+
lblPath.addPropertyChangeListener(new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent arg0) {
- if (lblPath.getText().isEmpty()) {
+ if (lblPath.getText() == null) {
// wenn leer, dann upload button nicht freigeben
btnUploadStarten.setEnabled(false);
btnUploadStarten.setText("Bitte warten");
- } else {
- // wenn leer, dann upload button nicht freigeben
+ } else if (lblPath.getText().endsWith(".vmdk")) {
+ // wenn leer, dann upload button freigeben
btnUploadStarten.setEnabled(true);
btnUploadStarten.setText("Upload auf Server starten");
}
@@ -272,7 +323,7 @@ public class FTPCreateUploader_GUI extends JFrame implements
label_3.setBounds(80, 91, 14, 14);
contentPanel.add(label_3);
- JLabel lblVlimage = new JLabel("VL-Image");
+ JLabel lblVlimage = new JLabel("Image");
lblVlimage.setForeground(Color.BLUE);
lblVlimage.setBounds(91, 88, 46, 20);
contentPanel.add(lblVlimage);
@@ -315,19 +366,50 @@ public class FTPCreateUploader_GUI extends JFrame implements
finishButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
writeData();
+ try {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+
+ // check if path has content, then write to file
+ if (lblPath.getText().contains("\\") == true) {
+ System.out.println("Hole Infos aus Label: "
+ + lblPath.getText());
+ ini.put("main",
+ "Letzter Uploadpfad",
+ lblPath.getText().substring(
+ 0,
+ lblPath.getText().lastIndexOf(
+ "\\")));
+ ini.store();
+ } else {
+ System.out.println("Mache nix");
+ }// end if
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
dispose();
MainMenue_GUI m = new MainMenue_GUI();
m.setVisible(true);
if (taskrun == true) {
try {
client.DeleteFtpUser(user.userName);
-
+
} catch (TException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ JOptionPane.showMessageDialog(
+ null,
+ e1.getCause() + "\n"
+ + e1.getStackTrace(),
+ "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
task.cancel(true);
}
@@ -337,11 +419,37 @@ public class FTPCreateUploader_GUI extends JFrame implements
btnZurck.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- dispose();
-
- CreateImageTechnisch_GUI m = new CreateImageTechnisch_GUI();
- m.setVisible(true);
- }
+ // check if loading file or not
+ if (isCurrentlyLoading() == true) {
+ int choice = JOptionPane
+ .showOptionDialog(
+ null,
+ "Nicht abgeschlossene Uploads werden beendet. Trotzdem zurück gehen?",
+ "Warnung",
+ JOptionPane.YES_NO_CANCEL_OPTION,
+ JOptionPane.QUESTION_MESSAGE, null,
+ options, options[1]);
+ // 0=beenden, 1=abbrechen
+ if (choice == 0) {
+ try {
+ client.DeleteFtpUser(user.userName);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ task.cancel(true);
+ // not loading files, go back one page
+ dispose();
+ PermissionCreateImage_GUI m = new PermissionCreateImage_GUI();
+ m.setVisible(true);
+
+ }// end if choice
+ } else {
+ dispose();
+ PermissionCreateImage_GUI m = new PermissionCreateImage_GUI();
+ m.setVisible(true);
+ }// end else
+ }// end action
});
btnZurck.setActionCommand("Cancel");
buttonPane.add(btnZurck);
@@ -352,55 +460,45 @@ public class FTPCreateUploader_GUI extends JFrame implements
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
-
+
JMenu menu = new JMenu("Hilfe");
menuBar.add(menu);
-
+
JMenuItem menuItem = new JMenuItem("FAQ");
menuItem.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
OpenLinks open = new OpenLinks();
-
URI windows;
try {
windows = new URI(Links.getFAQ());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
}
});
menu.add(menuItem);
-
+
JMenuItem menuItem_1 = new JMenuItem("OTRS");
menuItem_1.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
OpenLinks open = new OpenLinks();
-
URI windows;
try {
windows = new URI(Links.getOTRS());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
}
});
menu.add(menuItem_1);
-
+
JMenuItem mntmAbout = new JMenuItem("About");
mntmAbout.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
@@ -420,32 +518,32 @@ public class FTPCreateUploader_GUI extends JFrame implements
btnUploadStarten.setText("Bitte warten");
try {
- System.out.println("Test");
+ System.out.println("Getting FTP User");
user = client.getFtpUser();
- System.out.println("FTP name" + user.userName);
- System.out.println("FTP path" + user.path);
- System.out.println("FTP pass" + user.password);
+ System.out.println("FTP name: " + user.userName);
+ System.out.println("FTP path: " + user.path);
+ System.out.println("FTP pass: " + user.password);
} catch (TException e) {
// TODO Auto-generated catch block
e.printStackTrace();
JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e.getCause() + "\n" + e.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
DateFormat formatter = new SimpleDateFormat("yyyMMddhhmmss");
- System.out.println(formatter.format(new Date()) + "_"
- + person.verantwortlicher.getHochschule() + "_"
+ System.out.println("Setting new Name: " + formatter.format(new Date())
+ + "_" + person.verantwortlicher.getHochschule() + "_"
+ person.verantwortlicher.getUsername() + "_"
+ Image.image.getImagename() + ".vmdk");
Image.image.setNewName(formatter.format(new Date()) + "_"
+ person.verantwortlicher.getHochschule() + "_"
+ person.verantwortlicher.getUsername() + "_"
+ Image.image.getImagename() + ".vmdk");
- System.out.println("Uploading to host: "+host);
-
+ System.out.println("Uploading to host: " + host);
+
task = new UploadTask(host, port, user.userName, user.password,
- user.path+"temp/", uploadFile);
+ user.path + "temp/", uploadFile);
task.addPropertyChangeListener(this);
task.execute();
@@ -458,28 +556,16 @@ public class FTPCreateUploader_GUI extends JFrame implements
if ("progress" == arg0.getPropertyName()) {
progress = (Integer) arg0.getNewValue();
progressBar.setValue(progress);
-
- // Button zum Fertigstellen freischalten, wenn 100% erreicht sind
- if (progress == 0 || progress == 100) {
- // not uploading currently
- btnZurck.setEnabled(true);
- } else {
- // currently uploading, don't let user interact
- btnZurck.setEnabled(false);
- }
-
- // Fertigstellen erlauben wenn upload abgeschlossen
- if (progress == 100) {
- finishButton.setEnabled(true);
-
- } else {
- finishButton.setEnabled(false);
-
- }
}
-
+ // Fertigstellen erlauben wenn upload abgeschlossen
+ if (isCurrentlyLoading() == false) {
+ // isCurrentlyLoading();
+ finishButton.setEnabled(true);
+ } else {
+ finishButton.setEnabled(false);
+ }
if ("speed" == arg0.getPropertyName()) {
speed = (double) arg0.getNewValue();
@@ -520,8 +606,9 @@ public class FTPCreateUploader_GUI extends JFrame implements
public boolean writeData() {
try {
-
+
client.writeVLdata(Image.image.getImagename(),
+ Image.image.getDesc(),
person.verantwortlicher.getUsername(),
person.verantwortlicher.getVorname(),
person.verantwortlicher.getName(),
@@ -530,18 +617,43 @@ public class FTPCreateUploader_GUI extends JFrame implements
person.verantwortlicher.getTel(),
person.verantwortlicher.getFakultaet(),
Image.image.isLicensed(), Image.image.isInternet(),
- Image.image.getRam(), Image.image.getCpu(),
- "temp/" + Image.image.getNewName(),Image.image.isVorlage(),Image.image.getFilesize(),Image.image.getShareMode());
+ Image.image.getRam(), Image.image.getCpu(), "temp/"
+ + Image.image.getNewName(),
+ Image.image.isVorlage(), Image.image.getFilesize(),
+ Image.image.getShareMode(), Image.image.getOS());
+
client.startFileCopy(Image.image.getNewName());
+
+ client.writeImageRights(Image.image.getImagename(),
+ person.verantwortlicher.getUsername(),
+ person.verantwortlicher.getName(),
+ person.verantwortlicher.getVorname(),
+ person.verantwortlicher.getEMail(),
+ person.verantwortlicher.getHochschule(),
+ person.verantwortlicher.getRole());
} catch (TException e) {
// TODO Auto-generated catch block
e.printStackTrace();
JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e.getCause() + "\n" + e.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
return false;
}
return true;
- }
-} \ No newline at end of file
+ }// end writeData()
+
+ public boolean isCurrentlyLoading() {
+ isCurrentlyLoading = false;
+
+ if (labelverbleibend.getText().equals("0 MB")
+ || labelverbleibend.getText().equals("0")) {
+ isCurrentlyLoading = false;
+ } else {
+ isCurrentlyLoading = true;
+ }
+
+ return isCurrentlyLoading;
+ }// end isCurrentlyLoading()
+
+}// end class \ No newline at end of file
diff --git a/Dozentenmodul/src/main/java/gui/image/FTPDownloader_GUI.java b/Dozentenmodul/src/main/java/gui/image/FTPEditDownloader_GUI.java
index d21da67e..013c2774 100644
--- a/Dozentenmodul/src/main/java/gui/image/FTPDownloader_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/FTPEditDownloader_GUI.java
@@ -2,6 +2,7 @@ package gui.image;
import java.awt.BorderLayout;
import java.awt.Color;
+import java.awt.Cursor;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.SystemColor;
@@ -14,6 +15,7 @@ import java.awt.event.WindowEvent;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.io.File;
+import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
@@ -39,6 +41,8 @@ import models.Links;
import models.SessionData;
import org.apache.thrift.TException;
+import org.ini4j.InvalidFileFormatException;
+import org.ini4j.Wini;
import server.Server.Client;
import server.User;
@@ -50,7 +54,8 @@ import gui.intro.About_GUI;
import gui.intro.MainMenue_GUI;
@SuppressWarnings("serial")
-public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener {
+public class FTPEditDownloader_GUI extends JFrame implements
+ PropertyChangeListener {
@SuppressWarnings("unused")
private JPanel contentPane;
@@ -67,6 +72,7 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
JLabel lblBytesread;
JLabel lblNewLabel_3;
JLabel labelVerbleibend;
+ JFileChooser fc;
long filesize;
double speed;
int progress = 0; // progress of download
@@ -77,36 +83,49 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
Client client = models.Client.clientcon.getClient();
JButton btnZurck = new JButton("Zur\u00FCck");
JButton btnDownloadStarten = new JButton("Download starten");
- JButton btnMainMenu = new JButton("Hauptmen\u00FC");
-
+ private JLabel lblAnleitung;
+ private boolean isCurrentlyLoading = false; // currently up or downloading
+ // file
/**
* Create the frame.
*/
- public FTPDownloader_GUI() {
+ public FTPEditDownloader_GUI() {
+
+ final Object[] options = { "Beenden", "Abbrechen" };
+
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
if (taskrun == true) {
- try {
- client.DeleteFtpUser(user.userName);
- con.closeThriftConnection();
- } catch (TException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
- }
- task.cancel(true);
- }
- //dispose();
- System.exit(0);
- }//end window closing
+ // check if user wants to quit.
+ int choice = JOptionPane
+ .showOptionDialog(
+ null,
+ "Aktuell ist ein Download aktiv. Wollen Sie diesen Abbrechen und das Programm beenden?",
+ "Upload aktiv",
+ JOptionPane.YES_NO_CANCEL_OPTION,
+ JOptionPane.QUESTION_MESSAGE, null,
+ options, options[1]);
+ // 0=beenden, 1=abbrechen
+ if (choice == 0) {
+ try {
+ client.DeleteFtpUser(user.userName);
+ con.closeThriftConnection();
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ task.cancel(true);
+ System.exit(0);
+ }// end if coice
+ } else {
+ // no download running, close window
+ System.exit(0);
+ }// end if taskrun
+ }// end window closing
});
setResizable(false);
- // setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
-
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException
@@ -116,11 +135,13 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
}
setBackground(Color.WHITE);
- setTitle("Dozentenmodul *Prototyp* - Image herunterladen");
+ setTitle("Dozentenmodul - Image herunterladen");
+ // Aktion die beim Schliessen durchgefuehrt werden soll
+ setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
-
+
getContentPane().setLayout(new BorderLayout());
contentPanel.setBackground(SystemColor.menu);
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
@@ -131,10 +152,29 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
"Speicherort ausw\u00E4hlen");
btnSpeicherortAuswhlen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
- JFileChooser fc = new JFileChooser();
- fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
- fc.showOpenDialog(getParent());
+ try {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ System.out.println("FileChooser Pfad: "
+ + ini.get("main", "Letzter Downloadpfad",
+ String.class));
+ fc = new JFileChooser(ini.get("main",
+ "Letzter Downloadpfad", String.class));
+ fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
+
+ fc.showOpenDialog(getParent());
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
+
File dir = fc.getSelectedFile();
// check if directory is selected
if (dir != null) {
@@ -153,14 +193,27 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
}
lblPath = new JLabel("");
+ try {
+ Wini ini = new Wini(new File("C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ lblPath.setText(ini.get("main", "Letzter Downloadpfad",
+ String.class));
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
lblPath.addPropertyChangeListener(new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent arg0) {
- if (lblPath.getText().isEmpty()) {
+ if (lblPath.getText() == null) {
// wenn leer, dann upload button nicht freigeben
btnDownloadStarten.setEnabled(false);
btnDownloadStarten.setText("Bitte warten");
} else {
- // wenn leer, dann upload button nicht freigeben
+ // wenn leer, dann upload button freigeben
btnDownloadStarten.setEnabled(true);
btnDownloadStarten.setText("Download starten");
}
@@ -239,7 +292,8 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
panel.add(lblImageDownloader);
JTextPane txtpnWhlenSieEinen = new JTextPane();
- txtpnWhlenSieEinen.setText("W\u00E4hlen Sie einen Ort aus, um das von Ihnen gw\u00E4hlte Image erunter zu laden.");
+ txtpnWhlenSieEinen
+ .setText("W\u00E4hlen Sie einen Ort aus, um das von Ihnen gw\u00E4hlte Image erunter zu laden.");
txtpnWhlenSieEinen.setEditable(false);
txtpnWhlenSieEinen.setBackground(SystemColor.menu);
txtpnWhlenSieEinen.setBounds(10, 36, 509, 32);
@@ -258,7 +312,7 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
label_2.setBounds(80, 95, 14, 14);
contentPanel.add(label_2);
- JLabel label_3 = new JLabel("VL-Image");
+ JLabel label_3 = new JLabel("Image");
label_3.setForeground(Color.BLUE);
label_3.setBounds(91, 92, 46, 20);
contentPanel.add(label_3);
@@ -289,62 +343,52 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
JLabel lblKlickenSieAuf = new JLabel(
"Klicken Sie auf \"Fertigstellen\".");
- lblKlickenSieAuf.setBounds(98, 423, 241, 14);
+ lblKlickenSieAuf.setBounds(102, 423, 241, 14);
contentPanel.add(lblKlickenSieAuf);
-
+
JMenuBar menuBar = new JMenuBar();
menuBar.setBounds(0, 0, 597, 21);
contentPanel.add(menuBar);
-
+
JMenu menu = new JMenu("Hilfe");
menuBar.add(menu);
-
+
JMenuItem menuItem = new JMenuItem("FAQ");
menuItem.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
OpenLinks open = new OpenLinks();
-
URI windows;
try {
windows = new URI(Links.getFAQ());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
}
});
menu.add(menuItem);
-
+
JMenuItem menuItem_1 = new JMenuItem("OTRS");
menuItem_1.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
OpenLinks open = new OpenLinks();
-
URI windows;
try {
windows = new URI(Links.getOTRS());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
}
});
menu.add(menuItem_1);
-
+
JMenuItem mntmAbout = new JMenuItem("About");
mntmAbout.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
@@ -353,6 +397,27 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
}
});
menu.add(mntmAbout);
+
+ lblAnleitung = new JLabel(
+ "<HTML><U>Anleitung zum erstellen einer virtuellen Maschine herunterladen</U></HTML>");
+ lblAnleitung.setForeground(Color.BLUE);
+ lblAnleitung.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mouseClicked(MouseEvent arg0) {
+ OpenLinks open = new OpenLinks();
+
+ URI anleitung;
+ try {
+ anleitung = new URI(Links.getAnleitungVMDK());
+ open.openWebpage(anleitung);
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ });
+ lblAnleitung.setBounds(102, 448, 311, 14);
+ contentPanel.add(lblAnleitung);
{
JPanel buttonPane = new JPanel();
buttonPane.setBackground(UIManager.getColor("Button.background"));
@@ -361,39 +426,77 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
{
btnZurck.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- if (taskrun == true) {
- task.cancel(true);
+ // check if loading file or not
+ if (isCurrentlyLoading() == true) {
+ int choice = JOptionPane
+ .showOptionDialog(
+ null,
+ "Nicht abgeschlossene Uploads werden beendet. Trotzdem zurück gehen?",
+ "Warnung",
+ JOptionPane.YES_NO_CANCEL_OPTION,
+ JOptionPane.QUESTION_MESSAGE, null,
+ options, options[1]);
+ // 0=beenden, 1=abbrechen
+ if (choice == 0) {
+ task.cancel(true);
+ try {
+ client.DeleteFtpUser(user.userName);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ try {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ ini.put("main", "Letzter Downloadpfad",
+ lblPath.getText());
+ ini.store();
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
+ // go back one page
+ SearchEditImage_GUI se = new SearchEditImage_GUI();
+ se.setVisible(true);
+ dispose();
+ }// end choice
+
+ } else {
+
try {
- client.DeleteFtpUser(user.userName);
- } catch (TException e1) {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ ini.put("main", "Letzter Downloadpfad",
+ lblPath.getText());
+ ini.store();
+ } catch (InvalidFileFormatException e2) {
// TODO Auto-generated catch block
- e1.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
}
- }
-
- SearchEditImage_GUI se = new SearchEditImage_GUI();
- se.setVisible(true);
- dispose();
+ // go back one page
+ SearchEditImage_GUI se = new SearchEditImage_GUI();
+ se.setVisible(true);
+ dispose();
+
+ }// end else
+
}
});
btnZurck.setActionCommand("Cancel");
buttonPane.add(btnZurck);
}
-
-
- btnMainMenu.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent arg0) {
-
- MainMenue_GUI mm = new MainMenue_GUI();
- mm.setVisible(true);
- dispose();
- }
- });
- btnMainMenu.setActionCommand("Cancel");
- buttonPane.add(btnMainMenu);
}
setVisible(true);
@@ -408,19 +511,21 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
try {
user = client.getFtpUser();
- downloadFile = user.path+"/"+client.getPathOfImage(Image.image.getImageId(),
- Image.image.getVersion());
+ downloadFile = user.path
+ + "/"
+ + client.getPathOfImage(Image.image.getImageId(),
+ Image.image.getVersion());
} catch (TException e) {
// TODO Auto-generated catch block
e.printStackTrace();
JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e.getCause() + "\n" + e.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
task = new DownloadTask(host, port, user.userName, user.password,
- downloadFile, lblPath.getText(), this);
+ downloadFile, lblPath.getText());
task.addPropertyChangeListener(this);
task.execute();
taskrun = true;
@@ -433,22 +538,10 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
if ("progress" == arg0.getPropertyName()) {
progress = (Integer) arg0.getNewValue();
progressBar.setValue(progress);
-
- // Button zum Fertigstellen freischalten, wenn 100% erreicht sind
- if (progress == 0 || progress == 100) {
- // not uploading currently
- btnZurck.setEnabled(true);
- btnMainMenu.setEnabled(true);
- } else {
- // currently uploading, don't let user interact
- btnZurck.setEnabled(false);
- btnMainMenu.setEnabled(false);
- }
}
if ("speed" == arg0.getPropertyName()) {
speed = (double) arg0.getNewValue();
- // if(speed<=1){
downspeed.setText(String.valueOf(speed).substring(0,
String.valueOf(speed).lastIndexOf(".") + 3)
@@ -480,5 +573,18 @@ public class FTPDownloader_GUI extends JFrame implements PropertyChangeListener
}
- }
-} \ No newline at end of file
+ }// end PropertyChange()
+
+ public boolean isCurrentlyLoading() {
+ isCurrentlyLoading = false;
+
+ if (labelVerbleibend.getText().equals("0 MB") || labelVerbleibend.getText().equals("0")) {
+ isCurrentlyLoading = false;
+ } else {
+ isCurrentlyLoading = true;
+ }
+ System.out.println("isCurrentlyLoading="+isCurrentlyLoading);
+ return isCurrentlyLoading;
+ }// end isCurrentlyLoading()
+
+}// end class
diff --git a/Dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java b/Dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java
index 9e21aba3..5d679ea5 100644
--- a/Dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java
@@ -14,6 +14,7 @@ import java.awt.event.WindowEvent;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.io.File;
+import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import java.text.DateFormat;
@@ -43,6 +44,8 @@ import models.SessionData;
import models.person;
import org.apache.thrift.TException;
+import org.ini4j.InvalidFileFormatException;
+import org.ini4j.Wini;
import server.Server.Client;
import thrift.ThriftConnection;
@@ -73,9 +76,11 @@ public class FTPEditUploader_GUI extends JFrame implements
JLabel labelfilesize;
JLabel labelZeit;
JLabel labelverbleibend;
+ JFileChooser fc;
long filesize;
double speed;
long bytesread;
+ boolean fileupload = false;
boolean taskrun = false;
int progress = 0;
ThriftConnection con = new ThriftConnection();
@@ -84,31 +89,51 @@ public class FTPEditUploader_GUI extends JFrame implements
JButton btnSpeicherortAuswhlen = new JButton("Image ausw\u00E4hlen");
JButton finishButton = new JButton("Fertigstellen");
JButton btnZurck = new JButton("Zur\u00FCck");
+ private boolean isCurrentlyLoading = false; // currently up or downloading
+ // file
-
/**
* Create the frame.
*/
public FTPEditUploader_GUI() {
+
+ final Object[] options = { "Beenden", "Abbrechen" };
+
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent arg0) {
- if (taskrun == true) {
- try {
- client.DeleteFtpUser(user.userName);
- } catch (TException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }
- task.cancel(true);
- }
- con.closeThriftConnection();
- System.exit(0);
+ if (taskrun == true) {
+ // check if user wants to quit.
+ int choice = JOptionPane
+ .showOptionDialog(
+ null,
+ "Aktuell ist ein Upload aktiv. Wollen Sie diesen Abbrechen und das Programm beenden?",
+ "Upload aktiv",
+ JOptionPane.YES_NO_CANCEL_OPTION,
+ JOptionPane.QUESTION_MESSAGE, null,
+ options, options[1]);
+ // 0=beenden, 1=abbrechen
+ if (choice == 0) {
+ try {
+ client.DeleteFtpUser(user.userName);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ task.cancel(true);
+ con.closeThriftConnection();
+ System.exit(0);
+ }// end if choice
+ } else {
+ // no upload running, close window
+ System.exit(0);
+ }// end if taskrun
}// end window closing
});
setResizable(false);
- // setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
+ // Aktion die beim Schliessen durchgefuehrt werden soll
+ setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
@@ -120,7 +145,7 @@ public class FTPEditUploader_GUI extends JFrame implements
// filename=name;
setBackground(Color.WHITE);
- setTitle("Dozentenmodul *Prototyp* - Image bearbeiten");
+ setTitle("Dozentenmodul - Image bearbeiten");
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -134,14 +159,29 @@ public class FTPEditUploader_GUI extends JFrame implements
btnSpeicherortAuswhlen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
- JFileChooser fc = new JFileChooser();
+ try {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ fc = new JFileChooser(ini.get("main",
+ "Letzter Uploadpfad", String.class));
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
+
fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
fc.showOpenDialog(getParent());
File file = fc.getSelectedFile();
// check if a file is selected and exists
if (file != null) {
- // file exists
+ // file selected
uploadFile = file;
filename = uploadFile.getName();
lblPath.setText(file.getAbsolutePath());
@@ -158,14 +198,26 @@ public class FTPEditUploader_GUI extends JFrame implements
}
lblPath = new JLabel("");
+ try {
+ Wini ini = new Wini(new File("C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ lblPath.setText(ini.get("main", "Letzter Uploadpfad", String.class));
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
lblPath.addPropertyChangeListener(new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent arg0) {
if (lblPath.getText().isEmpty()) {
// wenn leer, dann upload button nicht freigeben
btnUploadStarten.setEnabled(false);
btnUploadStarten.setText("Bitte warten");
- } else {
- // wenn leer, dann upload button nicht freigeben
+ } else if (lblPath.getText().endsWith(".vmdk")) {
+ // wenn leer, dann upload button freigeben
btnUploadStarten.setEnabled(true);
btnUploadStarten.setText("Upload auf Server starten");
}
@@ -263,7 +315,7 @@ public class FTPEditUploader_GUI extends JFrame implements
label_3.setBounds(80, 91, 14, 14);
contentPanel.add(label_3);
- JLabel lblVlimage = new JLabel("VL-Image");
+ JLabel lblVlimage = new JLabel("Image");
lblVlimage.setForeground(Color.BLUE);
lblVlimage.setBounds(91, 88, 46, 20);
contentPanel.add(lblVlimage);
@@ -302,11 +354,39 @@ public class FTPEditUploader_GUI extends JFrame implements
getContentPane().add(buttonPane, BorderLayout.SOUTH);
{
- //finishButton.setEnabled(false);
+ // finishButton.setEnabled(false);
finishButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
updateData();
+ try {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+
+ // check if path has content, then write to file
+ if (lblPath.getText().contains("\\") == true) {
+ System.out.println("Hole Infos aus Label: "
+ + lblPath.getText());
+ ini.put("main",
+ "Letzter Uploadpfad",
+ lblPath.getText().substring(
+ 0,
+ lblPath.getText().lastIndexOf(
+ "\\")));
+ ini.store();
+ } else {
+ System.out.println("Mache nix");
+ }// end if
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
dispose();
MainMenue_GUI m = new MainMenue_GUI();
m.setVisible(true);
@@ -318,21 +398,52 @@ public class FTPEditUploader_GUI extends JFrame implements
} catch (TException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ JOptionPane.showMessageDialog(
+ null,
+ e1.getCause() + "\n"
+ + e1.getStackTrace(),
+ "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
task.cancel(true);
}
-
+
}
});
btnZurck.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
- dispose();
- EditImageTechnisch_GUI ei = new EditImageTechnisch_GUI();
- ei.setVisible(true);
- }
+
+ // check if loading file or not
+ if (isCurrentlyLoading() == true) {
+ int choice = JOptionPane
+ .showOptionDialog(
+ null,
+ "Nicht abgeschlossene Uploads werden beendet. Trotzdem zurück gehen?",
+ "Warnung",
+ JOptionPane.YES_NO_CANCEL_OPTION,
+ JOptionPane.QUESTION_MESSAGE, null,
+ options, options[1]);
+ // 0=beenden, 1=abbrechen
+ if (choice == 0) {
+ try {
+ client.DeleteFtpUser(user.userName);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ task.cancel(true);
+ // not loading files, go back one page
+ dispose();
+ PermissionEditImage_GUI ei = new PermissionEditImage_GUI();
+ ei.setVisible(true);
+
+ }// end if coice
+ } else {
+ dispose();
+ PermissionEditImage_GUI ei = new PermissionEditImage_GUI();
+ ei.setVisible(true);
+ }// end else
+ }// end action
});
btnZurck.setActionCommand("Cancel");
@@ -344,58 +455,56 @@ public class FTPEditUploader_GUI extends JFrame implements
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
-
+
JMenu menu = new JMenu("Hilfe");
menuBar.add(menu);
-
+
JMenuItem menuItem = new JMenuItem("FAQ");
menuItem.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
+
OpenLinks open = new OpenLinks();
-
+
URI windows;
try {
windows = new URI(Links.getFAQ());
-
+
open.openWebpage(windows);
-
+
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
-
+
}
});
menu.add(menuItem);
-
+
JMenuItem menuItem_1 = new JMenuItem("OTRS");
menuItem_1.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
OpenLinks open = new OpenLinks();
-
+
URI windows;
try {
windows = new URI(Links.getOTRS());
-
+
open.openWebpage(windows);
-
+
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
}
});
menu.add(menuItem_1);
-
+
JMenuItem mntmAbout = new JMenuItem("About");
mntmAbout.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
@@ -409,31 +518,35 @@ public class FTPEditUploader_GUI extends JFrame implements
}
private void buttonUploadActionPerformed(ActionEvent event) {
-
+ fileupload = true;
progressBar.setValue(0);
btnUploadStarten.setEnabled(false); // verhindert einen weiteren klick
btnUploadStarten.setText("Bitte warten");
try {
user = client.getFtpUser();
- System.out.println("FTP name" + user.userName);
- System.out.println("FTP path" + user.path);
- System.out.println("FTP pass" + user.password);
+ System.out.println("FTP name: " + user.userName);
+ System.out.println("FTP path: " + user.path);
+ System.out.println("FTP pass: " + user.password);
} catch (TException e) {
// TODO Auto-generated catch block
e.printStackTrace();
JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e.getCause() + "\n" + e.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
DateFormat formatter = new SimpleDateFormat("yyyMMddhhmmss");
-
+
+ System.out.println("Setting new Name: " + formatter.format(new Date())
+ + "_" + person.verantwortlicher.getHochschule() + "_"
+ + person.verantwortlicher.getUsername() + "_"
+ + Image.image.getImagename() + ".vmdk");
Image.image.setNewName(formatter.format(new Date()) + "_"
+ person.verantwortlicher.getHochschule() + "_"
+ person.verantwortlicher.getUsername() + "_"
- + Image.image.getImagename()+ ".vmdk");
+ + Image.image.getImagename() + ".vmdk");
task = new UploadTask(host, port, user.userName, user.password,
- user.path+"temp/", uploadFile);
+ user.path + "temp/", uploadFile);
task.addPropertyChangeListener(this);
task.execute();
@@ -442,28 +555,18 @@ public class FTPEditUploader_GUI extends JFrame implements
}
public void propertyChange(PropertyChangeEvent arg0) {
+ // set progressbar
if ("progress" == arg0.getPropertyName()) {
progress = (Integer) arg0.getNewValue();
progressBar.setValue(progress);
-
- // Button zum Fertigstellen freischalten, wenn 100% erreicht sind
- if (progress == 100) {
- // not uploading currently
- btnZurck.setEnabled(true);
- } else {
- // currently uploading, don't let user interact
- btnZurck.setEnabled(false);
- }
-
- // Fertigstellen erlauben wenn upload abgeschlossen
- if (progress == 100) {
- finishButton.setEnabled(true);
- } else {
- finishButton.setEnabled(false);
- }
}
-
+ // Fertigstellen erlauben wenn upload abgeschlossen
+ if (isCurrentlyLoading() == true) {
+ finishButton.setEnabled(false);
+ } else {
+ finishButton.setEnabled(true);
+ }
if ("speed" == arg0.getPropertyName()) {
speed = (double) arg0.getNewValue();
@@ -504,35 +607,58 @@ public class FTPEditUploader_GUI extends JFrame implements
public boolean updateData() {
try {
- System.out.println("NewName="+Image.image.getNewName());
- System.out.println("OldName="+Image.image.getImagename());
- if(Image.image.getNewName().isEmpty()){
+ System.out.println("NewName=" + Image.image.getNewName());
+ System.out.println("OldName=" + Image.image.getImagename());
+ if (Image.image.getNewName() != null) {
client.updateImageData(Image.image.getImagename(),
- Image.image.getImagename(),Image.image.getImagepath(), Image.image.isLicensed(),
+ Image.image.getImagename(), Image.image.getDesc(),
+ Image.image.getImagepath(), Image.image.isLicensed(),
Image.image.isInternet(), Image.image.getRam(),
Image.image.getCpu(), Image.image.getImageId(),
- Image.image.getVersion(), Image.image.isVorlage(),Image.image.getFilesize(),Image.image.getShareMode());
- client.startFileCopy(Image.image.getNewName());
- }
- else{
-
-
- client.updateImageData(Image.image.getImagename(),
- Image.image.getImagename(),"temp/" + Image.image.getNewName(), Image.image.isLicensed(),
- Image.image.isInternet(), Image.image.getRam(),
- Image.image.getCpu(), Image.image.getImageId(),
- Image.image.getVersion(), Image.image.isVorlage(),Image.image.getFilesize(),Image.image.getShareMode());
- client.startFileCopy(Image.image.getNewName());
+ Image.image.getVersion(), Image.image.isVorlage(),
+ Image.image.getFilesize(), Image.image.getShareMode(),
+ Image.image.getOS());
+ if (fileupload == true) {
+ client.startFileCopy(Image.image.getNewName());
+ }
+
+ } else {
+
+ client.updateImageData(Image.image.getImagename(),
+ Image.image.getImagename(), Image.image.getDesc(),
+ "temp/" + Image.image.getNewName(),
+ Image.image.isLicensed(), Image.image.isInternet(),
+ Image.image.getRam(), Image.image.getCpu(),
+ Image.image.getImageId(), Image.image.getVersion(),
+ Image.image.isVorlage(), Image.image.getFilesize(),
+ Image.image.getShareMode(), Image.image.getOS());
+
+ if (fileupload == true) {
+ client.startFileCopy(Image.image.getNewName());
+ }
}
} catch (TException e) {
// TODO Auto-generated catch block
e.printStackTrace();
JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e.getCause() + "\n" + e.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
return false;
}
return true;
}
-} \ No newline at end of file
+
+ public boolean isCurrentlyLoading() {
+ isCurrentlyLoading = false;
+
+ if (labelverbleibend.getText().equals("0 MB")
+ || labelverbleibend.getText().equals("0")) {
+ isCurrentlyLoading = false;
+ } else {
+ isCurrentlyLoading = true;
+ }
+ return isCurrentlyLoading;
+ }// end isCurrentlyLoading()
+
+}// end class \ No newline at end of file
diff --git a/Dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java b/Dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java
new file mode 100644
index 00000000..c3041e41
--- /dev/null
+++ b/Dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java
@@ -0,0 +1,635 @@
+package gui.image;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.FlowLayout;
+import java.awt.Font;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import java.io.File;
+import java.io.IOException;
+import java.net.URI;
+import java.net.URISyntaxException;
+
+import javax.swing.JButton;
+import javax.swing.JFileChooser;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JProgressBar;
+import javax.swing.JSeparator;
+import javax.swing.JTextPane;
+import javax.swing.SwingConstants;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+import javax.swing.border.EmptyBorder;
+
+import models.Image;
+import models.Links;
+import models.SessionData;
+
+import org.apache.thrift.TException;
+import org.ini4j.InvalidFileFormatException;
+import org.ini4j.Wini;
+
+import server.Server.Client;
+import server.User;
+import thrift.ThriftConnection;
+import util.GuiOrganizer;
+import util.OpenLinks;
+import ftp.DownloadTask;
+import gui.intro.About_GUI;
+import gui.intro.MainMenue_GUI;
+
+@SuppressWarnings("serial")
+public class FTPSearchDownloader_GUI extends JFrame implements
+ PropertyChangeListener {
+
+ @SuppressWarnings("unused")
+ private JPanel contentPane;
+ private final JPanel contentPanel = new JPanel();
+ JLabel lblPath;
+ JLabel downspeed;
+ User user;
+ JProgressBar progressBar;
+ String host = SessionData.session.getServerAdress();
+ int port = 21;
+ String downloadFile = "";
+ static String arg = "";
+ DownloadTask task;
+ JLabel lblBytesread;
+ JLabel lblNewLabel_3;
+ JLabel labelVerbleibend;
+ JFileChooser fc;
+ long filesize;
+ double speed;
+ int progress = 0; // progress of download
+ long bytesread;
+ JLabel labelZeit;
+ boolean taskrun = false;
+ ThriftConnection con = new ThriftConnection();
+ Client client = models.Client.clientcon.getClient();
+ JButton btnZurck = new JButton("Zur\u00FCck");
+ JButton btnDownloadStarten = new JButton("Download starten");
+ JButton btnMainMenu = new JButton("Hauptmen\u00FC");
+ private JLabel lblAnleitung;
+ private boolean isCurrentlyLoading = false; // currently up or downloading
+ // file
+
+ /**
+ * Create the frame.
+ */
+ public FTPSearchDownloader_GUI() {
+
+ final Object[] options = { "Beenden", "Abbrechen" };
+
+ addWindowListener(new WindowAdapter() {
+ @Override
+ public void windowClosing(WindowEvent e) {
+ if (taskrun == true) {
+ // check if user wants to quit.
+ int choice = JOptionPane
+ .showOptionDialog(
+ null,
+ "Aktuell ist ein Download aktiv. Wollen Sie diesen Abbrechen und das Programm beenden?",
+ "Upload aktiv",
+ JOptionPane.YES_NO_CANCEL_OPTION,
+ JOptionPane.QUESTION_MESSAGE, null,
+ options, options[1]);
+ // 0=beenden, 1=abbrechen
+ if (choice == 0) {
+
+ try {
+ client.DeleteFtpUser(user.userName);
+ con.closeThriftConnection();
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ task.cancel(true);
+
+ System.exit(0);
+ }// end if choice
+ } else {
+ // no download running, close window
+ System.exit(0);
+ }// end if taskrun
+ }// end window closing
+ });
+ setResizable(false);
+
+ try {
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ } catch (ClassNotFoundException | InstantiationException
+ | IllegalAccessException | UnsupportedLookAndFeelException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ setBackground(Color.WHITE);
+ setTitle("Dozentenmodul - Image herunterladen");
+ // Aktion die beim Schliessen durchgefuehrt werden soll
+ setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
+ setBounds(0, 0, 603, 722);
+ GuiOrganizer.centerGUI(this);
+
+ getContentPane().setLayout(new BorderLayout());
+ contentPanel.setBackground(SystemColor.menu);
+ contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
+ getContentPane().add(contentPanel, BorderLayout.CENTER);
+ contentPanel.setLayout(null);
+ {
+ JButton btnSpeicherortAuswhlen = new JButton(
+ "Speicherort ausw\u00E4hlen");
+ btnSpeicherortAuswhlen.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ try {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ System.out.println("FileChooser Pfad: "
+ + ini.get("main", "Letzter Downloadpfad",
+ String.class));
+ fc = new JFileChooser(ini.get("main",
+ "Letzter Downloadpfad", String.class));
+ fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
+
+ fc.showOpenDialog(getParent());
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
+
+ File dir = fc.getSelectedFile();
+ // check if directory is selected
+ if (dir != null) {
+ // is selected
+ lblPath.setText(dir.getAbsolutePath());
+ } else {
+ // no directory selected
+ lblPath.setText("");
+ }// end if
+ }
+ });
+
+ btnSpeicherortAuswhlen.setBounds(102, 124, 173, 23);
+ btnSpeicherortAuswhlen.setVerticalAlignment(SwingConstants.TOP);
+ contentPanel.add(btnSpeicherortAuswhlen);
+ }
+
+ lblPath = new JLabel("");
+ try {
+ Wini ini = new Wini(new File("C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ lblPath.setText(ini.get("main", "Letzter Downloadpfad",
+ String.class));
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
+ lblPath.addPropertyChangeListener(new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent arg0) {
+ if (lblPath.getText() == null) {
+ // wenn leer, dann upload button nicht freigeben
+ btnDownloadStarten.setEnabled(false);
+ btnDownloadStarten.setText("Bitte warten");
+ } else {
+ // wenn leer, dann upload button nicht freigeben
+ btnDownloadStarten.setEnabled(true);
+ btnDownloadStarten.setText("Download starten");
+ }
+ }
+ });
+ lblPath.setBounds(102, 158, 485, 23);
+ contentPanel.add(lblPath);
+
+ btnDownloadStarten.setEnabled(false);
+ btnDownloadStarten.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ buttonDownloadActionPerformed(arg0);
+ }
+ });
+
+ btnDownloadStarten.setBounds(102, 200, 173, 23);
+ contentPanel.add(btnDownloadStarten);
+
+ progressBar = new JProgressBar(0, 100);
+ progressBar.setStringPainted(true);
+
+ progressBar.setBounds(102, 234, 485, 30);
+ contentPanel.add(progressBar);
+
+ JLabel lblDownloadgeschwindigkeit = new JLabel(
+ "Downloadgeschwindigkeit:");
+ lblDownloadgeschwindigkeit.setBounds(102, 275, 141, 14);
+ contentPanel.add(lblDownloadgeschwindigkeit);
+
+ downspeed = new JLabel("0");
+ downspeed.setBounds(374, 275, 117, 14);
+ contentPanel.add(downspeed);
+
+ JLabel lblFertig = new JLabel("Fertig:");
+ lblFertig.setBounds(102, 325, 46, 14);
+ contentPanel.add(lblFertig);
+
+ lblBytesread = new JLabel("0");
+ lblBytesread.setBounds(183, 325, 108, 14);
+ contentPanel.add(lblBytesread);
+
+ JLabel lblVon = new JLabel("von:");
+ lblVon.setBounds(318, 325, 46, 14);
+ contentPanel.add(lblVon);
+
+ lblNewLabel_3 = new JLabel("0");
+ lblNewLabel_3.setBounds(374, 325, 117, 14);
+ contentPanel.add(lblNewLabel_3);
+
+ JLabel lblMbVerbleibend = new JLabel("Verbleibend:");
+ lblMbVerbleibend.setBounds(102, 350, 71, 14);
+ contentPanel.add(lblMbVerbleibend);
+
+ labelVerbleibend = new JLabel("0");
+ labelVerbleibend.setBounds(183, 350, 108, 14);
+ contentPanel.add(labelVerbleibend);
+
+ JLabel lblGeschtzteVerbleibendeZeit = new JLabel(
+ "Gesch\u00E4tzte Verbleibende Zeit:");
+ lblGeschtzteVerbleibendeZeit.setBounds(102, 300, 150, 14);
+ contentPanel.add(lblGeschtzteVerbleibendeZeit);
+
+ labelZeit = new JLabel("0");
+ labelZeit.setBounds(374, 300, 117, 14);
+ contentPanel.add(labelZeit);
+
+ JPanel panel = new JPanel();
+ panel.setLayout(null);
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(10, 24, 577, 57);
+ contentPanel.add(panel);
+
+ JLabel lblImageDownloader = new JLabel("Image Downloader");
+ lblImageDownloader.setFont(new Font("Tahoma", Font.BOLD, 18));
+ lblImageDownloader.setBounds(10, 11, 509, 22);
+ panel.add(lblImageDownloader);
+
+ JTextPane txtpnWhlenSieEinen = new JTextPane();
+ txtpnWhlenSieEinen
+ .setText("W\u00E4hlen Sie einen Ort aus, um das von Ihnen gw\u00E4hlte Image erunter zu laden.");
+ txtpnWhlenSieEinen.setEditable(false);
+ txtpnWhlenSieEinen.setBackground(SystemColor.menu);
+ txtpnWhlenSieEinen.setBounds(10, 36, 509, 32);
+ panel.add(txtpnWhlenSieEinen);
+
+ JSeparator separator = new JSeparator();
+ separator.setBounds(0, 88, 597, 2);
+ contentPanel.add(separator);
+
+ JLabel label_1 = new JLabel("Hauptmen\u00FC");
+ label_1.setForeground(Color.BLUE);
+ label_1.setBounds(20, 92, 61, 20);
+ contentPanel.add(label_1);
+
+ JLabel label_2 = new JLabel(">");
+ label_2.setBounds(80, 95, 14, 14);
+ contentPanel.add(label_2);
+
+ JLabel label_3 = new JLabel("Image");
+ label_3.setForeground(Color.BLUE);
+ label_3.setBounds(91, 92, 46, 20);
+ contentPanel.add(label_3);
+
+ JLabel label_4 = new JLabel(">");
+ label_4.setBounds(139, 95, 14, 14);
+ contentPanel.add(label_4);
+
+ JLabel label_5 = new JLabel("Neu/Bearbeiten");
+ label_5.setBounds(149, 95, 108, 14);
+ contentPanel.add(label_5);
+
+ JSeparator separator_1 = new JSeparator();
+ separator_1.setBounds(-10, 648, 597, 2);
+ contentPanel.add(separator_1);
+
+ JLabel lblSchritt = new JLabel("Schritt 1:");
+ lblSchritt.setBounds(24, 128, 57, 14);
+ contentPanel.add(lblSchritt);
+
+ JLabel lblSchritt_1 = new JLabel("Schritt 2:");
+ lblSchritt_1.setBounds(24, 204, 57, 14);
+ contentPanel.add(lblSchritt_1);
+
+ JLabel lblSchritt_3 = new JLabel("Schritt 3:");
+ lblSchritt_3.setBounds(20, 423, 57, 14);
+ contentPanel.add(lblSchritt_3);
+
+ JLabel lblKlickenSieAuf = new JLabel(
+ "Klicken Sie auf \"Fertigstellen\".");
+ lblKlickenSieAuf.setBounds(102, 423, 241, 14);
+ contentPanel.add(lblKlickenSieAuf);
+
+ JMenuBar menuBar = new JMenuBar();
+ menuBar.setBounds(0, 0, 597, 21);
+ contentPanel.add(menuBar);
+
+ JMenu menu = new JMenu("Hilfe");
+ menuBar.add(menu);
+
+ JMenuItem menuItem = new JMenuItem("FAQ");
+ menuItem.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getFAQ());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ }
+ });
+
+ menu.add(menuItem);
+
+ JMenuItem menuItem_1 = new JMenuItem("OTRS");
+ menuItem_1.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getOTRS());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ }
+ });
+
+ menu.add(menuItem_1);
+
+ JMenuItem mntmAbout = new JMenuItem("About");
+ mntmAbout.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ About_GUI ab = new About_GUI();
+ ab.setVisible(true);
+ }
+ });
+ menu.add(mntmAbout);
+
+ lblAnleitung = new JLabel(
+ "<HTML><U>Anleitung zum erstellen einer virtuellen Maschine herunterladen</U></HTML>");
+ lblAnleitung.setForeground(Color.BLUE);
+ lblAnleitung.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mouseClicked(MouseEvent arg0) {
+ OpenLinks open = new OpenLinks();
+
+ URI anleitung;
+ try {
+ anleitung = new URI(Links.getAnleitungVMDK());
+ open.openWebpage(anleitung);
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ });
+ lblAnleitung.setBounds(102, 448, 311, 14);
+ contentPanel.add(lblAnleitung);
+
+ {
+ JPanel buttonPane = new JPanel();
+ buttonPane.setBackground(UIManager.getColor("Button.background"));
+ buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
+ getContentPane().add(buttonPane, BorderLayout.SOUTH);
+ {
+ btnZurck.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ // check if loading file or not
+ if (isCurrentlyLoading() == true) {
+ int choice = JOptionPane
+ .showOptionDialog(
+ null,
+ "Nicht abgeschlossene Uploads werden beendet. Trotzdem zurück gehen?",
+ "Warnung",
+ JOptionPane.YES_NO_CANCEL_OPTION,
+ JOptionPane.QUESTION_MESSAGE, null,
+ options, options[1]);
+ // 0=beenden, 1=abbrechen
+ if (choice == 0) {
+ task.cancel(true);
+ try {
+ client.DeleteFtpUser(user.userName);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ try {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ ini.put("main", "Letzter Downloadpfad",
+ lblPath.getText());
+ ini.store();
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
+ // go back one page
+ SearchImage_GUI si = new SearchImage_GUI();
+ si.setVisible(true);
+ dispose();
+ }// end choice
+
+ } else {
+
+ try {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ ini.put("main", "Letzter Downloadpfad",
+ lblPath.getText());
+ ini.store();
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
+ // go back one page
+ SearchImage_GUI si = new SearchImage_GUI();
+ si.setVisible(true);
+ dispose();
+ }// end else
+ }//end action
+ });
+ btnZurck.setActionCommand("Cancel");
+ buttonPane.add(btnZurck);
+ }
+
+ btnMainMenu.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ try {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ ini.put("main", "Letzter Downloadpfad",
+ lblPath.getText());
+ ini.store();
+ } catch (InvalidFileFormatException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ } catch (IOException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
+ MainMenue_GUI mm = new MainMenue_GUI();
+ mm.setVisible(true);
+ dispose();
+ }
+ });
+ btnMainMenu.setActionCommand("Cancel");
+ buttonPane.add(btnMainMenu);
+ }
+ setVisible(true);
+
+ }
+
+ private void buttonDownloadActionPerformed(ActionEvent event) {
+
+ progressBar.setValue(0);
+ btnDownloadStarten.setEnabled(false); // verhindert schnellen zweiten
+ // Klick
+ btnDownloadStarten.setText("Bitte warten");
+ try {
+ user = client.getFtpUser();
+
+ downloadFile = user.path
+ + "/"
+ + client.getPathOfImage(Image.image.getImageId(),
+ Image.image.getVersion());
+
+ } catch (TException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(null,
+ e.getCause() + "\n" + e.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
+ }
+
+ task = new DownloadTask(host, port, user.userName, user.password,
+ downloadFile, lblPath.getText());
+ task.addPropertyChangeListener(this);
+ task.execute();
+ taskrun = true;
+
+ }
+
+ public void propertyChange(PropertyChangeEvent arg0) {
+
+ progress = 0;
+ if ("progress" == arg0.getPropertyName()) {
+ progress = (Integer) arg0.getNewValue();
+ progressBar.setValue(progress);
+ }
+
+ // Button zum Fertigstellen freischalten, wenn 100% erreicht sind
+ if (isCurrentlyLoading() == true) {
+ // not uploading currently
+ btnMainMenu.setEnabled(false);
+ } else {
+ // currently uploading, don't let user interact
+ btnMainMenu.setEnabled(true);
+ }
+
+ if ("speed" == arg0.getPropertyName()) {
+ speed = (double) arg0.getNewValue();
+ // if(speed<=1){
+
+ downspeed.setText(String.valueOf(speed).substring(0,
+ String.valueOf(speed).lastIndexOf(".") + 3)
+ + " MB/s");
+
+ }
+ if ("bytesread" == arg0.getPropertyName()) {
+ bytesread = (long) arg0.getNewValue();
+ lblBytesread.setText((bytesread / 1024 / 1024) + " MB");
+ labelVerbleibend
+ .setText(((filesize / 1024 / 1024) - (bytesread / 1024 / 1024))
+ + " MB");
+
+ labelZeit
+ .setText(String
+ .valueOf(
+ ((((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) / speed) / 60) + 1)
+ .substring(
+ 0,
+ String.valueOf(
+ (((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) / speed) / 60)
+ .lastIndexOf("."))
+ + " Minuten");
+
+ }
+ if ("filesize" == arg0.getPropertyName()) {
+ filesize = (long) arg0.getNewValue();
+ lblNewLabel_3.setText((filesize / 1024 / 1024) + " MB");
+
+ }
+
+ }
+
+ public boolean isCurrentlyLoading() {
+ isCurrentlyLoading = false;
+
+ if (labelVerbleibend.getText().equals("0 MB") || labelVerbleibend.getText().equals("0")) {
+ isCurrentlyLoading = false;
+ } else {
+ isCurrentlyLoading = true;
+ }
+ return isCurrentlyLoading;
+ }// end isCurrentlyLoading()
+
+}// end class \ No newline at end of file
diff --git a/Dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java b/Dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java
new file mode 100644
index 00000000..d2b0dada
--- /dev/null
+++ b/Dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java
@@ -0,0 +1,552 @@
+package gui.image;
+
+import gui.intro.About_GUI;
+import gui.intro.MainMenue_GUI;
+
+import java.awt.Checkbox;
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.FlowLayout;
+import java.awt.Font;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.awt.event.MouseListener;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.io.IOException;
+import java.net.URI;
+import java.net.URISyntaxException;
+
+import javax.swing.AbstractButton;
+import javax.swing.ButtonGroup;
+import javax.swing.DefaultComboBoxModel;
+import javax.swing.Icon;
+import javax.swing.JButton;
+import javax.swing.JCheckBox;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JPanel;
+import javax.swing.JSeparator;
+import javax.swing.JTextPane;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+import javax.swing.border.EmptyBorder;
+import javax.swing.border.TitledBorder;
+import javax.swing.table.DefaultTableCellRenderer;
+import javax.swing.table.DefaultTableModel;
+import javax.swing.table.JTableHeader;
+import javax.swing.table.TableCellEditor;
+import javax.swing.table.TableCellRenderer;
+import javax.swing.table.TableColumn;
+import javax.swing.table.TableColumnModel;
+
+import models.Image;
+import models.Links;
+import util.GuiOrganizer;
+import util.OpenLinks;
+import javax.swing.JTable;
+import javax.swing.JScrollPane;
+import javax.swing.ScrollPaneConstants;
+import javax.swing.JTextField;
+
+import org.eclipse.jface.viewers.CheckboxCellEditor;
+
+import java.awt.Choice;
+
+@SuppressWarnings("serial")
+public class PermissionCreateImage_GUI extends JFrame {
+
+ private final JPanel contentPanel = new JPanel();
+ String[] result;
+ private JTable table;
+ private Class[] classes;
+ Object[] titles = { "Name", "Read", "Write", "Link allowed","Admin"};
+
+ final DefaultTableModel model = new DefaultTableModel(titles, 0) {
+
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ if (mColIndex >= 1) {
+ return true;
+ }
+ return false;
+ }
+
+ public Class getColumnClass(int c) {
+ switch (c) {
+ case 0:
+ return String.class;
+ default:
+ return Boolean.class;
+ }
+ }
+
+ };
+ private JTextField textField;
+ private JLabel lblRead;
+ private JLabel lblWrite;
+ private JLabel lblAdmin;
+ private JLabel lblLinkallowed;
+ private JLabel lblReadDesc;
+ private JLabel lblWriteDesc;
+ private JLabel lblAdminDesc;
+ private JLabel lblLinkallowedDesc;
+ private JCheckBox chckbxFrAlleSichtbar;
+ private JLabel lblFuerAlleSichtbar;
+
+ public PermissionCreateImage_GUI() {
+ addWindowListener(new WindowAdapter() {
+ @Override
+ public void windowClosing(WindowEvent arg0) {
+ System.exit(0);
+ }
+ });
+ setResizable(false);
+
+ try {
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ } catch (ClassNotFoundException | InstantiationException
+ | IllegalAccessException | UnsupportedLookAndFeelException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ setTitle("bwLehrpool Suite - Image erzeugen");
+
+ setBounds(0, 0, 603, 722);
+ GuiOrganizer.centerGUI(this);
+
+ getContentPane().setLayout(null);
+ {
+ JPanel panel = new JPanel();
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(10, 11, 577, 57);
+ getContentPane().add(panel);
+ panel.setLayout(null);
+ {
+ JLabel lblNewLabel = new JLabel(
+ "Image Berechtigungen (Nur zur Veranschaulichung)");
+ lblNewLabel.setBounds(10, 11, 509, 22);
+ panel.add(lblNewLabel);
+ lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
+ }
+
+ JTextPane txtpnBitteWhlenSie = new JTextPane();
+ txtpnBitteWhlenSie.setEditable(false);
+ txtpnBitteWhlenSie.setBackground(SystemColor.menu);
+ txtpnBitteWhlenSie
+ .setText("Definieren Sie hier bitte die gew\u00FCnschten Berechtigungen f\u00FCr ihr Image");
+ txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
+ panel.add(txtpnBitteWhlenSie);
+ }
+ contentPanel.setBounds(10, 85, 577, 531);
+ contentPanel.setBackground(SystemColor.menu);
+ contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
+ getContentPane().add(contentPanel);
+ contentPanel.setLayout(null);
+
+ JPanel panel_1 = new JPanel();
+ panel_1.setBackground(SystemColor.menu);
+ panel_1.setBorder(new TitledBorder(null, "Berechtigungen",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_1.setBounds(10, 228, 557, 292);
+ contentPanel.add(panel_1);
+ panel_1.setLayout(null);
+
+ JScrollPane scrollPane = new JScrollPane();
+ scrollPane
+ .setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
+ scrollPane.setBounds(10, 21, 537, 260);
+ panel_1.add(scrollPane);
+
+ table = new JTable();
+ table.setModel(model);
+ table.setSelectionForeground(Color.WHITE);
+ Object[] rowdata = { "Max Mustermann", new Boolean(false),
+ new Boolean(false), new Boolean(false), new Boolean(false),
+ new Boolean(false) };
+ model.addRow(rowdata);
+
+ TableCellRenderer rend = table.getTableHeader().getDefaultRenderer();
+
+ TableColumn tc1 = table.getColumnModel().getColumn(1);
+ tc1.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc1.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc1.setHeaderRenderer(new CheckBoxHeader(new MyItemListener1(),
+ (String) titles[1]));
+
+ TableColumn tc2 = table.getColumnModel().getColumn(2);
+ tc2.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc2.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc2.setHeaderRenderer(new CheckBoxHeader(new MyItemListener2(),
+ (String) titles[2]));
+
+ TableColumn tc3 = table.getColumnModel().getColumn(3);
+ tc3.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc3.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc3.setHeaderRenderer(new CheckBoxHeader(new MyItemListener3(),
+ (String) titles[3]));
+
+ TableColumn tc4 = table.getColumnModel().getColumn(4);
+ tc4.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc4.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc4.setHeaderRenderer(new CheckBoxHeader(new MyItemListener4(),
+ (String) titles[4]));
+
+ /*
+ TableColumn tc5 = table.getColumnModel().getColumn(5);
+ tc5.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc5.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc5.setHeaderRenderer(new CheckBoxHeader(new MyItemListener5(),
+ (String) titles[5]));
+ */
+ scrollPane.setViewportView(table);
+
+ JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
+ lblHauptmen.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mouseClicked(MouseEvent arg0) {
+
+ PermissionCreateImage_GUI.this.setVisible(false);
+ MainMenue_GUI main = new MainMenue_GUI();
+ main.setVisible(true);
+ }
+ });
+ lblHauptmen.setForeground(Color.BLUE);
+ lblHauptmen.setBounds(10, 11, 61, 14);
+ contentPanel.add(lblHauptmen);
+
+ JLabel label_1 = new JLabel(">");
+ label_1.setBounds(69, 11, 13, 14);
+ contentPanel.add(label_1);
+
+ JLabel lblVlimage = new JLabel("Image");
+ lblVlimage.setForeground(Color.BLUE);
+ lblVlimage.setBounds(81, 11, 45, 14);
+ contentPanel.add(lblVlimage);
+
+ JLabel label_2 = new JLabel(">");
+ label_2.setBounds(133, 11, 13, 14);
+ contentPanel.add(label_2);
+
+ JLabel lblNewLabel_1 = new JLabel("Berechtigung");
+ lblNewLabel_1.setBounds(146, 11, 80, 14);
+ contentPanel.add(lblNewLabel_1);
+
+ JLabel lblName = new JLabel("Name:");
+ lblName.setBounds(10, 36, 46, 20);
+ contentPanel.add(lblName);
+
+ textField = new JTextField();
+ textField.setBounds(69, 36, 171, 20);
+ contentPanel.add(textField);
+ textField.setColumns(10);
+
+ JLabel lblHochschule = new JLabel("Hochschule:");
+ lblHochschule.setBounds(275, 36, 80, 20);
+ contentPanel.add(lblHochschule);
+
+ JComboBox comboBox = new JComboBox();
+ comboBox.setModel(new DefaultComboBoxModel(new String[] {
+ "Hochschule Offenburg", "Hochschule Reutlingen",
+ "Universit\u00E4t Freiburg" }));
+ comboBox.setBounds(365, 36, 202, 20);
+ contentPanel.add(comboBox);
+
+ JPanel panel_2 = new JPanel();
+ panel_2.setBackground(SystemColor.menu);
+ panel_2.setBorder(new TitledBorder(null, "Beschreibung",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_2.setBounds(10, 67, 557, 150);
+ contentPanel.add(panel_2);
+ panel_2.setLayout(null);
+
+ lblRead = new JLabel("Read");
+ lblRead.setBounds(20, 18, 90, 20);
+ panel_2.add(lblRead);
+
+ lblWrite = new JLabel("Write");
+ lblWrite.setBounds(20, 38, 90, 20);
+ panel_2.add(lblWrite);
+
+ lblAdmin = new JLabel("Admin");
+ lblAdmin.setBounds(20, 78, 90, 20);
+ panel_2.add(lblAdmin);
+
+ lblLinkallowed = new JLabel("Link allowed");
+ lblLinkallowed.setBounds(20, 58, 90, 20);
+ panel_2.add(lblLinkallowed);
+
+ lblReadDesc = new JLabel(
+ "Image lesen und starten, in Suchfenster und VMchooser sichtbar.");
+ lblReadDesc.setBounds(120, 18, 427, 20);
+ panel_2.add(lblReadDesc);
+
+ lblWriteDesc = new JLabel(
+ "Image anpassen und überschrieben, jedoch nicht löschen.");
+ lblWriteDesc.setBounds(120, 38, 380, 20);
+ panel_2.add(lblWriteDesc);
+
+ lblAdminDesc = new JLabel(
+ "<HTML>Volle Rechte: read, write, löschen, Link_allowed und<br>Berechtigungen für andere Benutzer festlegen.</HTML>");
+ lblAdminDesc.setBounds(120, 78, 380, 40);
+ panel_2.add(lblAdminDesc);
+
+ lblLinkallowedDesc = new JLabel(
+ "Erzeugung einer Veranstaltung auf ein Image ist erlaubt.");
+ lblLinkallowedDesc.setBounds(120, 58, 380, 20);
+ panel_2.add(lblLinkallowedDesc);
+
+ chckbxFrAlleSichtbar = new JCheckBox("");
+ chckbxFrAlleSichtbar.setBounds(115, 119, 21, 23);
+ panel_2.add(chckbxFrAlleSichtbar);
+
+ lblFuerAlleSichtbar = new JLabel("Für alle sichtbar");
+ lblFuerAlleSichtbar.setBounds(20, 120, 90, 20);
+ panel_2.add(lblFuerAlleSichtbar);
+ {
+ JPanel buttonPane = new JPanel();
+ buttonPane.setBounds(0, 640, 597, 33);
+ buttonPane.setBackground(SystemColor.menu);
+ buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
+ getContentPane().add(buttonPane);
+ {
+ JButton cancelButton = new JButton("Zur\u00FCck");
+ cancelButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+
+ CreateImageFreigabe_GUI sr = new CreateImageFreigabe_GUI();
+ sr.setVisible(true);
+ dispose();
+ }
+ });
+ cancelButton.setActionCommand("OK");
+ buttonPane.add(cancelButton);
+ // getRootPane().setDefaultButton(cancelButton);
+ }
+ {
+ JButton continueButton = new JButton("Weiter");
+ continueButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+
+ FTPCreateUploader_GUI ea = new FTPCreateUploader_GUI();
+ ea.setVisible(true);
+ dispose();
+
+ }
+ });
+ continueButton.setActionCommand("Cancel");
+ buttonPane.add(continueButton);
+ getRootPane().setDefaultButton(continueButton);
+ }
+ }
+
+ JSeparator separator = new JSeparator();
+ separator.setBounds(0, 78, 597, 2);
+ getContentPane().add(separator);
+
+ JSeparator separator_1 = new JSeparator();
+ separator_1.setBounds(0, 627, 597, 2);
+ getContentPane().add(separator_1);
+
+ JMenuBar menuBar = new JMenuBar();
+ setJMenuBar(menuBar);
+
+ JMenu mnNewMenu_1 = new JMenu("Hilfe");
+ menuBar.add(mnNewMenu_1);
+
+ JMenuItem mntmFaq = new JMenuItem("FAQ");
+ mntmFaq.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getFAQ());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ });
+ mnNewMenu_1.add(mntmFaq);
+
+ JMenuItem mntmOtrs = new JMenuItem("OTRS");
+ mntmOtrs.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getOTRS());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ }
+ });
+ mnNewMenu_1.add(mntmOtrs);
+
+ JMenuItem mntmAbout = new JMenuItem("About");
+ mntmAbout.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ About_GUI ab = new About_GUI();
+ ab.setVisible(true);
+ }
+ });
+ mnNewMenu_1.add(mntmAbout);
+
+ }
+
+ class MyItemListener1 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 1);
+ }
+ }
+ }
+
+ class MyItemListener2 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 2);
+ }
+ }
+ }
+
+ class MyItemListener3 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 3);
+ }
+ }
+ }
+
+ class MyItemListener4 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 4);
+ }
+ }
+ }
+
+ class MyItemListener5 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 5);
+ }
+ }
+ }
+}
+
+class CheckBoxHeader extends JCheckBox implements TableCellRenderer,
+ MouseListener {
+ protected CheckBoxHeader rendererComponent;
+ protected int column;
+ protected boolean mousePressed = false;
+
+ public CheckBoxHeader(ItemListener itemListener, String text) {
+ rendererComponent = this;
+ rendererComponent.addItemListener(itemListener);
+ rendererComponent.setText(text);
+ }
+
+ public Component getTableCellRendererComponent(JTable table, Object value,
+ boolean isSelected, boolean hasFocus, int row, int column) {
+ if (table != null) {
+ JTableHeader header = table.getTableHeader();
+ if (header != null) {
+ rendererComponent.setForeground(header.getForeground());
+ rendererComponent.setBackground(header.getBackground());
+ rendererComponent.setFont(header.getFont());
+ rendererComponent.setBorder(header.getBorder());
+ header.addMouseListener(rendererComponent);
+ }
+ }
+ setColumn(column);
+ // rendererComponent.setText("Check All");
+ // setBorder(UIManager.getBorder("TableHeader.cellBorder"));
+
+ return rendererComponent;
+ }
+
+ protected void setColumn(int column) {
+ this.column = column;
+ }
+
+ public int getColumn() {
+ return column;
+ }
+
+ protected void handleClickEvent(MouseEvent e) {
+ if (mousePressed) {
+ mousePressed = false;
+ JTableHeader header = (JTableHeader) (e.getSource());
+ JTable tableView = header.getTable();
+ TableColumnModel columnModel = tableView.getColumnModel();
+ int viewColumn = columnModel.getColumnIndexAtX(e.getX());
+ int column = tableView.convertColumnIndexToModel(viewColumn);
+
+ if (viewColumn == this.column && e.getClickCount() == 1
+ && column != -1) {
+ doClick();
+ }
+ }
+ }
+
+ public void mouseClicked(MouseEvent e) {
+ handleClickEvent(e);
+ ((JTableHeader) e.getSource()).repaint();
+ }
+
+ public void mousePressed(MouseEvent e) {
+ mousePressed = true;
+ }
+
+ public void mouseReleased(MouseEvent e) {
+ }
+
+ public void mouseEntered(MouseEvent e) {
+ }
+
+ public void mouseExited(MouseEvent e) {
+ }
+}
diff --git a/Dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java b/Dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java
new file mode 100644
index 00000000..4d780e8f
--- /dev/null
+++ b/Dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java
@@ -0,0 +1,504 @@
+package gui.image;
+
+import gui.intro.About_GUI;
+import gui.intro.MainMenue_GUI;
+
+import java.awt.Checkbox;
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.FlowLayout;
+import java.awt.Font;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.awt.event.MouseListener;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.io.IOException;
+import java.net.URI;
+import java.net.URISyntaxException;
+
+import javax.swing.AbstractButton;
+import javax.swing.ButtonGroup;
+import javax.swing.DefaultComboBoxModel;
+import javax.swing.Icon;
+import javax.swing.JButton;
+import javax.swing.JCheckBox;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JPanel;
+import javax.swing.JSeparator;
+import javax.swing.JTextPane;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+import javax.swing.border.EmptyBorder;
+import javax.swing.border.TitledBorder;
+import javax.swing.table.DefaultTableCellRenderer;
+import javax.swing.table.DefaultTableModel;
+import javax.swing.table.JTableHeader;
+import javax.swing.table.TableCellEditor;
+import javax.swing.table.TableCellRenderer;
+import javax.swing.table.TableColumn;
+import javax.swing.table.TableColumnModel;
+
+import models.Image;
+import models.Links;
+import util.GuiOrganizer;
+import util.OpenLinks;
+import javax.swing.JTable;
+import javax.swing.JScrollPane;
+import javax.swing.ScrollPaneConstants;
+import javax.swing.JTextField;
+
+import org.eclipse.jface.viewers.CheckboxCellEditor;
+
+import java.awt.Choice;
+
+@SuppressWarnings("serial")
+public class PermissionEditImage_GUI extends JFrame {
+
+ private final JPanel contentPanel = new JPanel();
+ String[] result;
+ private JTable table;
+ private Class[] classes;
+ Object[] titles = { "Name", "Read", "Write", "Link allowed","Admin"};
+
+ final DefaultTableModel model = new DefaultTableModel(titles, 0) {
+
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ if (mColIndex >= 1) {
+ return true;
+ }
+ return false;
+ }
+
+ public Class getColumnClass(int c) {
+ switch (c) {
+ case 0:
+ return String.class;
+ default:
+ return Boolean.class;
+ }
+ }
+
+ };
+ private JTextField textField;
+ private JLabel lblLinkAllowed;
+ private JLabel label_5;
+ private JLabel label_6;
+ private JLabel label_7;
+
+ public PermissionEditImage_GUI() {
+ addWindowListener(new WindowAdapter() {
+ @Override
+ public void windowClosing(WindowEvent arg0) {
+ System.exit(0);
+ }
+ });
+ setResizable(false);
+
+ try {
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ } catch (ClassNotFoundException | InstantiationException
+ | IllegalAccessException | UnsupportedLookAndFeelException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ setTitle("bwLehrpool Suite - Image erzeugen");
+
+ setBounds(0, 0, 603, 722);
+ GuiOrganizer.centerGUI(this);
+
+ getContentPane().setLayout(null);
+ {
+ JPanel panel = new JPanel();
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(10, 11, 577, 57);
+ getContentPane().add(panel);
+ panel.setLayout(null);
+ {
+ JLabel lblNewLabel = new JLabel(
+ "Image Berechtigungen (Nur zur Veranschaulichung)");
+ lblNewLabel.setBounds(10, 11, 509, 22);
+ panel.add(lblNewLabel);
+ lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
+ }
+
+ JTextPane txtpnBitteWhlenSie = new JTextPane();
+ txtpnBitteWhlenSie.setEditable(false);
+ txtpnBitteWhlenSie.setBackground(SystemColor.menu);
+ txtpnBitteWhlenSie
+ .setText("Definieren Sie hier bitte die gew\u00FCnschten Berechtigungen f\u00FCr Ihr Image");
+ txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
+ panel.add(txtpnBitteWhlenSie);
+ }
+ contentPanel.setBounds(10, 85, 577, 531);
+ contentPanel.setBackground(SystemColor.menu);
+ contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
+ getContentPane().add(contentPanel);
+ contentPanel.setLayout(null);
+
+ JPanel panel_1 = new JPanel();
+ panel_1.setBackground(SystemColor.menu);
+ panel_1.setBorder(new TitledBorder(null, "Berechtigungen",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_1.setBounds(10, 228, 557, 292);
+ contentPanel.add(panel_1);
+ panel_1.setLayout(null);
+
+ JScrollPane scrollPane = new JScrollPane();
+ scrollPane
+ .setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
+ scrollPane.setBounds(10, 21, 537, 260);
+ panel_1.add(scrollPane);
+
+ table = new JTable();
+ table.setModel(model);
+ table.setSelectionForeground(Color.WHITE);
+ Object[] rowdata = { "Max Mustermann", new Boolean(false),
+ new Boolean(false), new Boolean(false), new Boolean(false) };
+ model.addRow(rowdata);
+
+ TableCellRenderer rend = table.getTableHeader().getDefaultRenderer();
+
+ TableColumn tc1 = table.getColumnModel().getColumn(1);
+ tc1.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc1.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc1.setHeaderRenderer(new CheckBoxHeader(new MyItemListener1(),
+ (String) titles[1]));
+
+ TableColumn tc2 = table.getColumnModel().getColumn(2);
+ tc2.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc2.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc2.setHeaderRenderer(new CheckBoxHeader(new MyItemListener2(),
+ (String) titles[2]));
+
+ TableColumn tc3 = table.getColumnModel().getColumn(3);
+ tc3.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc3.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc3.setHeaderRenderer(new CheckBoxHeader(new MyItemListener3(),
+ (String) titles[3]));
+
+ TableColumn tc4 = table.getColumnModel().getColumn(4);
+ tc4.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc4.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc4.setHeaderRenderer(new CheckBoxHeader(new MyItemListener4(),
+ (String) titles[4]));
+ /*
+ TableColumn tc5 = table.getColumnModel().getColumn(5);
+ tc5.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc5.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc5.setHeaderRenderer(new CheckBoxHeader(new MyItemListener5(),
+ (String) titles[5]));
+ */
+ scrollPane.setViewportView(table);
+
+ JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
+ lblHauptmen.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mouseClicked(MouseEvent arg0) {
+
+ PermissionEditImage_GUI.this.setVisible(false);
+ MainMenue_GUI main = new MainMenue_GUI();
+ main.setVisible(true);
+ }
+ });
+ lblHauptmen.setForeground(Color.BLUE);
+ lblHauptmen.setBounds(10, 11, 61, 14);
+ contentPanel.add(lblHauptmen);
+
+ JLabel label_1 = new JLabel(">");
+ label_1.setBounds(69, 11, 13, 14);
+ contentPanel.add(label_1);
+
+ JLabel lblVlimage = new JLabel("Image");
+ lblVlimage.setForeground(Color.BLUE);
+ lblVlimage.setBounds(81, 11, 45, 14);
+ contentPanel.add(lblVlimage);
+
+ JLabel label_2 = new JLabel(">");
+ label_2.setBounds(133, 11, 13, 14);
+ contentPanel.add(label_2);
+
+ JLabel lblNewLabel_1 = new JLabel("Berechtigung");
+ lblNewLabel_1.setBounds(146, 11, 80, 14);
+ contentPanel.add(lblNewLabel_1);
+
+ JLabel lblName = new JLabel("Name:");
+ lblName.setBounds(10, 36, 46, 20);
+ contentPanel.add(lblName);
+
+ textField = new JTextField();
+ textField.setBounds(69, 36, 171, 20);
+ contentPanel.add(textField);
+ textField.setColumns(10);
+
+ JLabel lblHochschule = new JLabel("Hochschule:");
+ lblHochschule.setBounds(275, 36, 80, 20);
+ contentPanel.add(lblHochschule);
+
+ JComboBox comboBox = new JComboBox();
+ comboBox.setModel(new DefaultComboBoxModel(new String[] {
+ "Hochschule Offenburg", "Hochschule Reutlingen",
+ "Universit\u00E4t Freiburg" }));
+ comboBox.setBounds(365, 36, 202, 20);
+ contentPanel.add(comboBox);
+
+ JPanel panel = new JPanel();
+ panel.setBounds(10, 67, 557, 150);
+ contentPanel.add(panel);
+ panel.setLayout(null);
+ panel.setBorder(new TitledBorder(null, "Beschreibung",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBackground(SystemColor.menu);
+
+ JLabel label = new JLabel("Read");
+ label.setBounds(20, 18, 90, 20);
+ panel.add(label);
+
+ JLabel label_3 = new JLabel("Write");
+ label_3.setBounds(20, 38, 90, 20);
+ panel.add(label_3);
+
+ JLabel lblImageLesenUnd = new JLabel(
+ "Image lesen und starten, in Suchfenster und VMchooser sichtbar.");
+ lblImageLesenUnd.setBounds(120, 18, 380, 20);
+ panel.add(lblImageLesenUnd);
+
+ JLabel lblImageAnpassenUnd = new JLabel(
+ "Image anpassen und \u00DCberschrieben, jedoch nicht l\u00F6schen.");
+ lblImageAnpassenUnd.setBounds(120, 38, 380, 20);
+ panel.add(lblImageAnpassenUnd);
+
+ lblLinkAllowed = new JLabel("Link");
+ lblLinkAllowed.setBounds(20, 58, 90, 20);
+ panel.add(lblLinkAllowed);
+
+ label_5 = new JLabel("Admin");
+ label_5.setBounds(20, 78, 90, 20);
+ panel.add(label_5);
+
+ label_6 = new JLabel("Erzeugung einer Veranstaltung auf ein Image ist erlaubt.");
+ label_6.setBounds(120, 58, 380, 20);
+ panel.add(label_6);
+
+ label_7 = new JLabel("<HTML>Volle Rechte: read, write, l\u00F6schen, Link_allowed und<br>Berechtigungen f\u00FCr andere Benutzer festlegen.</HTML>");
+ label_7.setBounds(120, 78, 380, 40);
+ panel.add(label_7);
+
+ JLabel label_4 = new JLabel("F\u00FCr alle sichtbar");
+ label_4.setBounds(20, 120, 90, 20);
+ panel.add(label_4);
+
+ JCheckBox checkBox = new JCheckBox("");
+ checkBox.setBounds(115, 120, 21, 23);
+ panel.add(checkBox);
+ {
+ JPanel buttonPane = new JPanel();
+ buttonPane.setBounds(0, 640, 597, 33);
+ buttonPane.setBackground(SystemColor.menu);
+ buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
+ getContentPane().add(buttonPane);
+ {
+ JButton cancelButton = new JButton("Zur\u00FCck");
+ cancelButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+
+ EditImageFreigabe_GUI sr = new EditImageFreigabe_GUI();
+ sr.setVisible(true);
+ dispose();
+ }
+ });
+ cancelButton.setActionCommand("OK");
+ buttonPane.add(cancelButton);
+ // getRootPane().setDefaultButton(cancelButton);
+ }
+ {
+ JButton continueButton = new JButton("Weiter");
+ continueButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+
+ FTPEditUploader_GUI ea = new FTPEditUploader_GUI();
+ ea.setVisible(true);
+ dispose();
+
+ }
+ });
+ continueButton.setActionCommand("Cancel");
+ buttonPane.add(continueButton);
+ getRootPane().setDefaultButton(continueButton);
+ }
+ }
+
+ JSeparator separator = new JSeparator();
+ separator.setBounds(0, 78, 597, 2);
+ getContentPane().add(separator);
+
+ JSeparator separator_1 = new JSeparator();
+ separator_1.setBounds(0, 627, 597, 2);
+ getContentPane().add(separator_1);
+
+ JMenuBar menuBar = new JMenuBar();
+ setJMenuBar(menuBar);
+
+ JMenu mnNewMenu_1 = new JMenu("Hilfe");
+ menuBar.add(mnNewMenu_1);
+
+ JMenuItem mntmFaq = new JMenuItem("FAQ");
+ mntmFaq.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getFAQ());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ });
+ mnNewMenu_1.add(mntmFaq);
+
+ JMenuItem mntmOtrs = new JMenuItem("OTRS");
+ mntmOtrs.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getOTRS());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ }
+ });
+ mnNewMenu_1.add(mntmOtrs);
+
+ JMenuItem mntmAbout = new JMenuItem("About");
+ mntmAbout.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ About_GUI ab = new About_GUI();
+ ab.setVisible(true);
+ }
+ });
+ mnNewMenu_1.add(mntmAbout);
+
+ }
+
+ class MyItemListener1 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 1);
+ }
+ }
+ }
+
+ class MyItemListener2 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 2);
+ }
+ }
+ }
+
+ class MyItemListener3 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 3);
+ }
+ }
+ }
+
+ class MyItemListener4 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 4);
+ }
+ }
+ }
+
+ class MyItemListener5 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 5);
+ }
+ }
+ }
+}
+
+/*
+ * class CheckBoxHeader extends JCheckBox implements TableCellRenderer,
+ * MouseListener { protected CheckBoxHeader rendererComponent; protected int
+ * column; protected boolean mousePressed = false;
+ *
+ * public CheckBoxHeader(ItemListener itemListener ,String text) {
+ * rendererComponent = this; rendererComponent.addItemListener(itemListener);
+ * rendererComponent.setText(text); }
+ *
+ * public Component getTableCellRendererComponent( JTable table, Object value,
+ * boolean isSelected, boolean hasFocus, int row, int column) { if (table !=
+ * null) { JTableHeader header = table.getTableHeader(); if (header != null) {
+ * rendererComponent.setForeground(header.getForeground());
+ * rendererComponent.setBackground(header.getBackground());
+ * rendererComponent.setFont(header.getFont());
+ * rendererComponent.setBorder(header.getBorder());
+ * header.addMouseListener(rendererComponent); } } setColumn(column);
+ * //rendererComponent.setText("Check All");
+ * //setBorder(UIManager.getBorder("TableHeader.cellBorder"));
+ *
+ * return rendererComponent; } protected void setColumn(int column) {
+ * this.column = column; } public int getColumn() { return column; } protected
+ * void handleClickEvent(MouseEvent e) { if (mousePressed) { mousePressed=false;
+ * JTableHeader header = (JTableHeader)(e.getSource()); JTable tableView =
+ * header.getTable(); TableColumnModel columnModel = tableView.getColumnModel();
+ * int viewColumn = columnModel.getColumnIndexAtX(e.getX()); int column =
+ * tableView.convertColumnIndexToModel(viewColumn);
+ *
+ * if (viewColumn == this.column && e.getClickCount() == 1 && column != -1) {
+ * doClick(); } } } public void mouseClicked(MouseEvent e) {
+ * handleClickEvent(e); ((JTableHeader)e.getSource()).repaint(); } public void
+ * mousePressed(MouseEvent e) { mousePressed = true; } public void
+ * mouseReleased(MouseEvent e) { } public void mouseEntered(MouseEvent e) { }
+ * public void mouseExited(MouseEvent e) { } }
+ */
diff --git a/Dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java b/Dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java
index 58fba9e7..83e12b72 100644
--- a/Dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java
@@ -17,8 +17,11 @@ import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.net.URI;
import java.net.URISyntaxException;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
import java.util.Iterator;
import java.util.List;
+import java.util.Map;
import javax.swing.JButton;
import javax.swing.JComboBox;
@@ -34,6 +37,7 @@ import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.JTabbedPane;
import javax.swing.JTable;
+import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.JTextPane;
import javax.swing.RowFilter;
@@ -43,6 +47,8 @@ import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;
@@ -63,34 +69,65 @@ import util.OpenLinks;
public class SearchEditImage_GUI extends JFrame {
private final JPanel contentPanel = new JPanel();
+ JLabel labelName;
+ JLabel labelUpdate;
+ JLabel labelVerantwortlicher;
+ JLabel labelWeitereVerantwortliche;
+ JLabel labelVorlage;
+ JLabel labelLizenzSoftware;
+ JLabel labelInternet;
+ JLabel labelRam;
+ JLabel labelCPU;
+ JLabel labelID;
+ JLabel labelVersion;
+ JTextArea textAreadesc;
+ private JLabel labelOS;
String[] result;
JRadioButton rdbtnInternetJa;
JRadioButton rdbtnInternetNein;
JComboBox<String> comboBox;
JTable tableAllImages;
JTable tablemyImages;
- boolean activeSearch=false;
+ JTable tablePublicVorlagen;
+ boolean activeSearch = false;
private JTextField textFieldName;
JTabbedPane tabbedPane;
- String[] titles = { "Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung",
- "Verantwortlicher", "Letztes Update", "Schlagwort", "ID", "Version" };
+ String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung",
+ "Verantwortlicher", "Letztes Update", "ID", "Version", "Template" };// Angezeigt
+ // werden
+ // aber
+ // nur
+ // Name (0),
+ // OS (2),
+ // Verantwortlicher (4),
+ // Letztes
+ // Update (5)
+
ThriftConnection con = new ThriftConnection();
Client client = models.Client.clientcon.getClient();
- final DefaultTableModel modelAll = new DefaultTableModel(titles, 0){
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- return false;
- }
+ final DefaultTableModel modelAll = new DefaultTableModel(titles, 0) {
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
};
- final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0){
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- return false;
- }
+ final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0) {
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final DefaultTableModel modelPublicVorlagen = new DefaultTableModel(titles,
+ 0) {
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
};
final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
modelAll);
final TableRowSorter<TableModel> rowSorterMyImages = new TableRowSorter<TableModel>(
modelMyImages);
-
+ final TableRowSorter<TableModel> rowSorterPublicVorlagen = new TableRowSorter<TableModel>(
+ modelPublicVorlagen);
+ private JTextField textField;
/**
* Create the dialog.
@@ -108,6 +145,71 @@ public class SearchEditImage_GUI extends JFrame {
public void windowOpened(WindowEvent arg0) {
initTableModel(modelMyImages);
initTableModel(modelAll);
+ initTableModel(modelPublicVorlagen);
+
+ //auszublendende Angaben
+ //1=Lizenzpflichtig
+ //3=Veranstaltung
+ //6=ID
+ //7=Version
+ //8=Template
+ tablemyImages.getColumnModel().getColumn(1).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(1).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(1).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setMaxWidth(0);
+
+ tablePublicVorlagen.getColumnModel().getColumn(1).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(1)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(1)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7)
+ .setMaxWidth(0);
+
+ tableAllImages.getColumnModel().getColumn(1).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(1).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(1).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setMaxWidth(0);
textFieldName.requestFocusInWindow();
}
});
@@ -123,9 +225,9 @@ public class SearchEditImage_GUI extends JFrame {
e.printStackTrace();
}
// Setzt den Fenstertitel
- setTitle("bwLehrpool Suite *Prototyp* - Image bearbeiten");
+ setTitle("bwLehrpool Suite - Image bearbeiten");
// Zentriert das Fenster in die Bildmitte
- setBounds(0, 0, 603, 722);
+ setBounds(0, 0, 918, 722);
GuiOrganizer.centerGUI(this);
final DefaultTableModel model = new DefaultTableModel(titles, 0);
@@ -134,11 +236,11 @@ public class SearchEditImage_GUI extends JFrame {
{
JPanel panel = new JPanel();
panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 11, 577, 57);
+ panel.setBounds(10, 11, 892, 57);
getContentPane().add(panel);
panel.setLayout(null);
{
- JLabel lblNewLabel = new JLabel("Suche nach VL-Image");
+ JLabel lblNewLabel = new JLabel("Imageauswahl");
lblNewLabel.setBounds(10, 11, 509, 22);
panel.add(lblNewLabel);
lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
@@ -148,7 +250,7 @@ public class SearchEditImage_GUI extends JFrame {
txtpnBitteWhlenSie.setEditable(false);
txtpnBitteWhlenSie.setBackground(SystemColor.menu);
txtpnBitteWhlenSie
- .setText("Hier k\u00F6nnen Sie nach Ihrem gew\u00FCnschten VL-Image suchen und dieses f\u00FCr weitere Schritte ausw\u00E4hlen");
+ .setText("Hier k\u00F6nnen Sie nach Ihrem gew\u00FCnschten Image suchen und dieses f\u00FCr weitere Schritte ausw\u00E4hlen");
txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
panel.add(txtpnBitteWhlenSie);
}
@@ -162,12 +264,12 @@ public class SearchEditImage_GUI extends JFrame {
panel_1.setBackground(SystemColor.menu);
panel_1.setBorder(new TitledBorder(null, "Filterfunktionen",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 49, 557, 131);
+ panel_1.setBounds(10, 49, 557, 98);
contentPanel.add(panel_1);
panel_1.setLayout(null);
- JLabel lblNewLabel_2 = new JLabel("Anzeigename:");
- lblNewLabel_2.setBounds(10, 30, 250, 20);
+ JLabel lblNewLabel_2 = new JLabel("Name:");
+ lblNewLabel_2.setBounds(10, 30, 80, 20);
panel_1.add(lblNewLabel_2);
JLabel lblInternetIstInnerhalb = new JLabel("Betriebssystem:");
@@ -183,48 +285,36 @@ public class SearchEditImage_GUI extends JFrame {
String stext = textFieldName.getText();
// Wenn Textfield nicht leer
- if (stext.isEmpty()==false) {
- activeSearch=true;
+ if (stext.isEmpty() == false) {
+ activeSearch = true;
// Filtere nach der Eingabe
rowSorterAll.setRowFilter(RowFilter.regexFilter(
textFieldName.getText(), 0));
rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
textFieldName.getText(), 0));
- }
- else{
- activeSearch=false;
- String username = person.verantwortlicher.getName() + " "
- + person.verantwortlicher.getVorname();
- rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
- username, 4));
- rowSorterAll.setRowFilter(null);
- }
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+ } else {
+ activeSearch = false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ rowSorterAll.setRowFilter(null);
+ }
}
});
- textFieldName.setBounds(270, 30, 250, 20);
+ textFieldName.setBounds(96, 30, 166, 20);
panel_1.add(textFieldName);
textFieldName.setColumns(10);
- JLabel lblErweiterteSuche = new JLabel(
- "<html><u>Erweiterte Suche *Folgt noch*</u></html>");
- lblErweiterteSuche.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
- // oeffnet das Fenster Extended GUI
-
- //ExtendedSearchForImages_GUI es = new ExtendedSearchForImages_GUI();
- //es.setVisible(true);
- }
- });
- lblErweiterteSuche.setForeground(Color.BLUE);
-
- lblErweiterteSuche.setBounds(365, 106, 155, 14);
- panel_1.add(lblErweiterteSuche);
-
comboBox = new JComboBox<String>();
try {
- // Holt sich eine Liste aller verfuegbaren Betriebssysteme vom Server
+ // Holt sich eine Liste aller verfuegbaren Betriebssysteme vom
+ // Server
List<String> list = client.getAllOS();
// Leeres Item hinzufuegen
comboBox.addItem("");
@@ -236,42 +326,53 @@ public class SearchEditImage_GUI extends JFrame {
// TODO Auto-generated catch block
e2.printStackTrace();
JOptionPane.showMessageDialog(null,
- e2.getCause()+"\n"+e2.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e2.getCause() + "\n" + e2.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
// Registriert Auswahlaenderungen der Box
comboBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// Prueft das die Auswahl nicht leer ist
- if (comboBox.getSelectedItem().toString().isEmpty()==false) {
+ if (comboBox.getSelectedItem().toString().isEmpty() == false) {
// Filtert nach dem ausgewaehlten Betriebssystem
- activeSearch=true;
+ activeSearch = true;
rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox
.getSelectedItem().toString(), 2));
rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
comboBox.getSelectedItem().toString(), 2));
- }
- else{
- activeSearch=false;
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ comboBox.getSelectedItem().toString(), 2));
+ } else {
+ activeSearch = false;
String username = person.verantwortlicher.getName() + " "
+ person.verantwortlicher.getVorname();
rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
username, 4));
-
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
rowSorterAll.setRowFilter(null);
}
}
});
- comboBox.setBounds(270, 58, 250, 20);
+ comboBox.setBounds(96, 58, 166, 20);
panel_1.add(comboBox);
+
+ JLabel label_3 = new JLabel("Beschreibung:");
+ label_3.setBounds(291, 30, 80, 20);
+ panel_1.add(label_3);
+
+ textField = new JTextField();
+ textField.setColumns(10);
+ textField.setBounds(381, 30, 166, 20);
+ panel_1.add(textField);
JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
lblHauptmen.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
// oeffnet das Hauuetmenue
-
+
SearchEditImage_GUI.this.setVisible(false);
MainMenue_GUI main = new MainMenue_GUI();
main.setVisible(true);
@@ -285,52 +386,63 @@ public class SearchEditImage_GUI extends JFrame {
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
- JLabel lblVlimage = new JLabel("VL-Image");
+ JLabel lblVlimage = new JLabel("Image");
lblVlimage.setForeground(Color.BLUE);
lblVlimage.setBounds(81, 11, 45, 14);
contentPanel.add(lblVlimage);
JLabel label_2 = new JLabel(">");
- label_2.setBounds(133, 11, 13, 14);
+ label_2.setBounds(116, 11, 13, 14);
contentPanel.add(label_2);
JLabel lblNewLabel_1 = new JLabel("Imageauswahl");
- lblNewLabel_1.setBounds(146, 11, 85, 14);
+ lblNewLabel_1.setBounds(129, 11, 85, 14);
contentPanel.add(lblNewLabel_1);
tabbedPane = new JTabbedPane(JTabbedPane.TOP);
tabbedPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent arg0) {
- if (tabbedPane.getSelectedIndex() == 0 && activeSearch==false) {
+ if (tabbedPane.getSelectedIndex() == 0 && activeSearch == false) {
String username = person.verantwortlicher.getName() + " "
+ person.verantwortlicher.getVorname();
- // String username="Spitzer Tobias";
rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
username, 4));
- } else if(tabbedPane.getSelectedIndex()==1 && activeSearch==false){
+ } else if (tabbedPane.getSelectedIndex() == 1
+ && activeSearch == false) {
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ } else if (tabbedPane.getSelectedIndex() == 2
+ && activeSearch == false) {
rowSorterAll.setRowFilter(null);
}
}
});
- tabbedPane.setBounds(10, 197, 557, 300);
+ tabbedPane.setBounds(10, 158, 557, 339);
contentPanel.add(tabbedPane);
-
-
- JScrollPane scrollPaneAllImages = new JScrollPane();
- tableAllImages = new JTable();
- tableAllImages.setModel(modelAll);
- tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
JScrollPane scrollPaneMyImage = new JScrollPane();
tablemyImages = new JTable();
+ tablemyImages.getSelectionModel().addListSelectionListener(
+ new ListSelectionListener() {
+ public void valueChanged(ListSelectionEvent e) {
+ String imageid = modelMyImages.getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelMyImages.getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ writeImageData(imageid, version);
+ }
+ });
tablemyImages.setModel(modelMyImages);
tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit();
@@ -341,10 +453,6 @@ public class SearchEditImage_GUI extends JFrame {
scrollPaneMyImage.setViewportView(tablemyImages);
tabbedPane.addTab("Meine Images", null, scrollPaneMyImage, null);
- tableAllImages.setRowSorter(rowSorterAll);
-
- scrollPaneAllImages.setViewportView(tableAllImages);
- tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
JScrollPane scrollPaneCoopImages = new JScrollPane();
JTable tableCoopImages = new JTable();
@@ -355,64 +463,196 @@ public class SearchEditImage_GUI extends JFrame {
tableCoopImages.getColumnModel().getColumn(4).sizeWidthToFit();
tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit();
- scrollPaneCoopImages.setViewportView(tableCoopImages);
- tabbedPane.addTab("Kooperative Images", null, scrollPaneCoopImages,
- null);
- tabbedPane.setEnabledAt(2, false);
-
- JScrollPane scrollPanePublicImages = new JScrollPane();
- JTable tablePublicImages = new JTable();
- tablePublicImages.setModel(model);
- tablePublicImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicImages.setViewportView(tablePublicImages);
- tabbedPane.addTab("\u00D6ffentliche Images", null,
- scrollPanePublicImages, null);
- tabbedPane.setEnabledAt(3, false);
-
JScrollPane scrollPanePublicVorlagen = new JScrollPane();
- JTable tablePublicVorlagen = new JTable();
- tablePublicVorlagen.setModel(model);
+ tablePublicVorlagen = new JTable();
+ tablePublicVorlagen.getSelectionModel().addListSelectionListener(
+ new ListSelectionListener() {
+ public void valueChanged(ListSelectionEvent e) {
+ String imageid = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ writeImageData(imageid, version);
+ }
+ });
+ tablePublicVorlagen.setModel(modelPublicVorlagen);
tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit();
tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit();
tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
-
+ tablePublicVorlagen.setRowSorter(rowSorterPublicVorlagen);
scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
- tabbedPane.addTab("\u00D6ffentliche Vorlagen", null,
- scrollPanePublicVorlagen, null);
- tabbedPane.setEnabledAt(4, false);
+ tabbedPane.addTab("Vorlagen", null, scrollPanePublicVorlagen, null);
+
+ JScrollPane scrollPaneAllImages = new JScrollPane();
+ tableAllImages = new JTable();
+ tableAllImages.getSelectionModel().addListSelectionListener(
+ new ListSelectionListener() {
+ public void valueChanged(ListSelectionEvent e) {
+
+ String imageid = modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ writeImageData(imageid, version);
+
+ }
+ });
+ tableAllImages.setModel(modelAll);
+ tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
+ tableAllImages.setRowSorter(rowSorterAll);
+
+ scrollPaneAllImages.setViewportView(tableAllImages);
+ tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
+
+ scrollPaneCoopImages.setViewportView(tableCoopImages);
+ tabbedPane.addTab("bwLehrpool", null, scrollPaneCoopImages, null);
+ tabbedPane.setEnabledAt(3, false);
JButton btnDownload = new JButton("Download");
btnDownload.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// oeffnet den Downloader
- if (tablemyImages.getSelectedRow() != -1) {
- String imageid = modelMyImages.getValueAt(
- tablemyImages.convertRowIndexToModel(tablemyImages
- .getSelectedRow()), 7).toString();
-
- Image.image.setImageId(imageid);
- String imageversion = modelMyImages.getValueAt(
- tablemyImages.convertRowIndexToModel(tablemyImages
- .getSelectedRow()), 8).toString();
-
- Image.image.setVersion(imageversion);
- SearchEditImage_GUI.this.setVisible(false);
- FTPDownloader_GUI down = new FTPDownloader_GUI();
- down.setVisible(true);
-
-
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ // check if user is in correct tab
+ if (tabbedPane.getSelectedIndex() == 0) {
+ // check if a row is selected
+ if (tablemyImages.getSelectedRow() != -1) {
+ String imageid = modelMyImages.getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 6)
+ .toString();
+
+ Image.image.setImageId(imageid);
+ String imageversion = modelMyImages.getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 7)
+ .toString();
+
+ Image.image.setVersion(imageversion);
+
+ FTPEditDownloader_GUI ea = new FTPEditDownloader_GUI();
+ ea.setVisible(true);
+ dispose();
+ }
+ } else if (tabbedPane.getSelectedIndex() == 1) {
+ if (tablePublicVorlagen.getSelectedRow() != -1) {
+ if (modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 4)
+ .equals(username) == true
+ || modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()),
+ 8).equals("true") == true) {
+ String imageid = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()),
+ 6).toString();
+
+ Image.image.setImageId(imageid);
+ String imageversion = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()),
+ 7).toString();
+
+ Image.image.setVersion(imageversion);
+
+ FTPEditDownloader_GUI ea = new FTPEditDownloader_GUI();
+ ea.setVisible(true);
+ dispose();
+ } else {
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Sie haben keine Berechtigung fremde Images herunterzuladen.",
+ "Message",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ }
+ } else if (tabbedPane.getSelectedIndex() == 2) {
+ if (tableAllImages.getSelectedRow() != -1) {
+ if (modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 4).equals(
+ username) == true
+ || modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()),
+ 8).equals("true") == true) {
+ String imageid = modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()),
+ 6).toString();
+
+ Image.image.setImageId(imageid);
+ String imageversion = modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()),
+ 7).toString();
+
+ Image.image.setVersion(imageversion);
+
+ FTPEditDownloader_GUI ea = new FTPEditDownloader_GUI();
+ ea.setVisible(true);
+ dispose();
+ } else {
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Sie haben keine Berechtigung fremde Images herunterzuladen.",
+ "Message",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ }
} else {
- JOptionPane.showMessageDialog(null,
- "Bitte w\u00e4hlen Sie ein Image f\u00fcr den Download aus",
- "Message", JOptionPane.INFORMATION_MESSAGE);
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Bitte w\u00e4hlen Sie ein Image f\u00fcr den Download aus",
+ "Message", JOptionPane.INFORMATION_MESSAGE);
}
}
});
@@ -420,7 +660,7 @@ public class SearchEditImage_GUI extends JFrame {
contentPanel.add(btnDownload);
{
JPanel buttonPane = new JPanel();
- buttonPane.setBounds(0, 640, 597, 33);
+ buttonPane.setBounds(0, 640, 902, 33);
buttonPane.setBackground(SystemColor.menu);
buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
getContentPane().add(buttonPane);
@@ -429,7 +669,7 @@ public class SearchEditImage_GUI extends JFrame {
okButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// oeffnet das Hauptmenue
-
+
MainMenue_GUI main = new MainMenue_GUI();
main.setVisible(true);
dispose();
@@ -443,18 +683,19 @@ public class SearchEditImage_GUI extends JFrame {
JButton cancelButton = new JButton("Weiter");
cancelButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
-
+ String username = person.verantwortlicher.getName()
+ + " " + person.verantwortlicher.getVorname();
// check if user is in correct tab
if (tabbedPane.getSelectedIndex() == 0) {
- //check if a row is selected
+ // check if a row is selected
if (tablemyImages.getSelectedRow() != -1) {
String imageid = modelMyImages
.getValueAt(
tablemyImages
.convertRowIndexToModel(tablemyImages
.getSelectedRow()),
- 7).toString();
+ 6).toString();
Image.image.setImageId(imageid);
String imageversion = modelMyImages
@@ -462,23 +703,80 @@ public class SearchEditImage_GUI extends JFrame {
tablemyImages
.convertRowIndexToModel(tablemyImages
.getSelectedRow()),
- 8).toString();
+ 7).toString();
+
+ Image.image.setVersion(imageversion);
+
+ EditImageAllgemein_GUI ea = new EditImageAllgemein_GUI();
+ ea.setVisible(true);
+ dispose();
+ }
+ } else if (tabbedPane.getSelectedIndex() == 1) {
+ if (tablePublicVorlagen.getSelectedRow() != -1
+ && modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()),
+ 4).equals(username) == true) {
+ String imageid = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()),
+ 6).toString();
+
+ Image.image.setImageId(imageid);
+ String imageversion = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()),
+ 7).toString();
Image.image.setVersion(imageversion);
-
+
+ EditImageAllgemein_GUI ea = new EditImageAllgemein_GUI();
+ ea.setVisible(true);
+ dispose();
+ }
+ } else if (tabbedPane.getSelectedIndex() == 2) {
+ if (tableAllImages.getSelectedRow() != -1
+ && modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()),
+ 4).equals(username) == true) {
+ String imageid = modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()),
+ 6).toString();
+
+ Image.image.setImageId(imageid);
+ String imageversion = modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()),
+ 7).toString();
+
+ Image.image.setVersion(imageversion);
+
EditImageAllgemein_GUI ea = new EditImageAllgemein_GUI();
ea.setVisible(true);
dispose();
} else {
- JOptionPane.showMessageDialog(null,
- "Bitte w\u00e4hlen Sie ein Image aus.",
- "Image Auswahl", JOptionPane.INFORMATION_MESSAGE);
- }// end check if row is selected
- } else {
- JOptionPane.showMessageDialog(null,
- "Bitte w\u00e4hlen Sie ein eigenes Image aus.",
- "Image Auswahl", JOptionPane.INFORMATION_MESSAGE);
- }//end check if correct tab is selected
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Bitte w\u00e4hlen Sie ein eigenes Image aus.",
+ "Image Auswahl",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ }// end check if correct tab is selected
}
});
cancelButton.setActionCommand("Cancel");
@@ -487,13 +785,137 @@ public class SearchEditImage_GUI extends JFrame {
}
JSeparator separator = new JSeparator();
- separator.setBounds(0, 78, 597, 2);
+ separator.setBounds(0, 79, 912, 1);
getContentPane().add(separator);
JSeparator separator_1 = new JSeparator();
- separator_1.setBounds(0, 627, 597, 2);
+ separator_1.setBounds(0, 627, 912, 2);
getContentPane().add(separator_1);
+ JPanel panel = new JPanel();
+ panel.setLayout(null);
+ panel.setBorder(new TitledBorder(null, "Detailinformationen",
+
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(586, 85, 316, 531);
+ getContentPane().add(panel);
+
+ JLabel lblName = new JLabel("Name:");
+ lblName.setBounds(10, 87, 130, 14);
+ panel.add(lblName);
+
+ labelName = new JLabel("");
+ labelName.setBounds(10, 102, 296, 14);
+ panel.add(labelName);
+
+ JLabel lblVerantwortlicher = new JLabel("Verantwortlicher:");
+ lblVerantwortlicher.setBounds(10, 259, 130, 14);
+ panel.add(lblVerantwortlicher);
+
+ labelOS = new JLabel("");
+ labelOS.setBounds(10, 216, 296, 14);
+ panel.add(labelOS);
+
+ JLabel lblWeitereVerantwortliche = new JLabel("Betriebssystem:");
+ lblWeitereVerantwortliche.setBounds(10, 202, 130, 14);
+ panel.add(lblWeitereVerantwortliche);
+
+ labelVerantwortlicher = new JLabel("");
+ labelVerantwortlicher.setBounds(10, 272, 296, 14);
+ panel.add(labelVerantwortlicher);
+
+ JLabel label = new JLabel("Weitere Verantwortliche:");
+ label.setBounds(10, 284, 130, 14);
+ panel.add(label);
+
+ labelWeitereVerantwortliche = new JLabel("");
+ labelWeitereVerantwortliche.setBounds(10, 297, 296, 14);
+ panel.add(labelWeitereVerantwortliche);
+
+ labelUpdate = new JLabel("");
+ labelUpdate.setBounds(10, 245, 296, 14);
+ panel.add(labelUpdate);
+
+ JLabel lblLetztesUpdate = new JLabel("Letztes Update:");
+ lblLetztesUpdate.setBounds(10, 231, 130, 14);
+ panel.add(lblLetztesUpdate);
+
+ JLabel lblImageIstVorlage = new JLabel("Image ist Vorlage:");
+ lblImageIstVorlage.setBounds(10, 336, 130, 14);
+ panel.add(lblImageIstVorlage);
+
+ labelVorlage = new JLabel("");
+ labelVorlage.setBounds(10, 350, 296, 14);
+ panel.add(labelVorlage);
+
+ labelLizenzSoftware = new JLabel("");
+ labelLizenzSoftware.setBounds(10, 383, 296, 14);
+ panel.add(labelLizenzSoftware);
+
+ JLabel lblLizenzpflichtigeSoftware = new JLabel(
+ "Lizenzpflichtige Software:");
+ lblLizenzpflichtigeSoftware.setBounds(10, 367, 130, 14);
+ panel.add(lblLizenzpflichtigeSoftware);
+
+ JLabel lblInternet = new JLabel("Internetsperre vorhanden:");
+ lblInternet.setBounds(10, 400, 130, 14);
+ panel.add(lblInternet);
+
+ labelInternet = new JLabel("");
+ labelInternet.setBounds(10, 417, 296, 14);
+ panel.add(labelInternet);
+
+ JLabel lblEmpfehlungRam = new JLabel("Empfehlung RAM:");
+ lblEmpfehlungRam.setBounds(10, 432, 130, 14);
+ panel.add(lblEmpfehlungRam);
+
+ labelRam = new JLabel("");
+ labelRam.setBounds(10, 455, 296, 14);
+ panel.add(labelRam);
+
+ JLabel lblEmpfehlungCpu = new JLabel("Empfehlung CPU:");
+ lblEmpfehlungCpu.setBounds(10, 469, 130, 14);
+ panel.add(lblEmpfehlungCpu);
+
+ labelCPU = new JLabel("");
+ labelCPU.setBounds(10, 487, 296, 14);
+ panel.add(labelCPU);
+
+ JLabel lblTechnischeDaten = new JLabel("Technische Daten:");
+ lblTechnischeDaten.setBounds(10, 322, 296, 14);
+ panel.add(lblTechnischeDaten);
+
+ JLabel lblId = new JLabel("ID:");
+ lblId.setBounds(10, 23, 296, 14);
+ panel.add(lblId);
+
+ labelID = new JLabel("");
+ labelID.setBounds(10, 37, 296, 14);
+ panel.add(labelID);
+
+ labelVersion = new JLabel("");
+ labelVersion.setBounds(10, 73, 296, 14);
+ panel.add(labelVersion);
+
+ JLabel lblVersion = new JLabel("Version:");
+ lblVersion.setBounds(10, 57, 296, 14);
+ panel.add(lblVersion);
+
+ JLabel lblBeschreibung = new JLabel("Beschreibung:");
+ lblBeschreibung.setBounds(10, 119, 130, 14);
+ panel.add(lblBeschreibung);
+
+ JScrollPane scrollPane = new JScrollPane();
+ scrollPane.setBounds(10, 135, 296, 65);
+ panel.add(scrollPane);
+
+ textAreadesc = new JTextArea();
+ textAreadesc.setLineWrap(true);
+ textAreadesc.setEditable(false);
+ textAreadesc.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ textAreadesc.setBackground(SystemColor.menu);
+ scrollPane.setViewportView(textAreadesc);
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
@@ -504,15 +926,15 @@ public class SearchEditImage_GUI extends JFrame {
mntmFaq.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
+
OpenLinks open = new OpenLinks();
-
+
URI windows;
try {
windows = new URI(Links.getFAQ());
-
+
open.openWebpage(windows);
-
+
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
@@ -520,7 +942,6 @@ public class SearchEditImage_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmFaq);
-
JMenuItem mntmOtrs = new JMenuItem("OTRS");
mntmOtrs.addMouseListener(new MouseAdapter() {
@@ -528,22 +949,22 @@ public class SearchEditImage_GUI extends JFrame {
public void mousePressed(MouseEvent arg0) {
OpenLinks open = new OpenLinks();
-
+
URI windows;
try {
windows = new URI(Links.getOTRS());
-
+
open.openWebpage(windows);
-
+
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
+
}
});
mnNewMenu_1.add(mntmOtrs);
-
+
JMenuItem mntmAbout = new JMenuItem("About");
mntmAbout.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
@@ -563,7 +984,8 @@ public class SearchEditImage_GUI extends JFrame {
images = client.getImageList();
Iterator<server.Image> i = images.iterator();
-
+ SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
int x = 0;
while (i.hasNext()) {
@@ -573,9 +995,11 @@ public class SearchEditImage_GUI extends JFrame {
images.get(x).getOsName(),
images.get(x).getLectureName(),
images.get(x).getUserData(),
- images.get(x).getUpdateTime(), "", images.get(x).id,
- images.get(x).getVersion() };
+ out.format(in.parse(images.get(x).updateTime)),
+ images.get(x).id, images.get(x).getVersion(),
+ images.get(x).getIsTemplate() };
// Fuege diese Objekte der Tabelle hinzu
+
model.addRow(obj);
x++;
i.next();
@@ -583,14 +1007,49 @@ public class SearchEditImage_GUI extends JFrame {
}
return model;
- } catch (TException e1) {
+ } catch (TException | ParseException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
}
return model;
}
+ public void writeImageData(String id, String version) {
+ try {
+ SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
+ Map<String, String> res = client.getImageData(id, version);
+ labelName.setText(res.get("name"));
+ labelOS.setText(res.get("os"));
+ labelUpdate.setText(out.format(in.parse(res.get("lastupdate"))));
+ labelVerantwortlicher.setText(res.get("owner"));
+ labelWeitereVerantwortliche.setText("Noch nicht Verf\u00fcgbar");
+ if (res.get("template").equals("true")) {
+ labelVorlage.setText("Ja");
+ } else {
+ labelVorlage.setText("Nein");
+ }
+ if (res.get("license").equals("1")) {
+ labelLizenzSoftware.setText("Ja");
+ } else {
+ labelLizenzSoftware.setText("Nein");
+ }
+ if (res.get("internet").equals("1")) {
+ labelInternet.setText("Ja");
+ } else {
+ labelInternet.setText("Nein");
+ }
+ labelRam.setText(res.get("ram"));
+ labelCPU.setText(res.get("cpu"));
+ labelID.setText(res.get("id"));
+ labelVersion.setText(res.get("version"));
+ textAreadesc.setText(res.get("desc"));
+ } catch (TException | ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
}
diff --git a/Dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java b/Dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java
index c20ecc99..f41135b1 100644
--- a/Dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java
@@ -1,529 +1,963 @@
-package gui.image;
-
-import gui.intro.About_GUI;
-import gui.intro.MainMenue_GUI;
-
-import java.awt.Color;
-import java.awt.FlowLayout;
-import java.awt.Font;
-import java.awt.SystemColor;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.awt.event.KeyAdapter;
-import java.awt.event.KeyEvent;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.awt.event.WindowAdapter;
-import java.awt.event.WindowEvent;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.swing.JButton;
-import javax.swing.JComboBox;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JMenu;
-import javax.swing.JMenuBar;
-import javax.swing.JMenuItem;
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
-import javax.swing.JRadioButton;
-import javax.swing.JScrollPane;
-import javax.swing.JSeparator;
-import javax.swing.JTabbedPane;
-import javax.swing.JTable;
-import javax.swing.JTextField;
-import javax.swing.JTextPane;
-import javax.swing.RowFilter;
-import javax.swing.UIManager;
-import javax.swing.UnsupportedLookAndFeelException;
-import javax.swing.border.EmptyBorder;
-import javax.swing.border.TitledBorder;
-import javax.swing.event.ChangeEvent;
-import javax.swing.event.ChangeListener;
-import javax.swing.table.DefaultTableModel;
-import javax.swing.table.TableModel;
-import javax.swing.table.TableRowSorter;
-
-import models.Image;
-import models.Links;
-import models.person;
-
-import org.apache.thrift.TException;
-
-import server.Server.Client;
-import thrift.ThriftConnection;
-import util.GuiOrganizer;
-import util.OpenLinks;
-
-@SuppressWarnings("serial")
-public class SearchImage_GUI extends JFrame {
-
- private final JPanel contentPanel = new JPanel();
- String[] result;
- JRadioButton rdbtnInternetJa;
- JRadioButton rdbtnInternetNein;
- JComboBox<String> comboBox;
- JTable tableAllImages;
- JTable tablemyImages;
- private JTextField textFieldName;
- JTabbedPane tabbedPane;
- String[] titles = { "Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung",
- "Verantwortlicher", "Letztes Update", "Schlagwort", "ID", "Version" };
- ThriftConnection con = new ThriftConnection();
- Client client = models.Client.clientcon.getClient();
- final DefaultTableModel modelAll = new DefaultTableModel(titles, 0){
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- return false;
- }
- };
- final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0){
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- return false;
- }
- };
- final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
- modelAll);
- final TableRowSorter<TableModel> rowSorterMyImages = new TableRowSorter<TableModel>(
- modelMyImages);
-
-
- /**
- * Create the dialog.
- */
- public SearchImage_GUI() {
- addWindowListener(new WindowAdapter() {
- @Override
- public void windowClosing(WindowEvent arg0) {
- // Beendet die Anwendung nach klick auf X
- con.closeThriftConnection();
- System.exit(0);
- }
-
- @Override
- public void windowOpened(WindowEvent arg0) {
- textFieldName.requestFocusInWindow();
- }
- });
- // Verhindert das Vergroessern Des Fensters
- setResizable(false);
-
- try {
- // Setzt das Look & Feel auf System
- UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
- } catch (ClassNotFoundException | InstantiationException
- | IllegalAccessException | UnsupportedLookAndFeelException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- // Setzt den Fenstertitel
- setTitle("bwLehrpool Suite *Prototyp* - Suche VL-Image");
- // Zentriert das Fenster in die Bildmitte
- setBounds(0, 0, 603, 722);
- GuiOrganizer.centerGUI(this);
-
- final DefaultTableModel model = new DefaultTableModel(titles, 0);
-
- getContentPane().setLayout(null);
- {
- JPanel panel = new JPanel();
- panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 11, 577, 57);
- getContentPane().add(panel);
- panel.setLayout(null);
- {
- JLabel lblNewLabel = new JLabel("Suche nach VL-Image");
- lblNewLabel.setBounds(10, 11, 509, 22);
- panel.add(lblNewLabel);
- lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
- }
-
- JTextPane txtpnBitteWhlenSie = new JTextPane();
- txtpnBitteWhlenSie.setEditable(false);
- txtpnBitteWhlenSie.setBackground(SystemColor.menu);
- txtpnBitteWhlenSie
- .setText("Hier k\u00F6nnen Sie nach Ihrem gew\u00FCnschten VL-Image suchen und dieses f\u00FCr weitere Schritte ausw\u00E4hlen");
- txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
- panel.add(txtpnBitteWhlenSie);
- }
- contentPanel.setBounds(10, 85, 577, 531);
- contentPanel.setBackground(SystemColor.menu);
- contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
- getContentPane().add(contentPanel);
- contentPanel.setLayout(null);
-
- JPanel panel_1 = new JPanel();
- panel_1.setBackground(SystemColor.menu);
- panel_1.setBorder(new TitledBorder(null, "Filterfunktionen",
- TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 49, 557, 131);
- contentPanel.add(panel_1);
- panel_1.setLayout(null);
-
- JLabel lblNewLabel_2 = new JLabel("Anzeigename:");
- lblNewLabel_2.setBounds(10, 30, 250, 20);
- panel_1.add(lblNewLabel_2);
-
- JLabel lblInternetIstInnerhalb = new JLabel("Betriebssystem:");
- lblInternetIstInnerhalb.setBounds(10, 58, 250, 20);
- panel_1.add(lblInternetIstInnerhalb);
-
- textFieldName = new JTextField();
- // Key Listener der Tastatureingabe registriert
- textFieldName.addKeyListener(new KeyAdapter() {
- @Override
- public void keyReleased(KeyEvent e) {
- // Textfield eingabe auslesen
- String stext = textFieldName.getText();
-
- // Wenn Textfield nicht leer
- if (stext != "") {
- // Filtere nach der Eingabe
- rowSorterAll.setRowFilter(RowFilter.regexFilter(
- textFieldName.getText(), 0));
- rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
- textFieldName.getText(), 0));
-
- }
- }
- });
-
- textFieldName.setBounds(270, 30, 250, 20);
- panel_1.add(textFieldName);
- textFieldName.setColumns(10);
-
- JLabel lblErweiterteSuche = new JLabel(
- "<html><u>Erweiterte Suche *Folgt noch*</u></html>");
- lblErweiterteSuche.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
- // oeffnet das Fenster Extended GUI
-
- ExtendedSearchForImages_GUI es = new ExtendedSearchForImages_GUI();
- es.setVisible(true);
- }
- });
- lblErweiterteSuche.setForeground(Color.BLUE);
-
- lblErweiterteSuche.setBounds(360, 106, 160, 14);
- panel_1.add(lblErweiterteSuche);
-
- comboBox = new JComboBox<String>();
- try {
- // Holt sich eine Liste aller verfuegbaren Betriebssysteme vom Server
- List<String> list = client.getAllOS();
- // Leeres Item hinzufuegen
- comboBox.addItem("");
- for (int i = 0; i < list.size(); i++) {
- // Hinzufuegen der verfuegbaren Betriebssysteme
- comboBox.addItem(list.get(i));
- }
- } catch (TException e2) {
- // TODO Auto-generated catch block
- e2.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e2.getCause()+"\n"+e2.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
- }
- // Registriert Auswahlaenderungen der Box
- comboBox.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent arg0) {
- // Prueft das die Auswahl nicht leer ist
- if (comboBox.getSelectedItem().toString() != "") {
- // Filtert nach dem ausgewaehlten Betriebssystem
- rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox
- .getSelectedItem().toString(), 2));
- rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
- comboBox.getSelectedItem().toString(), 2));
- }
- }
-
- });
- comboBox.setBounds(270, 58, 250, 20);
- panel_1.add(comboBox);
-
- JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
- lblHauptmen.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
- // oeffnet das Hauuetmenue
-
- SearchImage_GUI.this.setVisible(false);
- MainMenue_GUI main = new MainMenue_GUI();
- main.setVisible(true);
- }
- });
- lblHauptmen.setForeground(Color.BLUE);
- lblHauptmen.setBounds(10, 11, 61, 14);
- contentPanel.add(lblHauptmen);
-
- JLabel label_1 = new JLabel(">");
- label_1.setBounds(69, 11, 13, 14);
- contentPanel.add(label_1);
-
- JLabel lblVlimage = new JLabel("VL-Image");
- lblVlimage.setForeground(Color.BLUE);
- lblVlimage.setBounds(81, 11, 45, 14);
- contentPanel.add(lblVlimage);
-
- JLabel label_2 = new JLabel(">");
- label_2.setBounds(133, 11, 13, 14);
- contentPanel.add(label_2);
-
- JLabel lblNewLabel_1 = new JLabel("Imageauswahl");
- lblNewLabel_1.setBounds(146, 11, 85, 14);
- contentPanel.add(lblNewLabel_1);
-
- tabbedPane = new JTabbedPane(JTabbedPane.TOP);
- tabbedPane.addChangeListener(new ChangeListener() {
- public void stateChanged(ChangeEvent arg0) {
- if (tabbedPane.getSelectedIndex() == 0) {
-
- String username = person.verantwortlicher.getName() + " "
- + person.verantwortlicher.getVorname();
- // String username="Spitzer Tobias";
- rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
- username, 4));
- } else if (tabbedPane.getSelectedIndex() == 1) {
-
- }
-
- }
- });
-
- tabbedPane.setBounds(10, 197, 557, 300);
- contentPanel.add(tabbedPane);
- initTableModel(modelMyImages);
-
- JScrollPane scrollPaneAllImages = new JScrollPane();
- tableAllImages = new JTable();
- tableAllImages.setModel(modelAll);
- tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
- initTableModel(modelAll);
-
- JScrollPane scrollPaneMyImage = new JScrollPane();
- tablemyImages = new JTable();
- tablemyImages.setModel(modelMyImages);
- tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tablemyImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tablemyImages.getColumnModel().getColumn(5).sizeWidthToFit();
- tablemyImages.setRowSorter(rowSorterMyImages);
-
- scrollPaneMyImage.setViewportView(tablemyImages);
- tabbedPane.addTab("Meine Images", null, scrollPaneMyImage, null);
- tableAllImages.setRowSorter(rowSorterAll);
-
- scrollPaneAllImages.setViewportView(tableAllImages);
- tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
-
- JScrollPane scrollPaneCoopImages = new JScrollPane();
- JTable tableCoopImages = new JTable();
- tableCoopImages.setModel(model);
- tableCoopImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPaneCoopImages.setViewportView(tableCoopImages);
- tabbedPane.addTab("Kooperative Images", null, scrollPaneCoopImages,
- null);
- tabbedPane.setEnabledAt(2, false);
-
- JScrollPane scrollPanePublicImages = new JScrollPane();
- JTable tablePublicImages = new JTable();
- tablePublicImages.setModel(model);
- tablePublicImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicImages.setViewportView(tablePublicImages);
- tabbedPane.addTab("\u00D6ffentliche Images", null,
- scrollPanePublicImages, null);
- tabbedPane.setEnabledAt(3, false);
-
- JScrollPane scrollPanePublicVorlagen = new JScrollPane();
- JTable tablePublicVorlagen = new JTable();
- tablePublicVorlagen.setModel(model);
- tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
- tabbedPane.addTab("\u00D6ffentliche Vorlagen", null,
- scrollPanePublicVorlagen, null);
- tabbedPane.setEnabledAt(4, false);
-
- JButton btnDownload = new JButton("Download");
- btnDownload.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent arg0) {
- // oeffnet den Downloader
-
- if (tablemyImages.getSelectedRow() != -1) {
- String imageid = modelMyImages.getValueAt(
- tablemyImages.convertRowIndexToModel(tablemyImages
- .getSelectedRow()), 7).toString();
-
- Image.image.setImageId(imageid);
- String imageversion = modelMyImages.getValueAt(
- tablemyImages.convertRowIndexToModel(tablemyImages
- .getSelectedRow()), 8).toString();
-
- Image.image.setVersion(imageversion);
- SearchImage_GUI.this.setVisible(false);
- FTPDownloader_GUI down = new FTPDownloader_GUI();
- down.setVisible(true);
-
-
- } else {
- JOptionPane.showMessageDialog(null,
- "Bitte w\u00e4hlen Sie ein Image f\u00fcr den Download aus",
- "Message", JOptionPane.INFORMATION_MESSAGE);
- }
- }
- });
- btnDownload.setBounds(449, 508, 118, 23);
- contentPanel.add(btnDownload);
- {
- JPanel buttonPane = new JPanel();
- buttonPane.setBounds(0, 640, 597, 33);
- buttonPane.setBackground(SystemColor.menu);
- buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
- getContentPane().add(buttonPane);
- {
- JButton okButton = new JButton("Zur\u00FCck");
- okButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- // oeffnet das Hauptmenue
-
- MainMenue_GUI main = new MainMenue_GUI();
- main.setVisible(true);
- dispose();
- }
- });
- okButton.setActionCommand("OK");
- buttonPane.add(okButton);
- getRootPane().setDefaultButton(okButton);
- }
- }
-
- JSeparator separator = new JSeparator();
- separator.setBounds(0, 78, 597, 2);
- getContentPane().add(separator);
-
- JSeparator separator_1 = new JSeparator();
- separator_1.setBounds(0, 627, 597, 2);
- getContentPane().add(separator_1);
-
- JMenuBar menuBar = new JMenuBar();
- setJMenuBar(menuBar);
-
- JMenu mnNewMenu_1 = new JMenu("Hilfe");
- menuBar.add(mnNewMenu_1);
-
- JMenuItem mntmFaq = new JMenuItem("FAQ");
- mntmFaq.addMouseListener(new MouseAdapter() {
- @Override
- public void mousePressed(MouseEvent arg0) {
-
- OpenLinks open = new OpenLinks();
-
- URI windows;
- try {
- windows = new URI(Links.getFAQ());
-
- open.openWebpage(windows);
-
- } catch (URISyntaxException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- });
- mnNewMenu_1.add(mntmFaq);
-
-
- JMenuItem mntmOtrs = new JMenuItem("OTRS");
- mntmOtrs.addMouseListener(new MouseAdapter() {
- @Override
- public void mousePressed(MouseEvent arg0) {
-
- OpenLinks open = new OpenLinks();
-
- URI windows;
- try {
- windows = new URI(Links.getOTRS());
-
- open.openWebpage(windows);
-
- } catch (URISyntaxException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- }
- });
- mnNewMenu_1.add(mntmOtrs);
-
- JMenuItem mntmAbout = new JMenuItem("About");
- mntmAbout.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- About_GUI ab = new About_GUI();
- ab.setVisible(true);
- }
- });
- mnNewMenu_1.add(mntmAbout);
-
- }
-
- // Initiale Beffuelung eines Table models
- public DefaultTableModel initTableModel(DefaultTableModel model) {
- List<server.Image> images;
- try {
- // Hole eine Liste der Images
- images = client.getImageList();
-
- Iterator<server.Image> i = images.iterator();
-
- int x = 0;
-
- while (i.hasNext()) {
- // erzeuge Objekte fuer die Tabelle
- Object[] obj = { images.get(x).getImageName(),
- images.get(x).getLicenseRestriction(),
- images.get(x).getOsName(),
- images.get(x).getLectureName(),
- images.get(x).getUserData(),
- images.get(x).getUpdateTime(), "", images.get(x).id,
- images.get(x).getVersion() };
- // Fuege diese Objekte der Tabelle hinzu
- model.addRow(obj);
- x++;
- i.next();
-
- }
-
- return model;
- } catch (TException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
- }
- return model;
- }
-
-}
+package gui.image;
+
+import gui.intro.About_GUI;
+import gui.intro.MainMenue_GUI;
+
+import java.awt.Color;
+import java.awt.FlowLayout;
+import java.awt.Font;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.KeyAdapter;
+import java.awt.event.KeyEvent;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import javax.swing.JButton;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JRadioButton;
+import javax.swing.JScrollPane;
+import javax.swing.JSeparator;
+import javax.swing.JTabbedPane;
+import javax.swing.JTable;
+import javax.swing.JTextArea;
+import javax.swing.JTextField;
+import javax.swing.JTextPane;
+import javax.swing.RowFilter;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+import javax.swing.border.EmptyBorder;
+import javax.swing.border.TitledBorder;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+import javax.swing.event.TableModelEvent;
+import javax.swing.event.TableModelListener;
+import javax.swing.table.DefaultTableModel;
+import javax.swing.table.TableModel;
+import javax.swing.table.TableRowSorter;
+
+import models.Image;
+import models.Links;
+import models.person;
+
+import org.apache.thrift.TException;
+
+import server.Server.Client;
+import thrift.ThriftConnection;
+import util.GuiOrganizer;
+import util.OpenLinks;
+import java.beans.PropertyChangeListener;
+import java.beans.PropertyChangeEvent;
+
+@SuppressWarnings("serial")
+public class SearchImage_GUI extends JFrame {
+
+ private final JPanel contentPanel = new JPanel();
+ JLabel labelName;
+ JLabel labelUpdate;
+ JLabel labelVerantwortlicher;
+ JLabel labelWeitereVerantwortliche;
+ JLabel labelVorlage;
+ JLabel labelLizenzSoftware;
+ JLabel labelInternet;
+ JLabel labelRam;
+ JLabel labelCPU;
+ JLabel labelID;
+ JLabel labelVersion;
+ JTextArea textAreadesc;
+ private JLabel labelOS;
+ String[] result;
+ JRadioButton rdbtnInternetJa;
+ JRadioButton rdbtnInternetNein;
+ JComboBox<String> comboBox;
+ JTable tableAllImages;
+ JTable tablemyImages;
+ JTable tablePublicVorlagen;
+ private JTextField textFieldName;
+ JTabbedPane tabbedPane;
+ boolean activeSearch = false;
+ String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung",
+ "Verantwortlicher", "Letztes Update", "ID", "Version", "Template" }; // Angezeigt
+ // werden
+ // aber
+ // nur
+ // Name
+ // (0),
+ // OS
+ // (2),
+ // Verantwortlicher
+ // (4),
+ // Letztes
+ // Update
+ // (5)
+ ThriftConnection con = new ThriftConnection();
+ Client client = models.Client.clientcon.getClient();
+ final DefaultTableModel modelAll = new DefaultTableModel(titles, 0) {
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0) {
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final DefaultTableModel modelPublicVorlagen = new DefaultTableModel(titles,
+ 0) {
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
+ modelAll);
+ final TableRowSorter<TableModel> rowSorterMyImages = new TableRowSorter<TableModel>(
+ modelMyImages);
+ final TableRowSorter<TableModel> rowSorterPublicVorlagen = new TableRowSorter<TableModel>(
+ modelPublicVorlagen);
+ private JTextField textField;
+
+ /**
+ * Create the dialog.
+ */
+ public SearchImage_GUI() {
+ addWindowListener(new WindowAdapter() {
+ @Override
+ public void windowClosing(WindowEvent arg0) {
+ // Beendet die Anwendung nach klick auf X
+ con.closeThriftConnection();
+ System.exit(0);
+ }
+
+ @Override
+ public void windowOpened(WindowEvent arg0) {
+ initTableModel(modelAll);
+ initTableModel(modelMyImages);
+ initTableModel(modelPublicVorlagen);
+
+ // auszublendende Angaben
+ // 1=Lizenzpflichtig
+ // 3=Veranstaltung
+ // 6=ID
+ // 7=Version
+ // 8=Template
+ tablemyImages.getColumnModel().getColumn(1).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(1).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(1).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setMaxWidth(0);
+
+ tablePublicVorlagen.getColumnModel().getColumn(1).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(1)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(1)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6)
+ .setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7)
+ .setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7)
+ .setMaxWidth(0);
+
+ tableAllImages.getColumnModel().getColumn(1).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(1).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(1).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setMaxWidth(0);
+ textFieldName.requestFocusInWindow();
+ }
+ });
+ // Verhindert das Vergroessern Des Fensters
+ setResizable(false);
+
+ try {
+ // Setzt das Look & Feel auf System
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ } catch (ClassNotFoundException | InstantiationException
+ | IllegalAccessException | UnsupportedLookAndFeelException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ // Setzt den Fenstertitel
+ setTitle("bwLehrpool Suite - Image suchen");
+ // Zentriert das Fenster in die Bildmitte
+ setBounds(0, 0, 918, 722);
+ GuiOrganizer.centerGUI(this);
+
+ final DefaultTableModel model = new DefaultTableModel(titles, 0);
+
+ getContentPane().setLayout(null);
+ {
+ JPanel panel = new JPanel();
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(10, 11, 892, 57);
+ getContentPane().add(panel);
+ panel.setLayout(null);
+ {
+ JLabel lblNewLabel = new JLabel("Imagesuche");
+ lblNewLabel.setBounds(10, 11, 509, 22);
+ panel.add(lblNewLabel);
+ lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
+ }
+
+ JTextPane txtpnBitteWhlenSie = new JTextPane();
+ txtpnBitteWhlenSie.setEditable(false);
+ txtpnBitteWhlenSie.setBackground(SystemColor.menu);
+ txtpnBitteWhlenSie
+ .setText("Hier k\u00F6nnen Sie nach Ihrem gew\u00FCnschten Image suchen und dieses f\u00FCr weitere Schritte ausw\u00E4hlen");
+ txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
+ panel.add(txtpnBitteWhlenSie);
+ }
+ contentPanel.setBounds(10, 85, 577, 531);
+ contentPanel.setBackground(SystemColor.menu);
+ contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
+ getContentPane().add(contentPanel);
+ contentPanel.setLayout(null);
+
+ JPanel panel_1 = new JPanel();
+ panel_1.setBackground(SystemColor.menu);
+ panel_1.setBorder(new TitledBorder(null, "Filterfunktionen",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_1.setBounds(10, 49, 557, 98);
+ contentPanel.add(panel_1);
+ panel_1.setLayout(null);
+
+ JLabel lblNewLabel_2 = new JLabel("Anzeigename:");
+ lblNewLabel_2.setBounds(10, 30, 80, 20);
+ panel_1.add(lblNewLabel_2);
+
+ JLabel lblInternetIstInnerhalb = new JLabel("Betriebssystem:");
+ lblInternetIstInnerhalb.setBounds(10, 58, 80, 20);
+ panel_1.add(lblInternetIstInnerhalb);
+
+ textFieldName = new JTextField();
+ // Key Listener der Tastatureingabe registriert
+ textFieldName.addKeyListener(new KeyAdapter() {
+ @Override
+ public void keyReleased(KeyEvent e) {
+ // Textfield eingabe auslesen
+ String stext = textFieldName.getText();
+
+ // Wenn Textfield nicht leer
+ if (stext != "") {
+ activeSearch = true;
+ // Filtere nach der Eingabe
+ rowSorterAll.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+
+ } else {
+ activeSearch = false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ rowSorterAll.setRowFilter(null);
+ }
+ }
+ });
+
+ textFieldName.setBounds(96, 30, 166, 20);
+ panel_1.add(textFieldName);
+ textFieldName.setColumns(10);
+
+ comboBox = new JComboBox<String>();
+ try {
+ // Holt sich eine Liste aller verfuegbaren Betriebssysteme vom
+ // Server
+ List<String> list = client.getAllOS();
+ // Leeres Item hinzufuegen
+ comboBox.addItem("");
+ for (int i = 0; i < list.size(); i++) {
+ // Hinzufuegen der verfuegbaren Betriebssysteme
+ comboBox.addItem(list.get(i));
+ }
+ } catch (TException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ JOptionPane.showMessageDialog(null,
+ e2.getCause() + "\n" + e2.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
+ }
+ // Registriert Auswahlaenderungen der Box
+ comboBox.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ // Prueft das die Auswahl nicht leer ist
+ if (comboBox.getSelectedItem().toString() != "") {
+ activeSearch = true;
+ rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox
+ .getSelectedItem().toString(), 2));
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ comboBox.getSelectedItem().toString(), 2));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ comboBox.getSelectedItem().toString(), 2));
+ } else {
+ activeSearch = false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ rowSorterAll.setRowFilter(null);
+ }
+ }
+
+ });
+ comboBox.setBounds(96, 58, 166, 20);
+ panel_1.add(comboBox);
+
+ JLabel label_3 = new JLabel("Beschreibung:");
+ label_3.setBounds(291, 30, 80, 20);
+ panel_1.add(label_3);
+
+ textField = new JTextField();
+ textField.setColumns(10);
+ textField.setBounds(381, 30, 166, 20);
+ panel_1.add(textField);
+
+ JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
+ lblHauptmen.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mouseClicked(MouseEvent arg0) {
+ // oeffnet das Hauuetmenue
+
+ SearchImage_GUI.this.setVisible(false);
+ MainMenue_GUI main = new MainMenue_GUI();
+ main.setVisible(true);
+ }
+ });
+ lblHauptmen.setForeground(Color.BLUE);
+ lblHauptmen.setBounds(10, 11, 61, 14);
+ contentPanel.add(lblHauptmen);
+
+ JLabel label_1 = new JLabel(">");
+ label_1.setBounds(69, 11, 13, 14);
+ contentPanel.add(label_1);
+
+ JLabel lblVlimage = new JLabel("Image");
+ lblVlimage.setForeground(Color.BLUE);
+ lblVlimage.setBounds(81, 11, 45, 14);
+ contentPanel.add(lblVlimage);
+
+ JLabel label_2 = new JLabel(">");
+ label_2.setBounds(116, 11, 13, 14);
+ contentPanel.add(label_2);
+
+ JLabel lblNewLabel_1 = new JLabel("Imageauswahl");
+ lblNewLabel_1.setBounds(129, 11, 85, 14);
+ contentPanel.add(lblNewLabel_1);
+
+ tabbedPane = new JTabbedPane(JTabbedPane.TOP);
+ tabbedPane.addChangeListener(new ChangeListener() {
+ public void stateChanged(ChangeEvent arg0) {
+ if (tabbedPane.getSelectedIndex() == 0 && activeSearch == false) {
+
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ } else if (tabbedPane.getSelectedIndex() == 1
+ && activeSearch == false) {
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ } else if (tabbedPane.getSelectedIndex() == 2
+ && activeSearch == false) {
+ rowSorterAll.setRowFilter(null);
+ }
+
+ }
+ });
+
+ tabbedPane.setBounds(10, 158, 557, 339);
+ contentPanel.add(tabbedPane);
+
+ JScrollPane scrollPaneAllImages = new JScrollPane();
+ tableAllImages = new JTable();
+ tableAllImages.getSelectionModel().addListSelectionListener(
+ new ListSelectionListener() {
+ public void valueChanged(ListSelectionEvent e) {
+
+ String imageid = modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ writeImageData(imageid, version);
+
+ }
+ });
+ tableAllImages.setModel(modelAll);
+ tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
+
+ JScrollPane scrollPaneMyImage = new JScrollPane();
+ tablemyImages = new JTable();
+ tablemyImages.getSelectionModel().addListSelectionListener(
+ new ListSelectionListener() {
+ public void valueChanged(ListSelectionEvent e) {
+ String imageid = modelMyImages.getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelMyImages.getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ writeImageData(imageid, version);
+ }
+ });
+ tablemyImages.setModel(modelMyImages);
+ tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit();
+ tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit();
+ tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit();
+ tablemyImages.getColumnModel().getColumn(4).sizeWidthToFit();
+ tablemyImages.getColumnModel().getColumn(5).sizeWidthToFit();
+ tablemyImages.setRowSorter(rowSorterMyImages);
+
+ scrollPaneMyImage.setViewportView(tablemyImages);
+ tabbedPane.addTab("Meine Images", null, scrollPaneMyImage, null);
+
+ JScrollPane scrollPanePublicVorlagen = new JScrollPane();
+ tablePublicVorlagen = new JTable();
+ tablePublicVorlagen.getSelectionModel().addListSelectionListener(
+ new ListSelectionListener() {
+ public void valueChanged(ListSelectionEvent e) {
+ String imageid = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ writeImageData(imageid, version);
+ }
+ });
+ tablePublicVorlagen.setModel(modelPublicVorlagen);
+ tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
+ tablePublicVorlagen.setRowSorter(rowSorterPublicVorlagen);
+ scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
+ tabbedPane.addTab("Vorlagen", null, scrollPanePublicVorlagen, null);
+ tableAllImages.setRowSorter(rowSorterAll);
+
+ scrollPaneAllImages.setViewportView(tableAllImages);
+ tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
+
+ JScrollPane scrollPaneCoopImages = new JScrollPane();
+ JTable tableCoopImages = new JTable();
+ tableCoopImages.setModel(model);
+ tableCoopImages.getColumnModel().getColumn(1).sizeWidthToFit();
+ tableCoopImages.getColumnModel().getColumn(2).sizeWidthToFit();
+ tableCoopImages.getColumnModel().getColumn(3).sizeWidthToFit();
+ tableCoopImages.getColumnModel().getColumn(4).sizeWidthToFit();
+ tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit();
+
+ scrollPaneCoopImages.setViewportView(tableCoopImages);
+ tabbedPane.addTab("bwLehrpool", null, scrollPaneCoopImages, null);
+ tabbedPane.setEnabledAt(3, false);
+
+ JButton btnDownload = new JButton("Download");
+ btnDownload.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ // oeffnet den Downloader
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ //
+ // meine Images
+ //
+ if (tabbedPane.getSelectedIndex() == 0) {
+ if (tablemyImages.getSelectedRow() != -1) {
+ String imageid = modelMyImages.getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 6)
+ .toString();
+
+ Image.image.setImageId(imageid);
+ String imageversion = modelMyImages.getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 7)
+ .toString();
+
+ Image.image.setVersion(imageversion);
+ SearchImage_GUI.this.setVisible(false);
+ FTPSearchDownloader_GUI down = new FTPSearchDownloader_GUI();
+ down.setVisible(true);
+
+ }
+ } else if (tabbedPane.getSelectedIndex() == 1) {
+ //
+ // Vorlagen Images
+ //
+
+ if (tablePublicVorlagen.getSelectedRow() != -1
+ // && modelPublicVorlagen
+ // .getValueAt(
+ // tablePublicVorlagen
+ // .convertRowIndexToModel(tablePublicVorlagen
+ // .getSelectedRow()),
+ // 4).equals(username) == true
+ ) {
+ String imageid = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 6)
+ .toString();
+
+ Image.image.setImageId(imageid);
+ String imageversion = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 7)
+ .toString();
+
+ Image.image.setVersion(imageversion);
+
+ SearchImage_GUI.this.setVisible(false);
+ FTPSearchDownloader_GUI down = new FTPSearchDownloader_GUI();
+ down.setVisible(true);
+ }
+ } else if (tabbedPane.getSelectedIndex() == 2) {
+ //
+ // Alle Images
+ //
+ /**
+ * if (tableAllImages.getSelectedRow() != -1 && modelAll
+ * .getValueAt( tableAllImages
+ * .convertRowIndexToModel(tableAllImages
+ * .getSelectedRow()), 4).equals(username) == true) {
+ **/
+ if (tableAllImages.getSelectedRow() != -1) {
+ // nur eigene Images downloadbar
+ if (modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 4).equals(
+ username) == true
+ || modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()),
+ 8).equals("true") == true) {
+ String imageid = modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()),
+ 6).toString();
+
+ Image.image.setImageId(imageid);
+ String imageversion = modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()),
+ 7).toString();
+
+ Image.image.setVersion(imageversion);
+
+ SearchImage_GUI.this.setVisible(false);
+ FTPSearchDownloader_GUI down = new FTPSearchDownloader_GUI();
+ down.setVisible(true);
+ } else {
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Sie haben keine Berechtigung fremde Images herunterzuladen.",
+ "Message",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+
+ }
+
+ } else {
+ //
+ // nichts markiert
+ //
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Bitte w\u00e4hlen Sie ein Image f\u00fcr den Download aus",
+ "Message", JOptionPane.INFORMATION_MESSAGE);
+ }
+ }
+ });
+ btnDownload.setBounds(449, 508, 118, 23);
+ contentPanel.add(btnDownload);
+ {
+ JPanel buttonPane = new JPanel();
+ buttonPane.setBounds(0, 640, 902, 33);
+ buttonPane.setBackground(SystemColor.menu);
+ buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
+ getContentPane().add(buttonPane);
+ {
+ JButton okButton = new JButton("Zur\u00FCck");
+ okButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ // oeffnet das Hauptmenue
+
+ MainMenue_GUI main = new MainMenue_GUI();
+ main.setVisible(true);
+ dispose();
+ }
+ });
+ okButton.setActionCommand("OK");
+ buttonPane.add(okButton);
+ getRootPane().setDefaultButton(okButton);
+ }
+ }
+
+ JSeparator separator = new JSeparator();
+ separator.setBounds(0, 79, 912, 1);
+ getContentPane().add(separator);
+
+ JSeparator separator_1 = new JSeparator();
+ separator_1.setBounds(0, 627, 912, 2);
+ getContentPane().add(separator_1);
+
+ JPanel panel = new JPanel();
+ panel.setLayout(null);
+ panel.setBorder(new TitledBorder(null, "Detailinformationen",
+
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(586, 85, 316, 531);
+ getContentPane().add(panel);
+
+ JLabel lblName = new JLabel("Name:");
+ lblName.setBounds(10, 87, 130, 14);
+ panel.add(lblName);
+
+ labelName = new JLabel("");
+ labelName.setBounds(10, 102, 296, 14);
+ panel.add(labelName);
+
+ JLabel lblVerantwortlicher = new JLabel("Verantwortlicher:");
+ lblVerantwortlicher.setBounds(10, 259, 130, 14);
+ panel.add(lblVerantwortlicher);
+
+ labelOS = new JLabel("");
+ labelOS.setBounds(10, 216, 296, 14);
+ panel.add(labelOS);
+
+ JLabel lblWeitereVerantwortliche = new JLabel("Betriebssystem:");
+ lblWeitereVerantwortliche.setBounds(10, 202, 130, 14);
+ panel.add(lblWeitereVerantwortliche);
+
+ labelVerantwortlicher = new JLabel("");
+ labelVerantwortlicher.setBounds(10, 272, 296, 14);
+ panel.add(labelVerantwortlicher);
+
+ JLabel label = new JLabel("Weitere Ansprechpartner:");
+ label.setBounds(10, 284, 130, 14);
+ panel.add(label);
+
+ labelWeitereVerantwortliche = new JLabel("");
+ labelWeitereVerantwortliche.setBounds(10, 297, 296, 14);
+ panel.add(labelWeitereVerantwortliche);
+
+ labelUpdate = new JLabel("");
+ labelUpdate.setBounds(10, 245, 296, 14);
+ panel.add(labelUpdate);
+
+ JLabel lblLetztesUpdate = new JLabel("Letztes Update:");
+ lblLetztesUpdate.setBounds(10, 231, 130, 14);
+ panel.add(lblLetztesUpdate);
+
+ JLabel lblImageIstVorlage = new JLabel("Image ist Vorlage:");
+ lblImageIstVorlage.setBounds(10, 336, 130, 14);
+ panel.add(lblImageIstVorlage);
+
+ labelVorlage = new JLabel("");
+ labelVorlage.setBounds(10, 350, 296, 14);
+ panel.add(labelVorlage);
+
+ labelLizenzSoftware = new JLabel("");
+ labelLizenzSoftware.setBounds(10, 383, 296, 14);
+ panel.add(labelLizenzSoftware);
+
+ JLabel lblLizenzpflichtigeSoftware = new JLabel(
+ "Lizenzpflichtige Software:");
+ lblLizenzpflichtigeSoftware.setBounds(10, 367, 130, 14);
+ panel.add(lblLizenzpflichtigeSoftware);
+
+ JLabel lblInternet = new JLabel("Internetsperre vorhanden:");
+ lblInternet.setBounds(10, 400, 130, 14);
+ panel.add(lblInternet);
+
+ labelInternet = new JLabel("");
+ labelInternet.setBounds(10, 417, 296, 14);
+ panel.add(labelInternet);
+
+ JLabel lblEmpfehlungRam = new JLabel("Empfehlung RAM:");
+ lblEmpfehlungRam.setBounds(10, 432, 130, 14);
+ panel.add(lblEmpfehlungRam);
+
+ labelRam = new JLabel("");
+ labelRam.setBounds(10, 455, 296, 14);
+ panel.add(labelRam);
+
+ JLabel lblEmpfehlungCpu = new JLabel("Empfehlung CPU:");
+ lblEmpfehlungCpu.setBounds(10, 469, 130, 14);
+ panel.add(lblEmpfehlungCpu);
+
+ labelCPU = new JLabel("");
+ labelCPU.setBounds(10, 487, 296, 14);
+ panel.add(labelCPU);
+
+ JLabel lblTechnischeDaten = new JLabel("Technische Daten:");
+ lblTechnischeDaten.setBounds(10, 322, 296, 14);
+ panel.add(lblTechnischeDaten);
+
+ JLabel lblId = new JLabel("ID:");
+ lblId.setBounds(10, 23, 296, 14);
+ panel.add(lblId);
+
+ labelID = new JLabel("");
+ labelID.setBounds(10, 37, 296, 14);
+ panel.add(labelID);
+
+ labelVersion = new JLabel("");
+ labelVersion.setBounds(10, 73, 296, 14);
+ panel.add(labelVersion);
+
+ JLabel lblVersion = new JLabel("Version:");
+ lblVersion.setBounds(10, 57, 296, 14);
+ panel.add(lblVersion);
+
+ JLabel lblBeschreibung = new JLabel("Beschreibung:");
+ lblBeschreibung.setBounds(10, 119, 130, 14);
+ panel.add(lblBeschreibung);
+
+ JScrollPane scrollPane = new JScrollPane();
+ scrollPane.setBounds(10, 135, 296, 65);
+ panel.add(scrollPane);
+
+ textAreadesc = new JTextArea();
+ textAreadesc.setEditable(false);
+ textAreadesc.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ textAreadesc.setLineWrap(true);
+ textAreadesc.setBackground(SystemColor.menu);
+ scrollPane.setViewportView(textAreadesc);
+ JMenuBar menuBar = new JMenuBar();
+ setJMenuBar(menuBar);
+
+ JMenu mnNewMenu_1 = new JMenu("Hilfe");
+ menuBar.add(mnNewMenu_1);
+
+ JMenuItem mntmFaq = new JMenuItem("FAQ");
+ mntmFaq.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getFAQ());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ });
+ mnNewMenu_1.add(mntmFaq);
+
+ JMenuItem mntmOtrs = new JMenuItem("OTRS");
+ mntmOtrs.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getOTRS());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ }
+ });
+ mnNewMenu_1.add(mntmOtrs);
+
+ JMenuItem mntmAbout = new JMenuItem("About");
+ mntmAbout.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ About_GUI ab = new About_GUI();
+ ab.setVisible(true);
+ }
+ });
+ mnNewMenu_1.add(mntmAbout);
+
+ }
+
+ // Initiale Beffuelung eines Table models
+ public DefaultTableModel initTableModel(DefaultTableModel model) {
+ List<server.Image> images;
+ try {
+ // Hole eine Liste der Images
+ images = client.getImageList();
+
+ Iterator<server.Image> i = images.iterator();
+ SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
+ int x = 0;
+
+ while (i.hasNext()) {
+ // erzeuge Objekte fuer die Tabelle
+ Object[] obj = { images.get(x).getImageName(),
+ images.get(x).getLicenseRestriction(),
+ images.get(x).getOsName(),
+ images.get(x).getLectureName(),
+ images.get(x).getUserData(),
+ out.format(in.parse(images.get(x).updateTime)),
+ images.get(x).id, images.get(x).getVersion(),
+ images.get(x).getIsTemplate() };
+ // Fuege diese Objekte der Tabelle hinzu
+ model.addRow(obj);
+ x++;
+ i.next();
+
+ }
+
+ return model;
+ } catch (TException | ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ JOptionPane.showMessageDialog(null,
+ e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message",
+ JOptionPane.ERROR_MESSAGE);
+ }
+ return model;
+ }
+
+ public void writeImageData(String id, String version) {
+ try {
+ SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
+ Map<String, String> res = client.getImageData(id, version);
+ labelName.setText(res.get("name"));
+ labelOS.setText(res.get("os"));
+ labelUpdate.setText(out.format(in.parse(res.get("lastupdate"))));
+ labelVerantwortlicher.setText(res.get("owner") + " (" + res.get("mail") + ")");
+ labelWeitereVerantwortliche.setText("Keine");
+ if (res.get("template").equals("true")) {
+ labelVorlage.setText("Ja");
+ } else {
+ labelVorlage.setText("Nein");
+ }
+ if (res.get("license").equals("1")) {
+ labelLizenzSoftware.setText("Ja");
+ } else {
+ labelLizenzSoftware.setText("Nein");
+ }
+ if (res.get("internet").equals("1")) {
+ labelInternet.setText("Ja");
+ } else {
+ labelInternet.setText("Nein");
+ }
+ labelRam.setText(res.get("ram"));
+ labelCPU.setText(res.get("cpu"));
+ labelID.setText(res.get("id"));
+ labelVersion.setText(res.get("version"));
+ textAreadesc.setText(res.get("desc"));
+ } catch (TException | ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
+}
diff --git a/Dozentenmodul/src/main/java/gui/image/SearchMethodLecture_GUI.java b/Dozentenmodul/src/main/java/gui/image/SearchMethodLecture_GUI.java
deleted file mode 100644
index 4eda36f0..00000000
--- a/Dozentenmodul/src/main/java/gui/image/SearchMethodLecture_GUI.java
+++ /dev/null
@@ -1,290 +0,0 @@
-package gui.image;
-
-import gui.intro.About_GUI;
-import gui.intro.MainMenue_GUI;
-
-import java.awt.Color;
-import java.awt.FlowLayout;
-import java.awt.Font;
-import java.awt.SystemColor;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.awt.event.WindowAdapter;
-import java.awt.event.WindowEvent;
-import java.net.URI;
-import java.net.URISyntaxException;
-
-import javax.swing.ButtonGroup;
-import javax.swing.JButton;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JMenu;
-import javax.swing.JMenuBar;
-import javax.swing.JMenuItem;
-import javax.swing.JPanel;
-import javax.swing.JRadioButton;
-import javax.swing.JSeparator;
-import javax.swing.JTextArea;
-import javax.swing.JTextPane;
-import javax.swing.UIManager;
-import javax.swing.UnsupportedLookAndFeelException;
-import javax.swing.border.EmptyBorder;
-import javax.swing.border.TitledBorder;
-
-import models.Links;
-import util.GuiOrganizer;
-import util.OpenLinks;
-
-@SuppressWarnings("serial")
-public class SearchMethodLecture_GUI extends JFrame {
-
- private final JPanel contentPanel = new JPanel();
- String[] result;
- JRadioButton rdbtnSearchByImage;
- JRadioButton rdbtnSearchByLecture;
- private final ButtonGroup buttonGroup = new ButtonGroup();
-
-
-
- /**
- * Create the dialog.
- */
- public SearchMethodLecture_GUI() {
- addWindowListener(new WindowAdapter() {
- @Override
- public void windowClosing(WindowEvent arg0) {
- System.exit(0);
- }
- });
- setResizable(false);
-
- try {
- UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
- } catch (ClassNotFoundException | InstantiationException
- | IllegalAccessException | UnsupportedLookAndFeelException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- setTitle("bwLehrpool Suite *Prototyp* - Suchmethode w\u00E4hlen");
-
- setBounds(0, 0, 603, 722);
- GuiOrganizer.centerGUI(this);
-
- getContentPane().setLayout(null);
- {
- JPanel panel = new JPanel();
- panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 11, 577, 57);
- getContentPane().add(panel);
- panel.setLayout(null);
- {
- JLabel lblNewLabel = new JLabel("Suchmethode ausw\u00E4hlen");
- lblNewLabel.setBounds(10, 11, 509, 22);
- panel.add(lblNewLabel);
- lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
- }
-
- JTextPane txtpnBitteWhlenSie = new JTextPane();
- txtpnBitteWhlenSie.setEditable(false);
- txtpnBitteWhlenSie.setBackground(SystemColor.menu);
- txtpnBitteWhlenSie
- .setText("Geben Sie bitte an, nach welchem Kriterium Sie suchen m\u00F6chten.");
- txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
- panel.add(txtpnBitteWhlenSie);
- }
- contentPanel.setBounds(10, 85, 577, 493);
- contentPanel.setBackground(SystemColor.menu);
- contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
- getContentPane().add(contentPanel);
- contentPanel.setLayout(null);
-
- JPanel panel_1 = new JPanel();
- panel_1.setBackground(SystemColor.menu);
- panel_1.setBorder(new TitledBorder(null,
- "W\u00e4hlen Sie bitte die Suchmethode Ihrer Suche",
- TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 36, 557, 369);
- contentPanel.add(panel_1);
- panel_1.setLayout(null);
-
- rdbtnSearchByImage = new JRadioButton(
- "Nach einem VL-Image oder Vorlagen suchen");
- buttonGroup.add(rdbtnSearchByImage);
- rdbtnSearchByImage.setBounds(6, 38, 545, 23);
- panel_1.add(rdbtnSearchByImage);
-
- JTextArea txtrHierKlickenWenn = new JTextArea();
- txtrHierKlickenWenn.setBackground(SystemColor.menu);
- txtrHierKlickenWenn.setLineWrap(true);
- txtrHierKlickenWenn.setFont(new Font("Tahoma", Font.PLAIN, 11));
- txtrHierKlickenWenn
- .setText("Hier klicken, wenn Sie nach einem konkreten Image suchen, von dem Sie exakte Daten kennen. Hierzu geh\u00F6ren z.B. das Betriebssystem oder die installierte Software.\r\nEs werden zudem alle Vorlagen aufgelistet.");
- txtrHierKlickenWenn.setBounds(25, 68, 518, 80);
- panel_1.add(txtrHierKlickenWenn);
-
- JTextArea txtrHierKlickenWenn_1 = new JTextArea();
- txtrHierKlickenWenn_1
- .setText("Hier klicken, wenn Sie nur wissen f\u00FCr welche Veranstaltung das gesuchte Image verwendet wird. Hierzu geh\u00F6ren z.B. der Name des Dozenten oder der Name der Veranstaltung.");
- txtrHierKlickenWenn_1.setLineWrap(true);
- txtrHierKlickenWenn_1.setFont(new Font("Tahoma", Font.PLAIN, 11));
- txtrHierKlickenWenn_1.setBackground(SystemColor.menu);
- txtrHierKlickenWenn_1.setBounds(25, 210, 518, 80);
- panel_1.add(txtrHierKlickenWenn_1);
-
- rdbtnSearchByLecture = new JRadioButton(
- "Nach einer Veranstaltung suchen");
- buttonGroup.add(rdbtnSearchByLecture);
- rdbtnSearchByLecture.setBounds(6, 180, 545, 23);
- panel_1.add(rdbtnSearchByLecture);
-
- JPanel panel = new JPanel();
- panel.setBounds(10, 402, 577, 33);
- contentPanel.add(panel);
- panel.setLayout(null);
- panel.setBorder(new EmptyBorder(5, 5, 5, 5));
- panel.setBackground(SystemColor.menu);
-
- JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
- lblHauptmen.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
-
- SearchMethodLecture_GUI.this.setVisible(false);
- MainMenue_GUI main = new MainMenue_GUI();
- main.setVisible(true);
- }
- });
- lblHauptmen.setForeground(Color.BLUE);
- lblHauptmen.setBounds(10, 11, 61, 14);
- contentPanel.add(lblHauptmen);
-
- JLabel label_1 = new JLabel(">");
- label_1.setBounds(69, 11, 13, 14);
- contentPanel.add(label_1);
-
- JLabel lblVlimage = new JLabel("VL-Image");
- lblVlimage.setForeground(Color.BLUE);
- lblVlimage.setBounds(81, 11, 45, 14);
- contentPanel.add(lblVlimage);
-
- JLabel label_2 = new JLabel(">");
- label_2.setBounds(133, 11, 13, 14);
- contentPanel.add(label_2);
-
- JLabel lblNewLabel_1 = new JLabel("Suchmethode");
- lblNewLabel_1.setBounds(146, 11, 82, 14);
- contentPanel.add(lblNewLabel_1);
- {
- JPanel buttonPane = new JPanel();
- buttonPane.setBounds(0, 640, 597, 33);
- buttonPane.setBackground(SystemColor.menu);
- buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
- getContentPane().add(buttonPane);
- {
- JButton backButton = new JButton("Zur\u00FCck");
- backButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- MainMenue_GUI sr = new MainMenue_GUI();
- sr.setVisible(true);
- dispose();
- }
- });
- backButton.setActionCommand("CANCEL");
- buttonPane.add(backButton);
- getRootPane().setDefaultButton(backButton);
- }
- {
- JButton continueButton = new JButton("Weiter");
- continueButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
-
- if (rdbtnSearchByImage.isSelected() == true) {
- SearchImage_GUI si = new SearchImage_GUI();
- si.setVisible(true);
- dispose();
- }
- }
-
- });
- continueButton.setActionCommand("OK");
- buttonPane.add(continueButton);
- }
- }
-
- JSeparator separator = new JSeparator();
- separator.setBounds(0, 78, 597, 2);
- getContentPane().add(separator);
-
- JSeparator separator_1 = new JSeparator();
- separator_1.setBounds(0, 627, 597, 2);
- getContentPane().add(separator_1);
-
- JMenuBar menuBar = new JMenuBar();
- setJMenuBar(menuBar);
-
- JMenu mnNewMenu = new JMenu("Suchen");
- menuBar.add(mnNewMenu);
-
- JMenuItem mntmVlSuche = new JMenuItem("VL Suche");
- mnNewMenu.add(mntmVlSuche);
-
- JMenu mnNewMenu_1 = new JMenu("Hilfe");
- menuBar.add(mnNewMenu_1);
-
- JMenuItem mntmFaq = new JMenuItem("FAQ");
- mntmFaq.addMouseListener(new MouseAdapter() {
- @Override
- public void mousePressed(MouseEvent arg0) {
-
- OpenLinks open = new OpenLinks();
-
- URI windows;
- try {
- windows = new URI(Links.getFAQ());
-
- open.openWebpage(windows);
-
- } catch (URISyntaxException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- });
- mnNewMenu_1.add(mntmFaq);
-
-
- JMenuItem mntmOtrs = new JMenuItem("OTRS");
- mntmOtrs.addMouseListener(new MouseAdapter() {
- @Override
- public void mousePressed(MouseEvent arg0) {
-
- OpenLinks open = new OpenLinks();
-
- URI windows;
- try {
- windows = new URI(Links.getOTRS());
-
- open.openWebpage(windows);
-
- } catch (URISyntaxException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- }
- });
- mnNewMenu_1.add(mntmOtrs);
-
- JMenuItem mntmAbout = new JMenuItem("About");
- mntmAbout.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- About_GUI ab = new About_GUI();
- ab.setVisible(true);
- }
- });
- mnNewMenu_1.add(mntmAbout);
-
- }
-}
diff --git a/Dozentenmodul/src/main/java/gui/intro/About_GUI.java b/Dozentenmodul/src/main/java/gui/intro/About_GUI.java
index 3e10d1d9..a97a217b 100644
--- a/Dozentenmodul/src/main/java/gui/intro/About_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/intro/About_GUI.java
@@ -16,6 +16,8 @@ import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.border.EmptyBorder;
+import models.Version;
+
import util.GuiOrganizer;
@SuppressWarnings("serial")
@@ -39,11 +41,11 @@ public class About_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
JOptionPane.showMessageDialog(null,
- e.getCause() + "\n" + e.getMessage(), "Debug-Message",
+ e.getCause() + "\n" + e.getStackTrace(), "Debug-Message",
JOptionPane.ERROR_MESSAGE);
}
// Titel des Fensters setzen
- setTitle("Dozentenmodul *Prototyp* - About");
+ setTitle("Dozentenmodul - About");
// Aktion die beim Schliessen durchgefuehrt werden soll
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
// Groesse des Fensters definieren
@@ -86,7 +88,7 @@ public class About_GUI extends JFrame {
txtpnVersionVBuilddate = new JTextPane();
txtpnVersionVBuilddate
- .setText("Version: v0.1\r\nBuild-Date: 03.06.2014\r\n\r\nContact: michael.wilson@hs-offenburg.de\r\nWebsite: http://bwlehrpool.hs-offenburg.de/");
+ .setText("Version: "+Version.getVersion()+"\r\nBuild-Date: "+Version.getBuildDate()+"\r\n\r\nContact: michael.wilson@hs-offenburg.de\r\nWebsite: http://bwlehrpool.hs-offenburg.de/");
txtpnVersionVBuilddate.setEditable(false);
txtpnVersionVBuilddate.setBackground(SystemColor.menu);
txtpnVersionVBuilddate.setBounds(62, 95, 224, 90);
diff --git a/Dozentenmodul/src/main/java/gui/intro/BillOfRights_GUI.java b/Dozentenmodul/src/main/java/gui/intro/BillOfRights_GUI.java
index 21d15d40..b11dc746 100644
--- a/Dozentenmodul/src/main/java/gui/intro/BillOfRights_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/intro/BillOfRights_GUI.java
@@ -75,7 +75,7 @@ public class BillOfRights_GUI extends JFrame {
e.printStackTrace();
}
//Setzt den Fenstertitel
- setTitle("bwLehrpool Suite *Prototyp*");
+ setTitle("bwLehrpool Suite");
//Zentiert das Fenster in der Bildschirmmitte
setBounds(0, 0, 603, 722);
@@ -136,13 +136,13 @@ public class BillOfRights_GUI extends JFrame {
// TODO Auto-generated catch block
e1.printStackTrace();
JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
+ e1.getCause()+"\n"+e1.getStackTrace(),
"Debug-Message", JOptionPane.ERROR_MESSAGE);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
+ e1.getCause()+"\n"+e1.getStackTrace(),
"Debug-Message", JOptionPane.ERROR_MESSAGE);
}
VmWareLink_GUI ac=new VmWareLink_GUI();
diff --git a/Dozentenmodul/src/main/java/gui/intro/Login_GUI.java b/Dozentenmodul/src/main/java/gui/intro/Login_GUI.java
index e07bfd7d..b27c7179 100644
--- a/Dozentenmodul/src/main/java/gui/intro/Login_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/intro/Login_GUI.java
@@ -28,6 +28,7 @@ import models.SessionData;
import models.person;
import org.apache.thrift.TException;
+import org.ini4j.InvalidFileFormatException;
import org.ini4j.Wini;
import org.openslx.imagemaster.thrift.iface.ImageServer.Client;
@@ -36,6 +37,7 @@ import thrift.ThriftConnection;
import org.openslx.imagemaster.thrift.iface.UserInfo;
import util.GuiOrganizer;
import config.config_file;
+import javax.swing.JCheckBox;
@SuppressWarnings("serial")
public class Login_GUI extends JFrame {
@@ -50,7 +52,8 @@ public class Login_GUI extends JFrame {
MasterThriftConnection thrift;
Client client;
String token;
-
+ JCheckBox chckbxBenutzernameSpeichern;
+
/**
* Launch the application.
*/
@@ -101,12 +104,9 @@ public class Login_GUI extends JFrame {
| IllegalAccessException | UnsupportedLookAndFeelException e) {
// TODO Auto-generated catch block
e.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e.getCause() + "\n" + e.getMessage(), "Debug-Message",
- JOptionPane.ERROR_MESSAGE);
}
// Titel des Fensters setzen
- setTitle("Dozentenmodul *Prototyp*");
+ setTitle("bwLehrpool Suite");
// Aktion die beim Schliessen durchgefuehrt werden soll
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
@@ -114,6 +114,8 @@ public class Login_GUI extends JFrame {
setBounds(0, 0, 603, 400);
GuiOrganizer.centerGUI(this);
+
+
// Erzeugen eines Panels
contentPane = new JPanel();
// Hintergrund Farbe des Panels setzen
@@ -136,16 +138,55 @@ public class Login_GUI extends JFrame {
imgLabel.setIcon(new ImageIcon(scaled));
// Hinzufuegen des Logos in das Fenster
contentPane.add(imgLabel);
+
+ chckbxBenutzernameSpeichern = new JCheckBox("Benutzername speichern");
+ chckbxBenutzernameSpeichern.setBounds(292, 222, 237, 23);
+ contentPane.add(chckbxBenutzernameSpeichern);
// Erzeugen und Hinzufuegen des Labels
JLabel LabelUser = new JLabel("bwIDM-Benutzername:");
LabelUser.setBounds(111, 164, 134, 20);
contentPane.add(LabelUser);
+
+ // Erzeugen und Hinzufuegen des Passwortfeldes
+ lblpass = new JPasswordField();
+ lblpass.setToolTipText("Bitte geben Sie Ihr bwIDM-Passwort ein.");
+ lblpass.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ performLogin();
+ }
+ });
+ lblpass.setBounds(292, 195, 237, 20);
+ contentPane.add(lblpass);
// Erzeugen und Hinzufuegen des Textfeldes
lblusername = new JTextField();
lblusername
.setToolTipText("Bitte geben Sie Ihren bwIDM-Benutzernamen ein.");
+ try {
+ Wini ini = new Wini(
+ new File(
+ "C:\\Users\\"
+ + System.getProperty("user.name")
+ + "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ if(ini.get("main", "Benutzername").isEmpty()){
+
+ }else{
+ lblusername.setText(ini.get("main", "Benutzername").toString());
+
+ }
+
+ if(ini.get("main", "Benutzername speichern", Boolean.class)==true){
+ chckbxBenutzernameSpeichern.setSelected(true);
+
+ }
+ } catch (InvalidFileFormatException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ } catch (IOException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
lblusername.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
performLogin();
@@ -159,32 +200,31 @@ public class Login_GUI extends JFrame {
JLabel LabelPass = new JLabel("bwIDM-Passwort:");
LabelPass.setBounds(111, 195, 134, 20);
contentPane.add(LabelPass);
-
+
+ lblConnectionInfo.setHorizontalAlignment(SwingConstants.LEFT);
+ lblConnectionInfo.setBounds(111, 290, 418, 20);
+ lblConnectionInfo.setEnabled(true);
+ lblConnectionInfo.setText("Info: Bereit f\u00FCr Login");
+
+ contentPane.add(lblConnectionInfo);
+
// Erzeugen, Hinzufuegen und definierung der Aktion des Buttons
JButton BtnLogin = new JButton("Login");
BtnLogin.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
+
performLogin();
}// end actionPerformed
});
- BtnLogin.setBounds(292, 244, 237, 23);
+ BtnLogin.setBounds(292, 252, 237, 23);
contentPane.add(BtnLogin);
- // Erzeugen und Hinzufuegen des Passwortfeldes
- lblpass = new JPasswordField();
- lblpass.setToolTipText("Bitte geben Sie Ihr bwIDM-Passwort ein.");
- lblpass.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- performLogin();
- }
- });
- lblpass.setBounds(292, 195, 237, 20);
- contentPane.add(lblpass);
- lblConnectionInfo.setHorizontalAlignment(SwingConstants.LEFT);
- lblConnectionInfo.setBounds(292, 290, 237, 20);
- contentPane.add(lblConnectionInfo);
+
+
+
+
//GuiOrganizer.centerGUI(this);
}// end LoginGUI()
@@ -198,26 +238,49 @@ public class Login_GUI extends JFrame {
org.openslx.imagemaster.thrift.iface.SessionData result = null;
try {
+
login = true;
String passText = new String(lblpass.getPassword());
// check if client has received a connection with information or a
// null package
if (checkClientPackage() == true) {
- // package has information
- System.out.println("Auth");
+
+ // package has information
+ //User-Info
+
+ System.out.println("Authentifiziere - warte auf Masterserver");
+ lblConnectionInfo.setForeground(Color.black);
+
+ lblConnectionInfo.setText("Authentifiziere - warte auf Antwort von Server...");
+
result = client.authenticate(lblusername.getText(), passText);
- System.out.println("Succes Auth");
+
+ //User-Info
+ System.out.println("Authentifizierung erfolgreich");
+ lblConnectionInfo.setForeground(Color.green);
+ lblConnectionInfo.setText("Authentifizierung erfolgreich");
+
+ //set Information
SessionData.session.setAuthToken(result.authToken);
SessionData.session.setSessionID(result.sessionId);
SessionData.session.setServerAdress(result.serverAddress);
- System.out.println("Master");
+
+
+ //User-Info
+ lblConnectionInfo.setForeground(Color.black);
+ lblConnectionInfo.setText("Hole Verbindungsdaten von Server...");
+ System.out.println("warte auf Masterserver");
// set connection to bwLehrpoolSuiteServer
ThriftConnection bwthrift = new ThriftConnection();
server.Server.Client bwClient = bwthrift.getThriftConnection();
models.Client.clientcon.setClient(bwClient);
- System.out.println("Client");
+
+ //User-Info
+ System.out.println("Client macht weiter");
System.out.println("Session-ID: " + result.sessionId
+ "\nToken: " + result.authToken);
+ lblConnectionInfo.setForeground(Color.green);
+ lblConnectionInfo.setText("Daten erhalten.");
if (login == true) {
//Daten speichern
@@ -227,7 +290,7 @@ public class Login_GUI extends JFrame {
"Error: Token ist null", "Token defekt",
JOptionPane.ERROR_MESSAGE);
}
- System.out.println("Hole jetzt Infos aus SessionData...");
+ System.out.println("Arbeite ab jetzt mit Infos aus SessionData.");
UserInfo user = client.getUserFromToken(SessionData.session
.getAuthToken());
@@ -241,6 +304,14 @@ public class Login_GUI extends JFrame {
person.verantwortlicher.setEMail(user.eMail);
person.verantwortlicher.setHochschule(hochschule);
+
+ //Sp�ter �ber result.getRole zum Beispiel die Rolle holen
+ person.verantwortlicher.setRole("Dozent");
+ //person.verantwortlicher.setRole("Admin");
+ //person.verantwortlicher.setRole("Student");
+ //person.verantwortlicher.setRole("GetToTheChopper!");
+
+
try {
// Lege config File an und entscheide welches Fenster
// als naechstes geoeffnet wird
@@ -249,6 +320,35 @@ public class Login_GUI extends JFrame {
"C:\\Users\\"
+ System.getProperty("user.name")
+ "\\AppData\\Roaming\\bwLehrpoolSuite\\config.ini"));
+ if(lblusername.getText().equals(ini.get("main","Benutzername",String.class))==true){
+ if(chckbxBenutzernameSpeichern.isSelected()){
+ ini.put("main", "Benutzername", lblusername.getText());
+ ini.put("main", "Benutzername speichern", true);
+ ini.store();
+ }
+ else{
+ ini.put("main", "Benutzername", "");
+ ini.put("main", "Benutzername speichern", false);
+ ini.store();
+ }
+ }else{
+
+ if(chckbxBenutzernameSpeichern.isSelected()){
+ ini.put("main", "Benutzername", lblusername.getText());
+ ini.put("main", "Benutzername speichern", true);
+ ini.put("main", "BillOfRights",false);
+ ini.put("main", "vmware",false);
+ ini.store();
+ }
+ else{
+ ini.put("main", "Benutzername", "");
+ ini.put("main", "Benutzername speichern", false);
+ ini.put("main", "BillOfRights",false);
+ ini.put("main", "vmware",false);
+ ini.store();
+ }
+ }
+
// Pruefe ob Bills Of Rights schon akzeptiert wurden,
// wenn
// nicht zeige diese an
@@ -273,12 +373,11 @@ public class Login_GUI extends JFrame {
setVisible(false);
}
}
+
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
- JOptionPane.showMessageDialog(null, e.getCause() + "\n"
- + e.getMessage(), "Debug-Message",
- JOptionPane.ERROR_MESSAGE);
+
}
} else {
@@ -296,6 +395,9 @@ public class Login_GUI extends JFrame {
}
} catch (org.openslx.imagemaster.thrift.iface.AuthenticationException e) {
+ lblConnectionInfo.setForeground(Color.red);
+ lblConnectionInfo
+ .setText("Fehler: Falscher Benutzername oder Passwort.");
System.out
.println("Authentifizierung fehlgeschlagen: " + e.message);
JOptionPane
@@ -305,26 +407,21 @@ public class Login_GUI extends JFrame {
"Anmeldung fehlgeschlagen",
JOptionPane.ERROR_MESSAGE);
e.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e.getCause() + "\n" + e.getMessage(), "Message",
- JOptionPane.ERROR_MESSAGE);
return;
} catch (TException e) {
// TODO Auto-generated catch block
e.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e.getCause() + "\n" + e.getMessage(), "Debug-Message",
- JOptionPane.ERROR_MESSAGE);
- return;
+
}
}// end performLogin
public boolean checkClientPackage() {
// check if client is null or has been returned with information
+ System.out.println("Prüfe Eingangsdaten");
if (client != null) {
// client contains information
isClientReturnedCorrectly = true;
- System.out.println("Verbindungsinformationen erhalten");
+ System.out.println("Verbindungsdaten erhalten");
} else {
// client has returned with error
isClientReturnedCorrectly = false;
@@ -334,5 +431,4 @@ public class Login_GUI extends JFrame {
return isClientReturnedCorrectly;
}// end checkServerConnection()
-
}// end class
diff --git a/Dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java b/Dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java
index 7a57cd90..956ca63d 100644
--- a/Dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java
@@ -30,6 +30,7 @@ import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JSeparator;
@@ -42,8 +43,10 @@ import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
+import models.ImageRights;
import models.Links;
import models.SessionData;
+import models.person;
import util.GuiOrganizer;
import util.OpenLinks;
@@ -66,11 +69,18 @@ public class MainMenue_GUI extends JFrame {
private final ButtonGroup buttonGroup = new ButtonGroup();
private JMenuItem mntmAbout;
+ // for testing
+ ImageRights imageRights = new ImageRights();
/**
* Create the dialog.
*/
public MainMenue_GUI() {
+
+ // Leerzeile auf Konsole bei Rueckkehr ins Hauptmenue fuer leichteres
+ // Lesen
+ System.out.println("\n");
+
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent arg0) {
@@ -84,7 +94,8 @@ public class MainMenue_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
}
- setTitle("bwLehrpool Suite *Prototyp* - Connected Server: "+SessionData.session.getServerAdress());
+ setTitle("bwLehrpool Suite - Connected Server: "
+ + SessionData.session.getServerAdress());
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -119,25 +130,24 @@ public class MainMenue_GUI extends JFrame {
JPanel panelImage = new JPanel();
panelImage.setBackground(SystemColor.menu);
- panelImage.setBorder(new TitledBorder(null, "VL-Image",
+ panelImage.setBorder(new TitledBorder(null, "Image",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panelImage.setBounds(10, 146, 270, 170);
+ panelImage.setBounds(10, 221, 270, 133);
contentPanel.add(panelImage);
panelImage.setLayout(null);
rdbtnImageNew = new JRadioButton("Neu");
rdbtnImageNew
.setToolTipText("Hier k\u00F6nnen Sie eine standard Laborvorlage downloaden");
- rdbtnImageNew.setBounds(6, 22, 159, 23);
+ rdbtnImageNew.setBounds(20, 22, 159, 23);
panelImage.add(rdbtnImageNew);
- rdbtnImageNew.setSelected(true);
buttonGroup.add(rdbtnImageNew);
rdbtnImageNew.setBackground(SystemColor.menu);
rdbtnImageEdit = new JRadioButton("Bearbeiten");
rdbtnImageEdit
.setToolTipText("Hier k\u00F6nnen Sie ein bestehendes Labor zum ver\u00E4ndern downloaden");
- rdbtnImageEdit.setBounds(6, 48, 185, 23);
+ rdbtnImageEdit.setBounds(20, 48, 185, 23);
panelImage.add(rdbtnImageEdit);
buttonGroup.add(rdbtnImageEdit);
rdbtnImageEdit.setHorizontalAlignment(SwingConstants.LEFT);
@@ -150,7 +160,7 @@ public class MainMenue_GUI extends JFrame {
.setToolTipText("Hier k\u00F6nnen Sie ein bestehendes Labor zum ver\u00E4ndern downloaden");
rdbtnImageDelete.setHorizontalAlignment(SwingConstants.LEFT);
rdbtnImageDelete.setBackground(SystemColor.menu);
- rdbtnImageDelete.setBounds(6, 74, 185, 23);
+ rdbtnImageDelete.setBounds(20, 74, 185, 23);
panelImage.add(rdbtnImageDelete);
rdbtnImageSearchDownload = new JRadioButton("Suche und Download");
@@ -159,7 +169,7 @@ public class MainMenue_GUI extends JFrame {
.setToolTipText("Hier k\u00F6nnen Sie ein bestehendes Labor zum ver\u00E4ndern downloaden");
rdbtnImageSearchDownload.setHorizontalAlignment(SwingConstants.LEFT);
rdbtnImageSearchDownload.setBackground(SystemColor.menu);
- rdbtnImageSearchDownload.setBounds(6, 100, 185, 23);
+ rdbtnImageSearchDownload.setBounds(20, 100, 185, 23);
panelImage.add(rdbtnImageSearchDownload);
JPanel panelDesc = new JPanel();
@@ -168,12 +178,14 @@ public class MainMenue_GUI extends JFrame {
.getBorder("TitledBorder.border"), "Erkl\u00e4rung",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
panelDesc.setBackground(SystemColor.menu);
- panelDesc.setBounds(290, 146, 270, 170);
+ panelDesc.setBounds(10, 364, 270, 133);
contentPanel.add(panelDesc);
ScrollPane scrollPaneDesc = new ScrollPane();
- scrollPaneDesc.setBounds(10, 15, 250, 145);
+ scrollPaneDesc.setBounds(10, 15, 250, 110);
final JTextArea txtDesc = new JTextArea();
+ txtDesc.setEditable(false);
+ txtDesc.setBounds(280, 211, 10, 10);
txtDesc.setLineWrap(true);
txtDesc.setWrapStyleWord(true);
txtDesc.setFont(new Font("Tahoma", Font.PLAIN, 11));
@@ -189,21 +201,21 @@ public class MainMenue_GUI extends JFrame {
.getBorder("TitledBorder.border"), "Veranstaltung (VMChooser)",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
panelVeranstaltung.setBackground(SystemColor.menu);
- panelVeranstaltung.setBounds(10, 327, 270, 170);
+ panelVeranstaltung.setBounds(290, 221, 270, 133);
contentPanel.add(panelVeranstaltung);
rdbtnLectureNew = new JRadioButton("Neu");
buttonGroup.add(rdbtnLectureNew);
rdbtnLectureNew
.setToolTipText("Hier k\u00F6nnen Sie Ihre Labordaten eingeben");
- rdbtnLectureNew.setBounds(6, 24, 185, 23);
+ rdbtnLectureNew.setBounds(20, 24, 185, 23);
panelVeranstaltung.add(rdbtnLectureNew);
rdbtnLectureNew.setBackground(SystemColor.menu);
rdbtnLectureEdit = new JRadioButton("Bearbeiten");
rdbtnLectureEdit
.setToolTipText("Hier k\u00F6nnen Sie einen Link auf ein bestehendes Labor erzeugen");
- rdbtnLectureEdit.setBounds(6, 50, 230, 23);
+ rdbtnLectureEdit.setBounds(20, 50, 230, 23);
panelVeranstaltung.add(rdbtnLectureEdit);
buttonGroup.add(rdbtnLectureEdit);
rdbtnLectureEdit.setBackground(SystemColor.menu);
@@ -211,7 +223,7 @@ public class MainMenue_GUI extends JFrame {
rdbtnLectureDelete = new JRadioButton("L\u00F6schen");
rdbtnLectureDelete
.setToolTipText("Hier k\u00F6nnen Sie ein Labor l\u00F6schen");
- rdbtnLectureDelete.setBounds(6, 76, 175, 23);
+ rdbtnLectureDelete.setBounds(20, 76, 175, 23);
panelVeranstaltung.add(rdbtnLectureDelete);
buttonGroup.add(rdbtnLectureDelete);
rdbtnLectureDelete.setBackground(SystemColor.menu);
@@ -221,7 +233,7 @@ public class MainMenue_GUI extends JFrame {
rdbtnLectureSearch
.setToolTipText("Hier k\u00F6nnen Sie ein Labor l\u00F6schen");
rdbtnLectureSearch.setBackground(SystemColor.menu);
- rdbtnLectureSearch.setBounds(6, 102, 175, 23);
+ rdbtnLectureSearch.setBounds(20, 102, 175, 23);
panelVeranstaltung.add(rdbtnLectureSearch);
JPanel panelNews = new JPanel();
@@ -230,22 +242,30 @@ public class MainMenue_GUI extends JFrame {
.getBorder("TitledBorder.border"), "News",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
panelNews.setBackground(SystemColor.menu);
- panelNews.setBounds(290, 327, 270, 170);
+ panelNews.setBounds(290, 364, 270, 133);
contentPanel.add(panelNews);
ScrollPane scrollPaneNews = new ScrollPane();
- // scrollPaneDesc.setBounds(10, 15, 250, 145);
- scrollPaneNews.setBounds(10, 15, 250, 145);
+ scrollPaneNews.setBounds(10, 15, 250, 110);
JTextArea txtNews = new JTextArea();
+ txtNews.setEditable(false);
txtNews.setFont(new Font("Tahoma", Font.PLAIN, 11));
txtNews.setBackground(SystemColor.menu);
txtNews.setWrapStyleWord(true);
txtNews.setLineWrap(true);
- txtNews.setText("Hier werden mal die Neuigkeiten stehen. Diese kommen direkt vom Satelliten, sind als HS-spezifisch :)");
+ txtNews.setText("Hier werden mal die Neuigkeiten stehen. Diese kommen direkt vom Satelliten und sind HS-spezifisch.");
scrollPaneNews.add(txtNews);
panelNews.add(scrollPaneNews);
/*
+ * Ber\u00fccksichtigen der Rechte für GUI
+ */
+ // set the rights for this user
+ setRoleRights();
+ processRights();
+ setCorrectRadioButton();
+
+ /*
* Funktion Texte f\u00fcr das Klicken der RadioButtons
*/
rdbtnImageNew.addActionListener(new ActionListener() {
@@ -318,11 +338,12 @@ public class MainMenue_GUI extends JFrame {
+ "Intelligenz\" lauten und referenzieren dabei auf das allgemeine Image <br>"
+ "\"Programmieren\".</html>");
lblGrafik.setIcon(new ImageIcon(MainMenue_GUI.class
- .getResource("/img/Image_zu_Veranstaltung_HDD.png")));
+ .getResource("/e4_n_imgs2_bwl_vmc_v2.png")));
+
// ToolTipp lange anzeigen - 60sec
ToolTipManager.sharedInstance().setDismissDelay(60000);
ToolTipManager.sharedInstance().registerComponent(lblGrafik);
- lblGrafik.setBounds(82, 3, 391, 110);
+ lblGrafik.setBounds(10, -12, 547, 189);
contentPanel.add(lblGrafik);
JTextPane txtpnUmDetaillierteInformationen = new JTextPane();
@@ -330,7 +351,7 @@ public class MainMenue_GUI extends JFrame {
.setText("Um detaillierte Informationen zu erhalten, fahren Sie bitte mit der Maus \u00FCber die Grafik.");
txtpnUmDetaillierteInformationen.setEditable(false);
txtpnUmDetaillierteInformationen.setBackground(SystemColor.menu);
- txtpnUmDetaillierteInformationen.setBounds(10, 113, 509, 22);
+ txtpnUmDetaillierteInformationen.setBounds(10, 188, 509, 22);
contentPanel.add(txtpnUmDetaillierteInformationen);
{
JPanel buttonPane = new JPanel();
@@ -380,7 +401,10 @@ public class MainMenue_GUI extends JFrame {
SearchLecture_GUI sl = new SearchLecture_GUI();
sl.setVisible(true);
dispose();
- }
+ } else
+ JOptionPane.showMessageDialog(null,
+ "Keine Auswahl getroffen.",
+ "Auswahl fehlt", JOptionPane.ERROR_MESSAGE);
}
});
continueButton.setActionCommand("OK");
@@ -409,15 +433,11 @@ public class MainMenue_GUI extends JFrame {
mntmFaq.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
OpenLinks open = new OpenLinks();
-
URI windows;
try {
windows = new URI(Links.getFAQ());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
@@ -425,30 +445,24 @@ public class MainMenue_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmFaq);
-
JMenuItem mntmOtrs = new JMenuItem("OTRS");
mntmOtrs.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
OpenLinks open = new OpenLinks();
-
URI windows;
try {
windows = new URI(Links.getOTRS());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
}
});
mnNewMenu_1.add(mntmOtrs);
-
+
mntmAbout = new JMenuItem("About");
mntmAbout.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
@@ -459,4 +473,134 @@ public class MainMenue_GUI extends JFrame {
mnNewMenu_1.add(mntmAbout);
}// end main
+
+ private void processRights() {
+
+ /*
+ * Legt anhand der Rolle fest, welche Operationen der user machen darf.
+ * Rolle kommt vom Masterserver
+ */
+
+ // Image
+ if (person.verantwortlicher.getRole().equals("Student")) {
+ rdbtnImageNew.setEnabled(false);
+ rdbtnImageEdit.setEnabled(false);
+ rdbtnImageDelete.setEnabled(false);
+ rdbtnImageSearchDownload.setEnabled(true);
+ } else if (person.verantwortlicher.getRole().equals("Dozent")
+ || person.verantwortlicher.getRole().equals("Admin")) {
+ rdbtnImageNew.setEnabled(true);
+ rdbtnImageEdit.setEnabled(true);
+ rdbtnImageDelete.setEnabled(true);
+ rdbtnImageSearchDownload.setEnabled(true);
+ } else {
+ rdbtnImageNew.setEnabled(false);
+ rdbtnImageEdit.setEnabled(false);
+ rdbtnImageDelete.setEnabled(false);
+ rdbtnImageSearchDownload.setEnabled(false);
+ }
+
+ // Veranstaltung
+ if (person.verantwortlicher.getRole().equals("Student")) {
+ rdbtnLectureNew.setEnabled(false);
+ rdbtnLectureEdit.setEnabled(false);
+ rdbtnLectureDelete.setEnabled(false);
+ rdbtnLectureSearch.setEnabled(true);
+ } else if (person.verantwortlicher.getRole().equals("Dozent")
+ || person.verantwortlicher.getRole().equals("Admin")) {
+ rdbtnLectureNew.setEnabled(true);
+ rdbtnLectureEdit.setEnabled(true);
+ rdbtnLectureDelete.setEnabled(true);
+ rdbtnLectureSearch.setEnabled(true);
+ } else {
+ rdbtnLectureNew.setEnabled(false);
+ rdbtnLectureEdit.setEnabled(false);
+ rdbtnLectureDelete.setEnabled(false);
+ rdbtnLectureSearch.setEnabled(false);
+ }
+
+ }// end processRights()
+
+ public void setRoleRights() {
+ // Set rights for user, depending on the role that is returned by the
+ // masterserver
+
+ System.out.println("Ihre Rolle ist nun: "
+ + person.verantwortlicher.getRole());
+ // role==Student
+ if (person.verantwortlicher.getRole().equals("Student")) {
+ ImageRights.rights.setRead(1);
+ ImageRights.rights.setWrite(0);
+ ImageRights.rights.setChangePermission(0);
+ ImageRights.rights.setAdmin(0);
+ ImageRights.rights.setLinkAllowed(0);
+ System.out.println("Rechte (r,w,cp,a,la): "
+ + ImageRights.rights.getRead() + ","
+ + ImageRights.rights.getWrite() + ","
+ + ImageRights.rights.getChangePermission() + ","
+ + ImageRights.rights.getAdmin() + ","
+ + ImageRights.rights.getLinkAllowed());
+
+ } else if (person.verantwortlicher.getRole().equals("Dozent")) { // role==Dozent
+ ImageRights.rights.setRead(1);
+ ImageRights.rights.setWrite(1);
+ ImageRights.rights.setChangePermission(0);
+ ImageRights.rights.setAdmin(0);
+ ImageRights.rights.setLinkAllowed(1);
+ System.out.println("Rechte (r,w,cp,a,la): "
+ + ImageRights.rights.getRead() + ","
+ + ImageRights.rights.getWrite() + ","
+ + ImageRights.rights.getChangePermission() + ","
+ + ImageRights.rights.getAdmin() + ","
+ + ImageRights.rights.getLinkAllowed());
+ } else if (person.verantwortlicher.getRole().equals("Admin")) { // role==Admin
+ ImageRights.rights.setRead(1);
+ ImageRights.rights.setWrite(1);
+ ImageRights.rights.setChangePermission(1);
+ ImageRights.rights.setAdmin(1);
+ ImageRights.rights.setLinkAllowed(1);
+ System.out.println("Rechte (r,w,cp,a,la): "
+ + ImageRights.rights.getRead() + ","
+ + ImageRights.rights.getWrite() + ","
+ + ImageRights.rights.getChangePermission() + ","
+ + ImageRights.rights.getAdmin() + ","
+ + ImageRights.rights.getLinkAllowed());
+ } else { // role==Nothing
+ ImageRights.rights.setRead(0);
+ ImageRights.rights.setWrite(0);
+ ImageRights.rights.setChangePermission(0);
+ ImageRights.rights.setAdmin(0);
+ ImageRights.rights.setLinkAllowed(0);
+ System.out.println("Rechte (r,w,cp,a,la): "
+ + ImageRights.rights.getRead() + ","
+ + ImageRights.rights.getWrite() + ","
+ + ImageRights.rights.getChangePermission() + ","
+ + ImageRights.rights.getAdmin() + ","
+ + ImageRights.rights.getLinkAllowed());
+ }// end if else
+ }// end setRoleRights
+
+ public void setCorrectRadioButton() {
+ // get the first enabled RadioButton depending on role an rights. Start
+ // at top
+
+ if (rdbtnImageNew.isEnabled() == true) {
+ rdbtnImageNew.setSelected(true);
+ } else if (rdbtnImageEdit.isEnabled() == true) {
+ rdbtnImageEdit.setSelected(true);
+ } else if (rdbtnImageDelete.isEnabled() == true) {
+ rdbtnImageDelete.setSelected(true);
+ } else if (rdbtnImageSearchDownload.isEnabled() == true) {
+ rdbtnImageSearchDownload.setSelected(true);
+ } else if (rdbtnLectureNew.isEnabled() == true) {
+ rdbtnLectureNew.setSelected(true);
+ } else if (rdbtnLectureEdit.isEnabled() == true) {
+ rdbtnLectureEdit.setSelected(true);
+ } else if (rdbtnLectureDelete.isEnabled() == true) {
+ rdbtnLectureDelete.setSelected(true);
+ } else if (rdbtnLectureSearch.isEnabled() == true) {
+ rdbtnLectureSearch.setSelected(true);
+ }
+
+ }// end setCorrectRadioButton()
}// end class
diff --git a/Dozentenmodul/src/main/java/gui/intro/VmWareLink_GUI.java b/Dozentenmodul/src/main/java/gui/intro/VmWareLink_GUI.java
index 87c6b2a2..d5350fbd 100644
--- a/Dozentenmodul/src/main/java/gui/intro/VmWareLink_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/intro/VmWareLink_GUI.java
@@ -68,7 +68,7 @@ public class VmWareLink_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
}
- setTitle("Dozentenmodul *Prototyp*");
+ setTitle("bwLehrpool Suite");
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -105,24 +105,6 @@ public class VmWareLink_GUI extends JFrame {
contentPanel.add(txtpnUmIhreVmdk);
JLabel lblNewLabel_1 = new JLabel("<html><b>Windows: </b></html>");
- lblNewLabel_1.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseReleased(MouseEvent arg0) {
- URI url;
- try {
- url = new URI("https://my.vmware.com/web/vmware/free#desktop_end_user_computing/vmware_player/6_0");
- Desktop.getDesktop().browse(url);
- } catch (URISyntaxException | IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
- }
-
- }
- });
-
lblNewLabel_1.setBounds(10, 93, 499, 14);
contentPanel.add(lblNewLabel_1);
@@ -139,13 +121,13 @@ public class VmWareLink_GUI extends JFrame {
// TODO Auto-generated catch block
e1.printStackTrace();
JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
+ e1.getCause()+"\n"+e1.getStackTrace(),
"Debug-Message", JOptionPane.ERROR_MESSAGE);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
+ e1.getCause()+"\n"+e1.getStackTrace(),
"Debug-Message", JOptionPane.ERROR_MESSAGE);
}
}
diff --git a/Dozentenmodul/src/main/java/gui/lecture/CreateLectureAllgemein_GUI.java b/Dozentenmodul/src/main/java/gui/lecture/CreateLectureAllgemein_GUI.java
index 44e8bd50..76bf3933 100644
--- a/Dozentenmodul/src/main/java/gui/lecture/CreateLectureAllgemein_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/lecture/CreateLectureAllgemein_GUI.java
@@ -16,6 +16,7 @@ import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.net.URI;
import java.net.URISyntaxException;
+import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
@@ -45,6 +46,8 @@ import util.GuiOrganizer;
import util.OpenLinks;
import com.toedter.calendar.JDateChooser;
+import java.beans.PropertyChangeListener;
+import java.beans.PropertyChangeEvent;
@SuppressWarnings("serial")
public class CreateLectureAllgemein_GUI extends JFrame {
@@ -63,12 +66,16 @@ public class CreateLectureAllgemein_GUI extends JFrame {
JDateChooser dateChooserstart;
Date startDate = new Date();
Date endDate;
+ private boolean descriptionLengthOK = false; // description may not be
+ // longer than
+ // MAX_DESCRIPTION_LENGTH
+ private final int MAX_DESCRIPTION_LENGTH = 254;
+
int maxLifeTime = 180; // Anzahl Tage, die eine Veranstaltung in der Zukunft
// aktiv sein darf
boolean isDateOrderCorrect, isDateMaxLifeTimeCorrect,
isAllInformationReady = false;
-
/**
* Create the dialog.
*/
@@ -93,7 +100,7 @@ public class CreateLectureAllgemein_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
}
- setTitle("bwLehrpool Suite *Prototyp* - Veranstaltung erzeugen");
+ setTitle("bwLehrpool Suite - Veranstaltung erzeugen");
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -214,17 +221,17 @@ public class CreateLectureAllgemein_GUI extends JFrame {
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
- JLabel lblVlimage = new JLabel("VL-Image");
+ JLabel lblVlimage = new JLabel("Veranstaltung");
lblVlimage.setForeground(Color.BLUE);
- lblVlimage.setBounds(81, 11, 45, 14);
+ lblVlimage.setBounds(81, 11, 70, 14);
contentPanel.add(lblVlimage);
JLabel label_2 = new JLabel(">");
- label_2.setBounds(133, 11, 13, 14);
+ label_2.setBounds(161, 11, 13, 14);
contentPanel.add(label_2);
JLabel lblNewLabel_1 = new JLabel("Neu");
- lblNewLabel_1.setBounds(146, 11, 46, 14);
+ lblNewLabel_1.setBounds(174, 11, 46, 14);
contentPanel.add(lblNewLabel_1);
JPanel panel_2 = new JPanel();
@@ -235,9 +242,9 @@ public class CreateLectureAllgemein_GUI extends JFrame {
panel_2.setBounds(10, 36, 557, 284);
contentPanel.add(panel_2);
- JLabel label_3 = new JLabel("Laborname (Anzeigename): *");
- label_3.setBounds(10, 25, 180, 14);
- panel_2.add(label_3);
+ JLabel lblAnzeigename = new JLabel("Anzeigename: *");
+ lblAnzeigename.setBounds(10, 25, 180, 14);
+ panel_2.add(lblAnzeigename);
txtFldVeranstaltungsname = new JTextField();
txtFldVeranstaltungsname.setColumns(10);
@@ -269,11 +276,34 @@ public class CreateLectureAllgemein_GUI extends JFrame {
scrollPane.add(description);
description.setBounds(0, 0, 4, 22);
scrollPane.add(description);
+ dateChooserstart = new JDateChooser();
+ dateChooserstart
+ .addPropertyChangeListener(new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent arg0) {
+ endDate = addDays(dateChooserstart.getDate(),
+ maxLifeTime); // Datum darf weiter als 6
+ // Monate in der Zukunft
+ // liegen
+ }
+ });
+ if (Lecture.lecture.getStartdate() == null) {
+ // is not defined yet
+ dateChooserstart.setDate(startDate);
+ } else {
+ // already defined from last visit on this page
+ dateChooserstart.setDate(Lecture.lecture.getStartdate());
+ }
+ dateChooserstart.setDateFormatString("yyyy-MM-dd HH:mm:ss");
+ dateChooserstart.setBounds(226, 188, 143, 20);
+ panel_2.add(dateChooserstart);
dateChooserend = new JDateChooser();
- endDate = addDays(new Date(), maxLifeTime); // Datum darf weiter als 6
- // Monate in der Zukunft
- // liegen
+ endDate = addDays(dateChooserstart.getDate(), maxLifeTime); // Datum
+ // darf
+ // weiter
+ // als 6
+ // Monate in der Zukunft
+ // liegen
dateChooserend.setDate(endDate);
if (Lecture.lecture.getEnddate() == null) {
// is not defined yet
@@ -282,7 +312,7 @@ public class CreateLectureAllgemein_GUI extends JFrame {
// already defined from last visit on this page
dateChooserend.setDate(Lecture.lecture.getEnddate());
}
- dateChooserend.setDateFormatString("yyyy-MM-dd hh:mm:ss");
+ dateChooserend.setDateFormatString("yyyy-MM-dd HH:mm:ss");
dateChooserend.setBounds(404, 188, 143, 20);
panel_2.add(dateChooserend);
@@ -290,18 +320,6 @@ public class CreateLectureAllgemein_GUI extends JFrame {
lblBis.setBounds(378, 188, 21, 20);
panel_2.add(lblBis);
- dateChooserstart = new JDateChooser();
- if (Lecture.lecture.getStartdate() == null) {
- // is not defined yet
- dateChooserstart.setDate(startDate);
- } else {
- // already defined from last visit on this page
- dateChooserstart.setDate(Lecture.lecture.getStartdate());
- }
- dateChooserstart.setDateFormatString("yyyy-MM-dd hh:mm:ss");
- dateChooserstart.setBounds(226, 188, 143, 20);
- panel_2.add(dateChooserstart);
-
JLabel label_6 = new JLabel("von:");
label_6.setBounds(200, 188, 30, 20);
panel_2.add(label_6);
@@ -338,7 +356,7 @@ public class CreateLectureAllgemein_GUI extends JFrame {
JLabel lblimVmchooserSichtbar = new JLabel("(im VMChooser sichtbar)");
lblimVmchooserSichtbar.setBounds(10, 245, 127, 14);
panel_2.add(lblimVmchooserSichtbar);
-
+
JLabel lblmaxMonate = new JLabel("(max. 6 Monate)");
lblmaxMonate.setBounds(10, 208, 127, 14);
panel_2.add(lblmaxMonate);
@@ -403,7 +421,9 @@ public class CreateLectureAllgemein_GUI extends JFrame {
"Das End-Datum liegt zu weit in der Zukunft. Erlaubt ist maximal:\n"
+ endDate, "Datum fehlerhaft",
JOptionPane.INFORMATION_MESSAGE);
- dateChooserend.setDate(endDate); //setze Datum auf maximum
+
+ dateChooserend.setDate(endDate); // setze Datum auf
+ // maximum
} else {
// bereit
isDateMaxLifeTimeCorrect = true;
@@ -434,7 +454,8 @@ public class CreateLectureAllgemein_GUI extends JFrame {
// weiter
if (isAllInformationReady == true
&& isDateMaxLifeTimeCorrect == true
- && isDateOrderCorrect == true) {
+ && isDateOrderCorrect == true
+ && descriptionLenghtOK() == true) {
// everything is ok, proceed
Lecture.lecture.setName(txtFldVeranstaltungsname
.getText());
@@ -442,10 +463,11 @@ public class CreateLectureAllgemein_GUI extends JFrame {
Lecture.lecture.setEnddate(dateChooserend.getDate());
Lecture.lecture.setStartdate(dateChooserstart
.getDate());
+
Image.image.setImagename(txtFldVeranstaltungsname
.getText());
- CreateLectureLink_GUI ev = new CreateLectureLink_GUI();
+ PermissionCreateLecture_GUI ev = new PermissionCreateLecture_GUI();
ev.setVisible(true);
dispose();
}
@@ -485,15 +507,11 @@ public class CreateLectureAllgemein_GUI extends JFrame {
mntmFaq.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
OpenLinks open = new OpenLinks();
-
URI windows;
try {
windows = new URI(Links.getFAQ());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
@@ -501,7 +519,6 @@ public class CreateLectureAllgemein_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmFaq);
-
JMenuItem mntmOtrs = new JMenuItem("OTRS");
mntmOtrs.addMouseListener(new MouseAdapter() {
@@ -509,22 +526,19 @@ public class CreateLectureAllgemein_GUI extends JFrame {
public void mousePressed(MouseEvent arg0) {
OpenLinks open = new OpenLinks();
-
+
URI windows;
try {
windows = new URI(Links.getOTRS());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
}
});
mnNewMenu_1.add(mntmOtrs);
-
+
JMenuItem mnmtAbout = new JMenuItem("About");
mnmtAbout.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
@@ -541,5 +555,25 @@ public class CreateLectureAllgemein_GUI extends JFrame {
cal.setTime(date);
cal.add(Calendar.DATE, days); // minus number would decrement the days
return cal.getTime();
- }
-}
+ }// end addDays()
+
+ public boolean descriptionLenghtOK() {
+ descriptionLengthOK = false;
+
+ // max length is 254 chars
+ if (description.getText().length() >= MAX_DESCRIPTION_LENGTH) {
+ descriptionLengthOK = false;
+ JOptionPane.showMessageDialog(null,
+ "Die Beschreibung darf max 254 Zeichen enthalten. Aktuell enthält sie "
+ + description.getText().length() + ".",
+ "Beschreibung zu umfangreich",
+ JOptionPane.INFORMATION_MESSAGE);
+ } else {
+ descriptionLengthOK = true;
+
+ }
+
+ return descriptionLengthOK;
+ }// enddescriptionLenghtOK()
+
+}// end class
diff --git a/Dozentenmodul/src/main/java/gui/lecture/CreateLectureLink_GUI.java b/Dozentenmodul/src/main/java/gui/lecture/CreateLectureLink_GUI.java
index 0f30aa15..f4d1bdd8 100644
--- a/Dozentenmodul/src/main/java/gui/lecture/CreateLectureLink_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/lecture/CreateLectureLink_GUI.java
@@ -18,10 +18,11 @@ import java.awt.event.WindowEvent;
import java.net.URI;
import java.net.URISyntaxException;
import java.text.DateFormat;
+import java.text.ParseException;
import java.text.SimpleDateFormat;
-import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import java.util.Map;
import javax.swing.JButton;
import javax.swing.JComboBox;
@@ -37,13 +38,17 @@ import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.JTabbedPane;
import javax.swing.JTable;
+import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.JTextPane;
+import javax.swing.RowFilter;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
import javax.swing.table.DefaultTableModel;
+import javax.swing.table.TableModel;
+import javax.swing.table.TableRowSorter;
import models.Lecture;
import models.Links;
@@ -55,6 +60,10 @@ import server.Server.Client;
import thrift.ThriftConnection;
import util.GuiOrganizer;
import util.OpenLinks;
+import javax.swing.event.ChangeListener;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
@SuppressWarnings("serial")
public class CreateLectureLink_GUI extends JFrame {
@@ -64,17 +73,52 @@ public class CreateLectureLink_GUI extends JFrame {
JRadioButton rdbtnInternetJa;
JRadioButton rdbtnInternetNein;
JComboBox<String> comboBox;
+ JTabbedPane tabbedPane;
+ JLabel labelName;
+ JLabel labelUpdate;
+ JLabel labelVerantwortlicher;
+ JLabel labelWeitereVerantwortliche;
+ JLabel labelVorlage;
+ JLabel labelLizenzSoftware;
+ JLabel labelInternet;
+ JLabel labelRam;
+ JLabel labelCPU;
+ JLabel labelID;
+ JLabel labelVersion;
+ JTextArea textAreadesc;
+ private JLabel labelOS;
JTable tableAllImages = new JTable();
JTable tablemyImages = new JTable();
JTable tableCoopImages = new JTable();
- JTable tablePublicImages = new JTable();
JTable tablePublicVorlagen = new JTable();
+ boolean activeSearch=false;
private JTextField textFieldName;
String[] titles = { "Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung",
- "Verantwortlicher", "Letztes Update", "Schlagwort" };
+ "Verantwortlicher", "Letztes Update", "ID", "Version","Template" };
ThriftConnection con = new ThriftConnection();
Client client = models.Client.clientcon.getClient();
-
+ final DefaultTableModel modelAll = new DefaultTableModel(titles, 0){
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0){
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final DefaultTableModel modelPublicVorlagen = new DefaultTableModel(titles, 0){
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
+ modelAll);
+ final TableRowSorter<TableModel> rowSorterMyImages = new TableRowSorter<TableModel>(
+ modelMyImages);
+ final TableRowSorter<TableModel> rowSorterPublicVorlagen = new TableRowSorter<TableModel>(
+ modelPublicVorlagen);
+ private JTextField textField;
/**
* Create the dialog.
@@ -89,6 +133,71 @@ public class CreateLectureLink_GUI extends JFrame {
@Override
public void windowOpened(WindowEvent arg0) {
+ try {
+ initTableModel(modelMyImages);
+ initTableModel(modelAll);
+ initTableModel(modelPublicVorlagen);
+ } catch (TException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (ParseException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ // auszublendende Angaben
+ // 1=Lizenzpflichtig
+ // 3=Veranstaltung
+ // 6=ID
+ // 7=Version
+ // 8=Template
+ tablemyImages.getColumnModel().getColumn(1).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(1).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(1).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setMaxWidth(0);
+
+ tablePublicVorlagen.getColumnModel().getColumn(1).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(1).setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(1).setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3).setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3).setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8).setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8).setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6).setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6).setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7).setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7).setMaxWidth(0);
+
+ tableAllImages.getColumnModel().getColumn(1).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(1).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(1).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setMaxWidth(0);
textFieldName.requestFocusInWindow();
}
});
@@ -101,18 +210,18 @@ public class CreateLectureLink_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
}
- setTitle("bwLehrpool Suite *Prototyp* - Veranstaltung erzeugen");
- setBounds(0, 0, 603, 722);
+ setTitle("bwLehrpool Suite - Veranstaltung erzeugen");
+ setBounds(0, 0, 918, 722);
GuiOrganizer.centerGUI(this);
- final DefaultTableModel modelAll = new DefaultTableModel(titles, 0);
+
final DefaultTableModel model = new DefaultTableModel(titles, 0);
getContentPane().setLayout(null);
{
JPanel panel = new JPanel();
panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 11, 577, 57);
+ panel.setBounds(10, 11, 892, 57);
getContentPane().add(panel);
panel.setLayout(null);
{
@@ -140,16 +249,16 @@ public class CreateLectureLink_GUI extends JFrame {
panel_1.setBackground(SystemColor.menu);
panel_1.setBorder(new TitledBorder(null, "Filterfunktionen",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 49, 557, 131);
+ panel_1.setBounds(10, 49, 557, 92);
contentPanel.add(panel_1);
panel_1.setLayout(null);
JLabel lblNewLabel_2 = new JLabel("Anzeigename:");
- lblNewLabel_2.setBounds(10, 30, 250, 20);
+ lblNewLabel_2.setBounds(10, 30, 80, 20);
panel_1.add(lblNewLabel_2);
JLabel lblInternetIstInnerhalb = new JLabel("Betriebssystem:");
- lblInternetIstInnerhalb.setBounds(10, 58, 250, 20);
+ lblInternetIstInnerhalb.setBounds(10, 58, 80, 20);
panel_1.add(lblInternetIstInnerhalb);
textFieldName = new JTextField();
@@ -157,41 +266,36 @@ public class CreateLectureLink_GUI extends JFrame {
@Override
public void keyReleased(KeyEvent e) {
String stext = textFieldName.getText();
- modelAll.setRowCount(0);
- initTableModel(modelAll);
-
- if (stext != "")
- for (int i = 0; i < modelAll.getRowCount(); i++) {
-
- if (modelAll.getValueAt(i, 0).toString()
- .startsWith(stext)) {
-
- } else {
- modelAll.removeRow(i);
- }
- }
+ // Wenn Textfield nicht leer
+ if (stext != "") {
+ activeSearch=true;
+ // Filtere nach der Eingabe
+ rowSorterAll.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+
+ }else{
+ activeSearch=false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ rowSorterAll.setRowFilter(null);
+ }
}
});
- textFieldName.setBounds(270, 30, 250, 20);
+ textFieldName.setBounds(96, 30, 166, 20);
panel_1.add(textFieldName);
textFieldName.setColumns(10);
- JLabel lblErweiterteSuche = new JLabel(
- "<html><u>Erweiterte Suche</u></html>");
- lblErweiterteSuche.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
- ExtendedSearchForLectures_GUI es = new ExtendedSearchForLectures_GUI();
- es.setVisible(true);
- }
- });
- lblErweiterteSuche.setForeground(Color.BLUE);
-
- lblErweiterteSuche.setBounds(431, 106, 89, 14);
- panel_1.add(lblErweiterteSuche);
comboBox = new JComboBox<String>();
try {
@@ -204,29 +308,43 @@ public class CreateLectureLink_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
+ e.getCause()+"\n"+e.getStackTrace(),
"Debug-Message", JOptionPane.ERROR_MESSAGE);
}
comboBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
- modelAll.setRowCount(0);
- initTableModel(modelAll);
- String selItem = comboBox.getSelectedItem().toString();
- if (selItem != "") {
- for (int i = 0; i < modelAll.getRowCount(); i++) {
-
- if (modelAll.getValueAt(i, 2).equals(selItem)) {
-
- } else {
- modelAll.removeRow(i);
- }
- }
-
+ // Prueft das die Auswahl nicht leer ist
+ if (comboBox.getSelectedItem().toString() != "") {
+ activeSearch=true;
+ rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox
+ .getSelectedItem().toString(), 2));
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ comboBox.getSelectedItem().toString(), 2));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ comboBox.getSelectedItem().toString(), 2));
+ }else{
+ activeSearch=false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ rowSorterAll.setRowFilter(null);
}
}
});
- comboBox.setBounds(270, 58, 250, 20);
+ comboBox.setBounds(96, 58, 166, 20);
panel_1.add(comboBox);
+
+ JLabel label_3 = new JLabel("Beschreibung:");
+ label_3.setBounds(291, 30, 80, 20);
+ panel_1.add(label_3);
+
+ textField = new JTextField();
+ textField.setColumns(10);
+ textField.setBounds(381, 30, 166, 20);
+ panel_1.add(textField);
JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
lblHauptmen.addMouseListener(new MouseAdapter() {
@@ -259,31 +377,65 @@ public class CreateLectureLink_GUI extends JFrame {
lblNewLabel_1.setBounds(164, 11, 85, 14);
contentPanel.add(lblNewLabel_1);
- JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP);
+ tabbedPane = new JTabbedPane(JTabbedPane.TOP);
+ tabbedPane.addChangeListener(new ChangeListener() {
+ public void stateChanged(ChangeEvent arg0) {
+ if (tabbedPane.getSelectedIndex() == 0 && activeSearch==false) {
+
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ }else if(tabbedPane.getSelectedIndex()==1 && activeSearch==false){
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter("true", 8));
+ } else if(tabbedPane.getSelectedIndex()==2 && activeSearch==false){
+ rowSorterAll.setRowFilter(null);
+ }
- tabbedPane.setBounds(10, 197, 557, 300);
+ }
+
+ });
+
+ tabbedPane.setBounds(10, 152, 557, 345);
contentPanel.add(tabbedPane);
JScrollPane scrollPaneMyImage = new JScrollPane();
-
- tablemyImages.setModel(model);
+ tablemyImages.getSelectionModel().addListSelectionListener( new ListSelectionListener()
+ {
+ public void valueChanged(ListSelectionEvent e)
+ {
+ String imageid = modelMyImages
+ .getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelMyImages
+ .getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ try {
+ writeImageData(imageid, version);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ } catch (ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
+ });
+ tablemyImages.setModel(modelMyImages);
tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(4).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- JScrollPane scrollPaneAllImages = new JScrollPane();
- tableAllImages = new JTable();
- tableAllImages.setModel(modelAll);
- tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPaneAllImages.setViewportView(tableAllImages);
- tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
+ tablemyImages.setRowSorter(rowSorterMyImages);
scrollPaneMyImage.setViewportView(tablemyImages);
tabbedPane.addTab("Meine Images", null, scrollPaneMyImage, null);
@@ -297,43 +449,102 @@ public class CreateLectureLink_GUI extends JFrame {
tableCoopImages.getColumnModel().getColumn(4).sizeWidthToFit();
tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit();
- scrollPaneCoopImages.setViewportView(tableCoopImages);
- tabbedPane.addTab("Kooperative Images", null, scrollPaneCoopImages,
- null);
- tabbedPane.setEnabledAt(2, false);
-
- JScrollPane scrollPanePublicImages = new JScrollPane();
+
+ JScrollPane scrollPanePublicVorlagen = new JScrollPane();
+ tablePublicVorlagen.getSelectionModel().addListSelectionListener( new ListSelectionListener()
+ {
+ public void valueChanged(ListSelectionEvent e)
+ {
+ String imageid = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ try {
+ writeImageData(imageid, version);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ } catch (ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
+ });
+ tablePublicVorlagen.setModel(modelPublicVorlagen);
+ tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
+ tablePublicVorlagen.setRowSorter(rowSorterPublicVorlagen);
+ scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
+ tabbedPane.addTab("Vorlagen", null,
+ scrollPanePublicVorlagen, null);
+
+ JScrollPane scrollPaneAllImages = new JScrollPane();
+ tableAllImages = new JTable();
+ tableAllImages.getSelectionModel().addListSelectionListener( new ListSelectionListener()
+ {
+ public void valueChanged(ListSelectionEvent e)
+ {
+
+ String imageid = modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ try {
+ writeImageData(imageid, version);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ } catch (ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
- tablePublicImages.setModel(model);
- tablePublicImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(5).sizeWidthToFit();
+ }
+ });
+ tableAllImages.setModel(modelAll);
+ tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
+ tableAllImages.setRowSorter(rowSorterAll);
+
+ scrollPaneAllImages.setViewportView(tableAllImages);
+ tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
+
+
- scrollPanePublicImages.setViewportView(tablePublicImages);
- tabbedPane.addTab("\u00D6ffentliche Images", null,
- scrollPanePublicImages, null);
+ scrollPaneCoopImages.setViewportView(tableCoopImages);
+ tabbedPane.addTab("bwLehrpool", null, scrollPaneCoopImages,
+ null);
tabbedPane.setEnabledAt(3, false);
- JScrollPane scrollPanePublicVorlagen = new JScrollPane();
-
- tablePublicVorlagen.setModel(model);
- tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
- tabbedPane.addTab("\u00D6ffentliche Vorlagen", null,
- scrollPanePublicVorlagen, null);
- tabbedPane.setEnabledAt(4, false);
-
- initTableModel(modelAll);
{
JPanel buttonPane = new JPanel();
- buttonPane.setBounds(0, 640, 597, 33);
+ buttonPane.setBounds(0, 640, 902, 33);
buttonPane.setBackground(SystemColor.menu);
buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
getContentPane().add(buttonPane);
@@ -342,7 +553,7 @@ public class CreateLectureLink_GUI extends JFrame {
cancelButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- CreateLectureAllgemein_GUI eVAG = new CreateLectureAllgemein_GUI();
+ PermissionCreateLecture_GUI eVAG = new PermissionCreateLecture_GUI();
eVAG.setVisible(true);
dispose();
}
@@ -356,13 +567,118 @@ public class CreateLectureLink_GUI extends JFrame {
"Veranstaltung erzeugen und abschlie\u00DFen");
doLinkButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
-
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
// check if a row is selected
- if ((tableAllImages.getSelectedRow() != -1)
- || (tablemyImages.getSelectedRow() != -1)
- || (tableCoopImages.getSelectedRow() != -1)
- || (tablePublicImages.getSelectedRow() != -1)
- || (tablePublicVorlagen.getSelectedRow() != -1)) {
+ if (tablemyImages.getSelectedRow() != -1){
+
+ // a row is selected, do operations
+ String imagename = tablemyImages.getValueAt(
+ tablemyImages.getSelectedRow(), 0)
+ .toString();
+ try {
+ DateFormat formatter = new SimpleDateFormat(
+ "yyyy-MM-dd HH:mm:ss");
+ client.writeLecturedata(
+ Lecture.lecture.getName(),
+ Lecture.lecture.getShortDesc(),
+ Lecture.lecture.getDesc(),
+ formatter.format(
+ Lecture.lecture.getStartdate())
+ .toString(),
+ formatter.format(
+ Lecture.lecture.getEnddate())
+ .toString(),
+ Lecture.lecture.isActive(),
+ imagename,
+ person.verantwortlicher.getUsername(),
+ person.verantwortlicher.getVorname(),
+ person.verantwortlicher.getName(),
+ person.verantwortlicher.getHochschule(),
+ person.verantwortlicher.getEMail(),
+ person.verantwortlicher.getTel(),
+ person.verantwortlicher.getFakultaet());
+ client.writeLectureRights(Lecture.lecture.getName(), person.verantwortlicher.getUsername(), person.verantwortlicher.getName(), person.verantwortlicher.getVorname(), person.verantwortlicher.getEMail(), person.verantwortlicher.getHochschule(), person.verantwortlicher.getRole());
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Ihre Veranstaltung wurde erfolgreich angelegt. Sie kehren nun zum Hauptmen\u00fc zur\u00fcck.",
+ "Veranstaltung angelegt",
+ JOptionPane.INFORMATION_MESSAGE);
+ // zurueck zum Menue
+ MainMenue_GUI m = new MainMenue_GUI();
+ m.setVisible(true);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Beim Anlegen Ihrer Veranstaltung ist ein Fehler aufgetreten.",
+ "Error",
+ JOptionPane.ERROR_MESSAGE);
+ JOptionPane.showMessageDialog(null,
+ e1.getCause()+"\n"+e1.getStackTrace(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ }
+
+ dispose();
+
+ }else if (tablePublicVorlagen.getSelectedRow() != -1){
+
+ // a row is selected, do operations
+ String imagename = tablePublicVorlagen.getValueAt(
+ tablePublicVorlagen.getSelectedRow(), 0)
+ .toString();
+ try {
+ DateFormat formatter = new SimpleDateFormat(
+ "yyyy-MM-dd hh:mm:ss");
+ client.writeLecturedata(
+ Lecture.lecture.getName(),
+ Lecture.lecture.getShortDesc(),
+ Lecture.lecture.getDesc(),
+ formatter.format(
+ Lecture.lecture.getStartdate())
+ .toString(),
+ formatter.format(
+ Lecture.lecture.getEnddate())
+ .toString(),
+ Lecture.lecture.isActive(),
+ imagename,
+ person.verantwortlicher.getUsername(),
+ person.verantwortlicher.getVorname(),
+ person.verantwortlicher.getName(),
+ person.verantwortlicher.getHochschule(),
+ person.verantwortlicher.getEMail(),
+ person.verantwortlicher.getTel(),
+ person.verantwortlicher.getFakultaet());
+ client.writeLectureRights(Lecture.lecture.getName(), person.verantwortlicher.getUsername(), person.verantwortlicher.getName(), person.verantwortlicher.getVorname(), person.verantwortlicher.getEMail(), person.verantwortlicher.getHochschule(), person.verantwortlicher.getRole());
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Ihre Veranstaltung wurde erfolgreich angelegt. Sie kehren nun zum Hauptmen\u00fc zur\u00fcck.",
+ "Veranstaltung angelegt",
+ JOptionPane.INFORMATION_MESSAGE);
+ // zurueck zum Menue
+ MainMenue_GUI m = new MainMenue_GUI();
+ m.setVisible(true);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Beim Anlegen Ihrer Veranstaltung ist ein Fehler aufgetreten.",
+ "Error",
+ JOptionPane.ERROR_MESSAGE);
+ JOptionPane.showMessageDialog(null,
+ e1.getCause()+"\n"+e1.getStackTrace(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ }
+
+ dispose();
+
+ }else if (tableAllImages.getSelectedRow() != -1 &&tableAllImages.getValueAt(tableAllImages.getSelectedRow(), 4).toString().equals(username)){
// a row is selected, do operations
String imagename = tableAllImages.getValueAt(
@@ -390,6 +706,7 @@ public class CreateLectureLink_GUI extends JFrame {
person.verantwortlicher.getEMail(),
person.verantwortlicher.getTel(),
person.verantwortlicher.getFakultaet());
+ client.writeLectureRights(Lecture.lecture.getName(), person.verantwortlicher.getUsername(), person.verantwortlicher.getName(), person.verantwortlicher.getVorname(), person.verantwortlicher.getEMail(), person.verantwortlicher.getHochschule(), person.verantwortlicher.getRole());
JOptionPane
.showMessageDialog(
null,
@@ -409,13 +726,14 @@ public class CreateLectureLink_GUI extends JFrame {
"Error",
JOptionPane.ERROR_MESSAGE);
JOptionPane.showMessageDialog(null,
- e1.getCause()+"\n"+e1.getMessage(),
+ e1.getCause()+"\n"+e1.getStackTrace(),
"Debug-Message", JOptionPane.ERROR_MESSAGE);
}
dispose();
- } else {
+ }
+ else {
// nothing selected
JOptionPane.showMessageDialog(null,
"Bitte w\u00e4hlen Sie ein Image aus.",
@@ -431,21 +749,138 @@ public class CreateLectureLink_GUI extends JFrame {
}
JSeparator separator = new JSeparator();
- separator.setBounds(0, 78, 597, 2);
+ separator.setBounds(0, 79, 912, 1);
getContentPane().add(separator);
JSeparator separator_1 = new JSeparator();
- separator_1.setBounds(0, 627, 597, 2);
+ separator_1.setBounds(0, 627, 912, 2);
getContentPane().add(separator_1);
+ JPanel panel = new JPanel();
+ panel.setLayout(null);
+ panel.setBorder(new TitledBorder(null, "Detailinformationen",
+
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(586, 85, 316, 531);
+ getContentPane().add(panel);
+
+ JLabel lblName = new JLabel("Name:");
+ lblName.setBounds(10, 87, 130, 14);
+ panel.add(lblName);
+
+ labelName = new JLabel("");
+ labelName.setBounds(10, 102, 296, 14);
+ panel.add(labelName);
+
+ JLabel lblVerantwortlicher = new JLabel("Verantwortlicher:");
+ lblVerantwortlicher.setBounds(10, 259, 130, 14);
+ panel.add(lblVerantwortlicher);
+
+ labelOS = new JLabel("");
+ labelOS.setBounds(10, 216, 296, 14);
+ panel.add(labelOS);
+
+ JLabel lblWeitereVerantwortliche = new JLabel("Betriebssystem:");
+ lblWeitereVerantwortliche.setBounds(10, 202, 130, 14);
+ panel.add(lblWeitereVerantwortliche);
+
+ labelVerantwortlicher = new JLabel("");
+ labelVerantwortlicher.setBounds(10, 272, 296, 14);
+ panel.add(labelVerantwortlicher);
+
+ JLabel label = new JLabel("Weitere Verantwortliche:");
+ label.setBounds(10, 284, 130, 14);
+ panel.add(label);
+
+ labelWeitereVerantwortliche = new JLabel("");
+ labelWeitereVerantwortliche.setBounds(10, 297, 296, 14);
+ panel.add(labelWeitereVerantwortliche);
+
+ labelUpdate = new JLabel("");
+ labelUpdate.setBounds(10, 245, 296, 14);
+ panel.add(labelUpdate);
+
+ JLabel lblLetztesUpdate = new JLabel("Letztes Update:");
+ lblLetztesUpdate.setBounds(10, 231, 130, 14);
+ panel.add(lblLetztesUpdate);
+
+ JLabel lblImageIstVorlage = new JLabel("Image ist Vorlage:");
+ lblImageIstVorlage.setBounds(10, 336, 130, 14);
+ panel.add(lblImageIstVorlage);
+
+ labelVorlage = new JLabel("");
+ labelVorlage.setBounds(10, 350, 296, 14);
+ panel.add(labelVorlage);
+
+ labelLizenzSoftware = new JLabel("");
+ labelLizenzSoftware.setBounds(10, 383, 296, 14);
+ panel.add(labelLizenzSoftware);
+
+ JLabel lblLizenzpflichtigeSoftware = new JLabel("Lizenzpflichtige Software:");
+ lblLizenzpflichtigeSoftware.setBounds(10, 367, 130, 14);
+ panel.add(lblLizenzpflichtigeSoftware);
+
+ JLabel lblInternet = new JLabel("Internetsperre vorhanden:");
+ lblInternet.setBounds(10, 400, 130, 14);
+ panel.add(lblInternet);
+
+ labelInternet = new JLabel("");
+ labelInternet.setBounds(10, 417, 296, 14);
+ panel.add(labelInternet);
+
+ JLabel lblEmpfehlungRam = new JLabel("Empfehlung RAM:");
+ lblEmpfehlungRam.setBounds(10, 432, 130, 14);
+ panel.add(lblEmpfehlungRam);
+
+ labelRam = new JLabel("");
+ labelRam.setBounds(10, 455, 296, 14);
+ panel.add(labelRam);
+
+ JLabel lblEmpfehlungCpu = new JLabel("Empfehlung CPU:");
+ lblEmpfehlungCpu.setBounds(10, 469, 130, 14);
+ panel.add(lblEmpfehlungCpu);
+
+ labelCPU = new JLabel("");
+ labelCPU.setBounds(10, 487, 296, 14);
+ panel.add(labelCPU);
+
+ JLabel lblTechnischeDaten = new JLabel("Technische Daten:");
+ lblTechnischeDaten.setBounds(10, 322, 296, 14);
+ panel.add(lblTechnischeDaten);
+
+ JLabel lblId = new JLabel("ID:");
+ lblId.setBounds(10, 23, 296, 14);
+ panel.add(lblId);
+
+ labelID = new JLabel("");
+ labelID.setBounds(10, 37, 296, 14);
+ panel.add(labelID);
+
+ labelVersion = new JLabel("");
+ labelVersion.setBounds(10, 73, 296, 14);
+ panel.add(labelVersion);
+
+ JLabel lblVersion = new JLabel("Version:");
+ lblVersion.setBounds(10, 57, 296, 14);
+ panel.add(lblVersion);
+
+ JLabel lblBeschreibung = new JLabel("Beschreibung:");
+ lblBeschreibung.setBounds(10, 119, 130, 14);
+ panel.add(lblBeschreibung);
+
+ JScrollPane scrollPane = new JScrollPane();
+ scrollPane.setBounds(10, 135, 296, 65);
+ panel.add(scrollPane);
+
+ textAreadesc = new JTextArea();
+ textAreadesc.setLineWrap(true);
+ textAreadesc.setBackground(SystemColor.menu);
+ scrollPane.setViewportView(textAreadesc);
+
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
- JMenu mnNewMenu = new JMenu("Suchen");
- menuBar.add(mnNewMenu);
-
- JMenuItem mntmVlSuche = new JMenuItem("VL Suche");
- mnNewMenu.add(mntmVlSuche);
JMenu mnNewMenu_1 = new JMenu("Hilfe");
menuBar.add(mnNewMenu_1);
@@ -505,36 +940,74 @@ public class CreateLectureLink_GUI extends JFrame {
}
- public DefaultTableModel initTableModel(DefaultTableModel model) {
+ // Initiale Beffuelung eines Table models
+ public DefaultTableModel initTableModel(DefaultTableModel model) throws TException, ParseException {
List<server.Image> images;
- try {
+
+ // Hole eine Liste der Images
images = client.getImageList();
+
Iterator<server.Image> i = images.iterator();
- List<Object[]> ListObj = new ArrayList<Object[]>();
+ SimpleDateFormat in=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
+ SimpleDateFormat out=new SimpleDateFormat("dd.MM.yyyy hh:mm:ss");
int x = 0;
while (i.hasNext()) {
-
- i.next();
+ // erzeuge Objekte fuer die Tabelle
Object[] obj = { images.get(x).getImageName(),
images.get(x).getLicenseRestriction(),
images.get(x).getOsName(),
images.get(x).getLectureName(),
images.get(x).getUserData(),
- images.get(x).getUpdateTime()
- };
- ListObj.add(obj);
- model.addRow(ListObj.get(x));
+ out.format(in.parse(images.get(x).updateTime)), images.get(x).id,
+ images.get(x).getVersion(),
+ images.get(x).getIsTemplate()};
+ // Fuege diese Objekte der Tabelle hinzu
+
+ model.addRow(obj);
x++;
+ i.next();
}
return model;
- } catch (TException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }
- return model;
+
+
}
+ public void writeImageData(String id, String version) throws TException, ParseException{
+
+ SimpleDateFormat in=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
+ SimpleDateFormat out=new SimpleDateFormat("dd.MM.yyyy hh:mm:ss");
+ Map<String,String> res=client.getImageData(id,version);
+ labelName.setText(res.get("name"));
+ labelOS.setText(res.get("os"));
+ labelUpdate.setText(out.format(in.parse(res.get("lastupdate"))));
+ labelVerantwortlicher.setText(res.get("owner"));
+ labelWeitereVerantwortliche.setText("Noch nicht Verf�gbar");
+ if(res.get("template").equals("true")){
+ labelVorlage.setText("Ja");
+ }else{
+ labelVorlage.setText("Nein");
+ }
+ if(res.get("license").equals("1")){
+ labelLizenzSoftware.setText("Ja");
+ }
+ else
+ {
+ labelLizenzSoftware.setText("Nein");
+ }
+ if(res.get("internet").equals("1")){
+ labelInternet.setText("Ja");
+ }
+ else
+ {
+ labelInternet.setText("Nein");
+ }
+ labelRam.setText(res.get("ram"));
+ labelCPU.setText(res.get("cpu"));
+ labelID.setText(res.get("id"));
+ labelVersion.setText(res.get("version"));
+ textAreadesc.setText(res.get("desc"));
+ }
}
diff --git a/Dozentenmodul/src/main/java/gui/lecture/DeleteLecture_GUI.java b/Dozentenmodul/src/main/java/gui/lecture/DeleteLecture_GUI.java
index c638e440..ffadde1c 100644
--- a/Dozentenmodul/src/main/java/gui/lecture/DeleteLecture_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/lecture/DeleteLecture_GUI.java
@@ -17,8 +17,11 @@ import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.net.URI;
import java.net.URISyntaxException;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
import java.util.Iterator;
import java.util.List;
+import java.util.Map;
import javax.swing.JButton;
import javax.swing.JFrame;
@@ -33,15 +36,19 @@ import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.JTabbedPane;
import javax.swing.JTable;
+import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.JTextPane;
import javax.swing.RowFilter;
+import javax.swing.ScrollPaneConstants;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;
@@ -63,13 +70,19 @@ public class DeleteLecture_GUI extends JFrame {
String[] result;
JRadioButton rdbtnInternetJa;
JRadioButton rdbtnInternetNein;
+ JLabel labelAktiv;
+ JLabel labelstartdate;
+ JLabel labelenddate;
+ JLabel labelimageversion;
+ JTextArea labelName;
+ JTextArea labelimage;
+ JTextArea labeldesc;
+ JLabel labelVerantwortlicher;
JTable tableAllLectures;
JTable tablemyLectures;
- JTable tableCoopImages;
- JTable tablePublicVorlagen;
- JTable tablePublicImages;
private JTextField textFieldName;
JTabbedPane tabbedPane;
+ boolean activeSearch=false;
String[] titles = { "Veranstaltungsname", "Beschreibung",
"G\u00fcltigkeitsdatum", "Aktiv", "Letzte Benutzung",
"Verantwortlicher", "Image", "Schlagwort", "ID" };
@@ -82,6 +95,7 @@ public class DeleteLecture_GUI extends JFrame {
final TableRowSorter<TableModel> rowSorterMyLectures = new TableRowSorter<TableModel>(
modelMyLectures);
private JButton button;
+ private JTextField textField;
/**
@@ -95,6 +109,63 @@ public class DeleteLecture_GUI extends JFrame {
con.closeThriftConnection();
System.exit(0);
}
+ @Override
+ public void windowOpened(WindowEvent arg0) {
+ textFieldName.requestFocusInWindow();
+ try {
+ initTableModel(modelMyLectures);
+ initTableModel(modelAll);
+
+ } catch (ParseException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ // auszublendende Angaben
+ // 1=Beschreibung
+ // 2=G\u00fcltigkeitsdatum
+ // 3=Aktiv
+ // 6=Image
+ // 7=Schlagwort
+ // 8=ID
+ tablemyLectures.getColumnModel().getColumn(1).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(1).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(1).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(2).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(2).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(2).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(3).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(3).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(3).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(6).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(6).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(6).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(7).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(7).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(7).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(8).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(8).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(8).setMaxWidth(0);
+
+ tableAllLectures.getColumnModel().getColumn(1).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(1).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(1).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(2).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(2).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(2).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(3).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(3).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(3).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(6).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(6).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(6).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(7).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(7).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(7).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(8).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(8).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(8).setMaxWidth(0);
+ }
});
// Verhindert das Vergroessern Des Fensters
setResizable(false);
@@ -108,18 +179,17 @@ public class DeleteLecture_GUI extends JFrame {
e.printStackTrace();
}
// Setzt den Fenstertitel
- setTitle("bwLehrpool Suite *Prototyp* - Veranstaltung l\u00F6schen");
+ setTitle("bwLehrpool Suite - Veranstaltung l\u00F6schen");
// Zentriert das Fenster in die Bildmitte
- setBounds(0, 0, 603, 722);
+ setBounds(0, 0, 842, 722);
GuiOrganizer.centerGUI(this);
- final DefaultTableModel model = new DefaultTableModel(titles, 0);
getContentPane().setLayout(null);
{
JPanel panel = new JPanel();
panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 11, 577, 57);
+ panel.setBounds(10, 11, 816, 57);
getContentPane().add(panel);
panel.setLayout(null);
{
@@ -138,7 +208,7 @@ public class DeleteLecture_GUI extends JFrame {
txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
panel.add(txtpnBitteWhlenSie);
}
- contentPanel.setBounds(10, 85, 577, 531);
+ contentPanel.setBounds(10, 85, 570, 518);
contentPanel.setBackground(SystemColor.menu);
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
getContentPane().add(contentPanel);
@@ -148,12 +218,12 @@ public class DeleteLecture_GUI extends JFrame {
panel_1.setBackground(SystemColor.menu);
panel_1.setBorder(new TitledBorder(null, "Filterfunktionen",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 49, 557, 131);
+ panel_1.setBounds(10, 49, 557, 64);
contentPanel.add(panel_1);
panel_1.setLayout(null);
- JLabel lblNewLabel_2 = new JLabel("Anzeigename:");
- lblNewLabel_2.setBounds(10, 30, 250, 20);
+ JLabel lblNewLabel_2 = new JLabel("Name:");
+ lblNewLabel_2.setBounds(10, 30, 80, 20);
panel_1.add(lblNewLabel_2);
textFieldName = new JTextField();
@@ -163,38 +233,38 @@ public class DeleteLecture_GUI extends JFrame {
public void keyReleased(KeyEvent e) {
// Textfield eingabe auslesen
String stext = textFieldName.getText();
-
// Wenn Textfield nicht leer
if (stext != "") {
+ activeSearch=true;
// Filtere nach der Eingabe
rowSorterAll.setRowFilter(RowFilter.regexFilter(
textFieldName.getText(), 0));
rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
textFieldName.getText(), 0));
+ }else{
+ activeSearch=false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
+ username, 5));
+ rowSorterAll.setRowFilter(null);
}
}
});
- textFieldName.setBounds(270, 30, 250, 20);
+ textFieldName.setBounds(96, 30, 166, 20);
panel_1.add(textFieldName);
textFieldName.setColumns(10);
-
- JLabel lblErweiterteSuche = new JLabel(
- "<html><u>Erweiterte Suche*Folgt noch*</u></html>");
- lblErweiterteSuche.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
- // oeffnet das Fenster Extended GUI
-
- //ExtendedSearchForImages_GUI es = new ExtendedSearchForImages_GUI();
- //es.setVisible(true);
- }
- });
- lblErweiterteSuche.setForeground(Color.BLUE);
-
- lblErweiterteSuche.setBounds(336, 106, 184, 14);
- panel_1.add(lblErweiterteSuche);
+
+ JLabel label = new JLabel("Beschreibung:");
+ label.setBounds(291, 30, 80, 20);
+ panel_1.add(label);
+
+ textField = new JTextField();
+ textField.setColumns(10);
+ textField.setBounds(381, 30, 166, 20);
+ panel_1.add(textField);
JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
lblHauptmen.addMouseListener(new MouseAdapter() {
@@ -224,7 +294,7 @@ public class DeleteLecture_GUI extends JFrame {
label_2.setBounds(152, 11, 13, 14);
contentPanel.add(label_2);
- JLabel lblNewLabel_1 = new JLabel("Veranstaltungsauswahl");
+ JLabel lblNewLabel_1 = new JLabel("Veranstaltung l\u00F6schen");
lblNewLabel_1.setBounds(166, 11, 128, 14);
contentPanel.add(lblNewLabel_1);
@@ -238,28 +308,73 @@ public class DeleteLecture_GUI extends JFrame {
rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
username, 5));
} else if (tabbedPane.getSelectedIndex() == 1) {
-
+ rowSorterAll.setRowFilter(null);
}
}
});
- tabbedPane.setBounds(10, 197, 557, 300);
+ tabbedPane.setBounds(10, 123, 557, 397);
contentPanel.add(tabbedPane);
- initTableModel(modelMyLectures);
+
JScrollPane scrollPaneAllImages = new JScrollPane();
tableAllLectures = new JTable();
+ tableAllLectures.getSelectionModel().addListSelectionListener( new ListSelectionListener()
+ {
+ public void valueChanged(ListSelectionEvent e)
+ {
+ String imageid = modelAll
+ .getValueAt(
+ tableAllLectures
+ .convertRowIndexToModel(tableAllLectures
+ .getSelectedRow()), 8)
+ .toString();
+ //System.out.println(imageid);
+
+ try {
+ writeLectureData(imageid);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ } catch (ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
+ });
tableAllLectures.setModel(modelAll);
tableAllLectures.getColumnModel().getColumn(1).sizeWidthToFit();
tableAllLectures.getColumnModel().getColumn(2).sizeWidthToFit();
tableAllLectures.getColumnModel().getColumn(3).sizeWidthToFit();
tableAllLectures.getColumnModel().getColumn(4).sizeWidthToFit();
tableAllLectures.getColumnModel().getColumn(5).sizeWidthToFit();
- initTableModel(modelAll);
-
+ tableAllLectures.setRowSorter(rowSorterAll);
JScrollPane scrollPaneMyImage = new JScrollPane();
tablemyLectures = new JTable();
+ tablemyLectures.getSelectionModel().addListSelectionListener( new ListSelectionListener()
+ {
+ public void valueChanged(ListSelectionEvent e)
+ {
+ String imageid = modelMyLectures
+ .getValueAt(
+ tablemyLectures
+ .convertRowIndexToModel(tablemyLectures
+ .getSelectedRow()), 8)
+ .toString();
+ //System.out.println(imageid);
+
+ try {
+ writeLectureData(imageid);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ } catch (ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
+ });
tablemyLectures.setModel(modelMyLectures);
tablemyLectures.getColumnModel().getColumn(1).sizeWidthToFit();
@@ -272,103 +387,13 @@ public class DeleteLecture_GUI extends JFrame {
scrollPaneMyImage.setViewportView(tablemyLectures);
tabbedPane.addTab("Meine Veranstaltungen", null, scrollPaneMyImage,
null);
- tableAllLectures.setRowSorter(rowSorterAll);
+
scrollPaneAllImages.setViewportView(tableAllLectures);
tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
-
- JScrollPane scrollPaneCoopImages = new JScrollPane();
- tableCoopImages = new JTable();
- tableCoopImages.setModel(model);
- tableCoopImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPaneCoopImages.setViewportView(tableCoopImages);
- tabbedPane.addTab("Kooperative Veranstaltungen", null,
- scrollPaneCoopImages, null);
- tabbedPane.setEnabledAt(2, false);
-
- JScrollPane scrollPanePublicImages = new JScrollPane();
- tablePublicImages = new JTable();
- tablePublicImages.setModel(model);
- tablePublicImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicImages.setViewportView(tablePublicImages);
- tabbedPane.addTab("\u00D6ffentliche Images", null,
- scrollPanePublicImages, null);
- tabbedPane.setEnabledAt(3, false);
-
- JScrollPane scrollPanePublicVorlagen = new JScrollPane();
- tablePublicVorlagen = new JTable();
- tablePublicVorlagen.setModel(model);
- tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
- tabbedPane.addTab("\u00D6ffentliche Vorlagen", null,
- scrollPanePublicVorlagen, null);
- tabbedPane.setEnabledAt(4, false);
-
- button = new JButton("L\u00F6schen");
- button.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- String lectureID="";
- int eingabe;
-
- //check if a row is selected
- if (tablemyLectures.getSelectedRowCount() !=0){
- //a row is selected
- //ask for confirmation
- eingabe = JOptionPane.showConfirmDialog(null,
- "Wollen Sie diese Daten l\u00f6schen?", "L\u00f6schen?",
- JOptionPane.YES_NO_OPTION);
-
- if (eingabe == JOptionPane.YES_OPTION) {
- //user has confirmed deletion, now get the ID of the selected lecture
- lectureID = modelMyLectures.getValueAt(tablemyLectures.convertColumnIndexToModel(tablemyLectures.getSelectedRow()), 8).toString();
- System.out.println("L\u00f6sche Lecture "+lectureID);
- try {
- if(client.deleteLecture(lectureID, person.verantwortlicher.getHochschule(),person.verantwortlicher.getUsername())){
- System.out.println("L\u00f6schen erfolgreich");
- //delete successful
-
- DeleteLecture_GUI dl = new DeleteLecture_GUI();
- dl.setVisible(true);
- dispose();
- } else {
- //delete not successful
- JOptionPane
- .showMessageDialog(
- null,
- "L\u00f6schen aus Datenbank fehlgeschlagen.",
- "Fehler",
- JOptionPane.INFORMATION_MESSAGE);
- }
- } catch (TException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }//end delete
- }//end ask for confirmation
-
- }//end check if a row is selected
-
- }
- });
- button.setBounds(459, 508, 118, 23);
- contentPanel.add(button);
{
JPanel buttonPane = new JPanel();
- buttonPane.setBounds(0, 640, 597, 33);
+ buttonPane.setBounds(0, 640, 826, 33);
buttonPane.setBackground(SystemColor.menu);
buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
getContentPane().add(buttonPane);
@@ -390,12 +415,195 @@ public class DeleteLecture_GUI extends JFrame {
}
JSeparator separator = new JSeparator();
- separator.setBounds(0, 78, 597, 2);
+ separator.setBounds(0, 79, 836, 1);
getContentPane().add(separator);
JSeparator separator_1 = new JSeparator();
- separator_1.setBounds(0, 627, 597, 2);
+ separator_1.setBounds(0, 628, 836, 1);
getContentPane().add(separator_1);
+
+ JPanel panel = new JPanel();
+ panel.setLayout(null);
+ panel.setBorder(new TitledBorder(null, "Detailinformationen",
+
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(591, 85, 235, 518);
+ getContentPane().add(panel);
+
+ JLabel lblNewLabel_3 = new JLabel("Name:");
+ lblNewLabel_3.setBounds(10, 27, 104, 14);
+ panel.add(lblNewLabel_3);
+
+ JLabel lblAktiv = new JLabel("Aktiv:");
+ lblAktiv.setBounds(10, 98, 104, 14);
+ panel.add(lblAktiv);
+
+ labelAktiv = new JLabel("");
+ labelAktiv.setBounds(10, 114, 218, 14);
+ panel.add(labelAktiv);
+
+ labelstartdate = new JLabel("");
+ labelstartdate.setBounds(10, 147, 218, 14);
+ panel.add(labelstartdate);
+
+ JLabel lblStartdatum = new JLabel("Startdatum:");
+ lblStartdatum.setBounds(10, 129, 104, 14);
+ panel.add(lblStartdatum);
+
+ labelenddate = new JLabel("");
+ labelenddate.setBounds(10, 175, 218, 14);
+ panel.add(labelenddate);
+
+ JLabel lblEnddatum = new JLabel("Enddatum:");
+ lblEnddatum.setBounds(10, 161, 104, 14);
+ panel.add(lblEnddatum);
+
+ JLabel lblBeschreibung = new JLabel("Beschreibung:");
+ lblBeschreibung.setBounds(10, 189, 104, 14);
+ panel.add(lblBeschreibung);
+
+ JLabel lblImage = new JLabel("Image:");
+ lblImage.setBounds(10, 293, 104, 14);
+ panel.add(lblImage);
+
+ labelVerantwortlicher = new JLabel("");
+ labelVerantwortlicher.setBounds(10, 426, 218, 14);
+ panel.add(labelVerantwortlicher);
+
+ JLabel lblVerantwortlicher = new JLabel("Verantwortlicher:");
+ lblVerantwortlicher.setBounds(10, 411, 104, 14);
+ panel.add(lblVerantwortlicher);
+
+ JLabel lblImageversion = new JLabel("Imageversion:");
+ lblImageversion.setBounds(10, 381, 104, 14);
+ panel.add(lblImageversion);
+
+ labelimageversion = new JLabel("");
+ labelimageversion.setBounds(10, 399, 218, 14);
+ panel.add(labelimageversion);
+
+
+ labeldesc = new JTextArea();
+ labeldesc.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ labeldesc.setEditable(false);
+ labeldesc.setLineWrap(true);
+ labeldesc.setBackground(SystemColor.menu);
+ labeldesc.setBounds(124, 127, 104, 110);
+ JScrollPane scrollPane = new JScrollPane(labeldesc);
+ scrollPane.setBounds(10, 209, 218, 81);
+ panel.add(scrollPane);
+ //panel.add(labeldesc);
+
+ labelimage = new JTextArea();
+ labelimage.setLineWrap(true);
+ labelimage.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ labelimage.setEditable(false);
+ labelimage.setBackground(SystemColor.menu);
+ labelimage.setBounds(124, 248, 101, 81);
+ JScrollPane scrollPaneImage = new JScrollPane(labelimage);
+ scrollPaneImage.setBounds(10, 309, 215, 69);
+ panel.add(scrollPaneImage);
+
+ labelName = new JTextArea();
+ labelName.setEditable(false);
+ labelName.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ labelName.setBackground(SystemColor.menu);
+ labelName.setBounds(124, 22, 101, 55);
+ JScrollPane scrollPaneName = new JScrollPane(labelName);
+ scrollPaneName.setBounds(10, 40, 218, 55);
+ panel.add(scrollPaneName);
+
+ button = new JButton("L\u00F6schen");
+ button.setBounds(469, 606, 118, 23);
+ getContentPane().add(button);
+ button.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ String lectureID="";
+ int eingabe;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ //check if a row is selected
+ if (tablemyLectures.getSelectedRowCount() !=0){
+ //a row is selected
+ //ask for confirmation
+ eingabe = JOptionPane.showConfirmDialog(null,
+ "Wollen Sie diese Daten l\u00f6schen?", "L\u00f6schen?",
+ JOptionPane.YES_NO_OPTION);
+
+ if (eingabe == JOptionPane.YES_OPTION) {
+ //user has confirmed deletion, now get the ID of the selected lecture
+ lectureID = modelMyLectures.getValueAt(tablemyLectures.convertColumnIndexToModel(tablemyLectures.getSelectedRow()), 8).toString();
+ System.out.println("L\u00f6sche Lecture "+lectureID);
+ try {
+ if(client.deleteLecture(lectureID, person.verantwortlicher.getHochschule(),person.verantwortlicher.getUsername())){
+ System.out.println("L\u00f6schen erfolgreich");
+ //delete successful
+
+ DeleteLecture_GUI dl = new DeleteLecture_GUI();
+ dl.setVisible(true);
+ dispose();
+ } else {
+ //delete not successful
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "L\u00f6schen aus Datenbank fehlgeschlagen.",
+ "Fehler",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }//end delete
+ }//end ask for confirmation
+
+ }//end check if a row is selected
+ else if (tableAllLectures.getSelectedRowCount() !=0 && tableAllLectures.getValueAt(tableAllLectures.getSelectedRow(), 5).toString().equals(username)){
+ //a row is selected
+ //ask for confirmation
+ eingabe = JOptionPane.showConfirmDialog(null,
+ "Wollen Sie diese Daten l\u00f6schen?", "L\u00f6schen?",
+ JOptionPane.YES_NO_OPTION);
+
+ if (eingabe == JOptionPane.YES_OPTION) {
+ //user has confirmed deletion, now get the ID of the selected lecture
+ lectureID = tableAllLectures.getValueAt(tableAllLectures.convertColumnIndexToModel(tableAllLectures.getSelectedRow()), 8).toString();
+ System.out.println("L\u00f6sche Lecture "+lectureID);
+ try {
+ if(client.deleteLecture(lectureID, person.verantwortlicher.getHochschule(),person.verantwortlicher.getUsername())){
+ System.out.println("L\u00f6schen erfolgreich");
+ //delete successful
+
+ DeleteLecture_GUI dl = new DeleteLecture_GUI();
+ dl.setVisible(true);
+ dispose();
+ } else {
+ //delete not successful
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "L\u00f6schen aus Datenbank fehlgeschlagen.",
+ "Fehler",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }//end delete
+ }//end ask for confirmation
+
+ } else { //end check if a row is selected
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Bitte w\u00e4hlen Sie ein eigenes Image aus.",
+ "Message",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+
+ }
+ });
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
@@ -459,13 +667,14 @@ public class DeleteLecture_GUI extends JFrame {
}
// Initiale Beffuelung eines Table models
- public DefaultTableModel initTableModel(DefaultTableModel model) {
+ public DefaultTableModel initTableModel(DefaultTableModel model) throws ParseException {
List<server.Lecture> lectures;
try {
// Hole eine Liste der Images
lectures = client.getLectureList();
Iterator<server.Lecture> i = lectures.iterator();
-
+ SimpleDateFormat in=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat out=new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
int x = 0;
while (i.hasNext()) {
@@ -473,11 +682,11 @@ public class DeleteLecture_GUI extends JFrame {
Object[] obj = {
lectures.get(x).lecturename,
lectures.get(x).desc,
- lectures.get(x).starttime + " "
- + lectures.get(x).endtime,
- lectures.get(x).isActive, lectures.get(x).lastused,
- lectures.get(x).username, " ",
- lectures.get(x).imagename, lectures.get(x).id };
+ out.format(in.parse(lectures.get(x).starttime)) + " "
+ + out.format(in.parse(lectures.get(x).endtime)),
+ lectures.get(x).isActive, out.format(in.parse(lectures.get(x).lastused)),
+ lectures.get(x).username,
+ lectures.get(x).imagename," " ,lectures.get(x).id };
// Fuege diese Objekte der Tabelle hinzu
model.addRow(obj);
x++;
@@ -492,4 +701,20 @@ public class DeleteLecture_GUI extends JFrame {
}
return model;
}
+ public void writeLectureData(String id) throws TException, ParseException{
+
+ SimpleDateFormat in=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat out=new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
+ Map<String,String> res=client.getLectureData(id);
+ labelName.setText(res.get("name"));
+ labelAktiv.setText(res.get("isActive"));
+ labeldesc.setText(res.get("desc"));
+ labelVerantwortlicher.setText(res.get("owner"));
+ labelstartdate.setText(out.format(in.parse(res.get("startTime"))));
+ labelenddate.setText(out.format(in.parse(res.get("endTime"))));
+ labelimage.setText(res.get("imagepath").substring(res.get("imagepath").indexOf("/")+1));
+ labelimageversion.setText(res.get("imageversion"));
+
+
+}
}
diff --git a/Dozentenmodul/src/main/java/gui/lecture/EditLectureAllgemein_GUI.java b/Dozentenmodul/src/main/java/gui/lecture/EditLectureAllgemein_GUI.java
index b72efce9..457b67db 100644
--- a/Dozentenmodul/src/main/java/gui/lecture/EditLectureAllgemein_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/lecture/EditLectureAllgemein_GUI.java
@@ -1,6 +1,5 @@
package gui.lecture;
-
import gui.intro.About_GUI;
import gui.intro.MainMenue_GUI;
@@ -17,6 +16,8 @@ import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.net.URI;
import java.net.URISyntaxException;
+import java.util.Calendar;
+import java.util.Date;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
@@ -25,6 +26,7 @@ import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JSeparator;
@@ -44,7 +46,8 @@ import util.GuiOrganizer;
import util.OpenLinks;
import com.toedter.calendar.JDateChooser;
-
+import java.beans.PropertyChangeListener;
+import java.beans.PropertyChangeEvent;
@SuppressWarnings("serial")
public class EditLectureAllgemein_GUI extends JFrame {
@@ -61,8 +64,18 @@ public class EditLectureAllgemein_GUI extends JFrame {
JDateChooser dateChooserend;
JDateChooser dateChooserstart;
JRadioButton radioButtonno;
+ Date startDate = new Date();
+ Date endDate;
private final ButtonGroup buttonGroup = new ButtonGroup();
-
+ private boolean descriptionLengthOK = false; // description may not be
+ // longer than
+ // MAX_DESCRIPTION_LENGTH
+ private final int MAX_DESCRIPTION_LENGTH = 254;
+
+ int maxLifeTime = 180; // Anzahl Tage, die eine Veranstaltung in der Zukunft
+ // aktiv sein darf
+ boolean isDateOrderCorrect, isDateMaxLifeTimeCorrect,
+ isAllInformationReady = false;
/**
* Create the dialog.
@@ -75,7 +88,7 @@ public class EditLectureAllgemein_GUI extends JFrame {
}
});
setResizable(false);
-
+
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException
@@ -83,7 +96,8 @@ public class EditLectureAllgemein_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
}
- setTitle("bwLehrpool Suite *Prototyp* - Veranstaltung bearbeiten");;
+ setTitle("bwLehrpool Suite - Veranstaltung bearbeiten");
+ ;
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -100,11 +114,12 @@ public class EditLectureAllgemein_GUI extends JFrame {
panel.add(lblNewLabel);
lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
}
-
+
JTextPane txtpnBitteWhlenSie = new JTextPane();
txtpnBitteWhlenSie.setEditable(false);
txtpnBitteWhlenSie.setBackground(SystemColor.menu);
- txtpnBitteWhlenSie.setText("Geben Sie hier bitte einen sprechenden Imagename sowie Ihre Kontaktdaten an");
+ txtpnBitteWhlenSie
+ .setText("Geben Sie hier bitte einen sprechenden Imagename sowie Ihre Kontaktdaten an");
txtpnBitteWhlenSie.setBounds(10, 36, 509, 21);
panel.add(txtpnBitteWhlenSie);
}
@@ -113,19 +128,20 @@ public class EditLectureAllgemein_GUI extends JFrame {
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
getContentPane().add(contentPanel);
contentPanel.setLayout(null);
-
+
JPanel panel_1 = new JPanel();
panel_1.setBackground(SystemColor.menu);
- panel_1.setBorder(new TitledBorder(null, "Informationen zum Besitzer", TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_1.setBorder(new TitledBorder(null, "Informationen zum Besitzer",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel_1.setBounds(10, 331, 557, 162);
contentPanel.add(panel_1);
panel_1.setLayout(null);
-
+
JLabel label = new JLabel("Vorname: *");
label.setBackground(SystemColor.menu);
label.setBounds(10, 33, 125, 20);
panel_1.add(label);
-
+
Vorname = new JTextField();
Vorname.setEditable(false);
Vorname.setEnabled(false);
@@ -134,12 +150,12 @@ public class EditLectureAllgemein_GUI extends JFrame {
Vorname.setColumns(10);
Vorname.setBounds(145, 33, 350, 20);
panel_1.add(Vorname);
-
+
JLabel label_7 = new JLabel("Nachname: *");
label_7.setBackground(SystemColor.menu);
label_7.setBounds(10, 64, 125, 20);
panel_1.add(label_7);
-
+
Nachname = new JTextField();
Nachname.setEnabled(false);
Nachname.setEditable(false);
@@ -148,12 +164,12 @@ public class EditLectureAllgemein_GUI extends JFrame {
Nachname.setColumns(10);
Nachname.setBounds(145, 64, 350, 20);
panel_1.add(Nachname);
-
+
JLabel label_8 = new JLabel("Hochschule: *");
label_8.setBackground(SystemColor.menu);
label_8.setBounds(10, 95, 125, 20);
panel_1.add(label_8);
-
+
Hochschule = new JTextField();
Hochschule.setEnabled(false);
Hochschule.setEditable(false);
@@ -162,12 +178,12 @@ public class EditLectureAllgemein_GUI extends JFrame {
Hochschule.setColumns(10);
Hochschule.setBounds(145, 95, 350, 20);
panel_1.add(Hochschule);
-
+
JLabel label_9 = new JLabel("E-Mail: *");
label_9.setBackground(SystemColor.menu);
label_9.setBounds(10, 126, 125, 20);
panel_1.add(label_9);
-
+
EMail = new JTextField();
EMail.setEnabled(false);
EMail.setEditable(false);
@@ -176,62 +192,63 @@ public class EditLectureAllgemein_GUI extends JFrame {
EMail.setColumns(10);
EMail.setBounds(145, 126, 350, 20);
panel_1.add(EMail);
-
+
JPanel panel = new JPanel();
panel.setBounds(10, 402, 577, 33);
contentPanel.add(panel);
panel.setLayout(null);
panel.setBorder(new EmptyBorder(5, 5, 5, 5));
panel.setBackground(SystemColor.menu);
-
+
JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
lblHauptmen.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
-
+
EditLectureAllgemein_GUI.this.setVisible(false);
- MainMenue_GUI main=new MainMenue_GUI();
+ MainMenue_GUI main = new MainMenue_GUI();
main.setVisible(true);
}
});
lblHauptmen.setForeground(Color.BLUE);
lblHauptmen.setBounds(10, 11, 61, 14);
contentPanel.add(lblHauptmen);
-
+
JLabel label_1 = new JLabel(">");
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
-
- JLabel lblVlimage = new JLabel("VL-Image");
+
+ JLabel lblVlimage = new JLabel("Veranstaltung");
lblVlimage.setForeground(Color.BLUE);
- lblVlimage.setBounds(81, 11, 45, 14);
+ lblVlimage.setBounds(81, 11, 84, 14);
contentPanel.add(lblVlimage);
-
+
JLabel label_2 = new JLabel(">");
- label_2.setBounds(133, 11, 13, 14);
+ label_2.setBounds(175, 11, 13, 14);
contentPanel.add(label_2);
-
- JLabel lblNewLabel_1 = new JLabel("Neu");
- lblNewLabel_1.setBounds(146, 11, 46, 14);
+
+ JLabel lblNewLabel_1 = new JLabel("Bearbeiten");
+ lblNewLabel_1.setBounds(188, 11, 72, 14);
contentPanel.add(lblNewLabel_1);
-
+
JPanel panel_2 = new JPanel();
panel_2.setLayout(null);
- panel_2.setBorder(new TitledBorder(null, "Veranstaltungsdaten", TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_2.setBorder(new TitledBorder(null, "Veranstaltungsdaten",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel_2.setBackground(SystemColor.menu);
panel_2.setBounds(10, 36, 557, 284);
contentPanel.add(panel_2);
-
+
JLabel label_3 = new JLabel("Laborname (Anzeigename): *");
label_3.setBounds(10, 25, 180, 14);
panel_2.add(label_3);
-
+
textFieldLaborname = new JTextField();
textFieldLaborname.setText(Lecture.lecture.getName());
textFieldLaborname.setColumns(10);
textFieldLaborname.setBounds(200, 22, 347, 20);
panel_2.add(textFieldLaborname);
-
+
JTextArea textArea = new JTextArea();
textArea.setEditable(false);
textArea.setWrapStyleWord(true);
@@ -241,11 +258,11 @@ public class EditLectureAllgemein_GUI extends JFrame {
textArea.setBackground(SystemColor.menu);
textArea.setBounds(10, 49, 537, 49);
panel_2.add(textArea);
-
+
JLabel label_4 = new JLabel("Beschreibung: *");
label_4.setBounds(10, 111, 180, 14);
panel_2.add(label_4);
-
+
ScrollPane scrollPane = new ScrollPane();
scrollPane.setBounds(200, 104, 347, 78);
panel_2.add(scrollPane);
@@ -256,56 +273,92 @@ public class EditLectureAllgemein_GUI extends JFrame {
scrollPane.add(description);
description.setBounds(0, 0, 4, 22);
scrollPane.add(description);
-
+
dateChooserend = new JDateChooser();
- dateChooserend.setDateFormatString("dd-MM-yyyy hh:mm:ss");
+ dateChooserend.setDateFormatString("dd-MM-yyyy HH:mm:ss");
dateChooserend.setDate(Lecture.lecture.getEnddate());
- dateChooserend.setBounds(385, 188, 100, 20);
+ dateChooserend.setBounds(404, 188, 143, 20);
panel_2.add(dateChooserend);
-
+
JLabel label_5 = new JLabel("bis");
- label_5.setBounds(351, 188, 24, 20);
+ label_5.setBounds(378, 188, 21, 20);
panel_2.add(label_5);
-
+
dateChooserstart = new JDateChooser();
- dateChooserstart.setDateFormatString("yyyy-MM-dd hh:mm:ss");
+ dateChooserstart
+ .addPropertyChangeListener(new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent arg0) {
+ endDate = addDays(dateChooserstart.getDate(),
+ maxLifeTime); // Datum darf weiter als 6
+ // Monate in der Zukunft
+ // liegen
+ }
+ });
+
+ // initialize
+ if (Lecture.lecture.getStartdate() == null) {
+ // is not defined yet
+ dateChooserstart.setDate(startDate);
+ } else {
+ // already defined from last visit on this page
+ dateChooserstart.setDate(Lecture.lecture.getStartdate());
+ }
+
+ if (Lecture.lecture.getEnddate() == null) {
+ // is not defined yet
+ dateChooserend.setDate(endDate);
+ } else {
+ // already defined from last visit on this page
+ dateChooserend.setDate(Lecture.lecture.getEnddate());
+ }
+
+ dateChooserstart.setDateFormatString("yyyy-MM-dd HH:mm:ss");
dateChooserstart.setDate(Lecture.lecture.getStartdate());
- dateChooserstart.setBounds(240, 188, 101, 20);
+ dateChooserstart.setBounds(226, 188, 143, 20);
panel_2.add(dateChooserstart);
-
+
JLabel label_6 = new JLabel("von:");
label_6.setBounds(200, 188, 30, 20);
panel_2.add(label_6);
-
+
JLabel label_10 = new JLabel("G\u00FCltigkeitsdatum: *");
label_10.setBounds(10, 188, 250, 14);
panel_2.add(label_10);
-
+
JLabel label_11 = new JLabel("Aktiv:");
label_11.setBounds(10, 229, 250, 14);
panel_2.add(label_11);
-
+
radioButtonyes = new JRadioButton("Ja");
buttonGroup.add(radioButtonyes);
- if(Lecture.lecture.isActive()==true)
- {
- radioButtonyes.setSelected(true);
- }else
- {
- radioButtonno.setSelected(true);
- }
-
radioButtonyes.setBounds(240, 225, 109, 23);
panel_2.add(radioButtonyes);
-
radioButtonno = new JRadioButton("Nein");
buttonGroup.add(radioButtonno);
radioButtonno.setBounds(385, 225, 109, 23);
panel_2.add(radioButtonno);
-
+
+ radioButtonyes.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ radioButtonyes.setSelected(true);
+ radioButtonno.setSelected(false);
+ }
+ });
+ radioButtonno.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ radioButtonno.setSelected(true);
+ radioButtonyes.setSelected(false);
+ }
+ });
+
JLabel label_12 = new JLabel("(Im VMChooser sichtbar)");
label_12.setBounds(10, 254, 250, 14);
panel_2.add(label_12);
+
+ JLabel lblmaxMonate = new JLabel("(max. 6 Monate)");
+ lblmaxMonate.setBounds(10, 208, 127, 14);
+ panel_2.add(lblmaxMonate);
+
{
JPanel buttonPane = new JPanel();
buttonPane.setBounds(0, 640, 597, 33);
@@ -316,22 +369,20 @@ public class EditLectureAllgemein_GUI extends JFrame {
JButton okButton = new JButton("Zur\u00FCck");
okButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- if(radioButtonyes.isSelected()==true)
- {
+
+ if (radioButtonyes.isSelected() == true) {
Lecture.lecture.setActive(true);
- }
- else
- {
+ } else {
Lecture.lecture.setActive(false);
}
-
+
Lecture.lecture.setName(textFieldLaborname.getText());
Lecture.lecture.setDesc(description.getText());
Lecture.lecture.setEnddate(dateChooserend.getDate());
Lecture.lecture.setStartdate(dateChooserstart.getDate());
Image.image.setImagename(textFieldLaborname.getText());
-
- MainMenue_GUI sr=new MainMenue_GUI();
+
+ MainMenue_GUI sr = new MainMenue_GUI();
sr.setVisible(true);
dispose();
}
@@ -343,71 +394,141 @@ public class EditLectureAllgemein_GUI extends JFrame {
{
JButton cancelButton = new JButton("Weiter");
cancelButton.addActionListener(new ActionListener() {
+ /*
+ * public void actionPerformed(ActionEvent e) {
+ * if(radioButtonyes.isSelected()==true) {
+ * Lecture.lecture.setActive(true); } else {
+ * Lecture.lecture.setActive(false); }
+ *
+ * Lecture.lecture.setName(textFieldLaborname.getText());
+ * Lecture.lecture.setNewName(textFieldLaborname.getText());
+ * Lecture.lecture.setDesc(description.getText());
+ * Lecture.lecture.setEnddate(dateChooserend.getDate());
+ * Lecture.lecture.setStartdate(dateChooserstart.getDate());
+ * Image.image.setImagename(textFieldLaborname.getText());
+ *
+ *
+ * PermissionEditLecture_GUI ev=new
+ * PermissionEditLecture_GUI(); ev.setVisible(true);
+ * dispose(); }
+ */
public void actionPerformed(ActionEvent e) {
- if(radioButtonyes.isSelected()==true)
- {
- Lecture.lecture.setActive(true);
+ // liegt das End-Datum vor dem Start-Datum?
+ if (dateChooserend.getDate().before(
+ dateChooserstart.getDate())) {
+ // datum ist falsch rum
+ isDateOrderCorrect = false;
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Das End-Datum liegt vor dem Start-Datum. Bitte \u00e4ndern.",
+ "Datum fehlerhaft",
+ JOptionPane.INFORMATION_MESSAGE);
+ } else {
+ // bereit
+ isDateOrderCorrect = true;
+ }
+ // liegt das eingegebene Datum nach dem erlaubten
+ // End-Datum?
+ if (dateChooserend.getDate().after(endDate)) {
+ // Datum zu weit weg
+ isDateMaxLifeTimeCorrect = false;
+ JOptionPane.showMessageDialog(null,
+ "Das End-Datum liegt zu weit in der Zukunft. Erlaubt ist maximal:\n"
+ + endDate, "Datum fehlerhaft",
+ JOptionPane.INFORMATION_MESSAGE);
+
+ dateChooserend.setDate(endDate); // setze Datum auf
+ // maximum
+ } else {
+ // bereit
+ isDateMaxLifeTimeCorrect = true;
+ }
+ // Pruefen ob alles eingegeben wurde
+ if (textFieldLaborname.getText().isEmpty() == true
+ || description.getText().isEmpty() == true) {
+ // mind 1 Textfeld ist leer
+ isAllInformationReady = false;
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Bitte geben Sie einen Veranstaltungsnamen und eine Beschreibung ein.",
+ "Datum fehlerhaft",
+ JOptionPane.INFORMATION_MESSAGE);
+ } else {
+ // Textfelder bereit
+ isAllInformationReady = true;
}
- else
- {
+
+ // welcher Radiobutton ist geklickt?
+ if (radioButtonyes.isSelected() == true) {
+ Lecture.lecture.setActive(true);
+ } else {
Lecture.lecture.setActive(false);
}
-
- Lecture.lecture.setName(textFieldLaborname.getText());
- Lecture.lecture.setNewName(textFieldLaborname.getText());
- Lecture.lecture.setDesc(description.getText());
- Lecture.lecture.setEnddate(dateChooserend.getDate());
- Lecture.lecture.setStartdate(dateChooserstart.getDate());
- Image.image.setImagename(textFieldLaborname.getText());
-
+ // Pruefe ob alle Eingaben korrekt sind, dann mache
+ // weiter
+ if (isAllInformationReady == true
+ && isDateMaxLifeTimeCorrect == true
+ && isDateOrderCorrect == true
+ && descriptionLenghtOK() == true) {
+ // everything is ok, proceed
+ Lecture.lecture.setName(textFieldLaborname
+ .getText());
+ Lecture.lecture.setDesc(description.getText());
+ Lecture.lecture.setEnddate(dateChooserend.getDate());
+ Lecture.lecture.setStartdate(dateChooserstart
+ .getDate());
+
+ Image.image.setImagename(textFieldLaborname
+ .getText());
+
+ PermissionCreateLecture_GUI ev = new PermissionCreateLecture_GUI();
+ ev.setVisible(true);
+ dispose();
+ }
- EditLectureLink_GUI ev=new EditLectureLink_GUI();
- ev.setVisible(true);
- dispose();
}
+
});
cancelButton.setActionCommand("Cancel");
buttonPane.add(cancelButton);
}
}
-
+
JSeparator separator = new JSeparator();
separator.setBounds(0, 78, 597, 2);
getContentPane().add(separator);
-
+
JSeparator separator_1 = new JSeparator();
separator_1.setBounds(0, 627, 597, 2);
getContentPane().add(separator_1);
-
+
JLabel lblPflichtfelder = new JLabel("* Pflichtfelder");
lblPflichtfelder.setBounds(32, 602, 136, 14);
getContentPane().add(lblPflichtfelder);
-
+
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
-
+
JMenu mnNewMenu = new JMenu("Suchen");
menuBar.add(mnNewMenu);
-
+
JMenuItem mntmVlSuche = new JMenuItem("VL Suche");
mnNewMenu.add(mntmVlSuche);
-
+
JMenu mnNewMenu_1 = new JMenu("Hilfe");
menuBar.add(mnNewMenu_1);
-
+
JMenuItem mntmFaq = new JMenuItem("FAQ");
mntmFaq.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
OpenLinks open = new OpenLinks();
-
URI windows;
try {
windows = new URI(Links.getFAQ());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
@@ -415,30 +536,24 @@ public class EditLectureAllgemein_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmFaq);
-
JMenuItem mntmOtrs = new JMenuItem("OTRS");
mntmOtrs.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
OpenLinks open = new OpenLinks();
-
URI windows;
try {
windows = new URI(Links.getOTRS());
-
open.openWebpage(windows);
-
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
}
});
mnNewMenu_1.add(mntmOtrs);
-
+
JMenuItem mntmAbout = new JMenuItem("About");
mntmAbout.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
@@ -447,8 +562,33 @@ public class EditLectureAllgemein_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmAbout);
-
+
}
-
-} \ No newline at end of file
+ public Date addDays(Date date, int days) {
+ Calendar cal = Calendar.getInstance();
+ cal.setTime(date);
+ cal.add(Calendar.DATE, days); // minus number would decrement the days
+ return cal.getTime();
+ }// end addDays()
+
+ public boolean descriptionLenghtOK() {
+ descriptionLengthOK = false;
+
+ // max length is 254 chars
+ if (description.getText().length() >= MAX_DESCRIPTION_LENGTH) {
+ descriptionLengthOK = false;
+ JOptionPane.showMessageDialog(null,
+ "Die Beschreibung darf max 254 Zeichen enthalten. Aktuell enthält sie "
+ + description.getText().length() + ".",
+ "Beschreibung zu umfangreich",
+ JOptionPane.INFORMATION_MESSAGE);
+ } else {
+ descriptionLengthOK = true;
+
+ }
+
+ return descriptionLengthOK;
+ }// enddescriptionLenghtOK()
+
+}// end class \ No newline at end of file
diff --git a/Dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java b/Dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java
index f7b38b06..773a01b7 100644
--- a/Dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java
@@ -18,10 +18,12 @@ import java.awt.event.WindowEvent;
import java.net.URI;
import java.net.URISyntaxException;
import java.text.DateFormat;
+import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import java.util.Map;
import javax.swing.JButton;
import javax.swing.JComboBox;
@@ -37,13 +39,17 @@ import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.JTabbedPane;
import javax.swing.JTable;
+import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.JTextPane;
+import javax.swing.RowFilter;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
import javax.swing.table.DefaultTableModel;
+import javax.swing.table.TableModel;
+import javax.swing.table.TableRowSorter;
import models.Lecture;
import models.Links;
@@ -55,6 +61,10 @@ import server.Server.Client;
import thrift.ThriftConnection;
import util.GuiOrganizer;
import util.OpenLinks;
+import javax.swing.event.ChangeListener;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
@SuppressWarnings("serial")
public class EditLectureLink_GUI extends JFrame {
@@ -64,17 +74,52 @@ public class EditLectureLink_GUI extends JFrame {
JRadioButton rdbtnInternetJa;
JRadioButton rdbtnInternetNein;
JComboBox<String> comboBox;
+ JLabel labelName;
+ JLabel labelUpdate;
+ JLabel labelVerantwortlicher;
+ JLabel labelWeitereVerantwortliche;
+ JLabel labelVorlage;
+ JLabel labelLizenzSoftware;
+ JLabel labelInternet;
+ JLabel labelRam;
+ JLabel labelID;
+ JLabel labelVersion;
+ JTextArea textAreadesc;
+ JLabel labelCPU;
+ private JLabel labelOS;
JTable tableAllImages = new JTable();
JTable tablemyImages = new JTable();
JTable tableCoopImages = new JTable();
- JTable tablePublicImages = new JTable();
JTable tablePublicVorlagen = new JTable();
private JTextField textFieldName;
+ JTabbedPane tabbedPane;
+ boolean activeSearch=false;
String[] titles = { "Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung",
- "Verantwortlicher", "Letztes Update", "Schlagwort", "ID", "Version" };
+ "Verantwortlicher", "Letztes Update", "ID", "Version","Template" };
ThriftConnection con = new ThriftConnection();
Client client = models.Client.clientcon.getClient();
-
+ final DefaultTableModel modelAll = new DefaultTableModel(titles, 0){
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0){
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final DefaultTableModel modelPublicVorlagen = new DefaultTableModel(titles, 0){
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
+ modelAll);
+ final TableRowSorter<TableModel> rowSorterMyImages = new TableRowSorter<TableModel>(
+ modelMyImages);
+ final TableRowSorter<TableModel> rowSorterPublicVorlagen = new TableRowSorter<TableModel>(
+ modelPublicVorlagen);
+ private JTextField textField;
/**
* Create the dialog.
*/
@@ -85,6 +130,75 @@ public class EditLectureLink_GUI extends JFrame {
con.closeThriftConnection();
System.exit(0);
}
+ @Override
+ public void windowOpened(WindowEvent arg0) {
+ try {
+ initTableModel(modelAll);
+ initTableModel(modelMyImages);
+ initTableModel(modelPublicVorlagen);
+ } catch (TException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (ParseException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ // auszublendende Angaben
+ // 1=Lizenzpflichtig
+ // 3=Veranstaltung
+ // 6=ID
+ // 7=Version
+ // 8=Template
+ tablemyImages.getColumnModel().getColumn(1).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(1).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(1).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(3).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(8).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(6).setMaxWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setMinWidth(0);
+ tablemyImages.getColumnModel().getColumn(7).setMaxWidth(0);
+
+ tablePublicVorlagen.getColumnModel().getColumn(1).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(1).setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(1).setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3).setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(3).setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8).setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(8).setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6).setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(6).setMaxWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7).setWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7).setMinWidth(0);
+ tablePublicVorlagen.getColumnModel().getColumn(7).setMaxWidth(0);
+
+ tableAllImages.getColumnModel().getColumn(1).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(1).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(1).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(3).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(8).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(6).setMaxWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setMinWidth(0);
+ tableAllImages.getColumnModel().getColumn(7).setMaxWidth(0);
+ textFieldName.requestFocusInWindow();
+ }
});
setResizable(false);
@@ -95,12 +209,12 @@ public class EditLectureLink_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
}
- setTitle("bwLehrpool Suite *Prototyp* - Veranstaltung bearbeiten");
+ setTitle("bwLehrpool Suite - Veranstaltung bearbeiten");
- setBounds(0, 0, 603, 722);
+ setBounds(0, 0, 918, 722);
GuiOrganizer.centerGUI(this);
- final DefaultTableModel modelAll = new DefaultTableModel(titles, 0);
+
final DefaultTableModel model = new DefaultTableModel(titles, 0);
getContentPane().setLayout(null);
@@ -135,16 +249,16 @@ public class EditLectureLink_GUI extends JFrame {
panel_1.setBackground(SystemColor.menu);
panel_1.setBorder(new TitledBorder(null, "Filterfunktionen",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 49, 557, 131);
+ panel_1.setBounds(10, 49, 557, 91);
contentPanel.add(panel_1);
panel_1.setLayout(null);
- JLabel lblNewLabel_2 = new JLabel("Anzeigename:");
- lblNewLabel_2.setBounds(10, 30, 250, 20);
+ JLabel lblNewLabel_2 = new JLabel("Name:");
+ lblNewLabel_2.setBounds(10, 30, 80, 20);
panel_1.add(lblNewLabel_2);
JLabel lblInternetIstInnerhalb = new JLabel("Betriebssystem:");
- lblInternetIstInnerhalb.setBounds(10, 58, 250, 20);
+ lblInternetIstInnerhalb.setBounds(10, 58, 80, 20);
panel_1.add(lblInternetIstInnerhalb);
textFieldName = new JTextField();
@@ -152,43 +266,36 @@ public class EditLectureLink_GUI extends JFrame {
@Override
public void keyReleased(KeyEvent e) {
String stext = textFieldName.getText();
- modelAll.setRowCount(0);
- initTableModel(modelAll);
-
- if (stext != "")
- for (int i = 0; i < modelAll.getRowCount(); i++) {
-
- if (modelAll.getValueAt(i, 0).toString()
- .startsWith(stext)) {
-
- } else {
- modelAll.removeRow(i);
- }
- }
+ // Wenn Textfield nicht leer
+ if (stext != "") {
+ activeSearch=true;
+ // Filtere nach der Eingabe
+ rowSorterAll.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+
+ }else{
+ activeSearch=false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ rowSorterAll.setRowFilter(null);
+ }
}
});
- textFieldName.setBounds(270, 30, 250, 20);
+ textFieldName.setBounds(96, 30, 166, 20);
panel_1.add(textFieldName);
textFieldName.setColumns(10);
- JLabel lblErweiterteSuche = new JLabel(
- "<html><u>Erweiterte Suche *Folgt noch*</u></html>");
- lblErweiterteSuche.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
- // ExtendedSearchForImages_GUI es = new
- // ExtendedSearchForImages_GUI();
- // es.setVisible(true);
- }
- });
- lblErweiterteSuche.setForeground(Color.BLUE);
-
- lblErweiterteSuche.setBounds(317, 106, 203, 14);
- panel_1.add(lblErweiterteSuche);
-
comboBox = new JComboBox<String>();
try {
List<String> list = client.getAllOS();
@@ -202,24 +309,38 @@ public class EditLectureLink_GUI extends JFrame {
}
comboBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
- modelAll.setRowCount(0);
- initTableModel(modelAll);
- String selItem = comboBox.getSelectedItem().toString();
- if (selItem != "") {
- for (int i = 0; i < modelAll.getRowCount(); i++) {
-
- if (modelAll.getValueAt(i, 2).equals(selItem)) {
-
- } else {
- modelAll.removeRow(i);
- }
- }
-
+ // Prueft das die Auswahl nicht leer ist
+ if (comboBox.getSelectedItem().toString() != "") {
+ activeSearch=true;
+ rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox
+ .getSelectedItem().toString(), 2));
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ comboBox.getSelectedItem().toString(), 2));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ comboBox.getSelectedItem().toString(), 2));
+ }else{
+ activeSearch=false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
+ "true", 8));
+ rowSorterAll.setRowFilter(null);
}
}
});
- comboBox.setBounds(270, 58, 250, 20);
+ comboBox.setBounds(96, 58, 166, 20);
panel_1.add(comboBox);
+
+ JLabel label_3 = new JLabel("Beschreibung:");
+ label_3.setBounds(291, 30, 80, 20);
+ panel_1.add(label_3);
+
+ textField = new JTextField();
+ textField.setColumns(10);
+ textField.setBounds(381, 30, 166, 20);
+ panel_1.add(textField);
JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
lblHauptmen.addMouseListener(new MouseAdapter() {
@@ -252,34 +373,128 @@ public class EditLectureLink_GUI extends JFrame {
lblNewLabel_1.setBounds(164, 11, 113, 14);
contentPanel.add(lblNewLabel_1);
- JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP);
-
- tabbedPane.setBounds(10, 197, 557, 300);
- contentPanel.add(tabbedPane);
+ tabbedPane = new JTabbedPane(JTabbedPane.TOP);
+ tabbedPane.addChangeListener(new ChangeListener() {
+ public void stateChanged(ChangeEvent arg0) {
+ if (tabbedPane.getSelectedIndex() == 0 && activeSearch==false) {
+
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
+ username, 4));
+ }else if(tabbedPane.getSelectedIndex()==1 && activeSearch==false){
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter("true", 8));
+ } else if(tabbedPane.getSelectedIndex()==2 && activeSearch==false){
+ rowSorterAll.setRowFilter(null);
+ }
- JScrollPane scrollPaneMyImage = new JScrollPane();
+ }
+ });
- tablemyImages.setModel(model);
- tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tablemyImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tablemyImages.getColumnModel().getColumn(5).sizeWidthToFit();
+ tabbedPane.setBounds(10, 158, 557, 339);
+ contentPanel.add(tabbedPane);
JScrollPane scrollPaneAllImages = new JScrollPane();
+ tableAllImages.getSelectionModel().addListSelectionListener( new ListSelectionListener()
+ {
+ public void valueChanged(ListSelectionEvent e)
+ {
+
+ String imageid = modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ writeImageData(imageid, version);
+
+ }
+ });
tableAllImages.setModel(modelAll);
tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit();
tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit();
tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
+ tableAllImages.setRowSorter(rowSorterAll);
+ JScrollPane scrollPaneMyImage = new JScrollPane();
+ tablemyImages.getSelectionModel().addListSelectionListener( new ListSelectionListener()
+ {
+ public void valueChanged(ListSelectionEvent e)
+ {
+ String imageid = modelMyImages
+ .getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelMyImages
+ .getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ writeImageData(imageid, version);
+ }
+ });
+ tablemyImages.setModel(modelMyImages);
+ tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit();
+ tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit();
+ tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit();
+ tablemyImages.getColumnModel().getColumn(4).sizeWidthToFit();
+ tablemyImages.getColumnModel().getColumn(5).sizeWidthToFit();
+ tablemyImages.setRowSorter(rowSorterMyImages);
+ scrollPaneMyImage.setViewportView(tablemyImages);
+ tabbedPane.addTab("Meine Images", null, scrollPaneMyImage, null);
+
+ JScrollPane scrollPanePublicVorlagen = new JScrollPane();
+ scrollPanePublicVorlagen.setEnabled(false);
+ tablePublicVorlagen.getSelectionModel().addListSelectionListener( new ListSelectionListener()
+ {
+ public void valueChanged(ListSelectionEvent e)
+ {
+ String imageid = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 6)
+ .toString();
+ //System.out.println(imageid);
+ String version = modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 7)
+ .toString();
+ //System.out.println(version);
+ writeImageData(imageid, version);
+ }
+ });
+ tablePublicVorlagen.setModel(modelPublicVorlagen);
+ tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
+ tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
+ tablePublicVorlagen.setRowSorter(rowSorterPublicVorlagen);
+ scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
+ tabbedPane.addTab("Vorlagen", null,
+ scrollPanePublicVorlagen, null);
+
scrollPaneAllImages.setViewportView(tableAllImages);
tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
- scrollPaneMyImage.setViewportView(tablemyImages);
- tabbedPane.addTab("Meine Images", null, scrollPaneMyImage, null);
-
JScrollPane scrollPaneCoopImages = new JScrollPane();
tableCoopImages.setModel(model);
@@ -290,47 +505,19 @@ public class EditLectureLink_GUI extends JFrame {
tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit();
scrollPaneCoopImages.setViewportView(tableCoopImages);
- tabbedPane.addTab("Kooperative Images", null, scrollPaneCoopImages,
+ tabbedPane.addTab("bwLehrpool", null, scrollPaneCoopImages,
null);
- tabbedPane.setEnabledAt(2, false);
-
- JScrollPane scrollPanePublicImages = new JScrollPane();
-
- tablePublicImages.setModel(model);
- tablePublicImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicImages.setViewportView(tablePublicImages);
- tabbedPane.addTab("\u00D6ffentliche Images", null,
- scrollPanePublicImages, null);
tabbedPane.setEnabledAt(3, false);
- JScrollPane scrollPanePublicVorlagen = new JScrollPane();
-
- tablePublicVorlagen.setModel(model);
- tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
- tabbedPane.addTab("\u00D6ffentliche Vorlagen", null,
- scrollPanePublicVorlagen, null);
- tabbedPane.setEnabledAt(4, false);
-
JButton btnLinkLschen = new JButton("Link l\u00F6schen");
btnLinkLschen.setEnabled(false);
btnLinkLschen.setBounds(478, 508, 89, 23);
contentPanel.add(btnLinkLschen);
- initTableModel(modelAll);
+
{
JPanel buttonPane = new JPanel();
- buttonPane.setBounds(0, 640, 597, 33);
+ buttonPane.setBounds(0, 640, 902, 33);
buttonPane.setBackground(SystemColor.menu);
buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
getContentPane().add(buttonPane);
@@ -339,7 +526,7 @@ public class EditLectureLink_GUI extends JFrame {
okButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- EditLectureAllgemein_GUI el = new EditLectureAllgemein_GUI();
+ PermissionEditLecture_GUI el = new PermissionEditLecture_GUI();
el.setVisible(true);
dispose();
}
@@ -353,21 +540,16 @@ public class EditLectureLink_GUI extends JFrame {
"Veranstaltung \u00e4ndern und abschlie\u00DFen");
cancelButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
-
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
// check if a row is selected
- if ((tableAllImages.getSelectedRow() != -1)
- || (tablemyImages.getSelectedRow() != -1)
- || (tableCoopImages.getSelectedRow() != -1)
- || (tablePublicImages.getSelectedRow() != -1)
- || (tablePublicVorlagen.getSelectedRow() != -1)) {
+ if (tablemyImages.getSelectedRow() != -1){
// a row is selected, do operations
- String imagename = tableAllImages.getValueAt(
- tableAllImages.getSelectedRow(), 0)
+ String imagename = tablemyImages.getValueAt(
+ tablemyImages.getSelectedRow(), 0)
.toString();
-
try {
-
DateFormat formatter = new SimpleDateFormat(
"yyyy-MM-dd hh:mm:ss");
client.updateLecturedata(
@@ -382,7 +564,18 @@ public class EditLectureLink_GUI extends JFrame {
Lecture.lecture.getEnddate())
.toString(),
Lecture.lecture.isActive(),
- imagename,
+ modelMyImages
+ .getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 6).toString(),
+ modelMyImages
+ .getValueAt(
+ tablemyImages
+ .convertRowIndexToModel(tablemyImages
+ .getSelectedRow()), 7)
+ .toString(),
+ person.verantwortlicher.getUsername(),
person.verantwortlicher.getVorname(),
person.verantwortlicher.getName(),
person.verantwortlicher.getHochschule(),
@@ -390,32 +583,170 @@ public class EditLectureLink_GUI extends JFrame {
person.verantwortlicher.getTel(),
person.verantwortlicher.getFakultaet(),
Lecture.lecture.getid());
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Ihre Veranstaltung wurde erfolgreich ge�ndert. Sie kehren nun zum Hauptmen\u00fc zur\u00fcck.",
+ "Veranstaltung angelegt",
+ JOptionPane.INFORMATION_MESSAGE);
+ // zurueck zum Menue
+ MainMenue_GUI m = new MainMenue_GUI();
+ m.setVisible(true);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Beim Anlegen Ihrer Veranstaltung ist ein Fehler aufgetreten.",
+ "Error",
+ JOptionPane.ERROR_MESSAGE);
+ JOptionPane.showMessageDialog(null,
+ e1.getCause()+"\n"+e1.getStackTrace(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ }
+
+ dispose();
+ }else if (tablePublicVorlagen.getSelectedRow() != -1 &&tablePublicVorlagen.getValueAt(tablePublicVorlagen.getSelectedRow(), 4).toString().equals(username)){
+
+ // a row is selected, do operations
+ String imagename = tablePublicVorlagen.getValueAt(
+ tablePublicVorlagen.getSelectedRow(), 0)
+ .toString();
+ try {
+ DateFormat formatter = new SimpleDateFormat(
+ "yyyy-MM-dd hh:mm:ss");
+ client.updateLecturedata(
+ Lecture.lecture.getName(),
+ Lecture.lecture.getNewName(),
+ Lecture.lecture.getShortDesc(),
+ Lecture.lecture.getDesc(),
+ formatter.format(
+ Lecture.lecture.getStartdate())
+ .toString(),
+ formatter.format(
+ Lecture.lecture.getEnddate())
+ .toString(),
+ Lecture.lecture.isActive(),
+ modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 6).toString(),
+ modelPublicVorlagen
+ .getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 7).toString(),
+ person.verantwortlicher.getUsername(),
+ person.verantwortlicher.getVorname(),
+ person.verantwortlicher.getName(),
+ person.verantwortlicher.getHochschule(),
+ person.verantwortlicher.getEMail(),
+ person.verantwortlicher.getTel(),
+ person.verantwortlicher.getFakultaet(),
+ Lecture.lecture.getid());
JOptionPane
.showMessageDialog(
null,
- "Ihre Veranstaltung wurde erfolgreich angelegt. Sie kehren nun zum Hauptmen\u00fc zur\u00fcck.",
+ "Ihre Veranstaltung wurde erfolgreich ge�ndert. Sie kehren nun zum Hauptmen\u00fc zur\u00fcck.",
"Veranstaltung angelegt",
JOptionPane.INFORMATION_MESSAGE);
+ // zurueck zum Menue
+ MainMenue_GUI m = new MainMenue_GUI();
+ m.setVisible(true);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Beim Anlegen Ihrer Veranstaltung ist ein Fehler aufgetreten.",
+ "Error",
+ JOptionPane.ERROR_MESSAGE);
+ JOptionPane.showMessageDialog(null,
+ e1.getCause()+"\n"+e1.getStackTrace(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ }
+
+ dispose();
+
+ }else if (tableAllImages.getSelectedRow() != -1 &&tableAllImages.getValueAt(tableAllImages.getSelectedRow(), 4).toString().equals(username)){
+ // a row is selected, do operations
+ String imagename = tableAllImages.getValueAt(
+ tableAllImages.getSelectedRow(), 0)
+ .toString();
+ try {
+ DateFormat formatter = new SimpleDateFormat(
+ "yyyy-MM-dd hh:mm:ss");
+ client.updateLecturedata(
+ Lecture.lecture.getName(),
+ Lecture.lecture.getNewName(),
+ Lecture.lecture.getShortDesc(),
+ Lecture.lecture.getDesc(),
+ formatter.format(
+ Lecture.lecture.getStartdate())
+ .toString(),
+ formatter.format(
+ Lecture.lecture.getEnddate())
+ .toString(),
+ Lecture.lecture.isActive(),
+ modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 6)
+ .toString(),
+ modelAll
+ .getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 7)
+ .toString(),
+ person.verantwortlicher.getUsername(),
+ person.verantwortlicher.getVorname(),
+ person.verantwortlicher.getName(),
+ person.verantwortlicher.getHochschule(),
+ person.verantwortlicher.getEMail(),
+ person.verantwortlicher.getTel(),
+ person.verantwortlicher.getFakultaet(),
+ Lecture.lecture.getid());
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Ihre Veranstaltung wurde erfolgreich ge�ndert. Sie kehren nun zum Hauptmen\u00fc zur\u00fcck.",
+ "Veranstaltung angelegt",
+ JOptionPane.INFORMATION_MESSAGE);
+ // zurueck zum Menue
+ MainMenue_GUI m = new MainMenue_GUI();
+ m.setVisible(true);
} catch (TException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Beim Anlegen Ihrer Veranstaltung ist ein Fehler aufgetreten.",
+ "Error",
+ JOptionPane.ERROR_MESSAGE);
+ JOptionPane.showMessageDialog(null,
+ e1.getCause()+"\n"+e1.getStackTrace(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
}
+
+ dispose();
- } else {
+ }
+ else {
// nothing selected
JOptionPane.showMessageDialog(null,
"Bitte w\u00e4hlen Sie ein Image aus.",
"Image Auswahl",
JOptionPane.INFORMATION_MESSAGE);
-
}
- MainMenue_GUI m = new MainMenue_GUI();
- m.setVisible(true);
- dispose();
-
}
});
cancelButton.setActionCommand("Cancel");
@@ -424,22 +755,138 @@ public class EditLectureLink_GUI extends JFrame {
}
JSeparator separator = new JSeparator();
- separator.setBounds(0, 78, 597, 2);
+ separator.setBounds(0, 79, 912, 1);
getContentPane().add(separator);
JSeparator separator_1 = new JSeparator();
- separator_1.setBounds(0, 627, 597, 2);
+ separator_1.setBounds(0, 627, 912, 2);
getContentPane().add(separator_1);
+
+ JPanel panel = new JPanel();
+ panel.setLayout(null);
+ panel.setBorder(new TitledBorder(null, "Detailinformationen",
+
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(586, 85, 316, 531);
+ getContentPane().add(panel);
+
+ JLabel lblName = new JLabel("Name:");
+ lblName.setBounds(10, 87, 130, 14);
+ panel.add(lblName);
+
+ labelName = new JLabel("");
+ labelName.setBounds(10, 102, 296, 14);
+ panel.add(labelName);
+
+ JLabel lblVerantwortlicher = new JLabel("Verantwortlicher:");
+ lblVerantwortlicher.setBounds(10, 259, 130, 14);
+ panel.add(lblVerantwortlicher);
+
+ labelOS = new JLabel("");
+ labelOS.setBounds(10, 216, 296, 14);
+ panel.add(labelOS);
+
+ JLabel lblWeitereVerantwortliche = new JLabel("Betriebssystem:");
+ lblWeitereVerantwortliche.setBounds(10, 202, 130, 14);
+ panel.add(lblWeitereVerantwortliche);
+
+ labelVerantwortlicher = new JLabel("");
+ labelVerantwortlicher.setBounds(10, 272, 296, 14);
+ panel.add(labelVerantwortlicher);
+
+ JLabel label = new JLabel("Weitere Verantwortliche:");
+ label.setBounds(10, 284, 130, 14);
+ panel.add(label);
+
+ labelWeitereVerantwortliche = new JLabel("");
+ labelWeitereVerantwortliche.setBounds(10, 297, 296, 14);
+ panel.add(labelWeitereVerantwortliche);
+
+ labelUpdate = new JLabel("");
+ labelUpdate.setBounds(10, 245, 296, 14);
+ panel.add(labelUpdate);
+
+ JLabel lblLetztesUpdate = new JLabel("Letztes Update:");
+ lblLetztesUpdate.setBounds(10, 231, 130, 14);
+ panel.add(lblLetztesUpdate);
+
+ JLabel lblImageIstVorlage = new JLabel("Image ist Vorlage:");
+ lblImageIstVorlage.setBounds(10, 336, 130, 14);
+ panel.add(lblImageIstVorlage);
+
+ labelVorlage = new JLabel("");
+ labelVorlage.setBounds(10, 350, 296, 14);
+ panel.add(labelVorlage);
+
+ labelLizenzSoftware = new JLabel("");
+ labelLizenzSoftware.setBounds(10, 383, 296, 14);
+ panel.add(labelLizenzSoftware);
+
+ JLabel lblLizenzpflichtigeSoftware = new JLabel("Lizenzpflichtige Software:");
+ lblLizenzpflichtigeSoftware.setBounds(10, 367, 130, 14);
+ panel.add(lblLizenzpflichtigeSoftware);
+
+ JLabel lblInternet = new JLabel("Internetsperre vorhanden:");
+ lblInternet.setBounds(10, 400, 130, 14);
+ panel.add(lblInternet);
+
+ labelInternet = new JLabel("");
+ labelInternet.setBounds(10, 417, 296, 14);
+ panel.add(labelInternet);
+
+ JLabel lblEmpfehlungRam = new JLabel("Empfehlung RAM:");
+ lblEmpfehlungRam.setBounds(10, 432, 130, 14);
+ panel.add(lblEmpfehlungRam);
+
+ labelRam = new JLabel("");
+ labelRam.setBounds(10, 455, 296, 14);
+ panel.add(labelRam);
+
+ JLabel lblEmpfehlungCpu = new JLabel("Empfehlung CPU:");
+ lblEmpfehlungCpu.setBounds(10, 469, 130, 14);
+ panel.add(lblEmpfehlungCpu);
+
+ labelCPU = new JLabel("");
+ labelCPU.setBounds(10, 487, 296, 14);
+ panel.add(labelCPU);
+
+ JLabel lblTechnischeDaten = new JLabel("Technische Daten:");
+ lblTechnischeDaten.setBounds(10, 322, 296, 14);
+ panel.add(lblTechnischeDaten);
+
+ JLabel lblId = new JLabel("ID:");
+ lblId.setBounds(10, 23, 296, 14);
+ panel.add(lblId);
+
+ labelID = new JLabel("");
+ labelID.setBounds(10, 37, 296, 14);
+ panel.add(labelID);
+
+ labelVersion = new JLabel("");
+ labelVersion.setBounds(10, 73, 296, 14);
+ panel.add(labelVersion);
+
+ JLabel lblVersion = new JLabel("Version:");
+ lblVersion.setBounds(10, 57, 296, 14);
+ panel.add(lblVersion);
+
+ JLabel lblBeschreibung = new JLabel("Beschreibung:");
+ lblBeschreibung.setBounds(10, 119, 130, 14);
+ panel.add(lblBeschreibung);
+
+ JScrollPane scrollPane = new JScrollPane();
+ scrollPane.setBounds(10, 135, 296, 65);
+ panel.add(scrollPane);
+
+ textAreadesc = new JTextArea();
+ textAreadesc.setLineWrap(true);
+ textAreadesc.setBackground(SystemColor.menu);
+ scrollPane.setViewportView(textAreadesc);
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
- JMenu mnNewMenu = new JMenu("Suchen");
- menuBar.add(mnNewMenu);
-
- JMenuItem mntmVlSuche = new JMenuItem("VL Suche");
- mnNewMenu.add(mntmVlSuche);
-
JMenu mnNewMenu_1 = new JMenu("Hilfe");
menuBar.add(mnNewMenu_1);
@@ -498,35 +945,76 @@ public class EditLectureLink_GUI extends JFrame {
}
- public DefaultTableModel initTableModel(DefaultTableModel model) {
+ // Initiale Beffuelung eines Table models
+ public DefaultTableModel initTableModel(DefaultTableModel model) throws TException, ParseException {
List<server.Image> images;
- try {
+
+ // Hole eine Liste der Images
images = client.getImageList();
+
Iterator<server.Image> i = images.iterator();
- List<Object[]> ListObj = new ArrayList<Object[]>();
+ SimpleDateFormat in=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
+ SimpleDateFormat out=new SimpleDateFormat("dd.MM.yyyy hh:mm:ss");
int x = 0;
while (i.hasNext()) {
-
- i.next();
+ // erzeuge Objekte fuer die Tabelle
Object[] obj = { images.get(x).getImageName(),
images.get(x).getLicenseRestriction(),
images.get(x).getOsName(),
images.get(x).getLectureName(),
images.get(x).getUserData(),
- images.get(x).getUpdateTime(), "", images.get(x).id,
- images.get(x).getVersion() };
- ListObj.add(obj);
- model.addRow(ListObj.get(x));
+ out.format(in.parse(images.get(x).updateTime)), images.get(x).id,
+ images.get(x).getVersion(),
+ images.get(x).getIsTemplate() };
+ // Fuege diese Objekte der Tabelle hinzu
+ model.addRow(obj);
x++;
+ i.next();
}
return model;
- } catch (TException e1) {
+
+
+ }
+ public void writeImageData(String id, String version){
+ try {
+ SimpleDateFormat in=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
+ SimpleDateFormat out=new SimpleDateFormat("dd.MM.yyyy hh:mm:ss");
+ Map<String,String> res=client.getImageData(id,version);
+ labelName.setText(res.get("name"));
+ labelOS.setText(res.get("os"));
+ labelUpdate.setText(out.format(in.parse(res.get("lastupdate"))));
+ labelVerantwortlicher.setText(res.get("owner"));
+ labelWeitereVerantwortliche.setText("Noch nicht Verf�gbar");
+ if(res.get("template").equals("true")){
+ labelVorlage.setText("Ja");
+ }else{
+ labelVorlage.setText("Nein");
+ }
+ if(res.get("license").equals("1")){
+ labelLizenzSoftware.setText("Ja");
+ }
+ else
+ {
+ labelLizenzSoftware.setText("Nein");
+ }
+ if(res.get("internet").equals("1")){
+ labelInternet.setText("Ja");
+ }
+ else
+ {
+ labelInternet.setText("Nein");
+ }
+ labelRam.setText(res.get("ram"));
+ labelCPU.setText(res.get("cpu"));
+ labelID.setText(res.get("id"));
+ labelVersion.setText(res.get("version"));
+ textAreadesc.setText(res.get("desc"));
+ } catch (TException | ParseException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
- return model;
}
}
diff --git a/Dozentenmodul/src/main/java/gui/lecture/EditLectureSearch_GUI.java b/Dozentenmodul/src/main/java/gui/lecture/EditLectureSearch_GUI.java
index 58329ae2..6f0786ef 100644
--- a/Dozentenmodul/src/main/java/gui/lecture/EditLectureSearch_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/lecture/EditLectureSearch_GUI.java
@@ -22,6 +22,7 @@ import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Iterator;
import java.util.List;
+import java.util.Map;
import javax.swing.JButton;
import javax.swing.JFrame;
@@ -36,15 +37,19 @@ import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.JTabbedPane;
import javax.swing.JTable;
+import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.JTextPane;
import javax.swing.RowFilter;
+import javax.swing.ScrollPaneConstants;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;
@@ -67,34 +72,40 @@ public class EditLectureSearch_GUI extends JFrame {
String[] result;
JRadioButton rdbtnInternetJa;
JRadioButton rdbtnInternetNein;
+ JLabel labelAktiv;
+ JLabel labelstartdate;
+ JLabel labelenddate;
+ JLabel labelimageversion;
+ JTextArea labelName;
+ JTextArea labelimage;
+ JTextArea labeldesc;
+ JLabel labelVerantwortlicher;
JTable tableAllLectures;
JTable tablemyLectures;
- JTable tableCoopImages;
- JTable tablePublicVorlagen;
- JTable tablePublicImages;
private JTextField textFieldName;
JTabbedPane tabbedPane;
+ boolean activeSearch = false;
String[] titles = { "Veranstaltungsname", "Beschreibung",
"G\u00fcltigkeitsdatum", "Aktiv", "Letzte Benutzung",
"Verantwortlicher", "Image", "Schlagwort", "ID" };
ThriftConnection con = new ThriftConnection();
Client client = models.Client.clientcon.getClient();
- final DefaultTableModel modelAll = new DefaultTableModel(titles, 0){
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- return false;
- }
+ final DefaultTableModel modelAll = new DefaultTableModel(titles, 0) {
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
};
- final DefaultTableModel modelMyLectures = new DefaultTableModel(titles, 0){
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- return false;
- }
+ final DefaultTableModel modelMyLectures = new DefaultTableModel(titles, 0) {
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
};
final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
modelAll);
final TableRowSorter<TableModel> rowSorterMyLectures = new TableRowSorter<TableModel>(
modelMyLectures);
+ private JTextField textField;
-
/**
* Create the dialog.
*/
@@ -106,6 +117,64 @@ public class EditLectureSearch_GUI extends JFrame {
con.closeThriftConnection();
System.exit(0);
}
+
+ @Override
+ public void windowOpened(WindowEvent arg0) {
+ textFieldName.requestFocusInWindow();
+ try {
+ initTableModel(modelMyLectures);
+ initTableModel(modelAll);
+
+ } catch (ParseException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ // auszublendende Angaben
+ // 1=Beschreibung
+ // 2=G\u00fcltigkeitsdatum
+ // 3=Aktiv
+ // 6=Image
+ // 7=Schlagwort
+ // 8=ID
+ tablemyLectures.getColumnModel().getColumn(1).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(1).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(1).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(2).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(2).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(2).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(3).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(3).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(3).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(6).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(6).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(6).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(7).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(7).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(7).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(8).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(8).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(8).setMaxWidth(0);
+
+ tableAllLectures.getColumnModel().getColumn(1).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(1).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(1).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(2).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(2).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(2).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(3).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(3).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(3).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(6).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(6).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(6).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(7).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(7).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(7).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(8).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(8).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(8).setMaxWidth(0);
+ }
});
// Verhindert das Vergroessern Des Fensters
setResizable(false);
@@ -119,18 +188,16 @@ public class EditLectureSearch_GUI extends JFrame {
e.printStackTrace();
}
// Setzt den Fenstertitel
- setTitle("bwLehrpool Suite *Prototyp* - Veranstaltung bearbeiten");
+ setTitle("bwLehrpool Suite - Veranstaltung bearbeiten");
// Zentriert das Fenster in die Bildmitte
- setBounds(0, 0, 603, 722);
+ setBounds(0, 0, 842, 722);
GuiOrganizer.centerGUI(this);
- final DefaultTableModel model = new DefaultTableModel(titles, 0);
-
getContentPane().setLayout(null);
{
JPanel panel = new JPanel();
panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 11, 577, 57);
+ panel.setBounds(10, 11, 816, 57);
getContentPane().add(panel);
panel.setLayout(null);
{
@@ -158,12 +225,12 @@ public class EditLectureSearch_GUI extends JFrame {
panel_1.setBackground(SystemColor.menu);
panel_1.setBorder(new TitledBorder(null, "Filterfunktionen",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 49, 557, 131);
+ panel_1.setBounds(10, 49, 557, 66);
contentPanel.add(panel_1);
panel_1.setLayout(null);
- JLabel lblNewLabel_2 = new JLabel("Anzeigename:");
- lblNewLabel_2.setBounds(10, 30, 250, 20);
+ JLabel lblNewLabel_2 = new JLabel("Name:");
+ lblNewLabel_2.setBounds(10, 30, 80, 20);
panel_1.add(lblNewLabel_2);
textFieldName = new JTextField();
@@ -173,45 +240,45 @@ public class EditLectureSearch_GUI extends JFrame {
public void keyReleased(KeyEvent e) {
// Textfield eingabe auslesen
String stext = textFieldName.getText();
-
// Wenn Textfield nicht leer
if (stext != "") {
+ activeSearch = true;
// Filtere nach der Eingabe
rowSorterAll.setRowFilter(RowFilter.regexFilter(
textFieldName.getText(), 0));
rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
textFieldName.getText(), 0));
+ } else {
+ activeSearch = false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
+ username, 5));
+ rowSorterAll.setRowFilter(null);
}
}
});
- textFieldName.setBounds(270, 30, 250, 20);
+ textFieldName.setBounds(96, 30, 166, 20);
panel_1.add(textFieldName);
textFieldName.setColumns(10);
-
- JLabel lblErweiterteSuche = new JLabel(
- "<html><u>Erweiterte Suche *Folgt noch*</u></html>");
- lblErweiterteSuche.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
- // oeffnet das Fenster Extended GUI
-
- //ExtendedSearchForImages_GUI es = new ExtendedSearchForImages_GUI();
- //es.setVisible(true);
- }
- });
- lblErweiterteSuche.setForeground(Color.BLUE);
-
- lblErweiterteSuche.setBounds(326, 106, 194, 14);
- panel_1.add(lblErweiterteSuche);
+
+ JLabel label = new JLabel("Beschreibung:");
+ label.setBounds(291, 30, 80, 20);
+ panel_1.add(label);
+
+ textField = new JTextField();
+ textField.setColumns(10);
+ textField.setBounds(381, 30, 166, 20);
+ panel_1.add(textField);
JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
lblHauptmen.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
// oeffnet das Hauptmenue
-
+
EditLectureSearch_GUI.this.setVisible(false);
MainMenue_GUI main = new MainMenue_GUI();
main.setVisible(true);
@@ -248,28 +315,69 @@ public class EditLectureSearch_GUI extends JFrame {
rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
username, 5));
} else if (tabbedPane.getSelectedIndex() == 1) {
-
+ rowSorterAll.setRowFilter(null);
}
}
});
- tabbedPane.setBounds(10, 197, 557, 323);
+ tabbedPane.setBounds(10, 123, 557, 397);
contentPanel.add(tabbedPane);
- initTableModel(modelMyLectures);
JScrollPane scrollPaneAllImages = new JScrollPane();
tableAllLectures = new JTable();
+ tableAllLectures.getSelectionModel().addListSelectionListener(
+ new ListSelectionListener() {
+ public void valueChanged(ListSelectionEvent e) {
+ String imageid = modelAll
+ .getValueAt(
+ tableAllLectures
+ .convertRowIndexToModel(tableAllLectures
+ .getSelectedRow()), 8)
+ .toString();
+ //System.out.println(imageid);
+
+ try {
+ writeLectureData(imageid);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ } catch (ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
+ });
tableAllLectures.setModel(modelAll);
tableAllLectures.getColumnModel().getColumn(1).sizeWidthToFit();
tableAllLectures.getColumnModel().getColumn(2).sizeWidthToFit();
tableAllLectures.getColumnModel().getColumn(3).sizeWidthToFit();
tableAllLectures.getColumnModel().getColumn(4).sizeWidthToFit();
tableAllLectures.getColumnModel().getColumn(5).sizeWidthToFit();
- initTableModel(modelAll);
JScrollPane scrollPaneMyImage = new JScrollPane();
tablemyLectures = new JTable();
+ tablemyLectures.getSelectionModel().addListSelectionListener(
+ new ListSelectionListener() {
+ public void valueChanged(ListSelectionEvent e) {
+ String imageid = modelMyLectures.getValueAt(
+ tablemyLectures
+ .convertRowIndexToModel(tablemyLectures
+ .getSelectedRow()), 8)
+ .toString();
+ //System.out.println(imageid);
+
+ try {
+ writeLectureData(imageid);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ } catch (ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
+ });
tablemyLectures.setModel(modelMyLectures);
tablemyLectures.getColumnModel().getColumn(1).sizeWidthToFit();
@@ -286,51 +394,9 @@ public class EditLectureSearch_GUI extends JFrame {
scrollPaneAllImages.setViewportView(tableAllLectures);
tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
-
- JScrollPane scrollPaneCoopImages = new JScrollPane();
- tableCoopImages = new JTable();
- tableCoopImages.setModel(model);
- tableCoopImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPaneCoopImages.setViewportView(tableCoopImages);
- tabbedPane.addTab("Kooperative Veranstaltungen", null,
- scrollPaneCoopImages, null);
- tabbedPane.setEnabledAt(2, false);
-
- JScrollPane scrollPanePublicImages = new JScrollPane();
- tablePublicImages = new JTable();
- tablePublicImages.setModel(model);
- tablePublicImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicImages.setViewportView(tablePublicImages);
- tabbedPane.addTab("\u00D6ffentliche Images", null,
- scrollPanePublicImages, null);
- tabbedPane.setEnabledAt(3, false);
-
- JScrollPane scrollPanePublicVorlagen = new JScrollPane();
- tablePublicVorlagen = new JTable();
- tablePublicVorlagen.setModel(model);
- tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
- tabbedPane.addTab("\u00D6ffentliche Vorlagen", null,
- scrollPanePublicVorlagen, null);
- tabbedPane.setEnabledAt(4, false);
{
JPanel buttonPane = new JPanel();
- buttonPane.setBounds(0, 640, 597, 33);
+ buttonPane.setBounds(0, 640, 826, 33);
buttonPane.setBackground(SystemColor.menu);
buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
getContentPane().add(buttonPane);
@@ -339,7 +405,7 @@ public class EditLectureSearch_GUI extends JFrame {
btnBack.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// oeffnet das Hauptmenue
-
+
MainMenue_GUI main = new MainMenue_GUI();
main.setVisible(true);
dispose();
@@ -353,103 +419,185 @@ public class EditLectureSearch_GUI extends JFrame {
JButton btnContinue = new JButton("Weiter");
btnContinue.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
+ String username = person.verantwortlicher.getName()
+ + " " + person.verantwortlicher.getVorname();
// check if a row is selected
- if ((tableAllLectures.getSelectedRow() != -1)
- || (tablemyLectures.getSelectedRow() != -1)
- || (tableCoopImages.getSelectedRow() != -1)
- || (tablePublicImages.getSelectedRow() != -1)
- || (tablePublicVorlagen.getSelectedRow() != -1)) {
+ if (tablemyLectures.getSelectedRow() != -1) {
// a row is selected, do operations
- if (tabbedPane.getSelectedIndex() == 0) {
+ Lecture.lecture.setid(modelMyLectures
+ .getValueAt(
+ tablemyLectures
+ .convertRowIndexToModel(tablemyLectures
+ .getSelectedRow()),
+ 8).toString());
+ Lecture.lecture.setName(modelMyLectures
+ .getValueAt(
+ tablemyLectures
+ .convertRowIndexToModel(tablemyLectures
+ .getSelectedRow()),
+ 0).toString());
+ Lecture.lecture.setDesc(modelMyLectures
+ .getValueAt(
+ tablemyLectures
+ .convertRowIndexToModel(tablemyLectures
+ .getSelectedRow()),
+ 1).toString());
+ String date = modelMyLectures
+ .getValueAt(
+ tablemyLectures
+ .convertRowIndexToModel(tablemyLectures
+ .getSelectedRow()),
+ 2).toString();
+
+ Lecture.lecture.setLinkedImagename(modelMyLectures
+ .getValueAt(
+ tablemyLectures
+ .convertRowIndexToModel(tablemyLectures
+ .getSelectedRow()),
+ 6).toString());
+
+ int zweitesLeerzeichen = date.indexOf(" ",
+ date.indexOf(" ") + 1);
+
+ String startdate = date.substring(0,
+ zweitesLeerzeichen);
+ String enddate = date.substring(zweitesLeerzeichen);
+ SimpleDateFormat out = new SimpleDateFormat(
+ "yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat in = new SimpleDateFormat(
+ "dd.MM.yyyy HH:mm:ss");
+ try {
+ enddate = out.format(in.parse(enddate));
+ startdate = out.format(in.parse(startdate));
+ } catch (ParseException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
- Lecture.lecture.setid(modelMyLectures
- .getValueAt(
- tablemyLectures
- .convertRowIndexToModel(tablemyLectures
- .getSelectedRow()),
- 8).toString());
- Lecture.lecture.setName(modelMyLectures
- .getValueAt(
- tablemyLectures
- .convertRowIndexToModel(tablemyLectures
- .getSelectedRow()),
- 0).toString());
- Lecture.lecture.setDesc(modelMyLectures
- .getValueAt(
- tablemyLectures
- .convertRowIndexToModel(tablemyLectures
- .getSelectedRow()),
- 1).toString());
- String date = modelMyLectures
- .getValueAt(
- tablemyLectures
- .convertRowIndexToModel(tablemyLectures
- .getSelectedRow()),
- 2).toString();
-
- Lecture.lecture.setLinkedImagename(modelMyLectures
- .getValueAt(
- tablemyLectures
- .convertRowIndexToModel(tablemyLectures
- .getSelectedRow()),
- 6).toString());
-
- int zweitesLeerzeichen = date.indexOf(" ",
- date.indexOf(" ") + 1);
-
- String startdate = date.substring(0,
- zweitesLeerzeichen);
- String enddate = date
- .substring(zweitesLeerzeichen);
- DateFormat df = new SimpleDateFormat(
- "yyyy-MM-dd hh:mm:ss");
-
- try {
- // Format has to be "yyyy-MM-dd hh:mm:ss"
- Lecture.lecture.setEnddate(df
- .parse(enddate));
- Lecture.lecture.setStartdate(df
- .parse(startdate));
- } catch (ParseException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }
- if (modelMyLectures
+ DateFormat df = new SimpleDateFormat(
+ "yyyy-MM-dd HH:mm:ss");
+
+ try {
+ // Format has to be "yyyy-MM-dd HH:mm:ss"
+ Lecture.lecture.setEnddate(df.parse(enddate));
+ Lecture.lecture.setStartdate(df
+ .parse(startdate));
+ } catch (ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ if (modelMyLectures
+ .getValueAt(
+ tablemyLectures
+ .convertRowIndexToModel(tablemyLectures
+ .getSelectedRow()),
+ 3).toString().equals("1")) {
+ Lecture.lecture.setActive(true);
+ } else {
+ Lecture.lecture.setActive(false);
+ }
+
+ // EditImageAllgemein_GUI ea=new
+ // EditImageAllgemein_GUI();
+ EditLectureAllgemein_GUI el = new EditLectureAllgemein_GUI();
+ el.setVisible(true);
+ dispose();
+ } else if (tableAllLectures.getSelectedRow() != -1
+ && tableAllLectures
.getValueAt(
- tablemyLectures
- .convertRowIndexToModel(tablemyLectures
- .getSelectedRow()),
- 3).toString().equals("1")) {
- Lecture.lecture.setActive(true);
- } else {
- Lecture.lecture.setActive(false);
- }
-
-
- // EditImageAllgemein_GUI ea=new
- // EditImageAllgemein_GUI();
- EditLectureAllgemein_GUI el = new EditLectureAllgemein_GUI();
- el.setVisible(true);
- dispose();
+ tableAllLectures
+ .getSelectedRow(), 5)
+ .toString().equals(username)) {
+
+ // a row is selected, do operations
+
+ Lecture.lecture.setid(modelAll
+ .getValueAt(
+ tableAllLectures
+ .convertRowIndexToModel(tableAllLectures
+ .getSelectedRow()),
+ 8).toString());
+ Lecture.lecture.setName(modelAll
+ .getValueAt(
+ tableAllLectures
+ .convertRowIndexToModel(tableAllLectures
+ .getSelectedRow()),
+ 0).toString());
+ Lecture.lecture.setDesc(modelAll
+ .getValueAt(
+ tableAllLectures
+ .convertRowIndexToModel(tableAllLectures
+ .getSelectedRow()),
+ 1).toString());
+ String date = modelAll
+ .getValueAt(
+ tableAllLectures
+ .convertRowIndexToModel(tableAllLectures
+ .getSelectedRow()),
+ 2).toString();
+
+ Lecture.lecture.setLinkedImagename(modelAll
+ .getValueAt(
+ tableAllLectures
+ .convertRowIndexToModel(tableAllLectures
+ .getSelectedRow()),
+ 6).toString());
+
+ int zweitesLeerzeichen = date.indexOf(" ",
+ date.indexOf(" ") + 1);
+
+ String startdate = date.substring(0,
+ zweitesLeerzeichen);
+ String enddate = date.substring(zweitesLeerzeichen);
+ SimpleDateFormat out = new SimpleDateFormat(
+ "yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat in = new SimpleDateFormat(
+ "dd.MM.yyyy HH:mm:ss");
+ try {
+ enddate = out.format(in.parse(enddate));
+ startdate = out.format(in.parse(startdate));
+ } catch (ParseException e2) {
+ // TODO Auto-generated catch block
+ e2.printStackTrace();
+ }
+ DateFormat df = new SimpleDateFormat(
+ "yyyy-MM-dd HH:mm:ss");
+
+ try {
+ // Format has to be "yyyy-MM-dd HH:mm:ss"
+ Lecture.lecture.setEnddate(df.parse(enddate));
+ Lecture.lecture.setStartdate(df
+ .parse(startdate));
+ } catch (ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ if (modelAll
+ .getValueAt(
+ tableAllLectures
+ .convertRowIndexToModel(tableAllLectures
+ .getSelectedRow()),
+ 3).toString().equals("1")) {
+ Lecture.lecture.setActive(true);
} else {
- JOptionPane
- .showMessageDialog(
- null,
- "Bitte w\u00f4hlen Sie ein eigenes Image aus",
- "Message",
- JOptionPane.INFORMATION_MESSAGE);
+ Lecture.lecture.setActive(false);
}
+
+ EditLectureAllgemein_GUI el = new EditLectureAllgemein_GUI();
+ el.setVisible(true);
+ dispose();
} else {
- // nothing selected
- JOptionPane.showMessageDialog(null,
- "Bitte w\u00f4hlen Sie ein Image aus.",
- "Image Auswahl",
- JOptionPane.INFORMATION_MESSAGE);
- }// end check if a row is selected
+ JOptionPane
+ .showMessageDialog(
+ null,
+ "Bitte w\u00e4hlen Sie ein eigenes Image aus.",
+ "Message",
+ JOptionPane.INFORMATION_MESSAGE);
+ } // End Else
+ } // Action
- }
});
btnContinue.setActionCommand("Cancel");
buttonPane.add(btnContinue);
@@ -457,13 +605,105 @@ public class EditLectureSearch_GUI extends JFrame {
}
JSeparator separator = new JSeparator();
- separator.setBounds(0, 78, 597, 2);
+ separator.setBounds(0, 79, 836, 1);
getContentPane().add(separator);
JSeparator separator_1 = new JSeparator();
- separator_1.setBounds(0, 627, 597, 2);
+ separator_1.setBounds(0, 628, 836, 1);
getContentPane().add(separator_1);
+ JPanel panel = new JPanel();
+ panel.setLayout(null);
+ panel.setBorder(new TitledBorder(null, "Detailinformationen",
+
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(591, 85, 235, 518);
+ getContentPane().add(panel);
+
+ JLabel lblNewLabel_3 = new JLabel("Name:");
+ lblNewLabel_3.setBounds(10, 27, 104, 14);
+ panel.add(lblNewLabel_3);
+
+ JLabel lblAktiv = new JLabel("Aktiv:");
+ lblAktiv.setBounds(10, 98, 104, 14);
+ panel.add(lblAktiv);
+
+ labelAktiv = new JLabel("");
+ labelAktiv.setBounds(10, 114, 218, 14);
+ panel.add(labelAktiv);
+
+ labelstartdate = new JLabel("");
+ labelstartdate.setBounds(10, 147, 218, 14);
+ panel.add(labelstartdate);
+
+ JLabel lblStartdatum = new JLabel("Startdatum:");
+ lblStartdatum.setBounds(10, 129, 104, 14);
+ panel.add(lblStartdatum);
+
+ labelenddate = new JLabel("");
+ labelenddate.setBounds(10, 175, 218, 14);
+ panel.add(labelenddate);
+
+ JLabel lblEnddatum = new JLabel("Enddatum:");
+ lblEnddatum.setBounds(10, 161, 104, 14);
+ panel.add(lblEnddatum);
+
+ JLabel lblBeschreibung = new JLabel("Beschreibung:");
+ lblBeschreibung.setBounds(10, 189, 104, 14);
+ panel.add(lblBeschreibung);
+
+ JLabel lblImage = new JLabel("Image:");
+ lblImage.setBounds(10, 293, 104, 14);
+ panel.add(lblImage);
+
+ labelVerantwortlicher = new JLabel("");
+ labelVerantwortlicher.setBounds(10, 426, 218, 14);
+ panel.add(labelVerantwortlicher);
+
+ JLabel lblVerantwortlicher = new JLabel("Verantwortlicher:");
+ lblVerantwortlicher.setBounds(10, 411, 104, 14);
+ panel.add(lblVerantwortlicher);
+
+ JLabel lblImageversion = new JLabel("Imageversion:");
+ lblImageversion.setBounds(10, 381, 104, 14);
+ panel.add(lblImageversion);
+
+ labelimageversion = new JLabel("");
+ labelimageversion.setBounds(10, 399, 218, 14);
+ panel.add(labelimageversion);
+
+ labeldesc = new JTextArea();
+ labeldesc.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ labeldesc.setEditable(false);
+ labeldesc.setLineWrap(true);
+ labeldesc.setBackground(SystemColor.menu);
+ labeldesc.setBounds(124, 127, 104, 110);
+ JScrollPane scrollPane = new JScrollPane(labeldesc);
+ scrollPane.setBounds(10, 209, 218, 81);
+ panel.add(scrollPane);
+ // panel.add(labeldesc);
+
+ labelimage = new JTextArea();
+ labelimage.setLineWrap(true);
+ labelimage.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ labelimage.setEditable(false);
+ labelimage.setBackground(SystemColor.menu);
+ labelimage.setBounds(124, 248, 101, 81);
+ JScrollPane scrollPaneImage = new JScrollPane(labelimage);
+ scrollPaneImage.setBounds(10, 309, 215, 69);
+ panel.add(scrollPaneImage);
+
+ labelName = new JTextArea();
+ labelName.setEditable(false);
+ labelName.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ labelName.setBackground(SystemColor.menu);
+ labelName.setBounds(124, 22, 101, 55);
+ JScrollPane scrollPaneName = new JScrollPane(labelName);
+ scrollPaneName.setBounds(10, 40, 218, 55);
+ panel.add(scrollPaneName);
+ // panel.add(labelName);
+ // panel.add(labelimage);
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
@@ -474,15 +714,15 @@ public class EditLectureSearch_GUI extends JFrame {
mntmFaq.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
+
OpenLinks open = new OpenLinks();
-
+
URI windows;
try {
windows = new URI(Links.getFAQ());
-
+
open.openWebpage(windows);
-
+
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
@@ -490,7 +730,6 @@ public class EditLectureSearch_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmFaq);
-
JMenuItem mntmOtrs = new JMenuItem("OTRS");
mntmOtrs.addMouseListener(new MouseAdapter() {
@@ -498,22 +737,22 @@ public class EditLectureSearch_GUI extends JFrame {
public void mousePressed(MouseEvent arg0) {
OpenLinks open = new OpenLinks();
-
+
URI windows;
try {
windows = new URI(Links.getOTRS());
-
+
open.openWebpage(windows);
-
+
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
+
}
});
mnNewMenu_1.add(mntmOtrs);
-
+
JMenuItem mntmAbout = new JMenuItem("About");
mntmAbout.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
@@ -526,27 +765,32 @@ public class EditLectureSearch_GUI extends JFrame {
}
// Initiale Beffuelung eines Table models
- public DefaultTableModel initTableModel(DefaultTableModel model) {
+ public DefaultTableModel initTableModel(DefaultTableModel model)
+ throws ParseException {
List<server.Lecture> lectures;
try {
// Hole eine Liste der Images
lectures = client.getLectureList();
Iterator<server.Lecture> i = lectures.iterator();
-
+ SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
int x = 0;
while (i.hasNext()) {
// erzeuge Objekte fuer die Tabelle
+
Object[] obj = {
lectures.get(x).lecturename,
lectures.get(x).desc,
- lectures.get(x).starttime + " "
- + lectures.get(x).endtime,
- lectures.get(x).isActive, lectures.get(x).lastused,
- lectures.get(x).username, " ",
- lectures.get(x).imagename, lectures.get(x).id };
+ out.format(in.parse(lectures.get(x).starttime)) + " "
+ + out.format(in.parse(lectures.get(x).endtime)),
+ lectures.get(x).isActive,
+ out.format(in.parse(lectures.get(x).lastused)),
+ lectures.get(x).username, lectures.get(x).imagename,
+ " ", lectures.get(x).id };
// Fuege diese Objekte der Tabelle hinzu
model.addRow(obj);
+
x++;
i.next();
@@ -560,4 +804,21 @@ public class EditLectureSearch_GUI extends JFrame {
return model;
}
+ public void writeLectureData(String id) throws TException, ParseException {
+
+ SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
+ Map<String, String> res = client.getLectureData(id);
+ labelName.setText(res.get("name"));
+ labelAktiv.setText(res.get("isActive"));
+ labeldesc.setText(res.get("desc"));
+ labelVerantwortlicher.setText(res.get("owner"));
+ labelstartdate.setText(out.format(in.parse(res.get("startTime"))));
+ labelenddate.setText(out.format(in.parse(res.get("endTime"))));
+ labelimage.setText(res.get("imagepath").substring(
+ res.get("imagepath").indexOf("/") + 1));
+ labelimageversion.setText(res.get("imageversion"));
+
+ }
+
}
diff --git a/Dozentenmodul/src/main/java/gui/lecture/ExtendedSearchForLectures_GUI.java b/Dozentenmodul/src/main/java/gui/lecture/ExtendedSearchForLectures_GUI.java
deleted file mode 100644
index 9afb1790..00000000
--- a/Dozentenmodul/src/main/java/gui/lecture/ExtendedSearchForLectures_GUI.java
+++ /dev/null
@@ -1,269 +0,0 @@
-package gui.lecture;
-
-
-import gui.image.CreateImageAllgemein_GUI;
-import gui.image.FTPCreateUploader_GUI;
-import gui.intro.About_GUI;
-
-import java.awt.FlowLayout;
-import java.awt.Font;
-import java.awt.SystemColor;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.net.URI;
-import java.net.URISyntaxException;
-
-import javax.swing.JButton;
-import javax.swing.JCheckBox;
-import javax.swing.JComboBox;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JMenu;
-import javax.swing.JMenuBar;
-import javax.swing.JMenuItem;
-import javax.swing.JPanel;
-import javax.swing.JSeparator;
-import javax.swing.JTextField;
-import javax.swing.JTextPane;
-import javax.swing.UIManager;
-import javax.swing.UnsupportedLookAndFeelException;
-import javax.swing.border.EmptyBorder;
-import javax.swing.border.TitledBorder;
-
-import models.Links;
-import util.GuiOrganizer;
-import util.OpenLinks;
-
-@SuppressWarnings("serial")
-public class ExtendedSearchForLectures_GUI extends JFrame {
-
- private final JPanel contentPanel = new JPanel();
- String[] result;
- private JTextField textField;
- private JTextField textField_1;
-
-
- /**
- * Create the dialog.
- */
- public ExtendedSearchForLectures_GUI() {
-
- setResizable(false);
-
- try {
- UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
- } catch (ClassNotFoundException | InstantiationException
- | IllegalAccessException | UnsupportedLookAndFeelException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- setTitle("bwLehrpool Suite *Prototyp* - Erweiterte Suche");
- setBounds(0, 0, 603, 722);
- GuiOrganizer.centerGUI(this);
-
- getContentPane().setLayout(null);
- {
- JPanel panel = new JPanel();
- panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 11, 577, 57);
- getContentPane().add(panel);
- panel.setLayout(null);
- {
- JLabel lblNewLabel = new JLabel("Weitere Suchoptionen");
- lblNewLabel.setBounds(10, 11, 509, 22);
- panel.add(lblNewLabel);
- lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
- }
-
- JTextPane txtpnBitteWhlenSie = new JTextPane();
- txtpnBitteWhlenSie.setEditable(false);
- txtpnBitteWhlenSie.setBackground(SystemColor.menu);
- txtpnBitteWhlenSie.setText("beschreibung");
- txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
- panel.add(txtpnBitteWhlenSie);
- }
- contentPanel.setBounds(10, 85, 577, 493);
- contentPanel.setBackground(SystemColor.menu);
- contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
- getContentPane().add(contentPanel);
- contentPanel.setLayout(null);
-
- JPanel panel_1 = new JPanel();
- panel_1.setBackground(SystemColor.menu);
- panel_1.setBorder(new TitledBorder(null, "Image-Typ", TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 11, 557, 95);
- contentPanel.add(panel_1);
- panel_1.setLayout(null);
-
- JLabel lblNewLabel_2 = new JLabel("Image-Typ");
- lblNewLabel_2.setBounds(10, 39, 176, 20);
- panel_1.add(lblNewLabel_2);
-
- JCheckBox chckbxBestehendesImage = new JCheckBox("Bestehendes Image");
- chckbxBestehendesImage.setSelected(true);
- chckbxBestehendesImage.setBounds(192, 38, 138, 23);
- panel_1.add(chckbxBestehendesImage);
-
- JCheckBox chckbxRohling = new JCheckBox("Rohling");
- chckbxRohling.setSelected(true);
- chckbxRohling.setBounds(332, 38, 97, 23);
- panel_1.add(chckbxRohling);
-
- JPanel panel = new JPanel();
- panel.setLayout(null);
- panel.setBorder(new TitledBorder(null, "Image-Inhalt", TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 117, 557, 95);
- contentPanel.add(panel);
-
- JLabel lblEnthalteneSoftware = new JLabel("Enthaltene Software");
- lblEnthalteneSoftware.setBounds(10, 39, 176, 20);
- panel.add(lblEnthalteneSoftware);
-
- textField = new JTextField();
- textField.setBounds(196, 39, 351, 20);
- panel.add(textField);
- textField.setColumns(10);
-
- JLabel lblNewLabel_1 = new JLabel("Bitte mit ; getrennt angeben");
- lblNewLabel_1.setBounds(196, 70, 351, 14);
- panel.add(lblNewLabel_1);
-
- JPanel panel_2 = new JPanel();
- panel_2.setLayout(null);
- panel_2.setBorder(new TitledBorder(null, "Informationen zum Ersteller", TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_2.setBackground(SystemColor.menu);
- panel_2.setBounds(10, 223, 557, 123);
- contentPanel.add(panel_2);
-
- JLabel lblNachnameDesErstellers = new JLabel("Nachname des Erstellers");
- lblNachnameDesErstellers.setBounds(10, 39, 176, 20);
- panel_2.add(lblNachnameDesErstellers);
-
- textField_1 = new JTextField();
- textField_1.setColumns(10);
- textField_1.setBounds(196, 39, 351, 20);
- panel_2.add(textField_1);
-
- JLabel lblHochschuleuniversitt = new JLabel("Hochschule/Universit\u00E4t");
- lblHochschuleuniversitt.setBounds(10, 70, 176, 20);
- panel_2.add(lblHochschuleuniversitt);
-
- JComboBox<String> comboBox = new JComboBox<String>();
- comboBox.setBounds(196, 70, 351, 20);
- panel_2.add(comboBox);
- {
- JPanel buttonPane = new JPanel();
- buttonPane.setBounds(0, 640, 597, 33);
- buttonPane.setBackground(SystemColor.menu);
- buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
- getContentPane().add(buttonPane);
- {
- JButton okButton = new JButton("Zur\u00FCck");
- okButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
-
-
- CreateImageAllgemein_GUI sr=new CreateImageAllgemein_GUI();
- sr.setVisible(true);
- dispose();
- }
- });
- okButton.setActionCommand("OK");
- buttonPane.add(okButton);
- getRootPane().setDefaultButton(okButton);
- }
- {
- JButton cancelButton = new JButton("\u00DCbernehmen");
- cancelButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
-
-
- FTPCreateUploader_GUI ea=new FTPCreateUploader_GUI();
- ea.setVisible(true);
- dispose();
-
- }
- });
- cancelButton.setActionCommand("Cancel");
- buttonPane.add(cancelButton);
- }
- }
-
- JSeparator separator = new JSeparator();
- separator.setBounds(0, 78, 597, 2);
- getContentPane().add(separator);
-
- JSeparator separator_1 = new JSeparator();
- separator_1.setBounds(0, 627, 597, 2);
- getContentPane().add(separator_1);
-
- JMenuBar menuBar = new JMenuBar();
- setJMenuBar(menuBar);
-
- JMenu mnNewMenu = new JMenu("Suchen");
- menuBar.add(mnNewMenu);
-
- JMenuItem mntmVlSuche = new JMenuItem("VL Suche");
- mnNewMenu.add(mntmVlSuche);
-
- JMenu mnNewMenu_1 = new JMenu("Hilfe");
- menuBar.add(mnNewMenu_1);
-
- JMenuItem mntmFaq = new JMenuItem("FAQ");
- mntmFaq.addMouseListener(new MouseAdapter() {
- @Override
- public void mousePressed(MouseEvent arg0) {
-
- OpenLinks open = new OpenLinks();
-
- URI windows;
- try {
- windows = new URI(Links.getFAQ());
-
- open.openWebpage(windows);
-
- } catch (URISyntaxException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- });
- mnNewMenu_1.add(mntmFaq);
-
-
- JMenuItem mntmOtrs = new JMenuItem("OTRS");
- mntmOtrs.addMouseListener(new MouseAdapter() {
- @Override
- public void mousePressed(MouseEvent arg0) {
-
- OpenLinks open = new OpenLinks();
-
- URI windows;
- try {
- windows = new URI(Links.getOTRS());
-
- open.openWebpage(windows);
-
- } catch (URISyntaxException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- }
- });
- mnNewMenu_1.add(mntmOtrs);
-
- JMenuItem mntmAbout = new JMenuItem("About");
- mntmAbout.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- About_GUI ab = new About_GUI();
- ab.setVisible(true);
- }
- });
- mnNewMenu_1.add(mntmAbout);
-
- }
-}
diff --git a/Dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java b/Dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java
new file mode 100644
index 00000000..cfd2337c
--- /dev/null
+++ b/Dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java
@@ -0,0 +1,546 @@
+package gui.lecture;
+
+
+import gui.intro.About_GUI;
+import gui.intro.MainMenue_GUI;
+
+import java.awt.Checkbox;
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.FlowLayout;
+import java.awt.Font;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.awt.event.MouseListener;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.io.IOException;
+import java.net.URI;
+import java.net.URISyntaxException;
+
+import javax.swing.AbstractButton;
+import javax.swing.ButtonGroup;
+import javax.swing.DefaultComboBoxModel;
+import javax.swing.Icon;
+import javax.swing.JButton;
+import javax.swing.JCheckBox;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JPanel;
+import javax.swing.JSeparator;
+import javax.swing.JTextPane;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+import javax.swing.border.EmptyBorder;
+import javax.swing.border.TitledBorder;
+import javax.swing.table.DefaultTableCellRenderer;
+import javax.swing.table.DefaultTableModel;
+import javax.swing.table.JTableHeader;
+import javax.swing.table.TableCellEditor;
+import javax.swing.table.TableCellRenderer;
+import javax.swing.table.TableColumn;
+import javax.swing.table.TableColumnModel;
+
+import models.Image;
+import models.Links;
+import util.GuiOrganizer;
+import util.OpenLinks;
+import javax.swing.JTable;
+import javax.swing.JScrollPane;
+import javax.swing.ScrollPaneConstants;
+import javax.swing.JTextField;
+
+import org.eclipse.jface.viewers.CheckboxCellEditor;
+
+import java.awt.Choice;
+import javax.swing.JRadioButton;
+
+@SuppressWarnings("serial")
+public class PermissionCreateLecture_GUI extends JFrame {
+
+ private final JPanel contentPanel = new JPanel();
+ String[] result;
+ private JTable table;
+ private Class[] classes;
+ Object[] titles = { "Name","Read", "Write","Admin"};
+
+ final DefaultTableModel model = new DefaultTableModel(titles, 0){
+
+
+
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ if(mColIndex>=1){
+ return true;
+ }
+ return false;
+ }
+ public Class getColumnClass(int c) {
+ switch(c){
+ case 0:
+ return String.class;
+ default:
+ return Boolean.class;
+ }
+ }
+
+
+
+ };
+ private JTextField textField;
+ private JTable table_1;
+ private final ButtonGroup buttonGroup = new ButtonGroup();
+
+ public PermissionCreateLecture_GUI() {
+ addWindowListener(new WindowAdapter() {
+ @Override
+ public void windowClosing(WindowEvent arg0) {
+ System.exit(0);
+ }
+ });
+ setResizable(false);
+
+ try {
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ } catch (ClassNotFoundException | InstantiationException
+ | IllegalAccessException | UnsupportedLookAndFeelException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ setTitle("bwLehrpool Suite - Berechtigungen");
+
+ setBounds(0, 0, 603, 722);
+ GuiOrganizer.centerGUI(this);
+
+ getContentPane().setLayout(null);
+ {
+ JPanel panel = new JPanel();
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(10, 11, 577, 57);
+ getContentPane().add(panel);
+ panel.setLayout(null);
+ {
+ JLabel lblNewLabel = new JLabel("Veranstaltungen - Berechtigungen (Nur zur Veranschaulichung)");
+ lblNewLabel.setBounds(10, 11, 509, 22);
+ panel.add(lblNewLabel);
+ lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
+ }
+
+ JTextPane txtpnBitteWhlenSie = new JTextPane();
+ txtpnBitteWhlenSie.setEditable(false);
+ txtpnBitteWhlenSie.setBackground(SystemColor.menu);
+ txtpnBitteWhlenSie.setText("Definieren Sie hier bitte die gew\u00FCnschten Berechtigungen f\u00FCr ihr Lecture");
+ txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
+ panel.add(txtpnBitteWhlenSie);
+ }
+ contentPanel.setBounds(10, 85, 577, 531);
+ contentPanel.setBackground(SystemColor.menu);
+ contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
+ getContentPane().add(contentPanel);
+ contentPanel.setLayout(null);
+
+ JPanel panel_1 = new JPanel();
+ panel_1.setBackground(SystemColor.menu);
+ panel_1.setBorder(new TitledBorder(null, "Suite-Berechtigungen", TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_1.setBounds(10, 207, 311, 313);
+ contentPanel.add(panel_1);
+ panel_1.setLayout(null);
+
+ JScrollPane scrollPane = new JScrollPane();
+ scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
+ scrollPane.setBounds(10, 21, 291, 249);
+ panel_1.add(scrollPane);
+
+ table = new JTable();
+ table.setModel(model);
+ table.setSelectionForeground(Color.WHITE);
+ Object[] rowdata={"Max Mustermann", new Boolean(false),new Boolean(false),new Boolean(false),new Boolean(false)};
+ model.addRow(rowdata);
+
+ TableCellRenderer rend=table.getTableHeader().getDefaultRenderer();
+
+
+ TableColumn tc1 = table.getColumnModel().getColumn(1);
+ tc1.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc1.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc1.setHeaderRenderer(new CheckBoxHeader(new MyItemListener1(),(String) titles[1]));
+
+ TableColumn tc2 = table.getColumnModel().getColumn(2);
+ tc2.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc2.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc2.setHeaderRenderer(new CheckBoxHeader(new MyItemListener2(),(String) titles[2]));
+
+ TableColumn tc3 = table.getColumnModel().getColumn(3);
+ tc3.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc3.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc3.setHeaderRenderer(new CheckBoxHeader(new MyItemListener3(),(String) titles[3]));
+ /*
+ TableColumn tc4 = table.getColumnModel().getColumn(4);
+ tc4.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc4.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc4.setHeaderRenderer(new CheckBoxHeader(new MyItemListener4(),(String) titles[4]));
+ */
+ scrollPane.setViewportView(table);
+
+ JButton btnHinzufgen_1 = new JButton("Hinzuf\u00FCgen");
+ btnHinzufgen_1.setEnabled(false);
+ btnHinzufgen_1.setBounds(10, 279, 89, 23);
+ panel_1.add(btnHinzufgen_1);
+
+ JButton btnLschen_1 = new JButton("L\u00F6schen");
+ btnLschen_1.setEnabled(false);
+ btnLschen_1.setBounds(109, 279, 89, 23);
+ panel_1.add(btnLschen_1);
+
+ JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
+ lblHauptmen.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mouseClicked(MouseEvent arg0) {
+
+ PermissionCreateLecture_GUI.this.setVisible(false);
+ MainMenue_GUI main=new MainMenue_GUI();
+ main.setVisible(true);
+ }
+ });
+ lblHauptmen.setForeground(Color.BLUE);
+ lblHauptmen.setBounds(10, 11, 61, 14);
+ contentPanel.add(lblHauptmen);
+
+ JLabel label_1 = new JLabel(">");
+ label_1.setBounds(69, 11, 13, 14);
+ contentPanel.add(label_1);
+
+ JLabel lblVlimage = new JLabel("Veranstaltung");
+ lblVlimage.setForeground(Color.BLUE);
+ lblVlimage.setBounds(81, 11, 90, 14);
+ contentPanel.add(lblVlimage);
+
+ JLabel label_2 = new JLabel(">");
+ label_2.setBounds(181, 11, 13, 14);
+ contentPanel.add(label_2);
+
+ JLabel lblNewLabel_1 = new JLabel("Berechtigungen");
+ lblNewLabel_1.setBounds(194, 11, 95, 14);
+ contentPanel.add(lblNewLabel_1);
+
+ JLabel lblName = new JLabel("Name:");
+ lblName.setBounds(10, 36, 46, 20);
+ contentPanel.add(lblName);
+
+ textField = new JTextField();
+ textField.setBounds(69, 36, 171, 20);
+ contentPanel.add(textField);
+ textField.setColumns(10);
+
+ JLabel lblHochschule = new JLabel("Hochschule:");
+ lblHochschule.setBounds(275, 36, 80, 20);
+ contentPanel.add(lblHochschule);
+
+ JComboBox comboBox = new JComboBox();
+ comboBox.setModel(new DefaultComboBoxModel(new String[] {"Hochschule Offenburg", "Hochschule Reutlingen", "Universit\u00E4t Freiburg"}));
+ comboBox.setBounds(365, 36, 202, 20);
+ contentPanel.add(comboBox);
+
+ JPanel panel = new JPanel();
+ panel.setBounds(10, 67, 557, 129);
+ contentPanel.add(panel);
+ panel.setLayout(null);
+ panel.setBorder(new TitledBorder(null, "Beschreibung", TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBackground(SystemColor.menu);
+
+ JLabel label = new JLabel("Read");
+ label.setBounds(20, 18, 90, 20);
+ panel.add(label);
+
+ JLabel label_3 = new JLabel("Write");
+ label_3.setBounds(20, 38, 90, 20);
+ panel.add(label_3);
+
+ JLabel label_5 = new JLabel("Admin");
+ label_5.setBounds(20, 78, 90, 20);
+ panel.add(label_5);
+
+ JLabel label_7 = new JLabel("Image darf gelesen und gestartet werden und ist in Suchfenster sichtbar.");
+ label_7.setBounds(120, 18, 380, 20);
+ panel.add(label_7);
+
+ JLabel lblimageDarfAngepasst = new JLabel("<HTML>Image darf angepasst und &uuml;berschrieben, jedoch nicht gel&ouml;scht werden. Berechtigungen f&uuml;r andere Benutzer festlegen</HTML>");
+ lblimageDarfAngepasst.setBounds(120, 38, 380, 45);
+ panel.add(lblimageDarfAngepasst);
+
+ JLabel lblvolleRechteRead = new JLabel("<HTML>Volle Rechte: read, write, l&ouml;schen und Berechtigungen f&uuml;r andere Benutzer festlegen.</HTML>");
+ lblvolleRechteRead.setBounds(120, 78, 380, 40);
+ panel.add(lblvolleRechteRead);
+
+ JPanel panel_2 = new JPanel();
+ panel_2.setBounds(331, 207, 236, 313);
+ contentPanel.add(panel_2);
+ panel_2.setLayout(null);
+ panel_2.setBorder(new TitledBorder(null, "Sichtbarkeit im VMChooser", TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_2.setBackground(SystemColor.menu);
+
+ JScrollPane scrollPane_1 = new JScrollPane();
+ scrollPane_1.setEnabled(false);
+ scrollPane_1.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
+ scrollPane_1.setBounds(23, 83, 203, 185);
+ panel_2.add(scrollPane_1);
+
+ table_1 = new JTable();
+ scrollPane_1.setViewportView(table_1);
+
+ JRadioButton rdbtnAlle = new JRadioButton("Sichtbar f\u00FCr alle");
+ rdbtnAlle.setEnabled(false);
+ rdbtnAlle.setSelected(true);
+ buttonGroup.add(rdbtnAlle);
+ rdbtnAlle.setBounds(6, 27, 109, 23);
+ panel_2.add(rdbtnAlle);
+
+ JRadioButton rdbtnIndividuell = new JRadioButton("Individuell");
+ rdbtnIndividuell.setEnabled(false);
+ buttonGroup.add(rdbtnIndividuell);
+ rdbtnIndividuell.setBounds(6, 53, 109, 23);
+ panel_2.add(rdbtnIndividuell);
+
+ JButton btnHinzufgen = new JButton("Hinzuf\u00FCgen");
+ btnHinzufgen.setEnabled(false);
+ btnHinzufgen.setBounds(23, 279, 89, 23);
+ panel_2.add(btnHinzufgen);
+
+ JButton btnLschen = new JButton("L\u00F6schen");
+ btnLschen.setEnabled(false);
+ btnLschen.setBounds(122, 279, 89, 23);
+ panel_2.add(btnLschen);
+ {
+ JPanel buttonPane = new JPanel();
+ buttonPane.setBounds(0, 640, 597, 33);
+ buttonPane.setBackground(SystemColor.menu);
+ buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
+ getContentPane().add(buttonPane);
+ {
+ JButton cancelButton = new JButton("Zur\u00FCck");
+ cancelButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+
+
+ CreateLectureAllgemein_GUI sr=new CreateLectureAllgemein_GUI();
+ sr.setVisible(true);
+ dispose();
+ }
+ });
+ cancelButton.setActionCommand("OK");
+ buttonPane.add(cancelButton);
+ //getRootPane().setDefaultButton(cancelButton);
+ }
+ {
+ JButton continueButton = new JButton("Weiter");
+ continueButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+
+ CreateLectureLink_GUI ea=new CreateLectureLink_GUI();
+ ea.setVisible(true);
+ dispose();
+
+ }
+ });
+ continueButton.setActionCommand("Cancel");
+ buttonPane.add(continueButton);
+ getRootPane().setDefaultButton(continueButton);
+ }
+ }
+
+ JSeparator separator = new JSeparator();
+ separator.setBounds(0, 78, 597, 2);
+ getContentPane().add(separator);
+
+ JSeparator separator_1 = new JSeparator();
+ separator_1.setBounds(0, 627, 597, 2);
+ getContentPane().add(separator_1);
+
+ JMenuBar menuBar = new JMenuBar();
+ setJMenuBar(menuBar);
+
+ JMenu mnNewMenu = new JMenu("Suchen");
+ menuBar.add(mnNewMenu);
+
+ JMenuItem mntmVlSuche = new JMenuItem("VL Suche");
+ mnNewMenu.add(mntmVlSuche);
+
+ JMenu mnNewMenu_1 = new JMenu("Hilfe");
+ menuBar.add(mnNewMenu_1);
+
+ JMenuItem mntmFaq = new JMenuItem("FAQ");
+ mntmFaq.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getFAQ());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ });
+ mnNewMenu_1.add(mntmFaq);
+
+
+ JMenuItem mntmOtrs = new JMenuItem("OTRS");
+ mntmOtrs.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getOTRS());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ }
+ });
+ mnNewMenu_1.add(mntmOtrs);
+
+ JMenuItem mntmAbout = new JMenuItem("About");
+ mntmAbout.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ About_GUI ab = new About_GUI();
+ ab.setVisible(true);
+ }
+ });
+ mnNewMenu_1.add(mntmAbout);
+
+ }
+ class MyItemListener1 implements ItemListener
+ {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false) return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for(int x = 0, y = table.getRowCount(); x < y; x++)
+ {
+ table.setValueAt(new Boolean(checked),x,1);
+ }
+ }
+ }
+ class MyItemListener2 implements ItemListener
+ {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false) return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for(int x = 0, y = table.getRowCount(); x < y; x++)
+ {
+ table.setValueAt(new Boolean(checked),x,2);
+ }
+ }
+ }
+ class MyItemListener3 implements ItemListener
+ {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false) return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for(int x = 0, y = table.getRowCount(); x < y; x++)
+ {
+ table.setValueAt(new Boolean(checked),x,3);
+ }
+ }
+ }
+ class MyItemListener4 implements ItemListener
+ {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false) return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for(int x = 0, y = table.getRowCount(); x < y; x++)
+ {
+ table.setValueAt(new Boolean(checked),x,4);
+ }
+ }
+ }
+}
+class CheckBoxHeader extends JCheckBox
+implements TableCellRenderer, MouseListener {
+protected CheckBoxHeader rendererComponent;
+protected int column;
+protected boolean mousePressed = false;
+
+public CheckBoxHeader(ItemListener itemListener ,String text) {
+rendererComponent = this;
+rendererComponent.addItemListener(itemListener);
+rendererComponent.setText(text);
+}
+
+public Component getTableCellRendererComponent(
+ JTable table, Object value,
+ boolean isSelected, boolean hasFocus, int row, int column) {
+if (table != null) {
+ JTableHeader header = table.getTableHeader();
+ if (header != null) {
+ rendererComponent.setForeground(header.getForeground());
+ rendererComponent.setBackground(header.getBackground());
+ rendererComponent.setFont(header.getFont());
+ rendererComponent.setBorder(header.getBorder());
+ header.addMouseListener(rendererComponent);
+ }
+}
+setColumn(column);
+//rendererComponent.setText("Check All");
+//setBorder(UIManager.getBorder("TableHeader.cellBorder"));
+
+return rendererComponent;
+}
+protected void setColumn(int column) {
+this.column = column;
+}
+public int getColumn() {
+return column;
+}
+protected void handleClickEvent(MouseEvent e) {
+if (mousePressed) {
+ mousePressed=false;
+ JTableHeader header = (JTableHeader)(e.getSource());
+ JTable tableView = header.getTable();
+ TableColumnModel columnModel = tableView.getColumnModel();
+ int viewColumn = columnModel.getColumnIndexAtX(e.getX());
+ int column = tableView.convertColumnIndexToModel(viewColumn);
+
+ if (viewColumn == this.column && e.getClickCount() == 1 && column != -1) {
+ doClick();
+ }
+}
+}
+public void mouseClicked(MouseEvent e) {
+handleClickEvent(e);
+((JTableHeader)e.getSource()).repaint();
+}
+public void mousePressed(MouseEvent e) {
+mousePressed = true;
+}
+public void mouseReleased(MouseEvent e) {
+}
+public void mouseEntered(MouseEvent e) {
+}
+public void mouseExited(MouseEvent e) {
+}
+}
diff --git a/Dozentenmodul/src/main/java/gui/image/PermissionImage_GUI.java b/Dozentenmodul/src/main/java/gui/lecture/PermissionEditLecture_GUI.java
index 43b5eb48..da8864c7 100644
--- a/Dozentenmodul/src/main/java/gui/image/PermissionImage_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/lecture/PermissionEditLecture_GUI.java
@@ -1,4 +1,4 @@
-package gui.image;
+package gui.lecture;
import gui.intro.About_GUI;
@@ -64,14 +64,13 @@ import org.eclipse.jface.viewers.CheckboxCellEditor;
import java.awt.Choice;
@SuppressWarnings("serial")
-public class PermissionImage_GUI extends JFrame {
+public class PermissionEditLecture_GUI extends JFrame {
private final JPanel contentPanel = new JPanel();
String[] result;
private JTable table;
private Class[] classes;
- Object[] titles = { "Name","Read", "Write",
- "Admin", "ChangePermission"};
+ Object[] titles = { "Name","Read", "Write","Admin"};
final DefaultTableModel model = new DefaultTableModel(titles, 0){
@@ -96,15 +95,8 @@ public class PermissionImage_GUI extends JFrame {
};
private JTextField textField;
- /**
- * Create the dialog.
- */
- public static void main(String [ ] args)
- {
- PermissionImage_GUI gui=new PermissionImage_GUI();
- gui.setVisible(true);
- }
- public PermissionImage_GUI() {
+
+ public PermissionEditLecture_GUI() {
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent arg0) {
@@ -120,7 +112,7 @@ public class PermissionImage_GUI extends JFrame {
// TODO Auto-generated catch block
e.printStackTrace();
}
- setTitle("bwLehrpool Suite *Prototyp* - Image erzeugen");
+ setTitle("bwLehrpool Suite - Berechtigungen");
setBounds(0, 0, 603, 722);
GuiOrganizer.centerGUI(this);
@@ -133,7 +125,7 @@ public class PermissionImage_GUI extends JFrame {
getContentPane().add(panel);
panel.setLayout(null);
{
- JLabel lblNewLabel = new JLabel("Image Berechtigungen");
+ JLabel lblNewLabel = new JLabel("Lecture Berechtigungen (Nur zur Veranschaulichung)");
lblNewLabel.setBounds(10, 11, 509, 22);
panel.add(lblNewLabel);
lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
@@ -142,7 +134,7 @@ public class PermissionImage_GUI extends JFrame {
JTextPane txtpnBitteWhlenSie = new JTextPane();
txtpnBitteWhlenSie.setEditable(false);
txtpnBitteWhlenSie.setBackground(SystemColor.menu);
- txtpnBitteWhlenSie.setText("Definieren Sie hier bitte die gew\u00FCnschten Berechtigungen f\u00FCr ihr Image");
+ txtpnBitteWhlenSie.setText("Definieren Sie hier bitte die gew\u00FCnschten Berechtigungen f\u00FCr ihr Lecture");
txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
panel.add(txtpnBitteWhlenSie);
}
@@ -152,22 +144,53 @@ public class PermissionImage_GUI extends JFrame {
getContentPane().add(contentPanel);
contentPanel.setLayout(null);
+ JPanel panel = new JPanel();
+ panel.setLayout(null);
+ panel.setBorder(new TitledBorder(null, "Beschreibung", TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(10, 67, 557, 129);
+ contentPanel.add(panel);
+
+ JLabel label = new JLabel("Read");
+ label.setBounds(20, 18, 90, 20);
+ panel.add(label);
+
+ JLabel label_3 = new JLabel("Image darf gelesen und gestartet werden und ist in Suchfenster sichtbar.");
+ label_3.setBounds(120, 18, 380, 20);
+ panel.add(label_3);
+
+ JLabel label_4 = new JLabel("Write");
+ label_4.setBounds(20, 38, 90, 20);
+ panel.add(label_4);
+
+ JLabel label_5 = new JLabel("<HTML>Image darf angepasst und überschrieben, jedoch nicht gelöscht werden. Berechtigungen für andere Benutzer festlegen</HTML>");
+ label_5.setBounds(120, 38, 380, 45);
+ panel.add(label_5);
+
+ JLabel label_6 = new JLabel("Admin");
+ label_6.setBounds(20, 78, 90, 20);
+ panel.add(label_6);
+
+ JLabel label_7 = new JLabel("<HTML>Volle Rechte: read, write, löschen und Berechtigungen für andere Benutzer festlegen.</HTML>");
+ label_7.setBounds(120, 78, 380, 40);
+ panel.add(label_7);
+
JPanel panel_1 = new JPanel();
panel_1.setBackground(SystemColor.menu);
panel_1.setBorder(new TitledBorder(null, "Berechtigungen", TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 75, 557, 445);
+ panel_1.setBounds(10, 207, 557, 313);
contentPanel.add(panel_1);
panel_1.setLayout(null);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
- scrollPane.setBounds(10, 21, 537, 413);
+ scrollPane.setBounds(10, 21, 537, 281);
panel_1.add(scrollPane);
table = new JTable();
table.setModel(model);
table.setSelectionForeground(Color.WHITE);
- Object[] rowdata={"Spitzer Tobias", new Boolean(false),new Boolean(false),new Boolean(false),new Boolean(false)};
+ Object[] rowdata={"Max Mustermann", new Boolean(false),new Boolean(false),new Boolean(false),new Boolean(false)};
model.addRow(rowdata);
TableCellRenderer rend=table.getTableHeader().getDefaultRenderer();
@@ -187,12 +210,12 @@ public class PermissionImage_GUI extends JFrame {
tc3.setCellEditor(table.getDefaultEditor(Boolean.class));
tc3.setCellRenderer(table.getDefaultRenderer(Boolean.class));
tc3.setHeaderRenderer(new CheckBoxHeader(new MyItemListener3(),(String) titles[3]));
-
+ /*
TableColumn tc4 = table.getColumnModel().getColumn(4);
tc4.setCellEditor(table.getDefaultEditor(Boolean.class));
tc4.setCellRenderer(table.getDefaultRenderer(Boolean.class));
tc4.setHeaderRenderer(new CheckBoxHeader(new MyItemListener4(),(String) titles[4]));
-
+ */
scrollPane.setViewportView(table);
JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
@@ -200,7 +223,7 @@ public class PermissionImage_GUI extends JFrame {
@Override
public void mouseClicked(MouseEvent arg0) {
- PermissionImage_GUI.this.setVisible(false);
+ PermissionEditLecture_GUI.this.setVisible(false);
MainMenue_GUI main=new MainMenue_GUI();
main.setVisible(true);
}
@@ -213,17 +236,17 @@ public class PermissionImage_GUI extends JFrame {
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
- JLabel lblVlimage = new JLabel("VL-Image");
+ JLabel lblVlimage = new JLabel("Veranstaltung");
lblVlimage.setForeground(Color.BLUE);
- lblVlimage.setBounds(81, 11, 45, 14);
+ lblVlimage.setBounds(81, 11, 90, 14);
contentPanel.add(lblVlimage);
JLabel label_2 = new JLabel(">");
- label_2.setBounds(133, 11, 13, 14);
+ label_2.setBounds(181, 11, 13, 14);
contentPanel.add(label_2);
- JLabel lblNewLabel_1 = new JLabel("Neu");
- lblNewLabel_1.setBounds(146, 11, 46, 14);
+ JLabel lblNewLabel_1 = new JLabel("Berechtigungen");
+ lblNewLabel_1.setBounds(194, 11, 99, 14);
contentPanel.add(lblNewLabel_1);
JLabel lblName = new JLabel("Name:");
@@ -240,7 +263,7 @@ public class PermissionImage_GUI extends JFrame {
contentPanel.add(lblHochschule);
JComboBox comboBox = new JComboBox();
- comboBox.setModel(new DefaultComboBoxModel(new String[] {"Hochschule Offenburg", "Universit\u00E4t Freiburg"}));
+ comboBox.setModel(new DefaultComboBoxModel(new String[] {"Hochschule Offenburg", "Hochschule Reutlingen", "Universit\u00E4t Freiburg"}));
comboBox.setBounds(365, 36, 202, 20);
contentPanel.add(comboBox);
{
@@ -255,7 +278,7 @@ public class PermissionImage_GUI extends JFrame {
public void actionPerformed(ActionEvent e) {
- EditImageTechnisch_GUI sr=new EditImageTechnisch_GUI();
+ EditLectureAllgemein_GUI sr=new EditLectureAllgemein_GUI();
sr.setVisible(true);
dispose();
}
@@ -269,7 +292,7 @@ public class PermissionImage_GUI extends JFrame {
continueButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- FTPEditUploader_GUI ea=new FTPEditUploader_GUI();
+ EditLectureLink_GUI ea=new EditLectureLink_GUI();
ea.setVisible(true);
dispose();
@@ -404,7 +427,7 @@ public class PermissionImage_GUI extends JFrame {
}
}
}
-class CheckBoxHeader extends JCheckBox
+/*class CheckBoxHeader extends JCheckBox
implements TableCellRenderer, MouseListener {
protected CheckBoxHeader rendererComponent;
protected int column;
@@ -468,4 +491,4 @@ public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
-}
+} */
diff --git a/Dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java b/Dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java
index 6035ebf5..7a6c2118 100644
--- a/Dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java
+++ b/Dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java
@@ -1,453 +1,627 @@
-package gui.lecture;
-
-import gui.intro.About_GUI;
-import gui.intro.MainMenue_GUI;
-
-import java.awt.Color;
-import java.awt.FlowLayout;
-import java.awt.Font;
-import java.awt.SystemColor;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.awt.event.KeyAdapter;
-import java.awt.event.KeyEvent;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.awt.event.WindowAdapter;
-import java.awt.event.WindowEvent;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.swing.JButton;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JMenu;
-import javax.swing.JMenuBar;
-import javax.swing.JMenuItem;
-import javax.swing.JPanel;
-import javax.swing.JRadioButton;
-import javax.swing.JScrollPane;
-import javax.swing.JSeparator;
-import javax.swing.JTabbedPane;
-import javax.swing.JTable;
-import javax.swing.JTextField;
-import javax.swing.JTextPane;
-import javax.swing.RowFilter;
-import javax.swing.UIManager;
-import javax.swing.UnsupportedLookAndFeelException;
-import javax.swing.border.EmptyBorder;
-import javax.swing.border.TitledBorder;
-import javax.swing.event.ChangeEvent;
-import javax.swing.event.ChangeListener;
-import javax.swing.table.DefaultTableModel;
-import javax.swing.table.TableModel;
-import javax.swing.table.TableRowSorter;
-
-import models.Links;
-import models.person;
-
-import org.apache.thrift.TException;
-
-import server.Server.Client;
-import thrift.ThriftConnection;
-import util.GuiOrganizer;
-import util.OpenLinks;
-
-@SuppressWarnings("serial")
-public class SearchLecture_GUI extends JFrame {
-
- private final JPanel contentPanel = new JPanel();
- String[] result;
- JRadioButton rdbtnInternetJa;
- JRadioButton rdbtnInternetNein;
- JTable tableAllLectures;
- JTable tablemyLectures;
- JTable tableCoopImages;
- JTable tablePublicVorlagen;
- JTable tablePublicImages;
- private JTextField textFieldName;
- JTabbedPane tabbedPane;
- String[] titles = { "Veranstaltungsname", "Beschreibung",
- "G\u00fcltigkeitsdatum", "Aktiv", "Letzte Benutzung",
- "Verantwortlicher", "Image", "Schlagwort", "ID" };
- ThriftConnection con = new ThriftConnection();
- Client client = models.Client.clientcon.getClient();
- final DefaultTableModel modelAll = new DefaultTableModel(titles, 0){
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- return false;
- }
- };
- final DefaultTableModel modelMyLectures = new DefaultTableModel(titles, 0){
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- return false;
- }
- };
- final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
- modelAll);
- final TableRowSorter<TableModel> rowSorterMyLectures = new TableRowSorter<TableModel>(
- modelMyLectures);
-
-
- /**
- * Create the dialog.
- */
- public SearchLecture_GUI() {
- addWindowListener(new WindowAdapter() {
- @Override
- public void windowClosing(WindowEvent arg0) {
- // Beendet die Anwendung nach klick auf X
- con.closeThriftConnection();
- System.exit(0);
- }
- });
- // Verhindert das Vergroessern Des Fensters
- setResizable(false);
-
- try {
- // Setzt das Look & Feel auf System
- UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
- } catch (ClassNotFoundException | InstantiationException
- | IllegalAccessException | UnsupportedLookAndFeelException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- // Setzt den Fenstertitel
- setTitle("bwLehrpool Suite *Prototyp* - Veranstaltung suchen");
- // Zentriert das Fenster in die Bildmitte 2;
- setBounds(0, 0, 603, 722);
- GuiOrganizer.centerGUI(this);
-
- final DefaultTableModel model = new DefaultTableModel(titles, 0);
-
- getContentPane().setLayout(null);
- {
- JPanel panel = new JPanel();
- panel.setBackground(SystemColor.menu);
- panel.setBounds(10, 11, 577, 57);
- getContentPane().add(panel);
- panel.setLayout(null);
- {
- JLabel lblNewLabel = new JLabel("Suche nach Veranstaltung");
- lblNewLabel.setBounds(10, 11, 509, 22);
- panel.add(lblNewLabel);
- lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
- }
-
- JTextPane txtpnBitteWhlenSie = new JTextPane();
- txtpnBitteWhlenSie.setEditable(false);
- txtpnBitteWhlenSie.setBackground(SystemColor.menu);
- txtpnBitteWhlenSie
- .setText("Hier k\u00F6nnen Sie nach Ihrem gew\u00FCnschten VL-Image suchen und dieses f\u00FCr weitere Schritte ausw\u00E4hlen");
- txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
- panel.add(txtpnBitteWhlenSie);
- }
- contentPanel.setBounds(10, 85, 577, 531);
- contentPanel.setBackground(SystemColor.menu);
- contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
- getContentPane().add(contentPanel);
- contentPanel.setLayout(null);
-
- JPanel panel_1 = new JPanel();
- panel_1.setBackground(SystemColor.menu);
- panel_1.setBorder(new TitledBorder(null, "Filterfunktionen",
- TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 49, 557, 131);
- contentPanel.add(panel_1);
- panel_1.setLayout(null);
-
- JLabel lblNewLabel_2 = new JLabel("Anzeigename:");
- lblNewLabel_2.setBounds(10, 30, 250, 20);
- panel_1.add(lblNewLabel_2);
-
- textFieldName = new JTextField();
- // Key Listener der Tastatureingabe registriert
- textFieldName.addKeyListener(new KeyAdapter() {
- @Override
- public void keyReleased(KeyEvent e) {
- // Textfield eingabe auslesen
- String stext = textFieldName.getText();
-
- // Wenn Textfield nicht leer
- if (stext != "") {
- // Filtere nach der Eingabe
- rowSorterAll.setRowFilter(RowFilter.regexFilter(
- textFieldName.getText(), 0));
- rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
- textFieldName.getText(), 0));
-
- }
- }
- });
-
- textFieldName.setBounds(270, 30, 250, 20);
- panel_1.add(textFieldName);
- textFieldName.setColumns(10);
-
- JLabel lblErweiterteSuche = new JLabel(
- "<html><u>Erweiterte Suche *Folgt noch*</u></html>");
- lblErweiterteSuche.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
- // oeffnet das Fenster Extended GUI
-
- //ExtendedSearchForImages_GUI es = new ExtendedSearchForImages_GUI();
- //es.setVisible(true);
- }
- });
- lblErweiterteSuche.setForeground(Color.BLUE);
-
- lblErweiterteSuche.setBounds(315, 106, 205, 14);
- panel_1.add(lblErweiterteSuche);
-
- JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
- lblHauptmen.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
- // oeffnet das Hauptmenue
-
- SearchLecture_GUI.this.setVisible(false);
- MainMenue_GUI main = new MainMenue_GUI();
- main.setVisible(true);
- }
- });
- lblHauptmen.setForeground(Color.BLUE);
- lblHauptmen.setBounds(10, 11, 61, 14);
- contentPanel.add(lblHauptmen);
-
- JLabel label_1 = new JLabel(">");
- label_1.setBounds(69, 11, 13, 14);
- contentPanel.add(label_1);
-
- JLabel lblVlimage = new JLabel("Veranstaltung");
- lblVlimage.setForeground(Color.BLUE);
- lblVlimage.setBounds(81, 11, 75, 14);
- contentPanel.add(lblVlimage);
-
- JLabel label_2 = new JLabel(">");
- label_2.setBounds(152, 11, 13, 14);
- contentPanel.add(label_2);
-
- JLabel lblNewLabel_1 = new JLabel("Veranstaltungsauswahl");
- lblNewLabel_1.setBounds(166, 11, 128, 14);
- contentPanel.add(lblNewLabel_1);
-
- tabbedPane = new JTabbedPane(JTabbedPane.TOP);
- tabbedPane.addChangeListener(new ChangeListener() {
- public void stateChanged(ChangeEvent arg0) {
- if (tabbedPane.getSelectedIndex() == 0) {
-
- String username = person.verantwortlicher.getName() + " "
- + person.verantwortlicher.getVorname();
- rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
- username, 5));
- } else if (tabbedPane.getSelectedIndex() == 1) {
-
- }
-
- }
- });
-
- tabbedPane.setBounds(10, 197, 557, 323);
- contentPanel.add(tabbedPane);
- initTableModel(modelMyLectures);
-
- JScrollPane scrollPaneAllImages = new JScrollPane();
- tableAllLectures = new JTable();
- tableAllLectures.setModel(modelAll);
- tableAllLectures.getColumnModel().getColumn(1).sizeWidthToFit();
- tableAllLectures.getColumnModel().getColumn(2).sizeWidthToFit();
- tableAllLectures.getColumnModel().getColumn(3).sizeWidthToFit();
- tableAllLectures.getColumnModel().getColumn(4).sizeWidthToFit();
- tableAllLectures.getColumnModel().getColumn(5).sizeWidthToFit();
- initTableModel(modelAll);
-
- JScrollPane scrollPaneMyImage = new JScrollPane();
- tablemyLectures = new JTable();
- tablemyLectures.setModel(modelMyLectures);
-
- tablemyLectures.getColumnModel().getColumn(1).sizeWidthToFit();
- tablemyLectures.getColumnModel().getColumn(2).sizeWidthToFit();
- tablemyLectures.getColumnModel().getColumn(3).sizeWidthToFit();
- tablemyLectures.getColumnModel().getColumn(4).sizeWidthToFit();
- tablemyLectures.getColumnModel().getColumn(5).sizeWidthToFit();
- tablemyLectures.setRowSorter(rowSorterMyLectures);
-
- scrollPaneMyImage.setViewportView(tablemyLectures);
- tabbedPane.addTab("Meine Veranstaltungen", null, scrollPaneMyImage,
- null);
- tableAllLectures.setRowSorter(rowSorterAll);
-
- scrollPaneAllImages.setViewportView(tableAllLectures);
- tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
-
- JScrollPane scrollPaneCoopImages = new JScrollPane();
- tableCoopImages = new JTable();
- tableCoopImages.setModel(model);
- tableCoopImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPaneCoopImages.setViewportView(tableCoopImages);
- tabbedPane.addTab("Kooperative Veranstaltungen", null,
- scrollPaneCoopImages, null);
- tabbedPane.setEnabledAt(2, false);
-
- JScrollPane scrollPanePublicImages = new JScrollPane();
- tablePublicImages = new JTable();
- tablePublicImages.setModel(model);
- tablePublicImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicImages.setViewportView(tablePublicImages);
- tabbedPane.addTab("\u00D6ffentliche Images", null,
- scrollPanePublicImages, null);
- tabbedPane.setEnabledAt(3, false);
-
- JScrollPane scrollPanePublicVorlagen = new JScrollPane();
- tablePublicVorlagen = new JTable();
- tablePublicVorlagen.setModel(model);
- tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
- tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
-
- scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
- tabbedPane.addTab("\u00D6ffentliche Vorlagen", null,
- scrollPanePublicVorlagen, null);
- tabbedPane.setEnabledAt(4, false);
- {
- JPanel buttonPane = new JPanel();
- buttonPane.setBounds(0, 640, 597, 33);
- buttonPane.setBackground(SystemColor.menu);
- buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
- getContentPane().add(buttonPane);
- {
- JButton btnBack = new JButton("Zur\u00FCck");
- btnBack.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- // oeffnet das Hauptmenue
-
- MainMenue_GUI main = new MainMenue_GUI();
- main.setVisible(true);
- dispose();
- }
- });
- btnBack.setActionCommand("OK");
- buttonPane.add(btnBack);
- getRootPane().setDefaultButton(btnBack);
- }
- }
-
- JSeparator separator = new JSeparator();
- separator.setBounds(0, 78, 597, 2);
- getContentPane().add(separator);
-
- JSeparator separator_1 = new JSeparator();
- separator_1.setBounds(0, 627, 597, 2);
- getContentPane().add(separator_1);
-
- JMenuBar menuBar = new JMenuBar();
- setJMenuBar(menuBar);
-
- JMenu mnNewMenu_1 = new JMenu("Hilfe");
- menuBar.add(mnNewMenu_1);
-
- JMenuItem mntmFaq = new JMenuItem("FAQ");
- mntmFaq.addMouseListener(new MouseAdapter() {
- @Override
- public void mousePressed(MouseEvent arg0) {
-
- OpenLinks open = new OpenLinks();
-
- URI windows;
- try {
- windows = new URI(Links.getFAQ());
-
- open.openWebpage(windows);
-
- } catch (URISyntaxException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- });
- mnNewMenu_1.add(mntmFaq);
-
-
- JMenuItem mntmOtrs = new JMenuItem("OTRS");
- mntmOtrs.addMouseListener(new MouseAdapter() {
- @Override
- public void mousePressed(MouseEvent arg0) {
-
- OpenLinks open = new OpenLinks();
-
- URI windows;
- try {
- windows = new URI(Links.getOTRS());
-
- open.openWebpage(windows);
-
- } catch (URISyntaxException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- }
- });
- mnNewMenu_1.add(mntmOtrs);
-
- JMenuItem mntmAbout = new JMenuItem("About");
- mntmAbout.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- About_GUI ab = new About_GUI();
- ab.setVisible(true);
- }
- });
- mnNewMenu_1.add(mntmAbout);
-
- }
-
- // Initiale Beffuelung eines Table models
- public DefaultTableModel initTableModel(DefaultTableModel model) {
- List<server.Lecture> lectures;
- try {
- // Hole eine Liste der Images
- lectures = client.getLectureList();
- Iterator<server.Lecture> i = lectures.iterator();
-
- int x = 0;
-
- while (i.hasNext()) {
- // erzeuge Objekte fuer die Tabelle
- Object[] obj = {
- lectures.get(x).lecturename,
- lectures.get(x).desc,
- lectures.get(x).starttime + " "
- + lectures.get(x).endtime,
- lectures.get(x).isActive, lectures.get(x).lastused,
- lectures.get(x).username, " ",
- lectures.get(x).imagename, lectures.get(x).id };
- // Fuege diese Objekte der Tabelle hinzu
- model.addRow(obj);
- x++;
- i.next();
-
- }
-
- return model;
- } catch (TException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }
- return model;
- }
-
-}
+package gui.lecture;
+
+import gui.intro.About_GUI;
+import gui.intro.MainMenue_GUI;
+
+import java.awt.Color;
+import java.awt.FlowLayout;
+import java.awt.Font;
+import java.awt.Point;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.KeyAdapter;
+import java.awt.event.KeyEvent;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JPanel;
+import javax.swing.JRadioButton;
+import javax.swing.JScrollPane;
+import javax.swing.JSeparator;
+import javax.swing.JTabbedPane;
+import javax.swing.JTable;
+import javax.swing.JTextField;
+import javax.swing.JTextPane;
+import javax.swing.RowFilter;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+import javax.swing.border.EmptyBorder;
+import javax.swing.border.TitledBorder;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+import javax.swing.table.DefaultTableModel;
+import javax.swing.table.TableModel;
+import javax.swing.table.TableRowSorter;
+
+import models.Links;
+import models.person;
+
+import org.apache.thrift.TException;
+
+import server.Server.Client;
+import thrift.ThriftConnection;
+import util.GuiOrganizer;
+import util.OpenLinks;
+import javax.swing.JTextArea;
+import javax.swing.ScrollPaneConstants;
+
+@SuppressWarnings("serial")
+public class SearchLecture_GUI extends JFrame {
+
+ private final JPanel contentPanel = new JPanel();
+ String[] result;
+ JRadioButton rdbtnInternetJa;
+ JRadioButton rdbtnInternetNein;
+ JLabel labelAktiv;
+ JLabel labelstartdate;
+ JLabel labelenddate;
+ JLabel labelimageversion;
+ JTextArea labelName;
+ JTextArea labelimage;
+ JTextArea labeldesc;
+ JLabel labelVerantwortlicher;
+ JTable tableAllLectures;
+ JTable tablemyLectures;
+ private JTextField textFieldName;
+ JTabbedPane tabbedPane;
+ boolean activeSearch=false;
+ String[] titles = { "Veranstaltungsname", "Beschreibung",
+ "G\u00fcltigkeitsdatum", "Aktiv", "Letzte Benutzung",
+ "Verantwortlicher", "Image", "Schlagwort", "ID" };
+ ThriftConnection con = new ThriftConnection();
+ Client client = models.Client.clientcon.getClient();
+ final DefaultTableModel modelAll = new DefaultTableModel(titles, 0){
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final DefaultTableModel modelMyLectures = new DefaultTableModel(titles, 0){
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
+ modelAll);
+ final TableRowSorter<TableModel> rowSorterMyLectures = new TableRowSorter<TableModel>(
+ modelMyLectures);
+ private JTextField textField;
+
+
+ /**
+ * Create the dialog.
+ */
+ public SearchLecture_GUI() {
+ addWindowListener(new WindowAdapter() {
+ @Override
+ public void windowClosing(WindowEvent arg0) {
+ // Beendet die Anwendung nach klick auf X
+ con.closeThriftConnection();
+ System.exit(0);
+ }
+ @Override
+ public void windowOpened(WindowEvent arg0) {
+ try {
+ initTableModel(modelMyLectures);
+ initTableModel(modelAll);
+
+ } catch (ParseException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ tablemyLectures.getColumnModel().getColumn(1).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(1).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(1).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(2).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(2).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(2).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(3).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(3).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(3).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(6).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(6).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(6).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(7).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(7).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(7).setMaxWidth(0);
+ tablemyLectures.getColumnModel().getColumn(8).setWidth(0);
+ tablemyLectures.getColumnModel().getColumn(8).setMinWidth(0);
+ tablemyLectures.getColumnModel().getColumn(8).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(1).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(1).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(1).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(2).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(2).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(2).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(3).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(3).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(3).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(6).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(6).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(6).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(7).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(7).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(7).setMaxWidth(0);
+ tableAllLectures.getColumnModel().getColumn(8).setWidth(0);
+ tableAllLectures.getColumnModel().getColumn(8).setMinWidth(0);
+ tableAllLectures.getColumnModel().getColumn(8).setMaxWidth(0);
+ }
+ });
+ // Verhindert das Vergroessern Des Fensters
+ setResizable(false);
+
+ try {
+ // Setzt das Look & Feel auf System
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ } catch (ClassNotFoundException | InstantiationException
+ | IllegalAccessException | UnsupportedLookAndFeelException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ // Setzt den Fenstertitel
+ setTitle("bwLehrpool Suite - Veranstaltung suchen");
+ // Zentriert das Fenster in die Bildmitte 2;
+ setBounds(0, 0, 842, 722);
+ GuiOrganizer.centerGUI(this);
+
+ getContentPane().setLayout(null);
+ {
+ JPanel panel = new JPanel();
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(10, 11, 816, 57);
+ getContentPane().add(panel);
+ panel.setLayout(null);
+ {
+ JLabel lblNewLabel = new JLabel("Suche nach Veranstaltung");
+ lblNewLabel.setBounds(10, 11, 509, 22);
+ panel.add(lblNewLabel);
+ lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
+ }
+
+ JTextPane txtpnBitteWhlenSie = new JTextPane();
+ txtpnBitteWhlenSie.setEditable(false);
+ txtpnBitteWhlenSie.setBackground(SystemColor.menu);
+ txtpnBitteWhlenSie
+ .setText("Hier k\u00F6nnen Sie nach Ihrer gew\u00fcnschten Veranstaltung suchen und diese f\u00fcr weitere Schritte ausw\u00e4hlen.");
+ txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
+ panel.add(txtpnBitteWhlenSie);
+ }
+ contentPanel.setBounds(10, 85, 577, 531);
+ contentPanel.setBackground(SystemColor.menu);
+ contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
+ getContentPane().add(contentPanel);
+ contentPanel.setLayout(null);
+
+ JPanel panel_1 = new JPanel();
+ panel_1.setBackground(SystemColor.menu);
+ panel_1.setBorder(new TitledBorder(null, "Filterfunktionen",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_1.setBounds(10, 49, 557, 63);
+ contentPanel.add(panel_1);
+ panel_1.setLayout(null);
+
+ JLabel lblNewLabel_2 = new JLabel("Name:");
+ lblNewLabel_2.setBounds(10, 30, 80, 20);
+ panel_1.add(lblNewLabel_2);
+
+ textFieldName = new JTextField();
+ // Key Listener der Tastatureingabe registriert
+ textFieldName.addKeyListener(new KeyAdapter() {
+ @Override
+ public void keyReleased(KeyEvent e) {
+ // Textfield eingabe auslesen
+ String stext = textFieldName.getText();
+ // Wenn Textfield nicht leer
+ if (stext != "") {
+ activeSearch=true;
+ // Filtere nach der Eingabe
+ rowSorterAll.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+ rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
+ textFieldName.getText(), 0));
+
+ }else{
+ activeSearch=false;
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
+ username, 5));
+ rowSorterAll.setRowFilter(null);
+ }
+ }
+ });
+
+ textFieldName.setBounds(96, 30, 166, 20);
+ panel_1.add(textFieldName);
+ textFieldName.setColumns(10);
+
+ JLabel label = new JLabel("Beschreibung:");
+ label.setBounds(291, 30, 80, 20);
+ panel_1.add(label);
+
+ textField = new JTextField();
+ textField.setColumns(10);
+ textField.setBounds(381, 30, 166, 20);
+ panel_1.add(textField);
+
+ JLabel lblHauptmen = new JLabel("Hauptmen\u00fc");
+ lblHauptmen.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mouseClicked(MouseEvent arg0) {
+ // oeffnet das Hauptmenue
+
+ SearchLecture_GUI.this.setVisible(false);
+ MainMenue_GUI main = new MainMenue_GUI();
+ main.setVisible(true);
+ }
+ });
+ lblHauptmen.setForeground(Color.BLUE);
+ lblHauptmen.setBounds(10, 11, 61, 14);
+ contentPanel.add(lblHauptmen);
+
+ JLabel label_1 = new JLabel(">");
+ label_1.setBounds(69, 11, 13, 14);
+ contentPanel.add(label_1);
+
+ JLabel lblVlimage = new JLabel("Veranstaltung");
+ lblVlimage.setForeground(Color.BLUE);
+ lblVlimage.setBounds(81, 11, 75, 14);
+ contentPanel.add(lblVlimage);
+
+ JLabel label_2 = new JLabel(">");
+ label_2.setBounds(152, 11, 13, 14);
+ contentPanel.add(label_2);
+
+ JLabel lblNewLabel_1 = new JLabel("Veranstaltungssuche");
+ lblNewLabel_1.setBounds(166, 11, 128, 14);
+ contentPanel.add(lblNewLabel_1);
+
+ tabbedPane = new JTabbedPane(JTabbedPane.TOP);
+ tabbedPane.addChangeListener(new ChangeListener() {
+ public void stateChanged(ChangeEvent arg0) {
+ if (tabbedPane.getSelectedIndex() == 0) {
+
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
+ rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
+ username, 5));
+ } else if (tabbedPane.getSelectedIndex() == 1) {
+
+ }
+
+ }
+ });
+
+ tabbedPane.setBounds(10, 123, 557, 397);
+ contentPanel.add(tabbedPane);
+
+
+ JScrollPane scrollPaneAllImages = new JScrollPane();
+ tableAllLectures = new JTable();
+ tableAllLectures.getSelectionModel().addListSelectionListener( new ListSelectionListener()
+ {
+ public void valueChanged(ListSelectionEvent e)
+ {
+ String imageid = modelAll
+ .getValueAt(
+ tableAllLectures
+ .convertRowIndexToModel(tableAllLectures
+ .getSelectedRow()), 8)
+ .toString();
+ //System.out.println(imageid);
+
+ try {
+ writeLectureData(imageid);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ } catch (ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
+ });
+ tableAllLectures.setModel(modelAll);
+ tableAllLectures.getColumnModel().getColumn(1).sizeWidthToFit();
+ tableAllLectures.getColumnModel().getColumn(2).sizeWidthToFit();
+ tableAllLectures.getColumnModel().getColumn(3).sizeWidthToFit();
+ tableAllLectures.getColumnModel().getColumn(4).sizeWidthToFit();
+ tableAllLectures.getColumnModel().getColumn(5).sizeWidthToFit();
+
+ JScrollPane scrollPaneMyImage = new JScrollPane();
+ tablemyLectures = new JTable();
+ tablemyLectures.getSelectionModel().addListSelectionListener( new ListSelectionListener()
+ {
+ public void valueChanged(ListSelectionEvent e)
+ {
+ String imageid = modelMyLectures
+ .getValueAt(
+ tablemyLectures
+ .convertRowIndexToModel(tablemyLectures
+ .getSelectedRow()), 8)
+ .toString();
+ //System.out.println(imageid);
+
+ try {
+ writeLectureData(imageid);
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ } catch (ParseException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
+ });
+ tablemyLectures.setModel(modelMyLectures);
+
+ tablemyLectures.getColumnModel().getColumn(1).sizeWidthToFit();
+ tablemyLectures.getColumnModel().getColumn(2).sizeWidthToFit();
+ tablemyLectures.getColumnModel().getColumn(3).sizeWidthToFit();
+ tablemyLectures.getColumnModel().getColumn(4).sizeWidthToFit();
+ tablemyLectures.getColumnModel().getColumn(5).sizeWidthToFit();
+ tablemyLectures.setRowSorter(rowSorterMyLectures);
+
+ scrollPaneMyImage.setViewportView(tablemyLectures);
+ tabbedPane.addTab("Meine Veranstaltungen", null, scrollPaneMyImage,
+ null);
+ tableAllLectures.setRowSorter(rowSorterAll);
+
+ scrollPaneAllImages.setViewportView(tableAllLectures);
+ tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
+ {
+ JPanel buttonPane = new JPanel();
+ buttonPane.setBounds(0, 640, 826, 33);
+ buttonPane.setBackground(SystemColor.menu);
+ buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
+ getContentPane().add(buttonPane);
+ {
+ JButton btnBack = new JButton("Zur\u00FCck");
+ btnBack.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ // oeffnet das Hauptmenue
+
+ MainMenue_GUI main = new MainMenue_GUI();
+ main.setVisible(true);
+ dispose();
+ }
+ });
+ btnBack.setActionCommand("OK");
+ buttonPane.add(btnBack);
+ getRootPane().setDefaultButton(btnBack);
+ }
+ }
+
+ JSeparator separator = new JSeparator();
+ separator.setBounds(0, 79, 836, 1);
+ getContentPane().add(separator);
+
+ JSeparator separator_1 = new JSeparator();
+ separator_1.setBounds(0, 628, 836, 1);
+ getContentPane().add(separator_1);
+
+ JPanel panel = new JPanel();
+ panel.setLayout(null);
+ panel.setBorder(new TitledBorder(null, "Detailinformationen",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(591, 85, 235, 518);
+ getContentPane().add(panel);
+
+ JLabel lblNewLabel_3 = new JLabel("Name:");
+ lblNewLabel_3.setBounds(10, 27, 104, 14);
+ panel.add(lblNewLabel_3);
+
+ JLabel lblAktiv = new JLabel("Aktiv:");
+ lblAktiv.setBounds(10, 98, 104, 14);
+ panel.add(lblAktiv);
+
+ labelAktiv = new JLabel("");
+ labelAktiv.setBounds(10, 114, 218, 14);
+ panel.add(labelAktiv);
+
+ labelstartdate = new JLabel("");
+ labelstartdate.setBounds(10, 147, 218, 14);
+ panel.add(labelstartdate);
+
+ JLabel lblStartdatum = new JLabel("Startdatum:");
+ lblStartdatum.setBounds(10, 129, 104, 14);
+ panel.add(lblStartdatum);
+
+ labelenddate = new JLabel("");
+ labelenddate.setBounds(10, 175, 218, 14);
+ panel.add(labelenddate);
+
+ JLabel lblEnddatum = new JLabel("Enddatum:");
+ lblEnddatum.setBounds(10, 161, 104, 14);
+ panel.add(lblEnddatum);
+
+ JLabel lblBeschreibung = new JLabel("Beschreibung:");
+ lblBeschreibung.setBounds(10, 189, 104, 14);
+ panel.add(lblBeschreibung);
+
+ JLabel lblImage = new JLabel("Image:");
+ lblImage.setBounds(10, 293, 104, 14);
+ panel.add(lblImage);
+
+ labelVerantwortlicher = new JLabel("");
+ labelVerantwortlicher.setBounds(10, 426, 218, 14);
+ panel.add(labelVerantwortlicher);
+
+ JLabel lblVerantwortlicher = new JLabel("Verantwortlicher:");
+ lblVerantwortlicher.setBounds(10, 411, 104, 14);
+ panel.add(lblVerantwortlicher);
+
+ JLabel lblImageversion = new JLabel("Imageversion:");
+ lblImageversion.setBounds(10, 381, 104, 14);
+ panel.add(lblImageversion);
+
+ labelimageversion = new JLabel("");
+ labelimageversion.setBounds(10, 399, 218, 14);
+ panel.add(labelimageversion);
+
+
+ labeldesc = new JTextArea();
+ labeldesc.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ labeldesc.setEditable(false);
+ labeldesc.setLineWrap(true);
+ labeldesc.setBackground(SystemColor.menu);
+ labeldesc.setBounds(124, 127, 104, 110);
+ JScrollPane scrollPane = new JScrollPane(labeldesc);
+ scrollPane.setBounds(10, 209, 218, 81);
+ panel.add(scrollPane);
+ //panel.add(labeldesc);
+
+ labelimage = new JTextArea();
+ labelimage.setLineWrap(true);
+ labelimage.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ labelimage.setEditable(false);
+ labelimage.setBackground(SystemColor.menu);
+ labelimage.setBounds(124, 248, 101, 81);
+ JScrollPane scrollPaneImage = new JScrollPane(labelimage);
+ scrollPaneImage.setBounds(10, 309, 215, 69);
+ panel.add(scrollPaneImage);
+
+ labelName = new JTextArea();
+ labelName.setEditable(false);
+ labelName.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ labelName.setBackground(SystemColor.menu);
+ labelName.setBounds(124, 22, 101, 55);
+ JScrollPane scrollPaneName = new JScrollPane(labelName);
+ scrollPaneName.setBounds(10, 40, 218, 55);
+ panel.add(scrollPaneName);
+ //panel.add(labelName);
+ //panel.add(labelimage);
+
+ JMenuBar menuBar = new JMenuBar();
+ setJMenuBar(menuBar);
+
+ JMenu mnNewMenu_1 = new JMenu("Hilfe");
+ menuBar.add(mnNewMenu_1);
+
+ JMenuItem mntmFaq = new JMenuItem("FAQ");
+ mntmFaq.addMouseListener(new MouseAdapter() {
+ @SuppressWarnings("static-access")
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getFAQ());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ });
+ mnNewMenu_1.add(mntmFaq);
+
+
+ JMenuItem mntmOtrs = new JMenuItem("OTRS");
+ mntmOtrs.addMouseListener(new MouseAdapter() {
+ @SuppressWarnings("static-access")
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getOTRS());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ }
+ });
+ mnNewMenu_1.add(mntmOtrs);
+
+ JMenuItem mntmAbout = new JMenuItem("About");
+ mntmAbout.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ About_GUI ab = new About_GUI();
+ ab.setVisible(true);
+ }
+ });
+ mnNewMenu_1.add(mntmAbout);
+
+ }
+
+ // Initiale Beffuelung eines Table models
+ public DefaultTableModel initTableModel(DefaultTableModel model) throws ParseException {
+ List<server.Lecture> lectures;
+ try {
+ // Hole eine Liste der Images
+ lectures = client.getLectureList();
+ Iterator<server.Lecture> i = lectures.iterator();
+ SimpleDateFormat in=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat out=new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
+ int x = 0;
+
+ while (i.hasNext()) {
+ // erzeuge Objekte fuer die Tabelle
+ Object[] obj = {
+ lectures.get(x).lecturename,
+ lectures.get(x).desc,
+ out.format(in.parse(lectures.get(x).starttime)) + " "
+ + out.format(in.parse(lectures.get(x).endtime)),
+ lectures.get(x).isActive, out.format(in.parse(lectures.get(x).lastused)),
+ lectures.get(x).username,
+ lectures.get(x).imagename," " ,lectures.get(x).id };
+ // Fuege diese Objekte der Tabelle hinzu
+ model.addRow(obj);
+ x++;
+ i.next();
+
+ }
+
+ return model;
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ return model;
+ }
+ public void writeLectureData(String id) throws TException, ParseException{
+
+ SimpleDateFormat in=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ SimpleDateFormat out=new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
+ Map<String,String> res=client.getLectureData(id);
+ labelName.setText(res.get("name"));
+ labelAktiv.setText(res.get("isActive"));
+ labeldesc.setText(res.get("desc"));
+ labelVerantwortlicher.setText(res.get("owner"));
+ labelstartdate.setText(out.format(in.parse(res.get("startTime"))));
+ labelenddate.setText(out.format(in.parse(res.get("endTime"))));
+ labelimage.setText(res.get("imagepath").substring(res.get("imagepath").indexOf("/")+1));
+ labelimageversion.setText(res.get("imageversion"));
+
+
+ }
+}
diff --git a/Dozentenmodul/src/main/java/models/Image.java b/Dozentenmodul/src/main/java/models/Image.java
index a18ae8fe..fc31e583 100644
--- a/Dozentenmodul/src/main/java/models/Image.java
+++ b/Dozentenmodul/src/main/java/models/Image.java
@@ -13,6 +13,8 @@ public class Image {
private String newName;
private String imagepath;
+
+ private String OS;
private int shareMode;
@@ -27,16 +29,34 @@ public class Image {
private int cpu;
private long filesize;
+
+ private String desc;
public static Image image =new Image();
-
+
+
+ public String getDesc() {
+ return desc;
+ }
+
+ public void setDesc(String desc) {
+ this.desc = desc;
+ }
+
+ public String getOS() {
+ return OS;
+ }
+
+ public void setOS(String oS) {
+ OS = oS;
+ }
- public int getShareMode() {
+ public int getShareMode() {
return shareMode;
diff --git a/Dozentenmodul/src/main/java/models/ImageRights.java b/Dozentenmodul/src/main/java/models/ImageRights.java
new file mode 100644
index 00000000..1b7e0e55
--- /dev/null
+++ b/Dozentenmodul/src/main/java/models/ImageRights.java
@@ -0,0 +1,45 @@
+package models;
+
+public class ImageRights {
+
+ private int read;
+ private int write;
+ private int changePermission;
+ private int admin;
+ private int linkAllowed;
+
+ public static ImageRights rights =new ImageRights();
+ public int getRead() {
+ return read;
+ }
+ public void setRead(int read) {
+ this.read = read;
+ }
+ public int getWrite() {
+ return write;
+ }
+ public void setWrite(int write) {
+ this.write = write;
+ }
+ public int getChangePermission() {
+ return changePermission;
+ }
+ public void setChangePermission(int changePermission) {
+ this.changePermission = changePermission;
+ }
+ public int getAdmin() {
+ return admin;
+ }
+ public void setAdmin(int admin) {
+ this.admin = admin;
+ }
+ public int getLinkAllowed() {
+ return linkAllowed;
+ }
+ public void setLinkAllowed(int linkAllowed) {
+ this.linkAllowed = linkAllowed;
+ }
+
+
+
+}
diff --git a/Dozentenmodul/src/main/java/models/LectureRights.java b/Dozentenmodul/src/main/java/models/LectureRights.java
new file mode 100644
index 00000000..c136141f
--- /dev/null
+++ b/Dozentenmodul/src/main/java/models/LectureRights.java
@@ -0,0 +1,37 @@
+package models;
+
+public class LectureRights {
+ private int recRead;
+ private int recWrite;
+ private int recChangePermission;
+ private int recAdmin;
+
+ public static LectureRights rights =new LectureRights();
+
+ public int getRecRead() {
+ return recRead;
+ }
+ public void setRecRead(int recRead) {
+ this.recRead = recRead;
+ }
+ public int getRecWrite() {
+ return recWrite;
+ }
+ public void setRecWrite(int recWrite) {
+ this.recWrite = recWrite;
+ }
+ public int getRecChangePermission() {
+ return recChangePermission;
+ }
+ public void setRecChangePermission(int recChangePermission) {
+ this.recChangePermission = recChangePermission;
+ }
+ public int getRecAdmin() {
+ return recAdmin;
+ }
+ public void setRecAdmin(int recAdmin) {
+ this.recAdmin = recAdmin;
+ }
+
+
+}
diff --git a/Dozentenmodul/src/main/java/models/Links.java b/Dozentenmodul/src/main/java/models/Links.java
index 693fbb3e..80e3182e 100644
--- a/Dozentenmodul/src/main/java/models/Links.java
+++ b/Dozentenmodul/src/main/java/models/Links.java
@@ -1,161 +1,31 @@
package models;
-import java.awt.Desktop;
-import java.io.IOException;
-import java.net.URISyntaxException;
-import java.net.URL;
-
public class Links {
private static String FAQ = "http://bwlehrpool.hs-offenburg.de/";
- private static String OTRS = "https://bwlehrpool-otrs.rz.hs-offenburg.de/otrs/customer.pl";
+ private static String OTRS = "http://bwlehrpool.hs-offenburg.de/";
private static String uriWindows = "https://my.vmware.com/de/web/vmware/free#desktop_end_user_computing/vmware_player/6_0";
private static String uriLinux = "https://my.vmware.com/de/web/vmware/free#desktop_end_user_computing/vmware_player/6_0";
+ private static String AnleitungVMDK = "http://www.hs-offenburg.de/fileadmin/Einrichtungen/hrz/Projekte/bwLehrpool/3_bwLehrpool_-_Image_einbinden_und_starten.pdf";
public static String getFAQ() {
return FAQ;
}
+ public static String getAnleitungVMDK(){
+ return AnleitungVMDK;
+ }
+
public static String getOTRS() {
return OTRS;
}
- public static void openFAQ() {
-
- String faq = FAQ;
- Runtime rt = Runtime.getRuntime();
- String os = System.getProperty("os.name");
-
- try {
-
-
- if (os.indexOf( "Win" ) >= 0) {
-
- rt.exec( "rundll32 url.dll,FileProtocolHandler " + faq);
-
- } else if (os.indexOf( "Mac" ) >= 0) {
-
- rt.exec( "open " + faq);
-
- } else if (os.indexOf( "nix") >=0 || os.indexOf( "nux") >=0) {
-
- // Do a best guess on unix until we get a platform independent way
- // Build a list of browsers to try, in this order.
- String[] browsers = {"epiphany", "firefox", "mozilla", "konqueror",
- "netscape","opera","links","lynx"};
-
- StringBuffer cmd = new StringBuffer();
- for (int i=0; i<browsers.length; i++)
- cmd.append( (i==0 ? "" : " || " ) + browsers[i] +" \"" + faq + "\" ");
-
- rt.exec(new String[] { "sh", "-c", cmd.toString() });
- }
-
- if (os.indexOf("Win") >= 0) {
-
- // this doesn't support showing urls in the form of
- // "page.html#nameLink"
- rt.exec("rundll32 url.dll,FileProtocolHandler " + faq);
-
- } else if (os.indexOf("Mac") >= 0) {
-
- rt.exec("open " + faq);
-
- } else if (os.indexOf("nix") >= 0 || os.indexOf("nux") >= 0) {
-
- // Do a best guess on unix until we get a platform independent
- // way
- // Build a list of browsers to try, in this order.
- String[] browsers = { "epiphany", "firefox", "mozilla",
- "konqueror", "netscape", "opera", "links", "lynx" };
-
- // Build a command string which looks like
- // "browser1 "url" || browser2 "url" ||..."
- StringBuffer cmd = new StringBuffer();
- for (int i = 0; i < browsers.length; i++)
- cmd.append((i == 0 ? "" : " || ") + browsers[i] + " \""
- + faq + "\" ");
-
- rt.exec(new String[] { "sh", "-c", cmd.toString() });
- }
-
-
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- }
-
- public static void openOTRS() {
-
- String otrs = OTRS;
- Runtime rt = Runtime.getRuntime();
- String os = System.getProperty("os.name");
-
- try {
-
- if (os.indexOf( "Win" ) >= 0) {
-
- rt.exec( "rundll32 url.dll,FileProtocolHandler " + otrs);
-
- } else if (os.indexOf( "Mac" ) >= 0) {
-
- rt.exec( "open " + otrs);
-
- } else if (os.indexOf( "nix") >=0 || os.indexOf( "nux") >=0) {
-
- String[] browsers = {"epiphany", "firefox", "mozilla", "konqueror",
- "netscape","opera","links","lynx"};
-
- StringBuffer cmd = new StringBuffer();
- for (int i=0; i<browsers.length; i++)
- cmd.append( (i==0 ? "" : " || " ) + browsers[i] +" \"" + otrs + "\" ");
-
- rt.exec(new String[] { "sh", "-c", cmd.toString() });
- }
-
- if (os.indexOf("Win") >= 0) {
-
- // this doesn't support showing urls in the form of
- // "page.html#nameLink"
- rt.exec("rundll32 url.dll,FileProtocolHandler " + otrs);
-
- } else if (os.indexOf("Mac") >= 0) {
-
- rt.exec("open " + otrs);
-
- } else if (os.indexOf("nix") >= 0 || os.indexOf("nux") >= 0) {
-
- // Do a best guess on unix until we get a platform independent
- // way
- // Build a list of browsers to try, in this order.
- String[] browsers = { "epiphany", "firefox", "mozilla",
- "konqueror", "netscape", "opera", "links", "lynx" };
-
- // Build a command string which looks like
- // "browser1 "url" || browser2 "url" ||..."
- StringBuffer cmd = new StringBuffer();
- for (int i = 0; i < browsers.length; i++)
- cmd.append((i == 0 ? "" : " || ") + browsers[i] + " \""
- + otrs + "\" ");
-
- rt.exec(new String[] { "sh", "-c", cmd.toString() });
- }
-
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- }
-
public static String getUriWindows() {
return uriWindows;
}
public static String getUriLinux() {
return uriLinux;
- }
+ }
-}
+}// end class
diff --git a/Dozentenmodul/src/main/java/models/SessionData.java b/Dozentenmodul/src/main/java/models/SessionData.java
index 187dc59f..d085bc29 100644
--- a/Dozentenmodul/src/main/java/models/SessionData.java
+++ b/Dozentenmodul/src/main/java/models/SessionData.java
@@ -5,6 +5,7 @@ public class SessionData {
private String sessionID;
private String authToken;
private String serverAdress;
+
public static SessionData session =new SessionData();
public String getSessionID() {
@@ -25,6 +26,7 @@ public class SessionData {
public void setServerAdress(String serverAdress) {
this.serverAdress = serverAdress;
}
+
}
diff --git a/Dozentenmodul/src/main/java/models/Version.java b/Dozentenmodul/src/main/java/models/Version.java
new file mode 100644
index 00000000..b44819e4
--- /dev/null
+++ b/Dozentenmodul/src/main/java/models/Version.java
@@ -0,0 +1,24 @@
+package models;
+
+public class Version {
+
+ private static String Version = "1.06";
+ private static String BuildDate = "04.09.2014";
+
+
+ public static String getVersion() {
+ return Version;
+ }
+ public static void setVersion(String version) {
+ Version = version;
+ }
+ public static String getBuildDate() {
+ return BuildDate;
+ }
+ public static void setBuildDate(String buildDate) {
+ BuildDate = buildDate;
+ }
+
+
+
+}
diff --git a/Dozentenmodul/src/main/java/models/person.java b/Dozentenmodul/src/main/java/models/person.java
index 6e066730..479c2ecd 100644
--- a/Dozentenmodul/src/main/java/models/person.java
+++ b/Dozentenmodul/src/main/java/models/person.java
@@ -17,11 +17,21 @@ public class person{
private String Fakultaet;
private boolean ischecked;
+
+ private String role;
public static person verantwortlicher=new person();
+ public String getRole() {
+ return role;
+ }
+
+ public void setRole(String role) {
+ this.role = role;
+ }
+
public String getUsername() {
return username;
diff --git a/Dozentenmodul/src/main/java/thrift/MasterThriftConnection.java b/Dozentenmodul/src/main/java/thrift/MasterThriftConnection.java
index d328d7bf..a84931c6 100644
--- a/Dozentenmodul/src/main/java/thrift/MasterThriftConnection.java
+++ b/Dozentenmodul/src/main/java/thrift/MasterThriftConnection.java
@@ -26,9 +26,6 @@ public class MasterThriftConnection {
transport.open();
} catch (TTransportException e) {
System.out.println("Keine Verbindung m\u00f6glich!");
- JOptionPane.showMessageDialog(null,
- e.getCause()+"\n"+e.getMessage(),
- "Debug-Message", JOptionPane.ERROR_MESSAGE);
return null;
}
diff --git a/Dozentenmodul/src/main/java/util/GuiOrganizer.java b/Dozentenmodul/src/main/java/util/GuiOrganizer.java
index f03c3811..5d6b2de8 100644
--- a/Dozentenmodul/src/main/java/util/GuiOrganizer.java
+++ b/Dozentenmodul/src/main/java/util/GuiOrganizer.java
@@ -5,22 +5,15 @@ import java.awt.Toolkit;
import java.awt.Window;
public abstract class GuiOrganizer {
-
-
-
- /*receive GUI, set it to center of the screen*/
- public static void centerGUI(Window gui)
- {
- Dimension dm = Toolkit.getDefaultToolkit().getScreenSize();
- double width = dm.getWidth();
- double height = dm.getHeight();
- double xPosition = (width / 2 - gui.getWidth() / 2);
- double yPosition = (height / 2 - gui.getHeight() / 2);
- gui.setLocation((int) xPosition, (int) yPosition);
- }
+ /* receive GUI, set it to center of the screen */
+ public static void centerGUI(Window gui) {
+ Dimension dm = Toolkit.getDefaultToolkit().getScreenSize();
+ double width = dm.getWidth();
+ double height = dm.getHeight();
+ double xPosition = (width / 2 - gui.getWidth() / 2);
+ double yPosition = (height / 2 - gui.getHeight() / 2);
+ gui.setLocation((int) xPosition, (int) yPosition);
+ }
-
-
-
}
diff --git a/Dozentenmodul/src/main/java/util/OpenLinks.java b/Dozentenmodul/src/main/java/util/OpenLinks.java
index a3968825..2dd7b936 100644
--- a/Dozentenmodul/src/main/java/util/OpenLinks.java
+++ b/Dozentenmodul/src/main/java/util/OpenLinks.java
@@ -3,18 +3,23 @@ package util;
import java.awt.Desktop;
import java.net.URI;
+import javax.swing.JOptionPane;
+
public class OpenLinks {
-
public static void openWebpage(URI uri) {
- Desktop desktop = Desktop.isDesktopSupported() ? Desktop.getDesktop() : null;
- if (desktop != null && desktop.isSupported(Desktop.Action.BROWSE)) {
- try {
- desktop.browse(uri);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
+ Desktop desktop = Desktop.isDesktopSupported() ? Desktop.getDesktop()
+ : null;
+ if (desktop != null && desktop.isSupported(Desktop.Action.BROWSE)) {
+ try {
+ desktop.browse(uri);
+ } catch (Exception e) {
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(null,
+ e.getCause() + "\n" + e.getStackTrace(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ }
+ }
}// end openWebpage
-
+
}