summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java
diff options
context:
space:
mode:
authorSimon Rettberg2015-03-05 18:45:29 +0100
committerSimon Rettberg2015-03-05 18:45:29 +0100
commit04cd6cd0a88bcfddd3aa7937b05ba440fc00f8e9 (patch)
tree11b69c823d1bff926027dcc61026eaaa90cf363e /dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java
parent[client] Make SessionData a static class instead of a class that doesn't know... (diff)
downloadtutor-module-04cd6cd0a88bcfddd3aa7937b05ba440fc00f8e9.tar.gz
tutor-module-04cd6cd0a88bcfddd3aa7937b05ba440fc00f8e9.tar.xz
tutor-module-04cd6cd0a88bcfddd3aa7937b05ba440fc00f8e9.zip
MACHETE KILLT CODEZEILEN
Diffstat (limited to 'dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java')
-rw-r--r--dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java275
1 files changed, 60 insertions, 215 deletions
diff --git a/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java b/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java
index a2f4aa5a..cbbd2eba 100644
--- a/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java
+++ b/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java
@@ -1,9 +1,9 @@
package gui.image;
+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;
@@ -29,8 +29,6 @@ import javax.swing.JSeparator;
import javax.swing.JTable;
import javax.swing.JTextPane;
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.table.DefaultTableModel;
@@ -51,16 +49,13 @@ import util.ListAllOtherUsers_GUI;
@SuppressWarnings("serial")
public class PermissionEditImage_GUI extends JInternalFrame {
-
+
private final JPanel contentPanel = new JPanel();
- String[] result;
private JTable table;
- Object[] titles = { "Name", "Lesen", "Schreiben", "Link", "Admin", "userID" };
+ private static final String[] titles = { "Name", "Lesen", "Schreiben", "Link", "Admin", "userID" };
private List<Person> map = null; // List of people who have rights
- Component c = null;
-
- final DefaultTableModel model = new DefaultTableModel(titles, 0) {
+ private final DefaultTableModel model = new DefaultTableModel(titles, 0) {
public boolean isCellEditable(int rowIndex, int mColIndex) {
if (mColIndex >= 1) {
@@ -88,38 +83,16 @@ public class PermissionEditImage_GUI extends JInternalFrame {
+ "Sie können die Rechte Lesen, Schreiben, Link und Admin vergeben.<br />"
+ "Link bedeutet, dass diese Person Veranstaltungen auf Ihr Image verlinken darf und dieses somit<br />"
+ "implizit freigeben darf. Eine Person mit Adminrechten darf zusätzlich das Image löschen und Berechtigungen<br />"
- + "für andere Benutzer festlegen und ist somit wie der Besitzer zu betrachten."
- + "</div></html>";
+ + "für andere Benutzer festlegen und ist somit wie der Besitzer zu betrachten." + "</div></html>";
public PermissionEditImage_GUI() {
-//
-// addWindowListener(new WindowAdapter() {
-// @Override
-// public void windowClosing(WindowEvent arg0) {
-// try {
-// client.setSessionInvalid(SessionData.AuthToken);
-// } catch (TException e) {
-// // TODO Auto-generated catch block
-// e.printStackTrace();
-// }
-// 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 bearbeiten - "+person.verantwortlicher.getUserID());
+ setTitle("bwLehrpool Suite - Image bearbeiten - " + person.verantwortlicher.getUserID());
setBounds(0, 0, 603, 722);
-
getContentPane().setLayout(null);
{
JPanel panel = new JPanel();
@@ -128,13 +101,12 @@ public class PermissionEditImage_GUI extends JInternalFrame {
getContentPane().add(panel);
panel.setLayout(null);
{
- JLabel lblNewLabel = new JLabel(
- "Image Berechtigungen");
+ JLabel lblNewLabel = new JLabel("Image 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);
@@ -151,15 +123,14 @@ public class PermissionEditImage_GUI extends JInternalFrame {
JPanel panel_1 = new JPanel();
panel_1.setBackground(SystemColor.menu);
- panel_1.setBorder(new TitledBorder(null, "Weitere Berechtigungen",
- TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_1.setBorder(new TitledBorder(null, "Weitere Berechtigungen", TitledBorder.LEADING,
+ TitledBorder.TOP, null, null));
panel_1.setBounds(10, 170, 557, 354);
contentPanel.add(panel_1);
panel_1.setLayout(null);
JScrollPane scrollPane = new JScrollPane();
- scrollPane
- .setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
+ scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
scrollPane.setBounds(10, 21, 537, 185);
panel_1.add(scrollPane);
@@ -178,35 +149,32 @@ public class PermissionEditImage_GUI extends JInternalFrame {
table.getColumnModel().getColumn(5).setWidth(0);
table.getColumnModel().getColumn(5).setMinWidth(0);
table.getColumnModel().getColumn(5).setMaxWidth(0);
-
+
table.getTableHeader().setReorderingAllowed(false);
// if new session, get values for table from database
if (RightsManagement.rightsManagement.getPermittedUserList().size() <= 0) {
//System.out.println("Loading data from db");
try {
-
- map = ThriftManager.getSatClient().getPermissionForUserAndImage(SessionData.authToken,Image.image.getImageId(),person.verantwortlicher.getUserID());
+
+ map = ThriftManager.getSatClient().getPermissionForUserAndImage(SessionData.authToken,
+ Image.image.getImageId(), person.verantwortlicher.getUserID());
Iterator<Person> i = map.iterator();
int x = 0;
-
- while (i.hasNext())
- {
+
+ while (i.hasNext()) {
// erzeuge Objekte fuer die Tabelle
- Object[] obj = {
- map.get(x).getNachname() + ", "
- + map.get(x).getVorname(), // Name
- (boolean)map.get(x).isImage_read(), // Read
- (boolean)map.get(x).isImage_write(), // Write
- (boolean)map.get(x).isImage_link(), // Link
- (boolean)map.get(x).isImage_admin(), // Admin
+ Object[] obj = { map.get(x).getNachname() + ", " + map.get(x).getVorname(), // Name
+ (boolean) map.get(x).isImage_read(), // Read
+ (boolean) map.get(x).isImage_write(), // Write
+ (boolean) map.get(x).isImage_link(), // Link
+ (boolean) map.get(x).isImage_admin(), // Admin
map.get(x).getUserID() // userID
};
- //System.out.println(map.get(x).isImage_read()+"gfhfxg");
// Fuege diese Objekte der Tabelle hinzu
model.addRow(obj);
-
+
i.next();
x++;
@@ -218,18 +186,11 @@ public class PermissionEditImage_GUI extends JInternalFrame {
}
} else // read from model
{
- //System.out.println("reading from model");
- //System.out
- // .println("RightsManagement.rightsManagement.getPermittedUserList().size() = "
- // + RightsManagement.rightsManagement
- // .getPermittedUserList().size());
-
- List<person> listt = RightsManagement.rightsManagement
- .getPermittedUserList();
+
+ List<person> listt = RightsManagement.rightsManagement.getPermittedUserList();
Iterator<person> i = listt.iterator();
while (i.hasNext()) {
- // System.out.println("current pos=" + x);
// erzeuge Objekte fuer die Tabelle
person temp = i.next();
@@ -240,58 +201,38 @@ public class PermissionEditImage_GUI extends JInternalFrame {
temp.isImageAdmin(), // Admin
temp.getUserID() // userID
};
- //System.out.println("Processing: " + temp.getName() + ", "
- // + temp.getVorname() + ", " + temp.isImageRead() + ", "
- // + temp.isImageWrite() + ", " + temp.isImageLinkAllowed() + ", "
- // + temp.isImageAdmin() + ", " + temp.getUserID());
-
+
// Fuege diese Objekte der Tabelle hinzu
model.addRow(obj);
}
}// end set list of permitted users
- /*
- * Object[] rowdata = { "Max Mustermann", new Boolean(false), new
- * Boolean(false), new Boolean(false), new Boolean(false) };
- * model.addRow(rowdata);
- */
-
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]));
+ tc1.setHeaderRenderer(new CheckBoxHeader(new ColumnSelector(table, 1), 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]));
+ tc2.setHeaderRenderer(new CheckBoxHeader(new ColumnSelector(table, 1, 2), 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]));
+ tc3.setHeaderRenderer(new CheckBoxHeader(new ColumnSelector(table, 1, 3), 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]));
- */
+ tc4.setHeaderRenderer(new CheckBoxHeader(new ColumnSelector(table, 1, 2, 3, 4), titles[4]));
+
scrollPane.setViewportView(table);
JPanel panel_2 = new JPanel();
panel_2.setLayout(null);
- panel_2.setBorder(new TitledBorder(null, "Freigabe",
- TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_2.setBorder(new TitledBorder(null, "Freigabe", TitledBorder.LEADING, TitledBorder.TOP, null,
+ null));
panel_2.setBackground(SystemColor.menu);
panel_2.setBounds(10, 260, 537, 80);
panel_1.add(panel_2);
@@ -301,38 +242,35 @@ public class PermissionEditImage_GUI extends JInternalFrame {
panel_2.add(label_7);
final JComboBox<String> comboBox_1 = new JComboBox<>();
- comboBox_1
- .setModel(new DefaultComboBoxModel<String>(new String[] {
- "Lokal (Eigene Hochschule)",
- "Öffentlich (Alle Hochschulen)" }));
+ comboBox_1.setModel(new DefaultComboBoxModel<String>(new String[] { "Lokal (Eigene Hochschule)",
+ "Öffentlich (Alle Hochschulen)" }));
comboBox_1.setSelectedIndex(Image.image.getShareMode());
comboBox_1.setBounds(270, 30, 250, 20);
panel_2.add(comboBox_1);
-
+
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(table, 5));
+ GuiManager.openPopup(new ListAllOtherUsers_GUI(table, 5));
}
});
btnAddUser.setBounds(10, 217, 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= table.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
+ int[] deletableRows = table.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
//LOGGER.info("deletabelRows.length="+deletableRows.length);
-
- for (int i=0; i<deletableRows.length; i++){
-
+
+ for (int i = 0; i < deletableRows.length; i++) {
+
//LOGGER.info("Deleting rowCount["+i+"], tableRow number "+deletableRows[i-pointerCorrection]);
- model.removeRow(deletableRows[i-pointerCorrection]);
+ model.removeRow(deletableRows[i - pointerCorrection]);
pointerCorrection++;
}
}
@@ -372,8 +310,8 @@ public class PermissionEditImage_GUI extends JInternalFrame {
panel.setBounds(10, 35, 557, 124);
contentPanel.add(panel);
panel.setLayout(null);
- panel.setBorder(new TitledBorder(null, "Beschreibung",
- TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBorder(new TitledBorder(null, "Beschreibung", TitledBorder.LEADING, TitledBorder.TOP, null,
+ null));
panel.setBackground(SystemColor.menu);
JLabel label = new JLabel("Lesen");
@@ -384,8 +322,7 @@ public class PermissionEditImage_GUI extends JInternalFrame {
label_3.setBounds(28, 38, 90, 20);
panel.add(label_3);
- JLabel lblImageLesenUnd = new JLabel(
- "Benutzer kann Image in bwLehrpool Suite sehen.");
+ JLabel lblImageLesenUnd = new JLabel("Benutzer kann Image in bwLehrpool Suite sehen.");
lblImageLesenUnd.setBounds(128, 18, 380, 20);
panel.add(lblImageLesenUnd);
@@ -402,8 +339,7 @@ public class PermissionEditImage_GUI extends JInternalFrame {
label_5.setBounds(28, 78, 90, 20);
panel.add(label_5);
- label_6 = new JLabel(
- "Erzeugung einer Veranstaltung auf ein Image ist erlaubt.");
+ label_6 = new JLabel("Erzeugung einer Veranstaltung auf ein Image ist erlaubt.");
label_6.setBounds(128, 58, 380, 20);
panel.add(label_6);
@@ -426,19 +362,16 @@ public class PermissionEditImage_GUI extends JInternalFrame {
});
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 < table.getRowCount(); i++) {
- checkIntegrity(i); // check integrity of each line
- // again
- //System.out.println("in auto-correct");
+ checkIntegrity(i); // check integrity of each line again
}
saveTableToList();
@@ -461,19 +394,15 @@ public class PermissionEditImage_GUI extends JInternalFrame {
separator_1.setBounds(0, 627, 597, 2);
getContentPane().add(separator_1);
-
}
-
+
// save the entered rights into the model and prepare them to be written to
// the database
private void saveTableToList() {
- //LOGGER.info("Saving Table to List");
-
List<person> list = new ArrayList<person>();
int seperatorIndex = 0;
-
// for (int i = 0; i < map.size(); i++) {
for (int i = 0; i < table.getRowCount(); i++) {
// System.out.println("in for, rowcount="+table.getRowCount());
@@ -483,25 +412,17 @@ public class PermissionEditImage_GUI extends JInternalFrame {
temp.setUserID(table.getModel().getValueAt(i, 5).toString()); // get
// userID
- temp.setImageAdmin(Boolean.parseBoolean(table.getModel()
- .getValueAt(i, 4).toString())); // get Admin
- temp.setImageLinkAllowed(Boolean.parseBoolean(table.getModel()
- .getValueAt(i, 3).toString()));// get Link
- temp.setImageWrite(Boolean.parseBoolean(table.getModel()
- .getValueAt(i, 2).toString()));// get Write
- temp.setImageRead(Boolean.parseBoolean(table.getModel().getValueAt(i, 1)
- .toString()));// get Read
- seperatorIndex = table.getModel().getValueAt(i, 0).toString()
- .indexOf(",");
- temp.setName(table.getModel().getValueAt(i, 0).toString()
- .substring(0, seperatorIndex));
- temp.setVorname(table.getModel().getValueAt(i, 0).toString()
- .substring(seperatorIndex + 2));
+ temp.setImageAdmin(Boolean.parseBoolean(table.getModel().getValueAt(i, 4).toString())); // get Admin
+ temp.setImageLinkAllowed(Boolean.parseBoolean(table.getModel().getValueAt(i, 3).toString()));// get Link
+ temp.setImageWrite(Boolean.parseBoolean(table.getModel().getValueAt(i, 2).toString()));// get Write
+ temp.setImageRead(Boolean.parseBoolean(table.getModel().getValueAt(i, 1).toString()));// get Read
+ seperatorIndex = table.getModel().getValueAt(i, 0).toString().indexOf(",");
+ temp.setName(table.getModel().getValueAt(i, 0).toString().substring(0, seperatorIndex));
+ temp.setVorname(table.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.isImageAdmin() || temp.isImageLinkAllowed() || temp.isImageWrite()
- || temp.isImageRead()) {
+ if (temp.isImageAdmin() || temp.isImageLinkAllowed() || temp.isImageWrite() || temp.isImageRead()) {
// save entry
list.add(temp);
} else {
@@ -509,19 +430,8 @@ public class PermissionEditImage_GUI extends JInternalFrame {
}
}
-
- /*
- System.out.println("Setting list information.\tTable size: "
- + table.getRowCount() + "\t List length (=selected users): "
- + list.size());
- for (int y = 0; y < list.size(); y++) {
- System.out.println("" + list.get(y).getName());
- }
- */
-
//permissions could have changed, compare vals at the end and update in db (quick and dirty due to time limitations)
RightsManagement.rightsManagement.setPermittedUserList(list);
- //LOGGER.info("number of permission="+list.size());
}// end saveTableToList()
private void checkIntegrity(int row) {
@@ -542,78 +452,13 @@ public class PermissionEditImage_GUI extends JInternalFrame {
isLink = (boolean) table.getValueAt(selectedRow, 3);
isAdmin = (boolean) table.getValueAt(selectedRow, 4);
- boolean[] checkedVals = CheckIntegrity.isIntegreForImage(isRead, isWrite,
- isLink, isAdmin);
+ boolean[] checkedVals = CheckIntegrity.isIntegreForImage(isRead, isWrite, isLink, isAdmin);
table.setValueAt(checkedVals[0], selectedRow, 1);
table.setValueAt(checkedVals[1], selectedRow, 2);
table.setValueAt(checkedVals[2], selectedRow, 3);
table.setValueAt(checkedVals[3], selectedRow, 4);
}// end checkIntegrity()
-
- 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, 1); //set read
- table.setValueAt(new Boolean(checked), x, 2); // set write
- }
- }
- }
-
- 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, 1); //set read
- table.setValueAt(new Boolean(checked), x, 3); //set link
- }
- }
- }
-
- 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, 1); //set read
- table.setValueAt(new Boolean(checked), x, 2); //set write
- table.setValueAt(new Boolean(checked), x, 3); //set link
- table.setValueAt(new Boolean(checked), x, 4); //set admin
- }
- }
- }
-
- 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);
- }
- }
- }
}// end class