summaryrefslogtreecommitdiff
path: root/src/tools
diff options
context:
space:
mode:
authormintphin <him@mint.lgbt>2020-10-30 12:21:02 -0300
committerGitHub <noreply@github.com>2020-10-31 00:21:02 +0900
commit42162c80155addc87d2e67b2418ca3a7ec37fc0d (patch)
treeaf015e24b9c567c736ff7d525716ddb4df3b7c54 /src/tools
parentリバーシで相手のターンでも置くことができるのを修正 (... (diff)
downloadsharkey-42162c80155addc87d2e67b2418ca3a7ec37fc0d.tar.gz
sharkey-42162c80155addc87d2e67b2418ca3a7ec37fc0d.tar.bz2
sharkey-42162c80155addc87d2e67b2418ca3a7ec37fc0d.zip
TOOLS: Created demote tool based on mark-admin.ts (#6776)
* TOOLS: Created demote tool based on mark-admin.ts * TOOLS: Removed trailing whitespace on demote-admin.ts
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/demote-admin.ts32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/tools/demote-admin.ts b/src/tools/demote-admin.ts
new file mode 100644
index 0000000000..5e3e64bffb
--- /dev/null
+++ b/src/tools/demote-admin.ts
@@ -0,0 +1,32 @@
+import { initDb } from '../db/postgre';
+import { getRepository } from 'typeorm';
+import { User } from '../models/entities/user';
+
+async function main(username: string) {
+ if (!username) throw `username required`;
+ username = username.replace(/^@/, '');
+
+ await initDb();
+ const Users = getRepository(User);
+
+ const res = await Users.update({
+ usernameLower: username.toLowerCase(),
+ host: null
+ }, {
+ isAdmin: false
+ });
+
+ if (res.affected !== 1) {
+ throw 'Failed';
+ }
+}
+
+const args = process.argv.slice(2);
+
+main(args[0]).then(() => {
+ console.log('Success');
+ process.exit(0);
+}).catch(e => {
+ console.error(`Error: ${e.message || e}`);
+ process.exit(1);
+});