14 package cz.vutbr.fit.knot.annotations.web;
20 import java.io.Serializable;
21 import java.util.List;
22 import java.util.logging.Level;
23 import java.util.logging.Logger;
24 import javax.faces.bean.ManagedBean;
25 import javax.faces.bean.ViewScoped;
26 import javax.faces.component.html.HtmlDataTable;
27 import javax.persistence.EntityManager;
28 import javax.persistence.EntityTransaction;
38 public class EditUG implements Serializable {
42 private String
name = null;
73 errorMessage = MessageProvider.getMessage(
"nameCantBeEmpty");
77 userGroup.setName(
name);
81 errorMessage = MessageProvider.getMessage(
"changesNSDatabaseFailure");
83 String msg =
"Persisting of changes in the user group failed.";
84 Logger.getLogger(EditUG.class.getName()).log(Level.SEVERE, msg);
91 AppBean.refreshUsersInSessions(null);
93 SessionManager.getSession().setFormBackup(null);
94 SessionManager.getSession().setEditedUG(null);
104 if (
name.isEmpty()) {
105 errorMessage = MessageProvider.getMessage(
"nameCantBeEmpty");
113 errorMessage = MessageProvider.getMessage(
"newGroupNSDatabaseFailure");
115 String msg =
"Persisting of new user group failed.";
116 Logger.getLogger(EditUG.class.getName()).log(Level.SEVERE, msg);
121 SessionManager.getSession().setFormBackup(null);
122 SessionManager.getSession().setEditedUG(null);
132 SessionManager.getSession().setFormBackup(null);
133 SessionManager.getSession().setEditedUG(null);
144 errorMessage = MessageProvider.getMessage(
"deleteAdmins");
149 Object[] params =
new Object[2];
151 params[1] = userGroup.getId();
152 List gList = AppBean.getPersistenceManager().queryDB(
"AnnotType.findByUserGroup", params);
153 if (gList != null && !gList.isEmpty()) {
154 errorMessage = MessageProvider.getMessage(
"ifTypesExistsGroupCantBeDeleted");
159 errorMessage = MessageProvider.getMessage(
"ifUsersExistsGroupCantBeDeleted");
164 errorMessage = MessageProvider.getMessage(
"groupCantBeDeletedDatabaseFailure");
166 String msg =
"Deleting of the user group failed.";
167 Logger.getLogger(EditUG.class.getName()).log(Level.SEVERE, msg);
172 SessionManager.getSession().setFormBackup(null);
173 SessionManager.getSession().setEditedUG(null);
185 userGroup = SessionManager.getSession().getEditedUG();
207 userGroup = SessionManager.getSession().getEditedUG();
213 if (backup.
getId() != userGroup.getId()) {
218 if (
name == null && backup != null) {
219 name = backup.getName();
221 name = userGroup.getName();
222 }
else if (
name == null) {
280 userGroup = SessionManager.getSession().getEditedUG();
282 return userGroup.getUsers();
312 errorMessage = MessageProvider.getMessage(
"removeLastAdmin");
320 EntityManager em = AppBean.getPersistenceManager().getEM();
321 EntityTransaction transaction = em.getTransaction();
323 user = em.merge(
user);
325 userGroup.getUsers().
remove(user);
326 user.getGroups().
remove(userGroup);
328 transaction.commit();
329 }
catch (Exception e) {
330 errorMessage = MessageProvider.getMessage(
"userCantBeREmovedDF");
332 String msg =
"Removing of user from the user group failed.";
333 Logger.getLogger(EditUG.class.getName()).log(Level.SEVERE, msg, e);
338 AppBean.refreshUsersInSessions(
user);
349 SessionManager.getSession().setFormBackup(backup);
350 SessionManager.getSession().setEditedUG(
userGroup);
static WebSession getSession()
Class for manipulating with session.
String btnSaveNewAction()
Singleton for storing global variables.
void setName(String name)
void setUserGroup(UserGroup userGroup)
static final String ADMIN_GROUP
HtmlDataTable getListTable()
Class representing user group.
List< User > getUsersList()
static final int LOG_LEVEL
static PersistM getPersistenceManager()
String actionRemoveUser(Integer id)
static final int LOG_LEVEL_SERVER_ERRORS
void setListTable(HtmlDataTable listTable)
Backbean for adding, editing and deleting of user group.
void setErrorMessage(String errorMessage)