public void editAdminPrivilege(boolean adminPrivilege) throws PrivilegeInsufficientException, DoesNotExistException { User loggedInUser = logInManager.getLoggedInUser(); if (PrivilegeManager.hasAdminPrivilege(loggedInUser)) { selectedUser.setAdminPrivilege(adminPrivilege); usersTable.setLevel(selectedUser.getUserId(), adminPrivilege == true ? 1 : 0); } }
private User rebuildUser(int userID) throws DoesNotExistException { User user = new User( userID, usersTable.getFirstName(userID), usersTable.getLastName(userID), usersTable.getEmail(userID), usersTable.getPwd(userID)); user.setAdminPrivilege(usersTable.getLevel(userID) == 1 ? true : false); user.setEventCreationPrivilege( usersTable.getEventCreationPrivilege(userID) == 1 ? true : false); user.setPhoneNumber(new PhoneNumber(usersTable.getPhone(userID))); user.setAddress( new Address( usersTable.getStreet(userID), usersTable.getCity(userID), usersTable.getState(userID), usersTable.getZipcode(userID), usersTable.getCountry(userID))); return user; }
///////////////////// GETTERS //////////////////////////// public User getUser(int uid) throws DoesNotExistException { try { PreparedStatement idQueryStmt = dbConnection.prepareStatement("SELECT * FROM USERS WHERE UID=?"); idQueryStmt.setInt(1, uid); ResultSet rs = idQueryStmt.executeQuery(); User user = new User(); Address address = new Address(); while (rs.next()) { if (rs.getInt("LEVEL") == 1) { user.setAdminPrivilege(true); } else { user.setAdminPrivilege(false); } user.setFirstName(rs.getString("FNAME")); user.setLastName(rs.getString("LNAME")); try { user.setPassword(rs.getString("PWD"), rs.getString("PWD")); // fix this } catch (IllegalCharacterException ice) { debugLog.severe("password issues"); } catch (PasswordMismatchError pme) { debugLog.severe("password issues"); } user.setEmailAddress(rs.getString("EMAIL")); user.setPhoneNumber(null); address.setStreet(rs.getString("STREET")); address.setCity(rs.getString("CITY")); address.setState(rs.getString("STATE")); address.setZipCode(rs.getString("ZIPCODE")); address.setCountry(rs.getString("COUNTRY")); user.setAddress(address); // insert address into user. if (rs.getInt("EVENTLEVEL") == 1) { user.setEventCreationPrivilege(true); } else { user.setEventCreationPrivilege(false); } } } catch (SQLException sqle) { sqle.printStackTrace(); System.exit(1); } throw new DoesNotExistException("User does not exist in USERS table"); }