This commit is contained in:
syuilo 2020-03-31 08:07:10 +09:00
parent cc66a1f9c7
commit 6a732ab1cd
3 changed files with 9 additions and 5 deletions

View file

@ -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({

View file

@ -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 == null) throw new Error('access denied');
const { account, secret } = await signup(ps.username, ps.password);

View file

@ -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,