55 Commits

Author SHA1 Message Date
eeda0405f3 Merge pull request 'dev' (#400) from dev into master
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m13s
Reviewed-on: sh-edraft.de/kd_discord_bot#400
2023-10-03 11:09:46 +02:00
0e2b7d03fc Fixed compose
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m17s
2023-10-03 11:04:33 +02:00
c7f5ab0161 Merge pull request '#393' (#399) from #393 into dev
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 4m25s
Reviewed-on: sh-edraft.de/kd_discord_bot#399
2023-10-03 10:53:35 +02:00
01e8e4256d Build new version #393 2023-10-03 10:52:38 +02:00
75adc2285e Fixed feature flag handling #393 2023-10-03 10:51:40 +02:00
9e12d84ba0 Fixed errors #393 2023-10-03 10:09:10 +02:00
d3b503d3ef Improved permission service #393 2023-10-03 10:04:16 +02:00
dd86c3a657 Moved help message from private to team chat 2023-10-03 09:46:14 +02:00
aba6e48e2b Merge pull request 'dev' (#392) from dev into master
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m42s
Reviewed-on: sh-edraft.de/kd_discord_bot#392
2023-10-02 09:22:16 +02:00
73848c3141 Merge branch 'master' into dev
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m22s
2023-10-02 09:22:09 +02:00
33d6015088 Fixed compose
Some checks reported warnings
Deploy dev on push / on-push-deploy_sh-edraft (push) Has been cancelled
2023-10-02 09:20:33 +02:00
7e962e05f6 Fixed docker stacks
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m16s
2023-10-02 08:48:25 +02:00
c73c6876b2 Fixed short role name check command
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m49s
2023-10-02 08:36:33 +02:00
8e949c3e1a Set compose versions
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m18s
2023-10-02 08:31:15 +02:00
472a76d563 Build new version #391
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 4m11s
2023-10-02 08:25:18 +02:00
f5d88ec94c Completed feature #391 2023-10-02 08:24:20 +02:00
2182c021b9 Added highest role setting to gql #391 2023-10-02 08:01:21 +02:00
a9c9880fd4 Added highest role check #391 2023-10-02 07:59:08 +02:00
d91c76467d Added setting to server config #391 2023-10-02 07:52:00 +02:00
2f10ace27f Set version 2023-10-02 07:46:13 +02:00
3b79a61bb6 Improved can see permission for admin and technician 2023-10-02 07:41:15 +02:00
ef0fab1178 Check level in sync command
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 4m35s
2023-10-02 07:30:14 +02:00
189b6370a9 Moved welcome message for team from private to team chat #390 2023-10-02 07:28:09 +02:00
0ed93c56d0 Merge pull request 'dev' (#389) from dev into master
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m31s
Reviewed-on: sh-edraft.de/kd_discord_bot#389
2023-10-02 07:22:08 +02:00
4d18dd3845 Added gitea templates
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 4m50s
2023-10-02 07:14:36 +02:00
7b7cbb20db Fixed formatting 2023-10-02 07:13:21 +02:00
84c2f5c2c4 Fixed workflow for new branch model
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m49s
2023-10-02 07:12:39 +02:00
c85c6df784 Merge pull request 'support' (#388) from support into master
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m51s
Reviewed-on: sh-edraft.de/kd_discord_bot#388
2023-09-29 19:42:22 +02:00
d5d898fa07 Merge pull request 'Fixed auto-role react' (#387) from 1.1.8 into support
Some checks failed
Deploy dev on push / on-push-deploy_sh-edraft (push) Failing after 33s
Reviewed-on: sh-edraft.de/kd_discord_bot#387
2023-09-29 19:42:09 +02:00
ef5ebabf81 Fixed auto-role react 2023-09-29 19:41:55 +02:00
f89b4c4ef5 Merge pull request 'support' (#386) from support into master
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m10s
Reviewed-on: sh-edraft.de/kd_discord_bot#386
2023-09-29 19:31:19 +02:00
8b277a2d19 Merge pull request 'Fixed docker compose' (#385) from 1.1.8 into support
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m7s
Reviewed-on: sh-edraft.de/kd_discord_bot#385
2023-09-29 19:27:13 +02:00
a84e77e055 Fixed docker compose 2023-09-29 19:26:40 +02:00
892c983e1e Merge pull request '1.1.8' (#384) from 1.1.8 into support
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 4m9s
Reviewed-on: sh-edraft.de/kd_discord_bot#384
2023-09-29 19:20:41 +02:00
1d3809c986 Set version 2023-09-29 19:20:04 +02:00
3117f617d9 Fixed auto role add 2023-09-29 19:19:23 +02:00
7e6053768f Added react command 2023-09-29 19:11:06 +02:00
3d9cd0a2fc Merge pull request 'Fixed nick name handling' (#383) from support into master
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m37s
Reviewed-on: sh-edraft.de/kd_discord_bot#383
2023-09-28 20:59:26 +02:00
8d90768594 Fixed nick name handling
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 4m2s
2023-09-28 20:54:23 +02:00
7e8a9482d4 Merge pull request 'Added short role name check command' (#382) from support into master
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m23s
Reviewed-on: sh-edraft.de/kd_discord_bot#382
2023-09-28 20:46:41 +02:00
bf7d29e6ab Fixed auto role group
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 4m16s
2023-09-28 20:41:27 +02:00
608001e0e1 Added short role name check command
Some checks reported warnings
Deploy dev on push / on-push-deploy_sh-edraft (push) Has been cancelled
2023-09-28 20:37:15 +02:00
0dd9558f33 Merge pull request 'support' (#381) from support into master
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m12s
Reviewed-on: sh-edraft.de/kd_discord_bot#381
2023-09-28 20:03:31 +02:00
7acd850e68 Set version
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m23s
2023-09-28 19:59:26 +02:00
ecd3ea96b1 Merge pull request 'Fixed mutation' (#380) from 1.1.7 into support
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 4m10s
Reviewed-on: sh-edraft.de/kd_discord_bot#380
2023-09-28 19:51:23 +02:00
d869bcfd3a Fixed mutation 2023-09-28 19:51:02 +02:00
818e021761 Merge pull request 'Fixed post script' (#379) from 1.1.7 into support
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 4m6s
Reviewed-on: sh-edraft.de/kd_discord_bot#379
2023-09-28 19:32:36 +02:00
b286322247 Merge branch 'support' into 1.1.7 2023-09-28 19:13:20 +02:00
661b057e85 Fixed workspace 2023-09-28 19:13:10 +02:00
9be4e344f6 Merge pull request '1.1.7 - #376 #375 #374' (#377) from 1.1.7 into support
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m24s
Reviewed-on: sh-edraft.de/kd_discord_bot#377
Reviewed-by: Ebola-Chan <nick.jungmann@gmail.com>
Closes #374 #375 #376 #378
2023-09-28 18:12:57 +02:00
ebc782e266 Fixed project description #378 2023-09-28 17:34:49 +02:00
887a46fa7f Build version #378 2023-09-28 17:03:05 +02:00
25137c6923 Merge pull request 'Fixed action' (#373) from support into master
All checks were successful
Deploy dev on push / on-push-deploy_sh-edraft (push) Successful in 3m58s
Reviewed-on: sh-edraft.de/kd_discord_bot#373
2023-09-27 20:59:21 +02:00
74f3ee2f08 Merge pull request 'support into master' (#371) from support into master
Some checks failed
Deploy dev on push / on-push-deploy_sh-edraft (push) Failing after 1m6s
Reviewed-on: sh-edraft.de/kd_discord_bot#371
Reviewed-by: edraft-dev <dev.sven.heidemann@sh-edraft.de>
Reviewed-by: Ebola-Chan <nick.jungmann@gmail.com>
2023-09-27 20:46:54 +02:00
2e0c1babe4 Merge pull request 'support in master' (#356) from support into master
Reviewed-on: sh-edraft.de/kd_discord_bot#356
Reviewed-by: Ebola-Chan <nick.jungmann@gmail.com>
Reviewed-by: edraft-dev <dev.sven.heidemann@sh-edraft.de>
2023-09-10 18:23:38 +02:00
140 changed files with 1307 additions and 1232 deletions

17
.gitea/issue_template.md Normal file
View File

@@ -0,0 +1,17 @@
#### Beschreibung
Als Produktmanager muss ich nun dieses Ticket ausfüllen.
#### Aktuelles Verhalten
* Was macht die Software aktuell?
#### Gewünschtes Verhalten
* Was soll die Software anders machen?
#### Akzeptanzkriterien
* Was muss erfüllt sein, damit das Ticket als abgeschlossen angesehen werden kann?
#### Anmerkungen

View File

@@ -0,0 +1,7 @@
#### Ticket Referenz:
#1
#### Gibt es etwas beim Review zu beachten?
Nein

View File

@@ -3,7 +3,7 @@ run-name: Deploy dev on push
on:
push:
branches:
- support
- dev
jobs:
on-push-deploy_sh-edraft:

View File

@@ -5,8 +5,8 @@ volumes:
services:
kdb_bot_staging_1:
image: sh-edraft.de/kdb-bot:1.1.6
container_name: kdb_bot_staging_1
image: sh-edraft.de/kdb-bot:1.1.10
restart: unless-stopped
depends_on:
- kdb_db_staging_1
networks:
@@ -25,15 +25,14 @@ services:
mode: replicated
replicas: 1
placement:
constraints: [ node.role == manager ]
constraints: [node.role == manager]
resources:
reservations:
cpus: "0.5"
memory: 1024M
kdb_web_staging_1:
image: sh-edraft.de/kdb-web:1.1.6
container_name: kdb_web_staging_1
image: sh-edraft.de/kdb-web:1.1.10
depends_on:
- kdb_bot_staging_1
networks:
@@ -42,12 +41,12 @@ services:
volumes:
- /opt/kdb/staging/web/config.json:/usr/share/nginx/html/assets/config.json
environment:
BOT_CONTAINER_NAME: "kdb_bot_staging_1"
BOT_CONTAINER_NAME: "kdb_bot_staging_1"
deploy:
mode: replicated
replicas: 1
placement:
constraints: [ node.role == manager ]
constraints: [node.role == manager]
resources:
limits:
cpus: "0.4"
@@ -58,7 +57,6 @@ services:
kdb_db_staging_1:
image: mysql:latest
container_name: kdb_db_staging_1
command: mysqld --default-authentication-plugin=mysql_native_password --log_bin_trust_function_creators=1
networks:
- kdb_test
@@ -75,7 +73,7 @@ services:
mode: replicated
replicas: 1
placement:
constraints: [ node.role == manager ]
constraints: [node.role == manager]
resources:
reservations:
cpus: "0.1"
@@ -86,4 +84,4 @@ networks:
external: true
kdb_test:
driver: overlay
attachable: true
attachable: true

View File

@@ -1,86 +1,87 @@
version: "3.9"
volumes:
kdb_db_prod_1:
kdb_db_prod_1:
services:
kdb_bot_prod_1:
image: sh-edraft.de/kdb-bot:1.1.6
depends_on:
- kdb_db_prod_1
networks:
- kdb_prod
- reverse_proxy
volumes:
- /opt/kdb/production/bot/config:/app/bot/config
- /opt/kdb/production/bot/api_config:/app/bot_api/config
- /opt/kdb/production/bot/logs:/app/bot/logs
environment:
KDB_ENVIRONMENT: "production"
KDB_TOKEN: "OTk4MTU5NTEyNDYyNzA4Nzg2.Gx0hSB.Ouq2dfRKxLBJvHfEq8OrFBHVUF24AQrVf55coM"
KDB_PREFIX: "!k "
deploy:
mode: replicated
replicas: 1
placement:
constraints: [ node.role == manager ]
resources:
reservations:
cpus: "0.5"
memory: 1024M
kdb_bot_prod_1:
image: sh-edraft.de/kdb-bot:1.1.10
restart: unless-stopped
depends_on:
- kdb_db_prod_1
networks:
- kdb_prod
- reverse_proxy
volumes:
- /opt/kdb/production/bot/config:/app/bot/config
- /opt/kdb/production/bot/api_config:/app/bot_api/config
- /opt/kdb/production/bot/logs:/app/bot/logs
environment:
KDB_ENVIRONMENT: "production"
KDB_TOKEN: "OTk4MTU5NTEyNDYyNzA4Nzg2.Gx0hSB.Ouq2dfRKxLBJvHfEq8OrFBHVUF24AQrVf55coM"
KDB_PREFIX: "!k "
deploy:
mode: replicated
replicas: 1
placement:
constraints: [node.role == manager]
resources:
reservations:
cpus: "0.5"
memory: 1024M
kdb_web_prod_1:
image: sh-edraft.de/kdb-web:1.1.6
depends_on:
- kdb_bot_prod_1
networks:
- kdb_prod
- reverse_proxy
volumes:
- /opt/kdb/production/web/config.json:/usr/share/nginx/html/assets/config.json
environment:
BOT_CONTAINER_NAME: "kdb_bot_prod_1"
deploy:
mode: replicated
replicas: 1
placement:
constraints: [ node.role == manager ]
resources:
limits:
cpus: "0.4"
memory: 400M
reservations:
cpus: "0.1"
memory: 20M
kdb_web_prod_1:
image: sh-edraft.de/kdb-web:1.1.10
depends_on:
- kdb_bot_prod_1
networks:
- kdb_prod
- reverse_proxy
volumes:
- /opt/kdb/production/web/config.json:/usr/share/nginx/html/assets/config.json
environment:
BOT_CONTAINER_NAME: "kdb_bot_prod_1"
deploy:
mode: replicated
replicas: 1
placement:
constraints: [node.role == manager]
resources:
limits:
cpus: "0.4"
memory: 400M
reservations:
cpus: "0.1"
memory: 20M
kdb_db_prod_1:
image: mysql:latest
command: mysqld --default-authentication-plugin=mysql_native_password --log_bin_trust_function_creators=1
networks:
- kdb_prod
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: "kd_kdb"
MYSQL_USER: "kd_kdb"
MYSQL_PASSWORD: ",2#MzfN4J=7r(q,Tz3npDkCR§>VE&}7T"
MYSQL_DATABASE: "kd_kdb"
ports:
- "3307:3306"
volumes:
- kdb_db_prod_1:/var/lib/mysql
deploy:
mode: replicated
replicas: 1
placement:
constraints: [ node.role == manager ]
resources:
reservations:
cpus: "0.1"
memory: 150M
kdb_db_prod_1:
image: mysql:latest
command: mysqld --default-authentication-plugin=mysql_native_password --log_bin_trust_function_creators=1
networks:
- kdb_prod
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: "kd_kdb"
MYSQL_USER: "kd_kdb"
MYSQL_PASSWORD: ",2#MzfN4J=7r(q,Tz3npDkCR§>VE&}7T"
MYSQL_DATABASE: "kd_kdb"
ports:
- "3307:3306"
volumes:
- kdb_db_prod_1:/var/lib/mysql
deploy:
mode: replicated
replicas: 1
placement:
constraints: [node.role == manager]
resources:
reservations:
cpus: "0.1"
memory: 150M
networks:
reverse_proxy:
external: true
kdb_prod:
driver: overlay
attachable: true
attachable: true

View File

@@ -16,7 +16,7 @@
"level": "src/modules/level/level.json",
"permission": "src/modules/permission/permission.json",
"technician": "src/modules/technician/technician.json",
"short-role-name": "src/modules/_short_role_name/modules/short-role-name.json",
"short-role-name": "src/modules/short_role_name/short-role-name.json",
"checks": "tools/checks/checks.json",
"get-version": "tools/get_version/get-version.json",
"post-build": "tools/post_build/post-build.json",

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,12 +4,12 @@
"Version": {
"Major": "1",
"Minor": "1",
"Micro": "7"
"Micro": "10"
},
"Author": "Sven Heidemann",
"AuthorEmail": "sven.heidemann@sh-edraft.de",
"Description": "sh-edraft.de Discord bot",
"LongDescription": "Discord bot for some customers of sh-edraft.de",
"LongDescription": "Discord bot for customers of sh-edraft.de",
"URL": "https://www.sh-edraft.de",
"CopyrightDate": "2022 - 2023",
"CopyrightName": "sh-edraft.de",

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot.extension'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot.extension"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -18,6 +18,7 @@ from bot_data.migration.initial_migration import InitialMigration
from bot_data.migration.level_migration import LevelMigration
from bot_data.migration.remove_stats_migration import RemoveStatsMigration
from bot_data.migration.short_role_name_migration import ShortRoleNameMigration
from bot_data.migration.short_role_name_only_highest_migration import ShortRoleNameOnlyHighestMigration
from bot_data.migration.stats_migration import StatsMigration
from bot_data.migration.user_joined_game_server_migration import UserJoinedGameServerMigration
from bot_data.migration.user_message_count_per_hour_migration import (
@@ -54,3 +55,4 @@ class StartupMigrationExtension(StartupExtensionABC):
services.add_transient(MigrationABC, DefaultRoleMigration) # 24.09.2023 #360 - 1.1.3
services.add_transient(MigrationABC, ShortRoleNameMigration) # 28.09.2023 #378 - 1.1.7
services.add_transient(MigrationABC, FixUpdatesMigration) # 28.09.2023 #378 - 1.1.7
services.add_transient(MigrationABC, ShortRoleNameOnlyHighestMigration) # 02.10.2023 #391 - 1.1.9

View File

@@ -21,7 +21,6 @@
}
},
"common": {
"feature_not_activated": "Diese Funktion ist deaktiviert",
"bot_has_no_permission_message": "Ey!!!\nWas soll das?\nIch habe keine Berechtigungen :(\nScheiß System...",
"colors": {
"blue": "Blau",
@@ -83,6 +82,7 @@
"unexpected_quote_error": "Fehler: Unerwarteter Fehler beim Anführungszeichen!",
"user_input_error": "Fehler: Eingabefehler!"
},
"feature_not_activated": "Diese Funktion ist deaktiviert",
"hello_world": "Hallo Welt",
"no_permission_message": "Nein!\nIch höre nicht auf dich ¯\\_(ツ)_/¯",
"not_implemented_yet": "Ey Alter, das kann ich noch nicht...",
@@ -95,10 +95,10 @@
},
"modules": {
"achievements": {
"got_new_achievement": "{} hat die Errungenschaft {} freigeschaltet :D",
"commands": {
"check": "Alles klar, ich schaue eben nach... nom nom"
}
},
"got_new_achievement": "{} hat die Errungenschaft {} freigeschaltet :D"
},
"auto_role": {
"add": {
@@ -123,6 +123,9 @@
},
"success": "auto-role {} wurde entfernt :D"
},
"react": {
"success": "Alle Reaktionen wurden hinzugefügt"
},
"rule": {
"add": {
"error": {
@@ -152,38 +155,37 @@
}
},
"base": {
"member_left_message": "{} hat uns leider verlassen :(",
"complaints": {
"title": "Beschwerde einreichen",
"label": "Beschwerde",
"message": "{} hat eine Beschwerde eingereicht:\n{}",
"response": "Danke für deine Beschwerde"
},
"bug": {
"title": "Bug melden",
"label": "Bug",
"message": "{} meldet einen Bug:\n{}",
"response": "Danke für dein Feedback :D"
},
"afk_command_channel_missing_message": "Zu unfähig einem Sprachkanal beizutreten?",
"afk_command_move_message": "Ich verschiebe dich ja schon... (◔_◔)",
"bug": {
"label": "Bug",
"message": "{} meldet einen Bug:\n{}",
"response": "Danke für dein Feedback :D",
"title": "Bug melden"
},
"complaints": {
"label": "Beschwerde",
"message": "{} hat eine Beschwerde eingereicht:\n{}",
"response": "Danke für deine Beschwerde",
"title": "Beschwerde einreichen"
},
"game_server": {
"add": {
"success": "Gameserver {} wurde hinzugefügt :)"
},
"error": {
"nothing_found": "Keine Gameserver gefunden."
},
"list_members": {
"title": "Mitglieder",
"description": "Konfigurierte Mitglieder:",
"users": "Mitglieder"
},
"list": {
"title": "Gameserver",
"api_key": "API Key",
"description": "Konfigurierte Gameserver:",
"name": "Name",
"api_key": "API Key"
"title": "Gameserver"
},
"add": {
"success": "Gameserver {} wurde hinzugefügt :)"
"list_members": {
"description": "Konfigurierte Mitglieder:",
"title": "Mitglieder",
"users": "Mitglieder"
},
"remove": {
"success": "Gameserver wurde entfernt :D"
@@ -210,6 +212,7 @@
"moved": "Alle Personen aus {} wurden nach {} verschoben."
},
"member_joined_help_voice_channel": "{} braucht Hilfe, bitte kümmere dich drum :D",
"member_left_message": "{} hat uns leider verlassen :(",
"pong": "Pong",
"presence": {
"changed": "Presence wurde geändert.",
@@ -346,6 +349,9 @@
"moderator": {
"purge_message": "Na gut..., ich lösche alle Nachrichten wenns sein muss."
},
"short_role_name": {
"checked_message": "Die Rollen Kürzel wurden überprüft"
},
"technician": {
"api_key": {
"add": {
@@ -357,10 +363,10 @@
"success": "API-Schlüssel wurde entfernt :D"
}
},
"synced_message": "Der Sync wurde abgeschlossen.",
"log_message": "Hier sind deine Logdateien! :)",
"restart_message": "Bin gleich wieder da :D",
"shutdown_message": "Trauert nicht um mich, es war eine logische Entscheidung. Das Wohl von Vielen, es wiegt schwerer als das Wohl von Wenigen oder eines Einzelnen. Ich war es und ich werde es immer sein, euer Freund. Lebt lange und in Frieden :)"
"shutdown_message": "Trauert nicht um mich, es war eine logische Entscheidung. Das Wohl von Vielen, es wiegt schwerer als das Wohl von Wenigen oder eines Einzelnen. Ich war es und ich werde es immer sein, euer Freund. Lebt lange und in Frieden :)",
"synced_message": "Der Sync wurde abgeschlossen."
}
}
}

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.abc'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.abc"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,7 +4,7 @@
"Version": {
"Major": "1",
"Minor": "1",
"Micro": "7"
"Micro": "10"
},
"Author": "",
"AuthorEmail": "",

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.configuration'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.configuration"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.controller'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.controller"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.event'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.event"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.exception'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.exception"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.filter'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.filter"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.filter.discord'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.filter.discord"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.logging'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.logging"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.model'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.model"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.model.discord'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.model.discord"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.route'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.route"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.service'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.service"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_api.transformer'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_api.transformer"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_core'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_core"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_core.abc'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_core.abc"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,7 +4,7 @@
"Version": {
"Major": "1",
"Minor": "1",
"Micro": "7"
"Micro": "10"
},
"Author": "Sven Heidemann",
"AuthorEmail": "sven.heidemann@sh-edraft.de",

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_core.configuration'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_core.configuration"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -24,3 +24,4 @@ class FeatureFlagsEnum(Enum):
game_server = "GameServer"
sync_xp = "SyncXp"
short_role_name = "ShortRoleName"
technician_full_access = "TechnicianFullAccess"

View File

@@ -26,6 +26,7 @@ class FeatureFlagsSettings(ConfigurationModelABC):
FeatureFlagsEnum.game_server.value: False, # 25.09.2023 #366
FeatureFlagsEnum.sync_xp.value: False, # 25.09.2023 #366
FeatureFlagsEnum.short_role_name.value: False, # 28.09.2023 #378
FeatureFlagsEnum.technician_full_access.value: False, # 03.10.2023 #393
}
def __init__(self, **kwargs: dict):

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_core.core_extension'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_core.core_extension"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_core.events'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_core.events"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_core.exception'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_core.exception"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_core.helper'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_core.helper"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_core.logging'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_core.logging"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_core.pipes'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_core.pipes"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_core.service'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_core.service"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -228,7 +228,7 @@ class ClientUtilsService(ClientUtilsABC):
return
default_role = member.guild.get_role(settings.default_role_id)
if default_role in member.roles:
if default_role is None or default_role in member.roles:
return
await member.add_roles(default_role)

View File

@@ -7,8 +7,6 @@ from bot_data.abc.technician_config_repository_abc import TechnicianConfigReposi
from bot_data.model.server import Server
from bot_data.model.technician_config import TechnicianConfig
from bot_data.service.server_config_seeder import ServerConfigSeeder
from bot_data.service.technician_config_seeder import TechnicianConfigSeeder
from modules.permission.abc.permission_service_abc import PermissionServiceABC
class ConfigService:
@@ -18,7 +16,6 @@ class ConfigService:
services: ServiceProviderABC,
technician_config_repo: TechnicianConfigRepositoryABC,
server_config_repo: ServerConfigRepositoryABC,
tech_seeder: TechnicianConfigSeeder,
server_seeder: ServerConfigSeeder,
):
self._config = config
@@ -26,13 +23,9 @@ class ConfigService:
self._technician_config_repo = technician_config_repo
self._server_config_repo = server_config_repo
self._tech_seeder = tech_seeder
self._server_seeder = server_seeder
async def reload_technician_config(self):
if not self._technician_config_repo.does_technician_config_exists():
await self._tech_seeder.seed()
def reload_technician_config(self):
technician_config = self._technician_config_repo.get_technician_config()
self._config.add_configuration(TechnicianConfig, technician_config)
self._config.add_configuration(FeatureFlagsSettings, FeatureFlagsSettings(**technician_config.feature_flags))
@@ -45,6 +38,3 @@ class ConfigService:
self._config.add_configuration(
f"{type(server_config).__name__}_{server_config.server.discord_id}", server_config
)
permissions: PermissionServiceABC = self._services.get_service(PermissionServiceABC)
permissions.on_ready()

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_data'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_data"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_data.abc'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_data.abc"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,7 +4,7 @@
"Version": {
"Major": "1",
"Minor": "1",
"Micro": "7"
"Micro": "10"
},
"Author": "Sven Heidemann",
"AuthorEmail": "sven.heidemann@sh-edraft.de",

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_data.migration'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_data.migration"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -1,25 +1,26 @@
CREATE TABLE IF NOT EXISTS `CFG_ServerHistory`
(
`Id` BIGINT(20) NOT NULL,
`MessageDeleteTimer` BIGINT NOT NULL DEFAULT 6,
`NotificationChatId` BIGINT NOT NULL,
`MaxVoiceStateHours` BIGINT NOT NULL DEFAULT 6,
`XpPerMessage` BIGINT NOT NULL DEFAULT 1,
`XpPerReaction` BIGINT NOT NULL DEFAULT 1,
`MaxMessageXpPerHour` BIGINT NOT NULL DEFAULT 20,
`XpPerOntimeHour` BIGINT NOT NULL DEFAULT 10,
`XpPerEventParticipation` BIGINT NOT NULL DEFAULT 10,
`XpPerAchievement` BIGINT NOT NULL DEFAULT 10,
`AFKCommandChannelId` BIGINT NOT NULL,
`HelpVoiceChannelId` BIGINT NOT NULL,
`TeamChannelId` BIGINT NOT NULL,
`LoginMessageChannelId` BIGINT NOT NULL,
`DefaultRoleId` BIGINT NULL,
`FeatureFlags` JSON NULL DEFAULT ('{}'),
`ServerId` BIGINT NOT NULL,
`Deleted` BOOL DEFAULT FALSE,
`DateFrom` DATETIME(6) NOT NULL,
`DateTo` DATETIME(6) NOT NULL
`Id` BIGINT(20) NOT NULL,
`MessageDeleteTimer` BIGINT NOT NULL DEFAULT 6,
`NotificationChatId` BIGINT NOT NULL,
`MaxVoiceStateHours` BIGINT NOT NULL DEFAULT 6,
`XpPerMessage` BIGINT NOT NULL DEFAULT 1,
`XpPerReaction` BIGINT NOT NULL DEFAULT 1,
`MaxMessageXpPerHour` BIGINT NOT NULL DEFAULT 20,
`XpPerOntimeHour` BIGINT NOT NULL DEFAULT 10,
`XpPerEventParticipation` BIGINT NOT NULL DEFAULT 10,
`XpPerAchievement` BIGINT NOT NULL DEFAULT 10,
`AFKCommandChannelId` BIGINT NOT NULL,
`HelpVoiceChannelId` BIGINT NOT NULL,
`TeamChannelId` BIGINT NOT NULL,
`LoginMessageChannelId` BIGINT NOT NULL,
`DefaultRoleId` BIGINT NULL,
`ShortRoleNameSetOnlyHighest` BOOLEAN NOT NULL DEFAULT FALSE,
`FeatureFlags` JSON NULL DEFAULT ('{}'),
`ServerId` BIGINT NOT NULL,
`Deleted` BOOL DEFAULT FALSE,
`DateFrom` DATETIME(6) NOT NULL,
`DateTo` DATETIME(6) NOT NULL
);
DROP TRIGGER IF EXISTS `TR_CFG_ServerUpdate`;
@@ -44,6 +45,7 @@ BEGIN
`TeamChannelId`,
`LoginMessageChannelId`,
`DefaultRoleId`,
`ShortRoleNameSetOnlyHighest`,
`FeatureFlags`,
`ServerId`,
`DateFrom`,
@@ -63,6 +65,7 @@ BEGIN
OLD.TeamChannelId,
OLD.LoginMessageChannelId,
OLD.DefaultRoleId,
OLD.ShortRoleNameSetOnlyHighest,
OLD.FeatureFlags,
OLD.ServerId,
OLD.LastModifiedAt,
@@ -91,6 +94,7 @@ BEGIN
`TeamChannelId`,
`LoginMessageChannelId`,
`DefaultRoleId`,
`ShortRoleNameSetOnlyHighest`,
`ServerId`,
`FeatureFlags`,
`Deleted`,
@@ -111,6 +115,7 @@ BEGIN
OLD.TeamChannelId,
OLD.LoginMessageChannelId,
OLD.DefaultRoleId,
OLD.ShortRoleNameSetOnlyHighest,
OLD.FeatureFlags,
OLD.ServerId,
TRUE,

View File

@@ -0,0 +1,51 @@
from bot_core.logging.database_logger import DatabaseLogger
from bot_data.abc.migration_abc import MigrationABC
from bot_data.db_context import DBContext
class ShortRoleNameOnlyHighestMigration(MigrationABC):
name = "1.1.9_ShortRoleNameOnlyHighestMigration"
def __init__(self, logger: DatabaseLogger, db: DBContext):
MigrationABC.__init__(self)
self._logger = logger
self._db = db
self._cursor = db.cursor
def upgrade(self):
self._logger.debug(__name__, "Running upgrade")
self._cursor.execute(
str(
f"""
ALTER TABLE CFG_Server
ADD ShortRoleNameSetOnlyHighest BOOLEAN NOT NULL DEFAULT FALSE AFTER DefaultRoleId;
"""
)
)
self._cursor.execute(
str(
f"""
ALTER TABLE CFG_ServerHistory
ADD ShortRoleNameSetOnlyHighest BOOLEAN NOT NULL DEFAULT FALSE AFTER DefaultRoleId;
"""
)
)
self._exec(__file__, "config/server.sql")
def downgrade(self):
self._cursor.execute(
str(
f"""
ALTER TABLE CFG_Server DROP COLUMN ShortRoleNameSetOnlyHighest;
"""
)
)
self._cursor.execute(
str(
f"""
ALTER TABLE CFG_ServerHistory DROP COLUMN ShortRoleNameSetOnlyHighest;
"""
)
)

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_data.model'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_data.model"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -29,6 +29,7 @@ class ServerConfig(TableABC, ConfigurationModelABC):
team_channel_id: int,
login_message_channel_id: int,
default_role_id: Optional[int],
short_role_name_only_set_highest_role: bool,
feature_flags: dict[FeatureFlagsEnum],
server: Server,
afk_channel_ids: List[int],
@@ -52,6 +53,8 @@ class ServerConfig(TableABC, ConfigurationModelABC):
self._team_channel_id = team_channel_id
self._login_message_channel_id = login_message_channel_id
self._default_role_id = default_role_id
self._short_role_name_only_set_highest_role = short_role_name_only_set_highest_role
self._feature_flags = feature_flags
self._server = server
self._afk_channel_ids = afk_channel_ids
@@ -78,6 +81,7 @@ class ServerConfig(TableABC, ConfigurationModelABC):
guild.system_channel.id,
guild.system_channel.id,
None,
False,
{},
server,
List(int),
@@ -200,6 +204,14 @@ class ServerConfig(TableABC, ConfigurationModelABC):
def default_role_id(self, value: int):
self._default_role_id = value
@property
def short_role_name_only_set_highest_role(self) -> bool:
return self._short_role_name_only_set_highest_role
@short_role_name_only_set_highest_role.setter
def short_role_name_only_set_highest_role(self, value: bool):
self._short_role_name_only_set_highest_role = value
@property
def feature_flags(self) -> dict[FeatureFlagsEnum]:
return self._feature_flags
@@ -273,6 +285,7 @@ class ServerConfig(TableABC, ConfigurationModelABC):
`TeamChannelId`,
`LoginMessageChannelId`,
`DefaultRoleId`,
`ShortRoleNameSetOnlyHighest`,
`FeatureFlags`,
`ServerId`
) VALUES (
@@ -290,6 +303,7 @@ class ServerConfig(TableABC, ConfigurationModelABC):
{self._team_channel_id},
{self._login_message_channel_id},
{"NULL" if self._default_role_id is None else self._default_role_id},
{self._short_role_name_only_set_highest_role},
'{json.dumps(self._feature_flags)}',
{self._server.id}
);
@@ -315,6 +329,7 @@ class ServerConfig(TableABC, ConfigurationModelABC):
`TeamChannelId` = {self._team_channel_id},
`LoginMessageChannelId` = {self._login_message_channel_id},
`DefaultRoleId` = {"NULL" if self._default_role_id is None else self._default_role_id},
`ShortRoleNameSetOnlyHighest` = {self._short_role_name_only_set_highest_role},
`FeatureFlags` = '{json.dumps(self._feature_flags)}',
`ServerId` = {self._server.id}
WHERE `Id` = {self._id};

View File

@@ -18,6 +18,7 @@ class ServerConfigHistory(HistoryTableABC):
team_channel_id: int,
login_message_channel_id: int,
default_role_id: int,
short_role_name_only_set_highest_role: bool,
feature_flags: dict[str],
server_id: int,
deleted: bool,
@@ -42,6 +43,8 @@ class ServerConfigHistory(HistoryTableABC):
self._team_channel_id = team_channel_id
self._login_message_channel_id = login_message_channel_id
self._default_role_id = default_role_id
self._short_role_name_only_set_highest_role = short_role_name_only_set_highest_role
self._feature_flags = feature_flags
self._server_id = server_id
@@ -105,6 +108,10 @@ class ServerConfigHistory(HistoryTableABC):
def default_role_id(self) -> int:
return self._default_role_id
@property
def short_role_name_only_set_highest_role(self) -> bool:
return self._short_role_name_only_set_highest_role
@property
def feature_flags(self) -> dict[str]:
return self._feature_flags

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_data.service'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_data.service"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -65,12 +65,13 @@ class ServerConfigRepositoryService(ServerConfigRepositoryABC):
result[12],
result[13],
result[14],
json.loads(result[15]),
self._servers.get_server_by_id(result[16]),
self._get_afk_channel_ids(result[16]),
self._get_team_role_ids(result[16]),
result[17],
result[15],
json.loads(result[16]),
self._servers.get_server_by_id(result[17]),
self._get_afk_channel_ids(result[17]),
self._get_team_role_ids(result[17]),
result[18],
result[19],
id=result[0],
)

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_graphql'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_graphql"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_graphql.abc'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_graphql.abc"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -79,6 +79,14 @@ class QueryABC(ObjectType):
permissions: PermissionService = services.get_service(PermissionService)
bot: DiscordBotServiceABC = services.get_service(DiscordBotServiceABC)
if user.auth_role == AuthRoleEnum.admin:
return True
for u in user.users:
guild = bot.get_guild(u.server.discord_id)
if permissions.is_member_technician(guild.get_member(u.discord_id)):
return True
access = False
if type(element) == Achievement:
element: Achievement = element

View File

@@ -4,7 +4,7 @@
"Version": {
"Major": "1",
"Minor": "1",
"Micro": "7"
"Micro": "10"
},
"Author": "Sven Heidemann",
"AuthorEmail": "sven.heidemann@sh-edraft.de",

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_graphql.filter'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_graphql.filter"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -14,6 +14,7 @@ type ServerConfig implements TableWithHistoryQuery {
teamChannelId: String
loginMessageChannelId: String
defaultRoleId: String
shortRoleNameOnlySetHighestRole: Boolean
featureFlagCount: Int
featureFlags: [FeatureFlag]
@@ -45,6 +46,7 @@ type ServerConfigHistory implements HistoryTableQuery {
teamChannelId: String
loginMessageChannelId: String
defaultRoleId: String
shortRoleNameOnlySetHighestRole: Boolean
featureFlagCount: Int
featureFlags: [FeatureFlag]
@@ -94,6 +96,7 @@ input ServerConfigInput {
teamChannelId: String
loginMessageChannelId: String
defaultRoleId: String
shortRoleNameOnlySetHighestRole: Boolean
featureFlags: [FeatureFlagInput]
afkChannelIds: [String]

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_graphql.model'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_graphql.model"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_graphql.mutations'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_graphql.mutations"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -13,7 +13,6 @@ from bot_data.model.server_team_role_ids_config import ServerTeamRoleIdsConfig
from bot_data.model.team_member_type_enum import TeamMemberTypeEnum
from bot_data.model.user_role_enum import UserRoleEnum
from bot_graphql.abc.query_abc import QueryABC
from modules.permission.abc.permission_service_abc import PermissionServiceABC
class ServerConfigMutation(QueryABC):
@@ -25,7 +24,6 @@ class ServerConfigMutation(QueryABC):
server_configs: ServerConfigRepositoryABC,
db: DatabaseContextABC,
config_service: ConfigService,
permissions: PermissionServiceABC,
):
QueryABC.__init__(self, "ServerConfigMutation")
@@ -35,7 +33,6 @@ class ServerConfigMutation(QueryABC):
self._server_configs = server_configs
self._db = db
self._config_service = config_service
self._permissions = permissions
self.set_field("updateServerConfig", self.resolve_update_server_config)
@@ -92,6 +89,11 @@ class ServerConfigMutation(QueryABC):
server_config.default_role_id = (
input["defaultRoleId"] if "defaultRoleId" in input else server_config.default_role_id
)
server_config.short_role_name_only_set_highest_role = (
input["shortRoleNameOnlySetHighestRole"]
if "shortRoleNameOnlySetHighestRole" in input
else server_config.short_role_name_only_set_highest_role
)
server_config.feature_flags = (
dict(zip([x["key"] for x in input["featureFlags"]], [x["value"] for x in input["featureFlags"]]))
if "featureFlags" in input
@@ -178,4 +180,3 @@ class ServerConfigMutation(QueryABC):
self._server_configs.add_server_team_role_id_config(role_id)
self._bot.loop.create_task(self._config_service.reload_server_config(new_config.server))
self._permissions.on_ready()

View File

@@ -42,7 +42,7 @@ class ShortRoleNameMutation(QueryABC):
)
result = self._short_role_names.find_short_role_names_by_role_id(short_role_name.role_id)
if result is not None:
if result.count() > 0:
raise ValueError("Short name for role already exists")
self._short_role_names.add_short_role_name(short_role_name)

View File

@@ -11,8 +11,8 @@ from bot_data.model.technician_config import TechnicianConfig
from bot_data.model.technician_id_config import TechnicianIdConfig
from bot_data.model.technician_ping_url_config import TechnicianPingUrlConfig
from bot_data.model.user_role_enum import UserRoleEnum
from bot_data.service.technician_config_seeder import TechnicianConfigSeeder
from bot_graphql.abc.query_abc import QueryABC
from modules.permission.abc.permission_service_abc import PermissionServiceABC
class TechnicianConfigMutation(QueryABC):
@@ -23,8 +23,8 @@ class TechnicianConfigMutation(QueryABC):
servers: ServerRepositoryABC,
technician_configs: TechnicianConfigRepositoryABC,
db: DatabaseContextABC,
permissions: PermissionServiceABC,
config_service: ConfigService,
tech_seeder: TechnicianConfigSeeder,
):
QueryABC.__init__(self, "TechnicianConfigMutation")
@@ -33,12 +33,15 @@ class TechnicianConfigMutation(QueryABC):
self._servers = servers
self._technician_configs = technician_configs
self._db = db
self._permissions = permissions
self._config_service = config_service
self._tech_seeder = tech_seeder
self.set_field("updateTechnicianConfig", self.resolve_update_technician_config)
def resolve_update_technician_config(self, *_, input: dict):
if not self._technician_configs.does_technician_config_exists():
self._bot.loop.create_task(self._tech_seeder.seed())
technician_config = self._technician_configs.get_technician_config()
self._can_user_mutate_data(Route.get_user().users[0].server, UserRoleEnum.technician)
@@ -56,11 +59,16 @@ class TechnicianConfigMutation(QueryABC):
technician_config.cache_max_messages = (
input["cacheMaxMessages"] if "cacheMaxMessages" in input else technician_config.cache_max_messages
)
old_feature_flags = technician_config.feature_flags
technician_config.feature_flags = (
dict(zip([x["key"] for x in input["featureFlags"]], [x["value"] for x in input["featureFlags"]]))
if "featureFlags" in input
else technician_config.feature_flags
)
for old_flag in old_feature_flags:
if old_flag not in technician_config.feature_flags:
technician_config.feature_flags[old_flag] = False
technician_config.ping_urls = (
List(str, input["pingURLs"]) if "pingURLs" in input else technician_config.ping_urls
)
@@ -78,6 +86,7 @@ class TechnicianConfigMutation(QueryABC):
self._update_technician_ids(technician_config)
self._db.save_changes()
self._config_service.reload_technician_config()
return technician_config
def _update_ping_urls(self, new_config: TechnicianConfig):
@@ -112,6 +121,3 @@ class TechnicianConfigMutation(QueryABC):
continue
self._technician_configs.add_technician_id_config(TechnicianIdConfig(technician_id))
self._bot.loop.create_task(self._config_service.reload_technician_config())
self._permissions.on_ready()

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_graphql.queries'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_graphql.queries"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'bot_graphql.queries.discord'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "bot_graphql.queries.discord"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -25,6 +25,9 @@ class ServerConfigQuery(DataQueryWithHistoryABC):
self.set_field("teamChannelId", lambda config, *_: config.team_channel_id)
self.set_field("loginMessageChannelId", lambda config, *_: config.login_message_channel_id)
self.set_field("defaultRoleId", lambda config, *_: config.default_role_id)
self.set_field(
"shortRoleNameOnlySetHighestRole", lambda config, *_: config.short_role_name_only_set_highest_role
)
self.add_collection(
"featureFlag",
lambda config, *_: List(any, [{"key": x, "value": config.feature_flags[x]} for x in config.feature_flags]),

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.achievements'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.achievements"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,7 +4,7 @@
"Version": {
"Major": "1",
"Minor": "1",
"Micro": "7"
"Micro": "10"
},
"Author": "Sven Heidemann",
"AuthorEmail": "sven.heidemann@sh-edraft.de",

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.achievements.commands'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.achievements.commands"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.achievements.events'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.achievements.events"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.achievements.model'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.achievements.model"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.auto_role'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.auto_role"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,7 +4,7 @@
"Version": {
"Major": "1",
"Minor": "1",
"Micro": "7"
"Micro": "10"
},
"Author": "",
"AuthorEmail": "",

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.auto_role.command'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.auto_role.command"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -78,7 +78,7 @@ class AutoRoleGroup(DiscordCommandABC):
if ctx.guild is None:
return
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild_id}")
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild.id}")
if not FeatureFlagsSettings.get_flag_from_dict(server_config.feature_flags, FeatureFlagsEnum.auto_role_module):
return
@@ -122,7 +122,7 @@ class AutoRoleGroup(DiscordCommandABC):
if ctx.guild is None:
return
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild_id}")
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild.id}")
if not FeatureFlagsSettings.get_flag_from_dict(server_config.feature_flags, FeatureFlagsEnum.auto_role_module):
return
@@ -188,7 +188,7 @@ class AutoRoleGroup(DiscordCommandABC):
if ctx.guild is None:
return
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild_id}")
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild.id}")
if not FeatureFlagsSettings.get_flag_from_dict(server_config.feature_flags, FeatureFlagsEnum.auto_role_module):
return
@@ -220,6 +220,46 @@ class AutoRoleGroup(DiscordCommandABC):
) -> TList[app_commands.Choice[str]]:
return await self._auto_role_auto_complete(interaction, current)
@auto_role.command()
@commands.guild_only()
@CommandChecks.check_is_ready()
@CommandChecks.check_is_member_moderator()
async def react(self, ctx: Context, auto_role: int):
self._logger.debug(__name__, f"Received command auto-role react {ctx} {auto_role}")
if ctx.guild is None:
return
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild.id}")
if not FeatureFlagsSettings.get_flag_from_dict(server_config.feature_flags, FeatureFlagsEnum.auto_role_module):
return
auto_role_from_db = self._auto_roles.find_auto_role_by_id(auto_role)
if auto_role_from_db is None:
self._logger.debug(__name__, f"auto-role {auto_role} not found")
await self._message_service.send_ctx_msg(
ctx,
self._t.transform("modules.auto_role.remove.error.not_found").format(auto_role),
)
self._logger.trace(__name__, f"Finished command auto-role react")
return
for rule in self._auto_roles.get_auto_role_rules_by_auto_role_id(auto_role_from_db.id):
await self._client_utils.react_to_message_by_auto_role_rule(
auto_role_from_db.discord_channel_id, auto_role_from_db.discord_message_id, rule, ctx.guild
)
await self._message_service.send_ctx_msg(
ctx,
self._t.transform("modules.auto_role.react.success"),
)
self._logger.trace(__name__, f"Finished command auto-role react")
@react.autocomplete("auto_role")
async def react_autocomplete(
self, interaction: discord.Interaction, current: str
) -> TList[app_commands.Choice[str]]:
return await self._auto_role_auto_complete(interaction, current)
@auto_role.group()
@commands.guild_only()
async def rule(self, ctx: Context):
@@ -234,7 +274,7 @@ class AutoRoleGroup(DiscordCommandABC):
if ctx.guild is None:
return
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild_id}")
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild.id}")
if not FeatureFlagsSettings.get_flag_from_dict(server_config.feature_flags, FeatureFlagsEnum.auto_role_module):
return
@@ -292,7 +332,7 @@ class AutoRoleGroup(DiscordCommandABC):
if ctx.guild is None:
return
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild_id}")
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild.id}")
if not FeatureFlagsSettings.get_flag_from_dict(server_config.feature_flags, FeatureFlagsEnum.auto_role_module):
return
@@ -390,7 +430,7 @@ class AutoRoleGroup(DiscordCommandABC):
if ctx.guild is None:
return
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild_id}")
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{ctx.guild.id}")
if not FeatureFlagsSettings.get_flag_from_dict(server_config.feature_flags, FeatureFlagsEnum.auto_role_module):
return

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.auto_role.events'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.auto_role.events"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.auto_role.helper'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.auto_role.helper"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.base'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.base"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,7 +4,7 @@
"Version": {
"Major": "1",
"Minor": "1",
"Micro": "7"
"Micro": "10"
},
"Author": "",
"AuthorEmail": "",

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.base.command'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.base.command"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.base.events'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.base.events"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -17,6 +17,7 @@ from bot_data.abc.server_repository_abc import ServerRepositoryABC
from bot_data.abc.user_joined_server_repository_abc import UserJoinedServerRepositoryABC
from bot_data.abc.user_repository_abc import UserRepositoryABC
from bot_data.model.known_user import KnownUser
from bot_data.model.server_config import ServerConfig
from bot_data.model.user import User
from bot_data.model.user_joined_server import UserJoinedServer
from modules.permission.abc.permission_service_abc import PermissionServiceABC
@@ -72,18 +73,6 @@ class BaseOnMemberJoinEvent(OnMemberJoinABC):
member,
)
for admin in self._permission_service.get_admins(member.guild.id):
await self._messenger.send_dm_message(
self._t.transform("modules.base.welcome_message_for_team").format(member.mention),
admin,
)
for moderator in self._permission_service.get_moderators(member.guild.id):
await self._messenger.send_dm_message(
self._t.transform("modules.base.welcome_message_for_team").format(member.mention),
moderator,
)
try:
server = self._servers.get_server_by_discord_id(member.guild.id)
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
@@ -101,9 +90,21 @@ class BaseOnMemberJoinEvent(OnMemberJoinABC):
except Exception as e:
self._logger.error(__name__, f"Cannot get user {member.id}", e)
async def _notify_team(self, member: discord.Member):
self._logger.debug(__name__, f"Notify team that a member left")
settings: ServerConfig = self._config.get_configuration(f"ServerConfig_{member.guild.id}")
channel = member.guild.get_channel(settings.team_channel_id)
await self._messenger.send_channel_message(
channel,
self._t.transform("modules.base.welcome_message_for_team").format(member.mention),
is_persistent=True,
)
self._logger.trace(__name__, f"Notified team that a member left")
@EventChecks.check_is_ready()
async def on_member_join(self, member: discord.Member):
self._logger.debug(__name__, f"Module {type(self)} started")
await self._client_utils.check_default_role(member)
self._check_for_known_user(member)
await self._add_if_not_exists_user_async(member)
await self._notify_team(member)

View File

@@ -31,6 +31,17 @@ class BaseOnVoiceStateUpdateEventHelpChannel(OnVoiceStateUpdateABC):
self._logger.info(__name__, f"Module {type(self)} loaded")
async def _notify_team(self, member: discord.Member):
self._logger.debug(__name__, f"Notify team that a member needs help")
settings: ServerConfig = self._config.get_configuration(f"ServerConfig_{member.guild.id}")
channel = member.guild.get_channel(settings.team_channel_id)
await self._message_service.send_channel_message(
channel,
self._t.transform("modules.base.member_joined_help_voice_channel").format(member.mention),
is_persistent=True,
)
self._logger.trace(__name__, f"Notified team that a member need help")
@EventChecks.check_is_ready()
async def on_voice_state_update(
self,
@@ -44,14 +55,6 @@ class BaseOnVoiceStateUpdateEventHelpChannel(OnVoiceStateUpdateABC):
if after.channel is None or after.channel.id != settings.help_voice_channel_id:
return
mods = [
*self._permissions.get_admins(member.guild.id),
*self._permissions.get_moderators(member.guild.id),
]
for a in mods:
await self._message_service.send_dm_message(
self._t.transform("modules.base.member_joined_help_voice_channel").format(member.mention),
a,
)
await self._notify_team(member)
self._logger.debug(__name__, f"Module {type(self)} stopped")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.base.forms'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.base.forms"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.base.helper'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.base.helper"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.base.model'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.base.model"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.base.service'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.base.service"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.base.thread'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.base.thread"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.boot_log'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.boot_log"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,7 +4,7 @@
"Version": {
"Major": "1",
"Minor": "1",
"Micro": "7"
"Micro": "10"
},
"Author": "",
"AuthorEmail": "",

View File

@@ -67,7 +67,7 @@ class BootLogOnReadyEvent(OnReadyABC):
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{g.id}")
if server_config is None:
self._logger.error(__name__, f"Config {type(self).__name__}_{g.id} not found!")
self._logger.error(__name__, f"Config ServerConfig_{g.id} not found!")
return
if not FeatureFlagsSettings.get_flag_from_dict(

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.config'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.config"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,7 +4,7 @@
"Version": {
"Major": "1",
"Minor": "1",
"Micro": "7"
"Micro": "10"
},
"Author": "",
"AuthorEmail": "",

View File

@@ -19,4 +19,4 @@ class ConfigExtension(ApplicationExtensionABC):
logger: LoggerABC = services.get_service(LoggerABC)
logger.debug(__name__, "Config extension started")
config: ConfigService = services.get_service(ConfigService)
await config.reload_technician_config()
config.reload_technician_config()

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.config.events'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.config.events"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.config.service'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.config.service"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.database'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.database"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,7 +4,7 @@
"Version": {
"Major": "1",
"Minor": "1",
"Micro": "7"
"Micro": "10"
},
"Author": "Sven Heidemann",
"AuthorEmail": "sven.heidemann@sh-edraft.de",

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.level'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.level"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

View File

@@ -4,23 +4,23 @@
bot sh-edraft.de Discord bot
~~~~~~~~~~~~~~~~~~~
Discord bot for some customers of sh-edraft.de
Discord bot for customers of sh-edraft.de
:copyright: (c) 2022 - 2023 sh-edraft.de
:license: MIT, see LICENSE for more details.
"""
__title__ = 'modules.level.command'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2022 - 2023 sh-edraft.de'
__version__ = '1.1.7'
__title__ = "modules.level.command"
__author__ = "Sven Heidemann"
__license__ = "MIT"
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
__version__ = "1.1.10"
from collections import namedtuple
# imports
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='1', minor='1', micro='7')
VersionInfo = namedtuple("VersionInfo", "major minor micro")
version_info = VersionInfo(major="1", minor="1", micro="10")

Some files were not shown because too many files have changed in this diff Show More