summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java
diff options
context:
space:
mode:
Diffstat (limited to 'dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java')
-rw-r--r--dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java516
1 files changed, 0 insertions, 516 deletions
diff --git a/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java b/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java
deleted file mode 100644
index d612df55..00000000
--- a/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java
+++ /dev/null
@@ -1,516 +0,0 @@
-package gui.lecture;
-
-import gui.helper.ColumnSelector;
-import gui.intro.MainMenue_GUI;
-
-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.ItemListener;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.awt.event.MouseListener;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.swing.JButton;
-import javax.swing.JCheckBox;
-import javax.swing.JInternalFrame;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.JRadioButton;
-import javax.swing.JScrollPane;
-import javax.swing.JSeparator;
-import javax.swing.JTable;
-import javax.swing.JTextPane;
-import javax.swing.ScrollPaneConstants;
-import javax.swing.border.EmptyBorder;
-import javax.swing.border.TitledBorder;
-import javax.swing.table.DefaultTableModel;
-import javax.swing.table.JTableHeader;
-import javax.swing.table.TableCellRenderer;
-import javax.swing.table.TableColumn;
-import javax.swing.table.TableColumnModel;
-
-import models.RightsManagement;
-import models.person;
-import util.CheckIntegrity;
-import util.GuiManager;
-import util.ListAllOtherUsers_GUI;
-
-@SuppressWarnings("serial")
-public class PermissionCreateLecture_GUI extends JInternalFrame {
-
- private final JPanel contentPanel = new JPanel();
-
- private JTable tablePermittedUsers = null;
- private static final String[] titles = { "Name", "Lesen", "Schreiben", "Admin", "userID" };
- public static final String HELP_MESSAGE = "<html><div align=\"center\">"
- + "Hier können Sie die Berechtigungen für Ihre Veranstaltung ändern.<br />"
- + "Es wird unterschieden, ob innerhalb der Suite (dieses Programm) Änderungen vorgenommen werden dürfen, <br />"
- + "und/oder ob die Veranstaltung auch im VMChooser angezeigt wird." + "</div></html>";
-
- private final DefaultTableModel model = new DefaultTableModel(titles, 0) {
-
- @Override
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- if (mColIndex >= 1) {
- return true;
- }
- return false;
- }
-
- @Override
- public Class<?> getColumnClass(int c) {
- switch (c) {
- case 0:
- return String.class;
- default:
- return Boolean.class;
- }
- }
-
- };
-
- // private JTable tablePermittedUsers;
-
- public PermissionCreateLecture_GUI() {
-
- setResizable(false);
- setTitle("bwLehrpool Suite - Berechtigungen - " + person.verantwortlicher.getUserID());
-
- setBounds(0, 0, 603, 722);
-
- 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("Veranstaltung - Berechtigungen");
- 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ünschten Berechtigungen für Ihre Veranstaltung");
- 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);
-
- // tablePermittedUsers = new JTable();
- tablePermittedUsers = new JTable();
- tablePermittedUsers.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent e) {
- checkIntegrity(-1);
- }
-
- @Override
- public void mouseReleased(MouseEvent e) {
-
- tablePermittedUsers.clearSelection(); //just one row is selectable
- tablePermittedUsers.setRowSelectionInterval(tablePermittedUsers.rowAtPoint(e.getPoint()),
- tablePermittedUsers.rowAtPoint(e.getPoint()));
- }
- });
-
- tablePermittedUsers.setModel(model);
- tablePermittedUsers.setSelectionForeground(Color.WHITE);
- tablePermittedUsers.getTableHeader().setReorderingAllowed(false);
- // invisible attribute userID for identifying selected user
- tablePermittedUsers.getColumnModel().getColumn(4).setWidth(0);
- tablePermittedUsers.getColumnModel().getColumn(4).setMinWidth(0);
- tablePermittedUsers.getColumnModel().getColumn(4).setMaxWidth(0);
-
- // if new session, get values for table from database
- if (RightsManagement.rightsManagement.getPermittedUserList().size() > 0) {
- List<person> listt = RightsManagement.rightsManagement.getPermittedUserList();
- Iterator<person> i = listt.iterator();
-
- while (i.hasNext()) {
- // erzeuge Objekte fuer die Tabelle
- person temp = i.next();
-
- Object[] obj = { temp.getName() + ", " + temp.getVorname(), // Name
- temp.isLecture_read(), // Read
- temp.isLecture_write(), // Write
- // temp.isImageLinkAllowed(), // Link
- temp.isLecture_admin(), // Admin
- temp.getUserID() // userID
- };
- // Fuege diese Objekte der Tabelle hinzu
- model.addRow(obj);
- }
- }// end set list of permitted users
-
- TableColumn tc1 = tablePermittedUsers.getColumnModel().getColumn(1);
- tc1.setCellEditor(tablePermittedUsers.getDefaultEditor(Boolean.class));
- tc1.setCellRenderer(tablePermittedUsers.getDefaultRenderer(Boolean.class));
- tc1.setHeaderRenderer(new CheckBoxHeader(new ColumnSelector(tablePermittedUsers, 1), titles[1]));
-
- TableColumn tc2 = tablePermittedUsers.getColumnModel().getColumn(2);
- tc2.setCellEditor(tablePermittedUsers.getDefaultEditor(Boolean.class));
- tc2.setCellRenderer(tablePermittedUsers.getDefaultRenderer(Boolean.class));
- tc2.setHeaderRenderer(new CheckBoxHeader(new ColumnSelector(tablePermittedUsers, 1, 2), titles[2]));
-
- TableColumn tc3 = tablePermittedUsers.getColumnModel().getColumn(3);
- tc3.setCellEditor(tablePermittedUsers.getDefaultEditor(Boolean.class));
- tc3.setCellRenderer(tablePermittedUsers.getDefaultRenderer(Boolean.class));
- tc3.setHeaderRenderer(new CheckBoxHeader(new ColumnSelector(tablePermittedUsers, 1, 2, 3), titles[3]));
-
- tc1.setHeaderRenderer(new CheckBoxHeader(new ColumnSelector(tablePermittedUsers, 1), titles[1]));
- tc2.setHeaderRenderer(new CheckBoxHeader(new ColumnSelector(tablePermittedUsers, 1, 2), titles[2]));
- tc3.setHeaderRenderer(new CheckBoxHeader(new ColumnSelector(tablePermittedUsers, 1, 2, 3), titles[3]));
-
- JLabel lblHauptmen = new JLabel("Hauptmenü");
- lblHauptmen.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
- GuiManager.show(new MainMenue_GUI());
- }
- });
- 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("Neu");
- lblNewLabel_1.setBounds(194, 11, 155, 14);
- contentPanel.add(lblNewLabel_1);
-
- JPanel panel = new JPanel();
- panel.setBounds(10, 35, 557, 148);
- 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("Lesen");
- label.setBounds(28, 18, 90, 20);
- panel.add(label);
-
- JLabel label_3 = new JLabel("Schreiben");
- label_3.setBounds(28, 38, 90, 20);
- panel.add(label_3);
-
- JLabel label_5 = new JLabel("Admin");
- label_5.setBounds(28, 58, 90, 20);
- panel.add(label_5);
-
- JLabel label_7 = new JLabel("Veranstaltung ist in bwLehrpool Suite und VMchooser sichtbar.");
- label_7.setBounds(128, 18, 419, 20);
- panel.add(label_7);
-
- JLabel lblimageDarfAngepasst = new JLabel(
- "Veranstaltung darf angepasst und überschrieben, jedoch nicht gelöscht werden.");
- lblimageDarfAngepasst.setBounds(128, 38, 419, 20);
- panel.add(lblimageDarfAngepasst);
-
- JLabel lblvolleRechteRead = new JLabel(
- "<HTML>Volle Rechte: Lesen, Schreiben, Löschen und Berechtigungen für andere Benutzer festlegen.</HTML>");
- lblvolleRechteRead.setBounds(128, 58, 419, 35);
- panel.add(lblvolleRechteRead);
-
- JPanel panel_1 = new JPanel();
- panel_1.setLayout(null);
- panel_1.setBorder(new TitledBorder(null, "Suite-Berechtigungen", TitledBorder.LEADING,
- TitledBorder.TOP, null, null));
- panel_1.setBackground(SystemColor.menu);
- panel_1.setBounds(10, 194, 311, 326);
- contentPanel.add(panel_1);
-
- JScrollPane scrollPaneMyImage = new JScrollPane();
- scrollPaneMyImage.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
- scrollPaneMyImage.setBounds(10, 28, 291, 251);
- panel_1.add(scrollPaneMyImage);
-
- tablePermittedUsers.setBounds(0, 0, 555, 1);
- // panel_1.add(tablePermittedUsers);
-
- scrollPaneMyImage.setViewportView(tablePermittedUsers);
-
- JButton btnAddUser = new JButton("Hinzufügen...");
- btnAddUser.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- // show list of all other relevant users
- GuiManager.openPopup(new ListAllOtherUsers_GUI(tablePermittedUsers, 4));
- // give access to the table model and inform that the
- // userID is position 5 in the model
- }
- });
- btnAddUser.setBounds(10, 290, 113, 23);
- panel_1.add(btnAddUser);
-
- JButton btnDeleteUser = new JButton("Löschen");
- btnDeleteUser.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
-
- // delete selected users from table
- int[] deletableRows = tablePermittedUsers.getSelectedRows();
- int pointerCorrection = 0;
- // after deleting a row, the length of selected rows is reduced by 1.
- // This pointer counts the already deleted rows and correct the offset of i
- for (int i = 0; i < deletableRows.length; i++) {
- model.removeRow(deletableRows[i - pointerCorrection]);
- pointerCorrection++;
- }
- }
- });
- btnDeleteUser.setBounds(133, 290, 113, 23);
- panel_1.add(btnDeleteUser);
-
- JPanel panel_2 = new JPanel();
- panel_2.setLayout(null);
- panel_2.setBorder(new TitledBorder(null, "Sichtbarkeit im VMChooser", TitledBorder.LEADING,
- TitledBorder.TOP, null, null));
- panel_2.setBackground(SystemColor.menu);
- panel_2.setBounds(331, 194, 236, 326);
- contentPanel.add(panel_2);
-
- JScrollPane scrollPane_1 = new JScrollPane();
- scrollPane_1.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
- scrollPane_1.setEnabled(false);
- scrollPane_1.setBounds(16, 88, 210, 191);
- panel_2.add(scrollPane_1);
-
- JRadioButton radioButton = new JRadioButton("Sichtbar für alle");
- radioButton.setSelected(true);
- radioButton.setEnabled(false);
- radioButton.setBounds(6, 32, 109, 23);
- panel_2.add(radioButton);
-
- JRadioButton radioButton_1 = new JRadioButton("Individuell");
- radioButton_1.setEnabled(false);
- radioButton_1.setBounds(6, 58, 109, 23);
- panel_2.add(radioButton_1);
-
- JButton button_2 = new JButton("Hinzufügen");
- button_2.setEnabled(false);
- button_2.setBounds(23, 290, 89, 23);
- panel_2.add(button_2);
-
- JButton button_3 = new JButton("Löschen");
- button_3.setEnabled(false);
- button_3.setBounds(122, 290, 89, 23);
- panel_2.add(button_3);
- {
- 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ück");
- cancelButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- GuiManager.show(new CreateLectureAllgemein_GUI());
- }
- });
- cancelButton.setActionCommand("OK");
- buttonPane.add(cancelButton);
- // getRootPane().setDefaultButton(cancelButton);
- }
- {
- JButton continueButton = new JButton("Weiter");
- continueButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
-
- // before save, check integrity to avoid dblClick errors
- // of rights
- for (int i = 0; i < tablePermittedUsers.getRowCount(); i++) {
- checkIntegrity(i); // check integrity of each line
- // again
- //System.out.println("in auto-correct");
- }
-
- saveTableToList();
- GuiManager.show(new CreateLectureLink_GUI());
- }
- });
- 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);
-
- }// end constructor
-
- private void checkIntegrity(int row) {
-
- int selectedRow;
-
- if (row == -1) {
- selectedRow = tablePermittedUsers.getSelectedRow();
- } else {
- selectedRow = row;
- }
-
- boolean isRead, isWrite, isAdmin;
-
- // collect all row data
- isRead = (boolean) tablePermittedUsers.getValueAt(selectedRow, 1);
- isWrite = (boolean) tablePermittedUsers.getValueAt(selectedRow, 2);
- isAdmin = (boolean) tablePermittedUsers.getValueAt(selectedRow, 3);
-
- boolean[] checkedVals = CheckIntegrity.isIntegreForLecture(isRead, isWrite, isAdmin);
-
- tablePermittedUsers.setValueAt(checkedVals[0], selectedRow, 1);
- tablePermittedUsers.setValueAt(checkedVals[1], selectedRow, 2);
- tablePermittedUsers.setValueAt(checkedVals[2], selectedRow, 3);
- }// end checkIntegrity()
-
- // Column 0 == Concat user name
-
- // save the entered rights into the model and prepare them to be written to
- // the database
- private void saveTableToList() {
- //System.out.println("Saving Table to List");
-
- List<person> list = new ArrayList<person>();
-
- int seperatorIndex = 0;
-
- // get values from table and save the checkbox values
-
- for (int i = 0; i < tablePermittedUsers.getRowCount(); i++) {
- person temp = new person();
-
- seperatorIndex = tablePermittedUsers.getModel().getValueAt(i, 0).toString().indexOf(",");
-
- temp.setUserID(tablePermittedUsers.getModel().getValueAt(i, 4).toString()); // get
- // userID
- temp.setLecture_admin(Boolean.parseBoolean(tablePermittedUsers.getModel().getValueAt(i, 3)
- .toString())); // get Admin
- temp.setLecture_write(Boolean.parseBoolean(tablePermittedUsers.getModel().getValueAt(i, 2)
- .toString()));// get Write
- temp.setLecture_read(Boolean.parseBoolean(tablePermittedUsers.getModel().getValueAt(i, 1)
- .toString()));// get Read
- seperatorIndex = tablePermittedUsers.getModel().getValueAt(i, 0).toString().indexOf(",");
- temp.setName(tablePermittedUsers.getModel().getValueAt(i, 0).toString()
- .substring(0, seperatorIndex));
- temp.setVorname(tablePermittedUsers.getModel().getValueAt(i, 0).toString()
- .substring(seperatorIndex + 2));
-
- // check if at least one checkbox is checked. If yes, save this
- // entry into list, if not ignore this entry
- if (temp.isLecture_admin() || temp.isLecture_write() || temp.isLecture_read()) {
- // save entry
- list.add(temp);
- } else {
- // do nothing
- }
- }
-
- RightsManagement.rightsManagement.setPermittedUserList(list);
- }// end saveTableToList()
-
-}// end class
-
-class CheckBoxHeader extends JCheckBox implements TableCellRenderer, MouseListener {
- private static final long serialVersionUID = -132401386877928691L;
- 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);
-
- 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) {
- }
-}