aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--BackEnd/Timeline/Controllers/UserController.cs15
-rw-r--r--FrontEnd/src/app/http/user.ts17
-rw-r--r--FrontEnd/src/app/views/admin/UserAdmin.tsx19
3 files changed, 12 insertions, 39 deletions
diff --git a/BackEnd/Timeline/Controllers/UserController.cs b/BackEnd/Timeline/Controllers/UserController.cs
index 4091174c..b6eaf152 100644
--- a/BackEnd/Timeline/Controllers/UserController.cs
+++ b/BackEnd/Timeline/Controllers/UserController.cs
@@ -183,21 +183,6 @@ namespace Timeline.Controllers
}
/// <summary>
- /// Create a new user. You have to be administrator.
- /// </summary>
- /// <returns>The new user's info.</returns>
- [HttpPost("userop/createuser"), PermissionAuthorize(UserPermission.UserManagement)]
- [ProducesResponseType(StatusCodes.Status200OK)]
- [ProducesResponseType(StatusCodes.Status400BadRequest)]
- [ProducesResponseType(StatusCodes.Status401Unauthorized)]
- [ProducesResponseType(StatusCodes.Status403Forbidden)]
- [Obsolete("Use post instead.")]
- public async Task<ActionResult<HttpUser>> CreateUser([FromBody] HttpCreateUserRequest body)
- {
- return await Post(body);
- }
-
- /// <summary>
/// Change password with old password.
/// </summary>
[HttpPost("userop/changepassword"), Authorize]
diff --git a/FrontEnd/src/app/http/user.ts b/FrontEnd/src/app/http/user.ts
index dcb222bf..dcf24cba 100644
--- a/FrontEnd/src/app/http/user.ts
+++ b/FrontEnd/src/app/http/user.ts
@@ -59,6 +59,7 @@ export class HttpChangePasswordBadCredentialError extends Error {
export interface IHttpUserClient {
list(): Promise<HttpUser[]>;
get(username: string): Promise<HttpUser>;
+ post(req: HttpCreateUserRequest): Promise<HttpUser>;
patch(username: string, req: HttpUserPatchRequest): Promise<HttpUser>;
delete(username: string): Promise<void>;
generateAvatarUrl(username: string): string;
@@ -72,8 +73,6 @@ export interface IHttpUserClient {
username: string,
permission: UserPermission
): Promise<void>;
-
- createUser(req: HttpCreateUserRequest, token: string): Promise<HttpUser>;
}
export class HttpUserClient implements IHttpUserClient {
@@ -90,6 +89,13 @@ export class HttpUserClient implements IHttpUserClient {
.catch(convertToIfStatusCodeIs(404, HttpUserNotExistError));
}
+ post(req: HttpCreateUserRequest): Promise<HttpUser> {
+ return axios
+ .post<HttpUser>(`${apiBaseUrl}/users`, req)
+ .then(extractResponseData)
+ .then();
+ }
+
patch(username: string, req: HttpUserPatchRequest): Promise<HttpUser> {
return axios
.patch<HttpUser>(`${apiBaseUrl}/users/${username}`, req)
@@ -140,13 +146,6 @@ export class HttpUserClient implements IHttpUserClient {
.delete(`${apiBaseUrl}/users/${username}/permissions/${permission}`)
.then();
}
-
- createUser(req: HttpCreateUserRequest): Promise<HttpUser> {
- return axios
- .post<HttpUser>(`${apiBaseUrl}/userop/createuser`, req)
- .then(extractResponseData)
- .then();
- }
}
let client: IHttpUserClient = new HttpUserClient();
diff --git a/FrontEnd/src/app/views/admin/UserAdmin.tsx b/FrontEnd/src/app/views/admin/UserAdmin.tsx
index 369eaf1e..aada4d52 100644
--- a/FrontEnd/src/app/views/admin/UserAdmin.tsx
+++ b/FrontEnd/src/app/views/admin/UserAdmin.tsx
@@ -18,7 +18,6 @@ import { Trans, useTranslation } from "react-i18next";
interface DialogProps<TData = undefined, TReturn = undefined> {
open: boolean;
close: () => void;
- token: string;
data: TData;
onSuccess: (data: TReturn) => void;
}
@@ -26,7 +25,6 @@ interface DialogProps<TData = undefined, TReturn = undefined> {
const CreateUserDialog: React.FC<DialogProps<undefined, HttpUser>> = ({
open,
close,
- token,
onSuccess,
}) => {
return (
@@ -41,13 +39,10 @@ const CreateUserDialog: React.FC<DialogProps<undefined, HttpUser>> = ({
] as const
}
onProcess={([username, password]) =>
- getHttpUserClient().createUser(
- {
- username,
- password,
- },
- token
- )
+ getHttpUserClient().post({
+ username,
+ password,
+ })
}
close={close}
open={open}
@@ -280,8 +275,6 @@ const UserAdmin: React.FC<UserAdminProps> = (props) => {
setUsersVersion(usersVersion + 1);
};
- const token = props.user.token;
-
useEffect(() => {
let subscribe = true;
void getHttpUserClient()
@@ -304,7 +297,6 @@ const UserAdmin: React.FC<UserAdminProps> = (props) => {
<CreateUserDialog
open
close={() => setDialog(null)}
- token={token}
data={undefined}
onSuccess={updateUsers}
/>
@@ -315,7 +307,6 @@ const UserAdmin: React.FC<UserAdminProps> = (props) => {
<UserDeleteDialog
open
close={() => setDialog(null)}
- token={token}
data={{ username: dialog.username }}
onSuccess={updateUsers}
/>
@@ -326,7 +317,6 @@ const UserAdmin: React.FC<UserAdminProps> = (props) => {
<UserModifyDialog
open
close={() => setDialog(null)}
- token={token}
data={{ oldUser: dialog.user }}
onSuccess={updateUsers}
/>
@@ -337,7 +327,6 @@ const UserAdmin: React.FC<UserAdminProps> = (props) => {
<UserPermissionModifyDialog
open
close={() => setDialog(null)}
- token={token}
data={{
username: dialog.username,
permissions: dialog.permissions,