aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2016-01-01 20:40:45 +1300
committerAnton Tananaev <anton.tananaev@gmail.com>2016-01-01 20:40:45 +1300
commit8686fbe48d485be94b63e723258f19ef93abcaad (patch)
tree225911da1fa8d315fa444b4437be55f7b542a625
parent07dddfa531179f9ccdf73410e44807d84c480fd3 (diff)
downloadtraccar-server-8686fbe48d485be94b63e723258f19ef93abcaad.tar.gz
traccar-server-8686fbe48d485be94b63e723258f19ef93abcaad.tar.bz2
traccar-server-8686fbe48d485be94b63e723258f19ef93abcaad.zip
Always allow admin to register new users
-rw-r--r--src/org/traccar/api/resource/UserResource.java4
-rw-r--r--src/org/traccar/database/PermissionsManager.java2
2 files changed, 4 insertions, 2 deletions
diff --git a/src/org/traccar/api/resource/UserResource.java b/src/org/traccar/api/resource/UserResource.java
index 4d57d5b0c..9eb0d9597 100644
--- a/src/org/traccar/api/resource/UserResource.java
+++ b/src/org/traccar/api/resource/UserResource.java
@@ -47,7 +47,9 @@ public class UserResource extends BaseResource {
@PermitAll
@POST
public Response add(User entity) throws SQLException {
- Context.getPermissionsManager().checkRegistration(getUserId());
+ if (!Context.getPermissionsManager().isAdmin(getUserId())) {
+ Context.getPermissionsManager().checkRegistration(getUserId());
+ }
Context.getDataManager().addUser(entity);
Context.getPermissionsManager().refresh();
return Response.ok(entity).build();
diff --git a/src/org/traccar/database/PermissionsManager.java b/src/org/traccar/database/PermissionsManager.java
index b0f544a42..5557f37e5 100644
--- a/src/org/traccar/database/PermissionsManager.java
+++ b/src/org/traccar/database/PermissionsManager.java
@@ -64,7 +64,7 @@ public class PermissionsManager {
}
}
- private boolean isAdmin(long userId) {
+ public boolean isAdmin(long userId) {
return users.containsKey(userId) && users.get(userId).getAdmin();
}