diff --git a/jams-server/src/main/java/net/jami/jams/server/servlets/api/auth/user/UserServlet.java b/jams-server/src/main/java/net/jami/jams/server/servlets/api/auth/user/UserServlet.java index 6c7255903d4b4a3cf7e0c36e74cf521c9a92d250..453465c8b8b3a38b9c7ec42a7aea1f522fb69795 100644 --- a/jams-server/src/main/java/net/jami/jams/server/servlets/api/auth/user/UserServlet.java +++ b/jams-server/src/main/java/net/jami/jams/server/servlets/api/auth/user/UserServlet.java @@ -35,8 +35,10 @@ import net.jami.jams.common.dao.StatementList; import net.jami.jams.common.objects.user.AccessLevel; import net.jami.jams.common.objects.user.User; import net.jami.jams.common.utils.PasswordGenerator; +import org.bouncycastle.openssl.PEMWriter; import java.io.IOException; +import java.io.StringWriter; import static net.jami.jams.server.Server.certificateAuthority; import static net.jami.jams.server.Server.dataStore; @@ -45,7 +47,7 @@ import static net.jami.jams.server.Server.nameServer; @WebServlet("/api/auth/user") public class UserServlet extends HttpServlet { - //User can "read" his own profile. + //User can "read" himself. /** * @apiVersion 1.0.0 * @api {get} /api/auth/user Get JAMS user info @@ -94,6 +96,12 @@ public class UserServlet extends HttpServlet { resp.setHeader("needspasswordreset", (user.getNeedsPasswordReset()).toString()); resp.setHeader("password", password); + + if (certificateAuthority.getLatestCRL().get() + .getRevokedCertificate(user.getCertificate().getSerialNumber()) == null) + resp.setHeader("revoked", "false"); + else + resp.setHeader("revoked", "true"); } //The user can update 3 fields: password,privatekey,publickey diff --git a/jams-server/src/main/resources/webapp/js/api.js b/jams-server/src/main/resources/webapp/js/api.js index 4ce765f07ecdc432eb6c4a40f8e19c62e0df6e11..e74f6df4b27e23ea6942b5542587b8e5ff80eddc 100644 --- a/jams-server/src/main/resources/webapp/js/api.js +++ b/jams-server/src/main/resources/webapp/js/api.js @@ -46,10 +46,13 @@ var api_path_get_directories = '/api/auth/directories'; var api_path_get_needs_update = '/api/admin/update'; var api_path_get_start_update = '/api/admin/update'; var api_path_post_create_user = '/api/admin/user'; +var api_path_get_user = '/api/auth/user'; var api_path_post_update_user = '/api/auth/user'; var api_path_get_exists_user = '/api/admin/user'; var api_path_get_user_directory_search ='/api/auth/directory/search'; var api_path_post_create_user_profile = '/api/admin/directory/entry'; +var api_path_put_update_user_profile = '/api/admin/directory/entry'; +var api_path_get_user_search = '/api/admin/users'; function ajaxApiCall(api_path, request_type, data, credentials, callBackFunction, async) { // build AJAX call