1 package org.contineo.actions.admin.user; 2 3 import java.util.Collection ; 4 import javax.servlet.http.HttpServletRequest ; 5 import javax.servlet.http.HttpServletResponse ; 6 import javax.servlet.http.HttpSession ; 7 import org.apache.log4j.Level; 8 import org.apache.log4j.Logger; 9 import org.apache.struts.action.Action; 10 import org.apache.struts.action.ActionError; 11 import org.apache.struts.action.ActionErrors; 12 import org.apache.struts.action.ActionForm; 13 import org.apache.struts.action.ActionForward; 14 import org.apache.struts.action.ActionMapping; 15 import org.apache.struts.action.ActionMessage; 16 import org.apache.struts.action.ActionMessages; 17 import org.contineo.admin.User; 18 import org.contineo.admin.dao.GroupDAO; 19 import org.contineo.admin.dao.UserDAO; 20 import org.contineo.admin.dao.UserGroupDAO; 21 import org.contineo.core.LoggingManager; 22 import org.contineo.core.SessionManagement; 23 24 29 public class ChangeUserAction extends Action { 30 31 35 private Logger logger; 36 37 38 39 public ChangeUserAction() { 40 logger = LoggingManager.getLogger(this.getClass()); 41 } 42 43 public ActionForward execute(ActionMapping mapping, 44 ActionForm form, HttpServletRequest request, 45 HttpServletResponse response) { 46 ActionForward actionForward = new ActionForward(); 47 ActionErrors errors = new ActionErrors(); 48 ActionMessages messages = new ActionMessages(); 49 HttpSession session = request.getSession(); 50 if (SessionManagement.isValid(session)) { 51 try { 52 User user = (User)form; 53 UserDAO dao = new UserDAO(); 54 UserGroupDAO ugDao = new UserGroupDAO(); 55 ugDao.delete(user.getUserName()); 56 User tempuser = dao.findByPrimaryKey(user.getUserName()); 57 String newPasswd = user.getPassword(); 58 String newRePasswd = user.getRepass(); 59 60 if (newPasswd != null && !newPasswd.equals("") && newRePasswd != null && newPasswd.equals(newRePasswd)) { 63 user.copyPassword(newPasswd); 64 } else { 65 user.copyPassword(tempuser.getPassword()); 66 } 67 boolean stored = dao.store(user); 68 if (!stored) 69 errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.action.saveuser.notstored")); 70 else 71 messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("msg.action.changeuser")); 72 user.initGroups(); 74 request.setAttribute("user", user); 75 GroupDAO gdao = new GroupDAO(); 76 Collection coll = gdao.findAll(); 77 request.setAttribute("allgroups", coll); 78 } catch (Exception e) { 79 if (logger.isEnabledFor(Level.ERROR)) 80 logger.error(e.getMessage()); 81 errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.action.saveuser.notstored")); 82 } 83 saveErrors(request, errors); 84 saveMessages(request, messages); 85 actionForward = mapping.findForward("edituser"); 86 } else 87 actionForward = mapping.findForward("invalid"); 88 return actionForward; 89 } 90 } 91 | Popular Tags |