summaryrefslogtreecommitdiff
path: root/src/server/api
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2020-03-31 08:08:22 +0900
committersyuilo <syuilotan@yahoo.co.jp>2020-03-31 08:08:22 +0900
commit10356b4041d50acf1019a49f8b4c35d373315162 (patch)
tree9c9c61797af05c2e2aa681603240e2131b13972d /src/server/api
parentAPIの権限設定漏れを修正 (#6202) (diff)
parentFix #6203 (diff)
downloadsharkey-10356b4041d50acf1019a49f8b4c35d373315162.tar.gz
sharkey-10356b4041d50acf1019a49f8b4c35d373315162.tar.bz2
sharkey-10356b4041d50acf1019a49f8b4c35d373315162.zip
Merge branch 'master' into develop
Diffstat (limited to 'src/server/api')
-rw-r--r--src/server/api/common/signup.ts6
-rw-r--r--src/server/api/endpoints/admin/accounts/create.ts4
-rw-r--r--src/server/api/endpoints/meta.ts4
3 files changed, 9 insertions, 5 deletions
diff --git a/src/server/api/common/signup.ts b/src/server/api/common/signup.ts
index b6e13b36f1..26a9d03e0f 100644
--- a/src/server/api/common/signup.ts
+++ b/src/server/api/common/signup.ts
@@ -22,8 +22,6 @@ export async function signup(username: User['username'], password: UserProfile['
throw new Error('INVALID_PASSWORD');
}
- const usersCount = await Users.count({});
-
// Generate hash of password
const salt = await bcrypt.genSalt(8);
const hash = await bcrypt.hash(password, salt);
@@ -76,7 +74,9 @@ export async function signup(username: User['username'], password: UserProfile['
usernameLower: username.toLowerCase(),
host: toPunyNullable(host),
token: secret,
- isAdmin: usersCount === 0,
+ isAdmin: (await Users.count({
+ host: null,
+ })) === 0,
}));
await transactionalEntityManager.save(new UserKeypair({
diff --git a/src/server/api/endpoints/admin/accounts/create.ts b/src/server/api/endpoints/admin/accounts/create.ts
index 16fe3e36da..98e5642bed 100644
--- a/src/server/api/endpoints/admin/accounts/create.ts
+++ b/src/server/api/endpoints/admin/accounts/create.ts
@@ -17,7 +17,9 @@ export const meta = {
};
export default define(meta, async (ps, me) => {
- const noUsers = (await Users.count({})) === 0;
+ const noUsers = (await Users.count({
+ host: null,
+ })) === 0;
if (!noUsers && !me?.isAdmin) throw new Error('access denied');
const { account, secret } = await signup(ps.username, ps.password);
diff --git a/src/server/api/endpoints/meta.ts b/src/server/api/endpoints/meta.ts
index 41adc855d2..0cb6f75f11 100644
--- a/src/server/api/endpoints/meta.ts
+++ b/src/server/api/endpoints/meta.ts
@@ -137,7 +137,9 @@ export default define(meta, async (ps, me) => {
category: e.category,
url: e.url,
})),
- requireSetup: (await Users.count({})) === 0,
+ requireSetup: (await Users.count({
+ host: null,
+ })) === 0,
enableEmail: instance.enableEmail,
enableTwitterIntegration: instance.enableTwitterIntegration,