1 package org.itracker.web.actions.admin.user;
2
3 import java.util.Collections;
4 import java.util.LinkedList;
5 import java.util.List;
6
7 import javax.servlet.http.HttpServletRequest;
8 import javax.servlet.http.HttpServletResponse;
9
10 import org.apache.struts.action.ActionForm;
11 import org.apache.struts.action.ActionForward;
12 import org.apache.struts.action.ActionMapping;
13 import org.itracker.model.User;
14 import org.itracker.services.UserService;
15 import org.itracker.services.util.UserUtilities;
16 import org.itracker.web.actions.base.ItrackerBaseAction;
17 import org.itracker.web.ptos.UserPTO;
18 import org.itracker.web.util.SessionManager;
19
20
21 public class ListUsersAction extends ItrackerBaseAction {
22
23
24 public ActionForward execute(ActionMapping mapping, ActionForm form,
25 HttpServletRequest request, HttpServletResponse response)
26 throws Exception {
27
28 UserService userService = this.getITrackerServices().getUserService();
29 boolean allowProfileCreation =
30 userService.allowProfileCreation(null, null, UserUtilities.AUTH_TYPE_UNKNOWN, UserUtilities.REQ_SOURCE_WEB);
31 request.setAttribute("allowProfileCreation",allowProfileCreation);
32
33 int activeSessions = SessionManager.getNumActiveSessions();
34 request.setAttribute("activeSessions",activeSessions);
35
36 List<User> users = userService.getAllUsers();
37 Collections.sort(users, User.NAME_COMPARATOR);
38
39 List<UserPTO> userDTOList = new LinkedList<UserPTO>();
40 for (User user : users) {
41 UserPTO aUserDTO = new UserPTO(user);
42 userDTOList.add(aUserDTO);
43 }
44
45 request.setAttribute("users",userDTOList);
46
47 String pageTitleKey = "itracker.web.admin.listusers.title";
48 String pageTitleArg = "";
49 request.setAttribute("pageTitleKey",pageTitleKey);
50 request.setAttribute("pageTitleArg",pageTitleArg);
51
52 return mapping.findForward("listusers");
53 }
54
55
56 }