-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathApiAction.java
More file actions
85 lines (64 loc) · 2.13 KB
/
Copy pathApiAction.java
File metadata and controls
85 lines (64 loc) · 2.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
package com.appsecco.dvja.controllers;
//test
//test1
//test2
import com.appsecco.dvja.models.User;
import com.appsecco.dvja.services.UserService;
import org.apache.commons.lang.StringUtils;
import javax.servlet.http.Cookie;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class ApiAction extends BaseController {
private UserService userService;
private String login;
public UserService getUserService() {
return userService;
}
public void setUserService(UserService userService) {
this.userService = userService;
}
public String getLogin() {
return login;
}
public void setLogin(String login) {
this.login = login;
}
public String adminShowUsers() {
Map results = new HashMap();
boolean isAdmin = false;
for(Cookie c: getServletRequest().getCookies()) {
if(c.getName().equals("admin") && c.getValue().equals("1")) {
isAdmin = true;
break;
}
}
if(isAdmin) {
List<Map<String, String>> userList = new ArrayList<Map<String,String>>();
for(User u: userService.findAllUsers()) {
Map<String, String> m = new HashMap<String, String>();
m.put("id", Integer.toString(u.getId()));
m.put("login", u.getLogin());
m.put("email", u.getEmail());
m.put("role", u.getRole());
userList.add(m);
}
results.put("count", userList.size());
results.put("users", userList);
}
return renderJSON(results);
}
public String ping() {
Map<String, String> results = new HashMap<String, String>();
if(StringUtils.isEmpty(getLogin())) {
results.put("error", "Login not set");
return renderJSON(results);
}
User user = userService.findByLogin(getLogin());
results.put("login", getLogin());
results.put("present", "true");
results.put("email", user.getEmail());
return renderJSON(results);
}
}