Compare commits
22 Commits
1.1.8
...
c88e07d743
Author | SHA1 | Date | |
---|---|---|---|
c88e07d743 | |||
f5b978b231 | |||
0e2b7d03fc | |||
c7f5ab0161 | |||
01e8e4256d | |||
75adc2285e | |||
9e12d84ba0 | |||
d3b503d3ef | |||
dd86c3a657 | |||
aba6e48e2b | |||
73848c3141 | |||
33d6015088 | |||
7e962e05f6 | |||
c73c6876b2 | |||
8e949c3e1a | |||
472a76d563 | |||
f5d88ec94c | |||
2182c021b9 | |||
a9c9880fd4 | |||
d91c76467d | |||
2f10ace27f | |||
0ed93c56d0 |
@@ -5,8 +5,8 @@ volumes:
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
kdb_bot_staging_1:
|
kdb_bot_staging_1:
|
||||||
image: sh-edraft.de/kdb-bot:1.1.8
|
image: sh-edraft.de/kdb-bot:1.1.10
|
||||||
container_name: kdb_bot_staging_1
|
restart: unless-stopped
|
||||||
depends_on:
|
depends_on:
|
||||||
- kdb_db_staging_1
|
- kdb_db_staging_1
|
||||||
networks:
|
networks:
|
||||||
@@ -25,15 +25,14 @@ services:
|
|||||||
mode: replicated
|
mode: replicated
|
||||||
replicas: 1
|
replicas: 1
|
||||||
placement:
|
placement:
|
||||||
constraints: [ node.role == manager ]
|
constraints: [node.role == manager]
|
||||||
resources:
|
resources:
|
||||||
reservations:
|
reservations:
|
||||||
cpus: "0.5"
|
cpus: "0.5"
|
||||||
memory: 1024M
|
memory: 1024M
|
||||||
|
|
||||||
kdb_web_staging_1:
|
kdb_web_staging_1:
|
||||||
image: sh-edraft.de/kdb-web:1.1.8
|
image: sh-edraft.de/kdb-web:1.1.10
|
||||||
container_name: kdb_web_staging_1
|
|
||||||
depends_on:
|
depends_on:
|
||||||
- kdb_bot_staging_1
|
- kdb_bot_staging_1
|
||||||
networks:
|
networks:
|
||||||
@@ -42,12 +41,12 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- /opt/kdb/staging/web/config.json:/usr/share/nginx/html/assets/config.json
|
- /opt/kdb/staging/web/config.json:/usr/share/nginx/html/assets/config.json
|
||||||
environment:
|
environment:
|
||||||
BOT_CONTAINER_NAME: "kdb_bot_staging_1"
|
BOT_CONTAINER_NAME: "kdb_bot_staging_1"
|
||||||
deploy:
|
deploy:
|
||||||
mode: replicated
|
mode: replicated
|
||||||
replicas: 1
|
replicas: 1
|
||||||
placement:
|
placement:
|
||||||
constraints: [ node.role == manager ]
|
constraints: [node.role == manager]
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
cpus: "0.4"
|
cpus: "0.4"
|
||||||
@@ -58,7 +57,6 @@ services:
|
|||||||
|
|
||||||
kdb_db_staging_1:
|
kdb_db_staging_1:
|
||||||
image: mysql:latest
|
image: mysql:latest
|
||||||
container_name: kdb_db_staging_1
|
|
||||||
command: mysqld --default-authentication-plugin=mysql_native_password --log_bin_trust_function_creators=1
|
command: mysqld --default-authentication-plugin=mysql_native_password --log_bin_trust_function_creators=1
|
||||||
networks:
|
networks:
|
||||||
- kdb_test
|
- kdb_test
|
||||||
@@ -75,7 +73,7 @@ services:
|
|||||||
mode: replicated
|
mode: replicated
|
||||||
replicas: 1
|
replicas: 1
|
||||||
placement:
|
placement:
|
||||||
constraints: [ node.role == manager ]
|
constraints: [node.role == manager]
|
||||||
resources:
|
resources:
|
||||||
reservations:
|
reservations:
|
||||||
cpus: "0.1"
|
cpus: "0.1"
|
||||||
@@ -86,4 +84,4 @@ networks:
|
|||||||
external: true
|
external: true
|
||||||
kdb_test:
|
kdb_test:
|
||||||
driver: overlay
|
driver: overlay
|
||||||
attachable: true
|
attachable: true
|
||||||
|
@@ -1,86 +1,87 @@
|
|||||||
version: "3.9"
|
version: "3.9"
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
kdb_db_prod_1:
|
kdb_db_prod_1:
|
||||||
|
|
||||||
services:
|
services:
|
||||||
kdb_bot_prod_1:
|
kdb_bot_prod_1:
|
||||||
image: sh-edraft.de/kdb-bot:1.1.8
|
image: sh-edraft.de/kdb-bot:1.1.10
|
||||||
depends_on:
|
restart: unless-stopped
|
||||||
- kdb_db_prod_1
|
depends_on:
|
||||||
networks:
|
- kdb_db_prod_1
|
||||||
- kdb_prod
|
networks:
|
||||||
- reverse_proxy
|
- kdb_prod
|
||||||
volumes:
|
- reverse_proxy
|
||||||
- /opt/kdb/production/bot/config:/app/bot/config
|
volumes:
|
||||||
- /opt/kdb/production/bot/api_config:/app/bot_api/config
|
- /opt/kdb/production/bot/config:/app/bot/config
|
||||||
- /opt/kdb/production/bot/logs:/app/bot/logs
|
- /opt/kdb/production/bot/api_config:/app/bot_api/config
|
||||||
environment:
|
- /opt/kdb/production/bot/logs:/app/bot/logs
|
||||||
KDB_ENVIRONMENT: "production"
|
environment:
|
||||||
KDB_TOKEN: "OTk4MTU5NTEyNDYyNzA4Nzg2.Gx0hSB.Ouq2dfRKxLBJvHfEq8OrFBHVUF24AQrVf55coM"
|
KDB_ENVIRONMENT: "production"
|
||||||
KDB_PREFIX: "!k "
|
KDB_TOKEN: "OTk4MTU5NTEyNDYyNzA4Nzg2.Gx0hSB.Ouq2dfRKxLBJvHfEq8OrFBHVUF24AQrVf55coM"
|
||||||
deploy:
|
KDB_PREFIX: "!k "
|
||||||
mode: replicated
|
deploy:
|
||||||
replicas: 1
|
mode: replicated
|
||||||
placement:
|
replicas: 1
|
||||||
constraints: [ node.role == manager ]
|
placement:
|
||||||
resources:
|
constraints: [node.role == manager]
|
||||||
reservations:
|
resources:
|
||||||
cpus: "0.5"
|
reservations:
|
||||||
memory: 1024M
|
cpus: "0.5"
|
||||||
|
memory: 1024M
|
||||||
|
|
||||||
kdb_web_prod_1:
|
kdb_web_prod_1:
|
||||||
image: sh-edraft.de/kdb-web:1.1.8
|
image: sh-edraft.de/kdb-web:1.1.10
|
||||||
depends_on:
|
depends_on:
|
||||||
- kdb_bot_prod_1
|
- kdb_bot_prod_1
|
||||||
networks:
|
networks:
|
||||||
- kdb_prod
|
- kdb_prod
|
||||||
- reverse_proxy
|
- reverse_proxy
|
||||||
volumes:
|
volumes:
|
||||||
- /opt/kdb/production/web/config.json:/usr/share/nginx/html/assets/config.json
|
- /opt/kdb/production/web/config.json:/usr/share/nginx/html/assets/config.json
|
||||||
environment:
|
environment:
|
||||||
BOT_CONTAINER_NAME: "kdb_bot_prod_1"
|
BOT_CONTAINER_NAME: "kdb_bot_prod_1"
|
||||||
deploy:
|
deploy:
|
||||||
mode: replicated
|
mode: replicated
|
||||||
replicas: 1
|
replicas: 1
|
||||||
placement:
|
placement:
|
||||||
constraints: [ node.role == manager ]
|
constraints: [node.role == manager]
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
cpus: "0.4"
|
cpus: "0.4"
|
||||||
memory: 400M
|
memory: 400M
|
||||||
reservations:
|
reservations:
|
||||||
cpus: "0.1"
|
cpus: "0.1"
|
||||||
memory: 20M
|
memory: 20M
|
||||||
|
|
||||||
kdb_db_prod_1:
|
kdb_db_prod_1:
|
||||||
image: mysql:latest
|
image: mysql:latest
|
||||||
command: mysqld --default-authentication-plugin=mysql_native_password --log_bin_trust_function_creators=1
|
command: mysqld --default-authentication-plugin=mysql_native_password --log_bin_trust_function_creators=1
|
||||||
networks:
|
networks:
|
||||||
- kdb_prod
|
- kdb_prod
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
MYSQL_ROOT_PASSWORD: "kd_kdb"
|
MYSQL_ROOT_PASSWORD: "kd_kdb"
|
||||||
MYSQL_USER: "kd_kdb"
|
MYSQL_USER: "kd_kdb"
|
||||||
MYSQL_PASSWORD: ",2#MzfN4J=7r(q,Tz3npDkCR§>VE&}7T"
|
MYSQL_PASSWORD: ",2#MzfN4J=7r(q,Tz3npDkCR§>VE&}7T"
|
||||||
MYSQL_DATABASE: "kd_kdb"
|
MYSQL_DATABASE: "kd_kdb"
|
||||||
ports:
|
ports:
|
||||||
- "3307:3306"
|
- "3307:3306"
|
||||||
volumes:
|
volumes:
|
||||||
- kdb_db_prod_1:/var/lib/mysql
|
- kdb_db_prod_1:/var/lib/mysql
|
||||||
deploy:
|
deploy:
|
||||||
mode: replicated
|
mode: replicated
|
||||||
replicas: 1
|
replicas: 1
|
||||||
placement:
|
placement:
|
||||||
constraints: [ node.role == manager ]
|
constraints: [node.role == manager]
|
||||||
resources:
|
resources:
|
||||||
reservations:
|
reservations:
|
||||||
cpus: "0.1"
|
cpus: "0.1"
|
||||||
memory: 150M
|
memory: 150M
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
reverse_proxy:
|
reverse_proxy:
|
||||||
external: true
|
external: true
|
||||||
kdb_prod:
|
kdb_prod:
|
||||||
driver: overlay
|
driver: overlay
|
||||||
attachable: true
|
attachable: true
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
"Version": {
|
"Version": {
|
||||||
"Major": "1",
|
"Major": "1",
|
||||||
"Minor": "1",
|
"Minor": "1",
|
||||||
"Micro": "8"
|
"Micro": "10"
|
||||||
},
|
},
|
||||||
"Author": "Sven Heidemann",
|
"Author": "Sven Heidemann",
|
||||||
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot.extension"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -18,6 +18,7 @@ from bot_data.migration.initial_migration import InitialMigration
|
|||||||
from bot_data.migration.level_migration import LevelMigration
|
from bot_data.migration.level_migration import LevelMigration
|
||||||
from bot_data.migration.remove_stats_migration import RemoveStatsMigration
|
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_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.stats_migration import StatsMigration
|
||||||
from bot_data.migration.user_joined_game_server_migration import UserJoinedGameServerMigration
|
from bot_data.migration.user_joined_game_server_migration import UserJoinedGameServerMigration
|
||||||
from bot_data.migration.user_message_count_per_hour_migration import (
|
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, DefaultRoleMigration) # 24.09.2023 #360 - 1.1.3
|
||||||
services.add_transient(MigrationABC, ShortRoleNameMigration) # 28.09.2023 #378 - 1.1.7
|
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, FixUpdatesMigration) # 28.09.2023 #378 - 1.1.7
|
||||||
|
services.add_transient(MigrationABC, ShortRoleNameOnlyHighestMigration) # 02.10.2023 #391 - 1.1.9
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.abc"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
"Version": {
|
"Version": {
|
||||||
"Major": "1",
|
"Major": "1",
|
||||||
"Minor": "1",
|
"Minor": "1",
|
||||||
"Micro": "8"
|
"Micro": "10"
|
||||||
},
|
},
|
||||||
"Author": "",
|
"Author": "",
|
||||||
"AuthorEmail": "",
|
"AuthorEmail": "",
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.configuration"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.controller"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.event"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.exception"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.filter"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.filter.discord"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.logging"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.model"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.model.discord"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.route"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.service"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_api.transformer"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_core"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_core.abc"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
"Version": {
|
"Version": {
|
||||||
"Major": "1",
|
"Major": "1",
|
||||||
"Minor": "1",
|
"Minor": "1",
|
||||||
"Micro": "8"
|
"Micro": "10"
|
||||||
},
|
},
|
||||||
"Author": "Sven Heidemann",
|
"Author": "Sven Heidemann",
|
||||||
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_core.configuration"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -24,3 +24,4 @@ class FeatureFlagsEnum(Enum):
|
|||||||
game_server = "GameServer"
|
game_server = "GameServer"
|
||||||
sync_xp = "SyncXp"
|
sync_xp = "SyncXp"
|
||||||
short_role_name = "ShortRoleName"
|
short_role_name = "ShortRoleName"
|
||||||
|
technician_full_access = "TechnicianFullAccess"
|
||||||
|
@@ -26,6 +26,7 @@ class FeatureFlagsSettings(ConfigurationModelABC):
|
|||||||
FeatureFlagsEnum.game_server.value: False, # 25.09.2023 #366
|
FeatureFlagsEnum.game_server.value: False, # 25.09.2023 #366
|
||||||
FeatureFlagsEnum.sync_xp.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.short_role_name.value: False, # 28.09.2023 #378
|
||||||
|
FeatureFlagsEnum.technician_full_access.value: False, # 03.10.2023 #393
|
||||||
}
|
}
|
||||||
|
|
||||||
def __init__(self, **kwargs: dict):
|
def __init__(self, **kwargs: dict):
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_core.core_extension"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_core.events"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_core.exception"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_core.helper"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_core.logging"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_core.pipes"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_core.service"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -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.server import Server
|
||||||
from bot_data.model.technician_config import TechnicianConfig
|
from bot_data.model.technician_config import TechnicianConfig
|
||||||
from bot_data.service.server_config_seeder import ServerConfigSeeder
|
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:
|
class ConfigService:
|
||||||
@@ -18,7 +16,6 @@ class ConfigService:
|
|||||||
services: ServiceProviderABC,
|
services: ServiceProviderABC,
|
||||||
technician_config_repo: TechnicianConfigRepositoryABC,
|
technician_config_repo: TechnicianConfigRepositoryABC,
|
||||||
server_config_repo: ServerConfigRepositoryABC,
|
server_config_repo: ServerConfigRepositoryABC,
|
||||||
tech_seeder: TechnicianConfigSeeder,
|
|
||||||
server_seeder: ServerConfigSeeder,
|
server_seeder: ServerConfigSeeder,
|
||||||
):
|
):
|
||||||
self._config = config
|
self._config = config
|
||||||
@@ -26,13 +23,9 @@ class ConfigService:
|
|||||||
self._technician_config_repo = technician_config_repo
|
self._technician_config_repo = technician_config_repo
|
||||||
self._server_config_repo = server_config_repo
|
self._server_config_repo = server_config_repo
|
||||||
|
|
||||||
self._tech_seeder = tech_seeder
|
|
||||||
self._server_seeder = server_seeder
|
self._server_seeder = server_seeder
|
||||||
|
|
||||||
async def reload_technician_config(self):
|
def reload_technician_config(self):
|
||||||
if not self._technician_config_repo.does_technician_config_exists():
|
|
||||||
await self._tech_seeder.seed()
|
|
||||||
|
|
||||||
technician_config = self._technician_config_repo.get_technician_config()
|
technician_config = self._technician_config_repo.get_technician_config()
|
||||||
self._config.add_configuration(TechnicianConfig, technician_config)
|
self._config.add_configuration(TechnicianConfig, technician_config)
|
||||||
self._config.add_configuration(FeatureFlagsSettings, FeatureFlagsSettings(**technician_config.feature_flags))
|
self._config.add_configuration(FeatureFlagsSettings, FeatureFlagsSettings(**technician_config.feature_flags))
|
||||||
@@ -45,6 +38,3 @@ class ConfigService:
|
|||||||
self._config.add_configuration(
|
self._config.add_configuration(
|
||||||
f"{type(server_config).__name__}_{server_config.server.discord_id}", server_config
|
f"{type(server_config).__name__}_{server_config.server.discord_id}", server_config
|
||||||
)
|
)
|
||||||
|
|
||||||
permissions: PermissionServiceABC = self._services.get_service(PermissionServiceABC)
|
|
||||||
permissions.on_ready()
|
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_data"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_data.abc"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
"Version": {
|
"Version": {
|
||||||
"Major": "1",
|
"Major": "1",
|
||||||
"Minor": "1",
|
"Minor": "1",
|
||||||
"Micro": "8"
|
"Micro": "10"
|
||||||
},
|
},
|
||||||
"Author": "Sven Heidemann",
|
"Author": "Sven Heidemann",
|
||||||
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_data.migration"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -1,25 +1,26 @@
|
|||||||
CREATE TABLE IF NOT EXISTS `CFG_ServerHistory`
|
CREATE TABLE IF NOT EXISTS `CFG_ServerHistory`
|
||||||
(
|
(
|
||||||
`Id` BIGINT(20) NOT NULL,
|
`Id` BIGINT(20) NOT NULL,
|
||||||
`MessageDeleteTimer` BIGINT NOT NULL DEFAULT 6,
|
`MessageDeleteTimer` BIGINT NOT NULL DEFAULT 6,
|
||||||
`NotificationChatId` BIGINT NOT NULL,
|
`NotificationChatId` BIGINT NOT NULL,
|
||||||
`MaxVoiceStateHours` BIGINT NOT NULL DEFAULT 6,
|
`MaxVoiceStateHours` BIGINT NOT NULL DEFAULT 6,
|
||||||
`XpPerMessage` BIGINT NOT NULL DEFAULT 1,
|
`XpPerMessage` BIGINT NOT NULL DEFAULT 1,
|
||||||
`XpPerReaction` BIGINT NOT NULL DEFAULT 1,
|
`XpPerReaction` BIGINT NOT NULL DEFAULT 1,
|
||||||
`MaxMessageXpPerHour` BIGINT NOT NULL DEFAULT 20,
|
`MaxMessageXpPerHour` BIGINT NOT NULL DEFAULT 20,
|
||||||
`XpPerOntimeHour` BIGINT NOT NULL DEFAULT 10,
|
`XpPerOntimeHour` BIGINT NOT NULL DEFAULT 10,
|
||||||
`XpPerEventParticipation` BIGINT NOT NULL DEFAULT 10,
|
`XpPerEventParticipation` BIGINT NOT NULL DEFAULT 10,
|
||||||
`XpPerAchievement` BIGINT NOT NULL DEFAULT 10,
|
`XpPerAchievement` BIGINT NOT NULL DEFAULT 10,
|
||||||
`AFKCommandChannelId` BIGINT NOT NULL,
|
`AFKCommandChannelId` BIGINT NOT NULL,
|
||||||
`HelpVoiceChannelId` BIGINT NOT NULL,
|
`HelpVoiceChannelId` BIGINT NOT NULL,
|
||||||
`TeamChannelId` BIGINT NOT NULL,
|
`TeamChannelId` BIGINT NOT NULL,
|
||||||
`LoginMessageChannelId` BIGINT NOT NULL,
|
`LoginMessageChannelId` BIGINT NOT NULL,
|
||||||
`DefaultRoleId` BIGINT NULL,
|
`DefaultRoleId` BIGINT NULL,
|
||||||
`FeatureFlags` JSON NULL DEFAULT ('{}'),
|
`ShortRoleNameSetOnlyHighest` BOOLEAN NOT NULL DEFAULT FALSE,
|
||||||
`ServerId` BIGINT NOT NULL,
|
`FeatureFlags` JSON NULL DEFAULT ('{}'),
|
||||||
`Deleted` BOOL DEFAULT FALSE,
|
`ServerId` BIGINT NOT NULL,
|
||||||
`DateFrom` DATETIME(6) NOT NULL,
|
`Deleted` BOOL DEFAULT FALSE,
|
||||||
`DateTo` DATETIME(6) NOT NULL
|
`DateFrom` DATETIME(6) NOT NULL,
|
||||||
|
`DateTo` DATETIME(6) NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
DROP TRIGGER IF EXISTS `TR_CFG_ServerUpdate`;
|
DROP TRIGGER IF EXISTS `TR_CFG_ServerUpdate`;
|
||||||
@@ -44,6 +45,7 @@ BEGIN
|
|||||||
`TeamChannelId`,
|
`TeamChannelId`,
|
||||||
`LoginMessageChannelId`,
|
`LoginMessageChannelId`,
|
||||||
`DefaultRoleId`,
|
`DefaultRoleId`,
|
||||||
|
`ShortRoleNameSetOnlyHighest`,
|
||||||
`FeatureFlags`,
|
`FeatureFlags`,
|
||||||
`ServerId`,
|
`ServerId`,
|
||||||
`DateFrom`,
|
`DateFrom`,
|
||||||
@@ -63,6 +65,7 @@ BEGIN
|
|||||||
OLD.TeamChannelId,
|
OLD.TeamChannelId,
|
||||||
OLD.LoginMessageChannelId,
|
OLD.LoginMessageChannelId,
|
||||||
OLD.DefaultRoleId,
|
OLD.DefaultRoleId,
|
||||||
|
OLD.ShortRoleNameSetOnlyHighest,
|
||||||
OLD.FeatureFlags,
|
OLD.FeatureFlags,
|
||||||
OLD.ServerId,
|
OLD.ServerId,
|
||||||
OLD.LastModifiedAt,
|
OLD.LastModifiedAt,
|
||||||
@@ -91,6 +94,7 @@ BEGIN
|
|||||||
`TeamChannelId`,
|
`TeamChannelId`,
|
||||||
`LoginMessageChannelId`,
|
`LoginMessageChannelId`,
|
||||||
`DefaultRoleId`,
|
`DefaultRoleId`,
|
||||||
|
`ShortRoleNameSetOnlyHighest`,
|
||||||
`ServerId`,
|
`ServerId`,
|
||||||
`FeatureFlags`,
|
`FeatureFlags`,
|
||||||
`Deleted`,
|
`Deleted`,
|
||||||
@@ -111,6 +115,7 @@ BEGIN
|
|||||||
OLD.TeamChannelId,
|
OLD.TeamChannelId,
|
||||||
OLD.LoginMessageChannelId,
|
OLD.LoginMessageChannelId,
|
||||||
OLD.DefaultRoleId,
|
OLD.DefaultRoleId,
|
||||||
|
OLD.ShortRoleNameSetOnlyHighest,
|
||||||
OLD.FeatureFlags,
|
OLD.FeatureFlags,
|
||||||
OLD.ServerId,
|
OLD.ServerId,
|
||||||
TRUE,
|
TRUE,
|
||||||
|
@@ -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;
|
||||||
|
"""
|
||||||
|
)
|
||||||
|
)
|
@@ -15,7 +15,7 @@ __title__ = "bot_data.model"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -29,6 +29,7 @@ class ServerConfig(TableABC, ConfigurationModelABC):
|
|||||||
team_channel_id: int,
|
team_channel_id: int,
|
||||||
login_message_channel_id: int,
|
login_message_channel_id: int,
|
||||||
default_role_id: Optional[int],
|
default_role_id: Optional[int],
|
||||||
|
short_role_name_only_set_highest_role: bool,
|
||||||
feature_flags: dict[FeatureFlagsEnum],
|
feature_flags: dict[FeatureFlagsEnum],
|
||||||
server: Server,
|
server: Server,
|
||||||
afk_channel_ids: List[int],
|
afk_channel_ids: List[int],
|
||||||
@@ -52,6 +53,8 @@ class ServerConfig(TableABC, ConfigurationModelABC):
|
|||||||
self._team_channel_id = team_channel_id
|
self._team_channel_id = team_channel_id
|
||||||
self._login_message_channel_id = login_message_channel_id
|
self._login_message_channel_id = login_message_channel_id
|
||||||
self._default_role_id = default_role_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._feature_flags = feature_flags
|
||||||
self._server = server
|
self._server = server
|
||||||
self._afk_channel_ids = afk_channel_ids
|
self._afk_channel_ids = afk_channel_ids
|
||||||
@@ -78,6 +81,7 @@ class ServerConfig(TableABC, ConfigurationModelABC):
|
|||||||
guild.system_channel.id,
|
guild.system_channel.id,
|
||||||
guild.system_channel.id,
|
guild.system_channel.id,
|
||||||
None,
|
None,
|
||||||
|
False,
|
||||||
{},
|
{},
|
||||||
server,
|
server,
|
||||||
List(int),
|
List(int),
|
||||||
@@ -200,6 +204,14 @@ class ServerConfig(TableABC, ConfigurationModelABC):
|
|||||||
def default_role_id(self, value: int):
|
def default_role_id(self, value: int):
|
||||||
self._default_role_id = value
|
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
|
@property
|
||||||
def feature_flags(self) -> dict[FeatureFlagsEnum]:
|
def feature_flags(self) -> dict[FeatureFlagsEnum]:
|
||||||
return self._feature_flags
|
return self._feature_flags
|
||||||
@@ -273,6 +285,7 @@ class ServerConfig(TableABC, ConfigurationModelABC):
|
|||||||
`TeamChannelId`,
|
`TeamChannelId`,
|
||||||
`LoginMessageChannelId`,
|
`LoginMessageChannelId`,
|
||||||
`DefaultRoleId`,
|
`DefaultRoleId`,
|
||||||
|
`ShortRoleNameSetOnlyHighest`,
|
||||||
`FeatureFlags`,
|
`FeatureFlags`,
|
||||||
`ServerId`
|
`ServerId`
|
||||||
) VALUES (
|
) VALUES (
|
||||||
@@ -290,6 +303,7 @@ class ServerConfig(TableABC, ConfigurationModelABC):
|
|||||||
{self._team_channel_id},
|
{self._team_channel_id},
|
||||||
{self._login_message_channel_id},
|
{self._login_message_channel_id},
|
||||||
{"NULL" if self._default_role_id is None else self._default_role_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)}',
|
'{json.dumps(self._feature_flags)}',
|
||||||
{self._server.id}
|
{self._server.id}
|
||||||
);
|
);
|
||||||
@@ -315,6 +329,7 @@ class ServerConfig(TableABC, ConfigurationModelABC):
|
|||||||
`TeamChannelId` = {self._team_channel_id},
|
`TeamChannelId` = {self._team_channel_id},
|
||||||
`LoginMessageChannelId` = {self._login_message_channel_id},
|
`LoginMessageChannelId` = {self._login_message_channel_id},
|
||||||
`DefaultRoleId` = {"NULL" if self._default_role_id is None else self._default_role_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)}',
|
`FeatureFlags` = '{json.dumps(self._feature_flags)}',
|
||||||
`ServerId` = {self._server.id}
|
`ServerId` = {self._server.id}
|
||||||
WHERE `Id` = {self._id};
|
WHERE `Id` = {self._id};
|
||||||
|
@@ -18,6 +18,7 @@ class ServerConfigHistory(HistoryTableABC):
|
|||||||
team_channel_id: int,
|
team_channel_id: int,
|
||||||
login_message_channel_id: int,
|
login_message_channel_id: int,
|
||||||
default_role_id: int,
|
default_role_id: int,
|
||||||
|
short_role_name_only_set_highest_role: bool,
|
||||||
feature_flags: dict[str],
|
feature_flags: dict[str],
|
||||||
server_id: int,
|
server_id: int,
|
||||||
deleted: bool,
|
deleted: bool,
|
||||||
@@ -42,6 +43,8 @@ class ServerConfigHistory(HistoryTableABC):
|
|||||||
self._team_channel_id = team_channel_id
|
self._team_channel_id = team_channel_id
|
||||||
self._login_message_channel_id = login_message_channel_id
|
self._login_message_channel_id = login_message_channel_id
|
||||||
self._default_role_id = default_role_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._feature_flags = feature_flags
|
||||||
self._server_id = server_id
|
self._server_id = server_id
|
||||||
|
|
||||||
@@ -105,6 +108,10 @@ class ServerConfigHistory(HistoryTableABC):
|
|||||||
def default_role_id(self) -> int:
|
def default_role_id(self) -> int:
|
||||||
return self._default_role_id
|
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
|
@property
|
||||||
def feature_flags(self) -> dict[str]:
|
def feature_flags(self) -> dict[str]:
|
||||||
return self._feature_flags
|
return self._feature_flags
|
||||||
|
43
kdb-bot/src/bot_data/model/user_warnings_history.py
Normal file
43
kdb-bot/src/bot_data/model/user_warnings_history.py
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
from typing import Optional
|
||||||
|
|
||||||
|
from bot_data.abc.history_table_abc import HistoryTableABC
|
||||||
|
|
||||||
|
|
||||||
|
# had to name it UserWarnings instead of UserWarning because UserWarning is a builtin class
|
||||||
|
class UserWarningsHistory(HistoryTableABC):
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
description: str,
|
||||||
|
user: int,
|
||||||
|
author: Optional[int],
|
||||||
|
deleted: bool,
|
||||||
|
date_from: str,
|
||||||
|
date_to: str,
|
||||||
|
id=0,
|
||||||
|
):
|
||||||
|
HistoryTableABC.__init__(self)
|
||||||
|
|
||||||
|
self._id = id
|
||||||
|
self._description = description
|
||||||
|
self._user = user
|
||||||
|
self._author = author
|
||||||
|
|
||||||
|
self._deleted = deleted
|
||||||
|
self._date_from = date_from
|
||||||
|
self._date_to = date_to
|
||||||
|
|
||||||
|
@property
|
||||||
|
def id(self) -> int:
|
||||||
|
return self._id
|
||||||
|
|
||||||
|
@property
|
||||||
|
def description(self) -> str:
|
||||||
|
return self._description
|
||||||
|
|
||||||
|
@property
|
||||||
|
def user(self) -> int:
|
||||||
|
return self._user
|
||||||
|
|
||||||
|
@property
|
||||||
|
def author(self) -> Optional[int]:
|
||||||
|
return self._author
|
@@ -15,7 +15,7 @@ __title__ = "bot_data.service"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -65,12 +65,13 @@ class ServerConfigRepositoryService(ServerConfigRepositoryABC):
|
|||||||
result[12],
|
result[12],
|
||||||
result[13],
|
result[13],
|
||||||
result[14],
|
result[14],
|
||||||
json.loads(result[15]),
|
result[15],
|
||||||
self._servers.get_server_by_id(result[16]),
|
json.loads(result[16]),
|
||||||
self._get_afk_channel_ids(result[16]),
|
self._servers.get_server_by_id(result[17]),
|
||||||
self._get_team_role_ids(result[16]),
|
self._get_afk_channel_ids(result[17]),
|
||||||
result[17],
|
self._get_team_role_ids(result[17]),
|
||||||
result[18],
|
result[18],
|
||||||
|
result[19],
|
||||||
id=result[0],
|
id=result[0],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@@ -32,7 +32,7 @@ class UserWarningsRepositoryService(UserWarningsRepositoryABC):
|
|||||||
def _from_result(self, sql_result: tuple) -> UserWarnings:
|
def _from_result(self, sql_result: tuple) -> UserWarnings:
|
||||||
user = self._users.get_user_by_id(self._get_value_from_result(sql_result[2]))
|
user = self._users.get_user_by_id(self._get_value_from_result(sql_result[2]))
|
||||||
author = None
|
author = None
|
||||||
author_id = self._get_value_from_result(sql_result[2])
|
author_id = self._get_value_from_result(sql_result[3])
|
||||||
if author_id is not None:
|
if author_id is not None:
|
||||||
author = self._users.get_user_by_id(author_id)
|
author = self._users.get_user_by_id(author_id)
|
||||||
|
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_graphql"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_graphql.abc"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
"Version": {
|
"Version": {
|
||||||
"Major": "1",
|
"Major": "1",
|
||||||
"Minor": "1",
|
"Minor": "1",
|
||||||
"Micro": "8"
|
"Micro": "10"
|
||||||
},
|
},
|
||||||
"Author": "Sven Heidemann",
|
"Author": "Sven Heidemann",
|
||||||
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_graphql.filter"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -1,3 +1,4 @@
|
|||||||
|
from cpl_core.dependency_injection import ServiceProviderABC
|
||||||
from cpl_query.extension import List
|
from cpl_query.extension import List
|
||||||
|
|
||||||
from bot_data.model.user import User
|
from bot_data.model.user import User
|
||||||
@@ -5,9 +6,14 @@ from bot_graphql.abc.filter_abc import FilterABC
|
|||||||
|
|
||||||
|
|
||||||
class AchievementFilter(FilterABC):
|
class AchievementFilter(FilterABC):
|
||||||
def __init__(self):
|
def __init__(
|
||||||
|
self,
|
||||||
|
services: ServiceProviderABC,
|
||||||
|
):
|
||||||
FilterABC.__init__(self)
|
FilterABC.__init__(self)
|
||||||
|
|
||||||
|
self._services = services
|
||||||
|
|
||||||
self._id = None
|
self._id = None
|
||||||
self._name = None
|
self._name = None
|
||||||
self._description = None
|
self._description = None
|
||||||
|
56
kdb-bot/src/bot_graphql/filter/user_warning_filter.py
Normal file
56
kdb-bot/src/bot_graphql/filter/user_warning_filter.py
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
from cpl_core.dependency_injection import ServiceProviderABC
|
||||||
|
from cpl_query.extension import List
|
||||||
|
|
||||||
|
from bot_data.model.user_warnings import UserWarnings
|
||||||
|
from bot_graphql.abc.filter_abc import FilterABC
|
||||||
|
|
||||||
|
|
||||||
|
class UserWarningFilter(FilterABC):
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
services: ServiceProviderABC,
|
||||||
|
):
|
||||||
|
FilterABC.__init__(self)
|
||||||
|
|
||||||
|
self._services = services
|
||||||
|
|
||||||
|
self._id = None
|
||||||
|
self._user = None
|
||||||
|
self._description = None
|
||||||
|
self._author = None
|
||||||
|
|
||||||
|
def from_dict(self, values: dict):
|
||||||
|
if "id" in values:
|
||||||
|
self._id = int(values["id"])
|
||||||
|
|
||||||
|
if "user" in values:
|
||||||
|
from bot_graphql.filter.user_filter import UserFilter
|
||||||
|
|
||||||
|
self._user: UserFilter = self._services.get_service(UserFilter)
|
||||||
|
self._user.from_dict(values["user"])
|
||||||
|
|
||||||
|
if "description" in values:
|
||||||
|
self._description = values["description"]
|
||||||
|
|
||||||
|
if "author" in values:
|
||||||
|
from bot_graphql.filter.user_filter import UserFilter
|
||||||
|
|
||||||
|
self._author: UserFilter = self._services.get_service(UserFilter)
|
||||||
|
self._author.from_dict(values["author"])
|
||||||
|
|
||||||
|
def filter(self, query: List[UserWarnings]) -> List[UserWarnings]:
|
||||||
|
if self._id is not None:
|
||||||
|
query = query.where(lambda x: x.id == self._id)
|
||||||
|
|
||||||
|
if self._user is not None:
|
||||||
|
users = self._user.filter(query.select(lambda x: x.user)).select(lambda x: x.id)
|
||||||
|
query = query.where(lambda x: x.id in users)
|
||||||
|
|
||||||
|
if self._description is not None:
|
||||||
|
query = query.where(lambda x: x.description == self._description or self._description in x.description)
|
||||||
|
|
||||||
|
if self._author is not None:
|
||||||
|
users = self._author.filter(query.select(lambda x: x.author)).select(lambda x: x.id)
|
||||||
|
query = query.where(lambda x: x.id in users)
|
||||||
|
|
||||||
|
return query
|
@@ -41,6 +41,9 @@ type Query {
|
|||||||
shortRoleNames(filter: ShortRoleNameFilter, page: Page, sort: Sort): [ShortRoleName]
|
shortRoleNames(filter: ShortRoleNameFilter, page: Page, sort: Sort): [ShortRoleName]
|
||||||
shortRoleNamePositions: [String]
|
shortRoleNamePositions: [String]
|
||||||
|
|
||||||
|
userWarningCount: Int
|
||||||
|
userWarnings(filter: UserWarningFilter, page: Page, sort: Sort): [UserWarning]
|
||||||
|
|
||||||
technicianConfig: TechnicianConfig
|
technicianConfig: TechnicianConfig
|
||||||
possibleFeatureFlags: [String]
|
possibleFeatureFlags: [String]
|
||||||
discord: Discord
|
discord: Discord
|
||||||
|
@@ -14,6 +14,7 @@ type ServerConfig implements TableWithHistoryQuery {
|
|||||||
teamChannelId: String
|
teamChannelId: String
|
||||||
loginMessageChannelId: String
|
loginMessageChannelId: String
|
||||||
defaultRoleId: String
|
defaultRoleId: String
|
||||||
|
shortRoleNameOnlySetHighestRole: Boolean
|
||||||
featureFlagCount: Int
|
featureFlagCount: Int
|
||||||
featureFlags: [FeatureFlag]
|
featureFlags: [FeatureFlag]
|
||||||
|
|
||||||
@@ -45,6 +46,7 @@ type ServerConfigHistory implements HistoryTableQuery {
|
|||||||
teamChannelId: String
|
teamChannelId: String
|
||||||
loginMessageChannelId: String
|
loginMessageChannelId: String
|
||||||
defaultRoleId: String
|
defaultRoleId: String
|
||||||
|
shortRoleNameOnlySetHighestRole: Boolean
|
||||||
featureFlagCount: Int
|
featureFlagCount: Int
|
||||||
featureFlags: [FeatureFlag]
|
featureFlags: [FeatureFlag]
|
||||||
|
|
||||||
@@ -94,6 +96,7 @@ input ServerConfigInput {
|
|||||||
teamChannelId: String
|
teamChannelId: String
|
||||||
loginMessageChannelId: String
|
loginMessageChannelId: String
|
||||||
defaultRoleId: String
|
defaultRoleId: String
|
||||||
|
shortRoleNameOnlySetHighestRole: Boolean
|
||||||
featureFlags: [FeatureFlagInput]
|
featureFlags: [FeatureFlagInput]
|
||||||
|
|
||||||
afkChannelIds: [String]
|
afkChannelIds: [String]
|
||||||
|
@@ -20,6 +20,9 @@ type User implements TableWithHistoryQuery {
|
|||||||
achievementCount: Int
|
achievementCount: Int
|
||||||
achievements(filter: AchievementFilter, page: Page, sort: Sort): [Achievement]
|
achievements(filter: AchievementFilter, page: Page, sort: Sort): [Achievement]
|
||||||
|
|
||||||
|
userWarningCount: Int
|
||||||
|
userWarnings(filter: UserWarningFilter, page: Page, sort: Sort): [UserWarning]
|
||||||
|
|
||||||
server: Server
|
server: Server
|
||||||
leftServer: Boolean
|
leftServer: Boolean
|
||||||
|
|
||||||
@@ -60,4 +63,5 @@ input UserInput {
|
|||||||
id: ID
|
id: ID
|
||||||
xp: Int
|
xp: Int
|
||||||
levelId: ID
|
levelId: ID
|
||||||
|
userWarnings: [UserWarningInput]
|
||||||
}
|
}
|
34
kdb-bot/src/bot_graphql/graphql/userWarning.gql
Normal file
34
kdb-bot/src/bot_graphql/graphql/userWarning.gql
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
type UserWarning implements TableWithHistoryQuery {
|
||||||
|
id: ID
|
||||||
|
user: User
|
||||||
|
description: String
|
||||||
|
author: User
|
||||||
|
|
||||||
|
createdAt: String
|
||||||
|
modifiedAt: String
|
||||||
|
|
||||||
|
history: [UserWarningHistory]
|
||||||
|
}
|
||||||
|
|
||||||
|
type UserWarningHistory implements HistoryTableQuery {
|
||||||
|
id: ID
|
||||||
|
user: ID
|
||||||
|
description: String
|
||||||
|
author: ID
|
||||||
|
|
||||||
|
deleted: Boolean
|
||||||
|
dateFrom: String
|
||||||
|
dateTo: String
|
||||||
|
}
|
||||||
|
|
||||||
|
input UserWarningFilter {
|
||||||
|
id: ID
|
||||||
|
user: UserFilter
|
||||||
|
}
|
||||||
|
|
||||||
|
input UserWarningInput {
|
||||||
|
id: ID
|
||||||
|
user: ID
|
||||||
|
description: String
|
||||||
|
author: ID
|
||||||
|
}
|
@@ -18,6 +18,7 @@ from bot_graphql.filter.user_filter import UserFilter
|
|||||||
from bot_graphql.filter.user_joined_game_server_filter import UserJoinedGameServerFilter
|
from bot_graphql.filter.user_joined_game_server_filter import UserJoinedGameServerFilter
|
||||||
from bot_graphql.filter.user_joined_server_filter import UserJoinedServerFilter
|
from bot_graphql.filter.user_joined_server_filter import UserJoinedServerFilter
|
||||||
from bot_graphql.filter.user_joined_voice_channel_filter import UserJoinedVoiceChannelFilter
|
from bot_graphql.filter.user_joined_voice_channel_filter import UserJoinedVoiceChannelFilter
|
||||||
|
from bot_graphql.filter.user_warning_filter import UserWarningFilter
|
||||||
from bot_graphql.graphql_service import GraphQLService
|
from bot_graphql.graphql_service import GraphQLService
|
||||||
from bot_graphql.mutation import Mutation
|
from bot_graphql.mutation import Mutation
|
||||||
from bot_graphql.mutations.achievement_mutation import AchievementMutation
|
from bot_graphql.mutations.achievement_mutation import AchievementMutation
|
||||||
@@ -66,6 +67,8 @@ from bot_graphql.queries.user_joined_server_query import UserJoinedServerQuery
|
|||||||
from bot_graphql.queries.user_joined_voice_channel_history_query import UserJoinedVoiceChannelHistoryQuery
|
from bot_graphql.queries.user_joined_voice_channel_history_query import UserJoinedVoiceChannelHistoryQuery
|
||||||
from bot_graphql.queries.user_joined_voice_channel_query import UserJoinedVoiceChannelQuery
|
from bot_graphql.queries.user_joined_voice_channel_query import UserJoinedVoiceChannelQuery
|
||||||
from bot_graphql.queries.user_query import UserQuery
|
from bot_graphql.queries.user_query import UserQuery
|
||||||
|
from bot_graphql.queries.user_warning_history_query import UserWarningHistoryQuery
|
||||||
|
from bot_graphql.queries.user_warning_query import UserWarningQuery
|
||||||
from bot_graphql.query import Query
|
from bot_graphql.query import Query
|
||||||
from bot_graphql.schema import Schema
|
from bot_graphql.schema import Schema
|
||||||
|
|
||||||
@@ -115,6 +118,8 @@ class GraphQLModule(ModuleABC):
|
|||||||
services.add_transient(QueryABC, UserJoinedGameServerQuery)
|
services.add_transient(QueryABC, UserJoinedGameServerQuery)
|
||||||
services.add_transient(QueryABC, ShortRoleNameHistoryQuery)
|
services.add_transient(QueryABC, ShortRoleNameHistoryQuery)
|
||||||
services.add_transient(QueryABC, ShortRoleNameQuery)
|
services.add_transient(QueryABC, ShortRoleNameQuery)
|
||||||
|
services.add_transient(QueryABC, UserWarningHistoryQuery)
|
||||||
|
services.add_transient(QueryABC, UserWarningQuery)
|
||||||
|
|
||||||
services.add_transient(QueryABC, DiscordQuery)
|
services.add_transient(QueryABC, DiscordQuery)
|
||||||
services.add_transient(QueryABC, GuildQuery)
|
services.add_transient(QueryABC, GuildQuery)
|
||||||
@@ -135,6 +140,7 @@ class GraphQLModule(ModuleABC):
|
|||||||
services.add_transient(FilterABC, UserJoinedVoiceChannelFilter)
|
services.add_transient(FilterABC, UserJoinedVoiceChannelFilter)
|
||||||
services.add_transient(FilterABC, UserJoinedGameServerFilter)
|
services.add_transient(FilterABC, UserJoinedGameServerFilter)
|
||||||
services.add_transient(FilterABC, ShortRoleNameFilter)
|
services.add_transient(FilterABC, ShortRoleNameFilter)
|
||||||
|
services.add_transient(FilterABC, UserWarningFilter)
|
||||||
|
|
||||||
# mutations
|
# mutations
|
||||||
services.add_transient(QueryABC, AutoRoleMutation)
|
services.add_transient(QueryABC, AutoRoleMutation)
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_graphql.model"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_graphql.mutations"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -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.team_member_type_enum import TeamMemberTypeEnum
|
||||||
from bot_data.model.user_role_enum import UserRoleEnum
|
from bot_data.model.user_role_enum import UserRoleEnum
|
||||||
from bot_graphql.abc.query_abc import QueryABC
|
from bot_graphql.abc.query_abc import QueryABC
|
||||||
from modules.permission.abc.permission_service_abc import PermissionServiceABC
|
|
||||||
|
|
||||||
|
|
||||||
class ServerConfigMutation(QueryABC):
|
class ServerConfigMutation(QueryABC):
|
||||||
@@ -25,7 +24,6 @@ class ServerConfigMutation(QueryABC):
|
|||||||
server_configs: ServerConfigRepositoryABC,
|
server_configs: ServerConfigRepositoryABC,
|
||||||
db: DatabaseContextABC,
|
db: DatabaseContextABC,
|
||||||
config_service: ConfigService,
|
config_service: ConfigService,
|
||||||
permissions: PermissionServiceABC,
|
|
||||||
):
|
):
|
||||||
QueryABC.__init__(self, "ServerConfigMutation")
|
QueryABC.__init__(self, "ServerConfigMutation")
|
||||||
|
|
||||||
@@ -35,7 +33,6 @@ class ServerConfigMutation(QueryABC):
|
|||||||
self._server_configs = server_configs
|
self._server_configs = server_configs
|
||||||
self._db = db
|
self._db = db
|
||||||
self._config_service = config_service
|
self._config_service = config_service
|
||||||
self._permissions = permissions
|
|
||||||
|
|
||||||
self.set_field("updateServerConfig", self.resolve_update_server_config)
|
self.set_field("updateServerConfig", self.resolve_update_server_config)
|
||||||
|
|
||||||
@@ -92,6 +89,11 @@ class ServerConfigMutation(QueryABC):
|
|||||||
server_config.default_role_id = (
|
server_config.default_role_id = (
|
||||||
input["defaultRoleId"] if "defaultRoleId" in input else 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 = (
|
server_config.feature_flags = (
|
||||||
dict(zip([x["key"] for x in input["featureFlags"]], [x["value"] for x in input["featureFlags"]]))
|
dict(zip([x["key"] for x in input["featureFlags"]], [x["value"] for x in input["featureFlags"]]))
|
||||||
if "featureFlags" in input
|
if "featureFlags" in input
|
||||||
@@ -137,6 +139,7 @@ class ServerConfigMutation(QueryABC):
|
|||||||
self._update_team_role_ids(server_config)
|
self._update_team_role_ids(server_config)
|
||||||
|
|
||||||
self._db.save_changes()
|
self._db.save_changes()
|
||||||
|
self._bot.loop.create_task(self._config_service.reload_server_config(server_config.server))
|
||||||
return server_config
|
return server_config
|
||||||
|
|
||||||
def _update_afk_channel_ids(self, new_config: ServerConfig):
|
def _update_afk_channel_ids(self, new_config: ServerConfig):
|
||||||
@@ -176,6 +179,3 @@ class ServerConfigMutation(QueryABC):
|
|||||||
continue
|
continue
|
||||||
|
|
||||||
self._server_configs.add_server_team_role_id_config(role_id)
|
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()
|
|
||||||
|
@@ -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_id_config import TechnicianIdConfig
|
||||||
from bot_data.model.technician_ping_url_config import TechnicianPingUrlConfig
|
from bot_data.model.technician_ping_url_config import TechnicianPingUrlConfig
|
||||||
from bot_data.model.user_role_enum import UserRoleEnum
|
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 bot_graphql.abc.query_abc import QueryABC
|
||||||
from modules.permission.abc.permission_service_abc import PermissionServiceABC
|
|
||||||
|
|
||||||
|
|
||||||
class TechnicianConfigMutation(QueryABC):
|
class TechnicianConfigMutation(QueryABC):
|
||||||
@@ -23,8 +23,8 @@ class TechnicianConfigMutation(QueryABC):
|
|||||||
servers: ServerRepositoryABC,
|
servers: ServerRepositoryABC,
|
||||||
technician_configs: TechnicianConfigRepositoryABC,
|
technician_configs: TechnicianConfigRepositoryABC,
|
||||||
db: DatabaseContextABC,
|
db: DatabaseContextABC,
|
||||||
permissions: PermissionServiceABC,
|
|
||||||
config_service: ConfigService,
|
config_service: ConfigService,
|
||||||
|
tech_seeder: TechnicianConfigSeeder,
|
||||||
):
|
):
|
||||||
QueryABC.__init__(self, "TechnicianConfigMutation")
|
QueryABC.__init__(self, "TechnicianConfigMutation")
|
||||||
|
|
||||||
@@ -33,12 +33,15 @@ class TechnicianConfigMutation(QueryABC):
|
|||||||
self._servers = servers
|
self._servers = servers
|
||||||
self._technician_configs = technician_configs
|
self._technician_configs = technician_configs
|
||||||
self._db = db
|
self._db = db
|
||||||
self._permissions = permissions
|
|
||||||
self._config_service = config_service
|
self._config_service = config_service
|
||||||
|
self._tech_seeder = tech_seeder
|
||||||
|
|
||||||
self.set_field("updateTechnicianConfig", self.resolve_update_technician_config)
|
self.set_field("updateTechnicianConfig", self.resolve_update_technician_config)
|
||||||
|
|
||||||
def resolve_update_technician_config(self, *_, input: dict):
|
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()
|
technician_config = self._technician_configs.get_technician_config()
|
||||||
self._can_user_mutate_data(Route.get_user().users[0].server, UserRoleEnum.technician)
|
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 = (
|
technician_config.cache_max_messages = (
|
||||||
input["cacheMaxMessages"] if "cacheMaxMessages" in input else 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 = (
|
technician_config.feature_flags = (
|
||||||
dict(zip([x["key"] for x in input["featureFlags"]], [x["value"] for x in input["featureFlags"]]))
|
dict(zip([x["key"] for x in input["featureFlags"]], [x["value"] for x in input["featureFlags"]]))
|
||||||
if "featureFlags" in input
|
if "featureFlags" in input
|
||||||
else technician_config.feature_flags
|
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 = (
|
technician_config.ping_urls = (
|
||||||
List(str, input["pingURLs"]) if "pingURLs" in input else 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._update_technician_ids(technician_config)
|
||||||
|
|
||||||
self._db.save_changes()
|
self._db.save_changes()
|
||||||
|
self._config_service.reload_technician_config()
|
||||||
return technician_config
|
return technician_config
|
||||||
|
|
||||||
def _update_ping_urls(self, new_config: TechnicianConfig):
|
def _update_ping_urls(self, new_config: TechnicianConfig):
|
||||||
@@ -112,6 +121,3 @@ class TechnicianConfigMutation(QueryABC):
|
|||||||
continue
|
continue
|
||||||
|
|
||||||
self._technician_configs.add_technician_id_config(TechnicianIdConfig(technician_id))
|
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()
|
|
||||||
|
@@ -4,8 +4,11 @@ from cpl_discord.service import DiscordBotServiceABC
|
|||||||
from bot_data.abc.level_repository_abc import LevelRepositoryABC
|
from bot_data.abc.level_repository_abc import LevelRepositoryABC
|
||||||
from bot_data.abc.server_repository_abc import ServerRepositoryABC
|
from bot_data.abc.server_repository_abc import ServerRepositoryABC
|
||||||
from bot_data.abc.user_repository_abc import UserRepositoryABC
|
from bot_data.abc.user_repository_abc import UserRepositoryABC
|
||||||
|
from bot_data.abc.user_warnings_repository_abc import UserWarningsRepositoryABC
|
||||||
|
from bot_data.model.user import User
|
||||||
from bot_data.model.user_role_enum import UserRoleEnum
|
from bot_data.model.user_role_enum import UserRoleEnum
|
||||||
from bot_graphql.abc.query_abc import QueryABC
|
from bot_graphql.abc.query_abc import QueryABC
|
||||||
|
from modules.base.service.user_warnings_service import UserWarningsService
|
||||||
from modules.level.service.level_service import LevelService
|
from modules.level.service.level_service import LevelService
|
||||||
from modules.permission.service.permission_service import PermissionService
|
from modules.permission.service.permission_service import PermissionService
|
||||||
|
|
||||||
@@ -20,6 +23,8 @@ class UserMutation(QueryABC):
|
|||||||
permissions: PermissionService,
|
permissions: PermissionService,
|
||||||
levels: LevelRepositoryABC,
|
levels: LevelRepositoryABC,
|
||||||
level_service: LevelService,
|
level_service: LevelService,
|
||||||
|
user_warnings: UserWarningsRepositoryABC,
|
||||||
|
user_warning_service: UserWarningsService,
|
||||||
):
|
):
|
||||||
QueryABC.__init__(self, "UserMutation")
|
QueryABC.__init__(self, "UserMutation")
|
||||||
|
|
||||||
@@ -30,6 +35,8 @@ class UserMutation(QueryABC):
|
|||||||
self._permissions = permissions
|
self._permissions = permissions
|
||||||
self._levels = levels
|
self._levels = levels
|
||||||
self._level_service = level_service
|
self._level_service = level_service
|
||||||
|
self._user_warnings = user_warnings
|
||||||
|
self._user_warning_service = user_warning_service
|
||||||
|
|
||||||
self.set_field("updateUser", self.resolve_update_user)
|
self.set_field("updateUser", self.resolve_update_user)
|
||||||
|
|
||||||
@@ -45,9 +52,28 @@ class UserMutation(QueryABC):
|
|||||||
|
|
||||||
user.xp = new_xp if new_xp is not None else input["xp"] if "xp" in input else user.xp
|
user.xp = new_xp if new_xp is not None else input["xp"] if "xp" in input else user.xp
|
||||||
|
|
||||||
|
if "userWarnings" in input:
|
||||||
|
self._update_user_warning(user, input["userWarnings"])
|
||||||
|
|
||||||
self._users.update_user(user)
|
self._users.update_user(user)
|
||||||
self._db.save_changes()
|
self._db.save_changes()
|
||||||
self._bot.loop.create_task(self._level_service.set_level(user))
|
self._bot.loop.create_task(self._level_service.set_level(user))
|
||||||
|
|
||||||
user = self._users.get_user_by_id(input["id"])
|
user = self._users.get_user_by_id(input["id"])
|
||||||
return user
|
return user
|
||||||
|
|
||||||
|
def _update_user_warning(self, user: User, new_warnings: dict):
|
||||||
|
old_warnings = self._user_warnings.get_user_warnings_by_user_id(user.id)
|
||||||
|
for warning in old_warnings:
|
||||||
|
if warning.id in [int(x["id"]) if "id" in x else None for x in new_warnings]:
|
||||||
|
continue
|
||||||
|
|
||||||
|
self._user_warning_service.remove_warnings(warning.id)
|
||||||
|
|
||||||
|
for warning in new_warnings:
|
||||||
|
if "id" in warning and int(warning["id"]) in old_warnings.select(lambda x: x.id):
|
||||||
|
continue
|
||||||
|
|
||||||
|
member = self._bot.get_guild(user.server.discord_id).get_member(user.discord_id)
|
||||||
|
author = self._users.get_user_by_id(int(warning["author"]))
|
||||||
|
self._user_warning_service.add_warnings(member, warning["description"], author.discord_id)
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_graphql.queries"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "bot_graphql.queries.discord"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -25,6 +25,9 @@ class ServerConfigQuery(DataQueryWithHistoryABC):
|
|||||||
self.set_field("teamChannelId", lambda config, *_: config.team_channel_id)
|
self.set_field("teamChannelId", lambda config, *_: config.team_channel_id)
|
||||||
self.set_field("loginMessageChannelId", lambda config, *_: config.login_message_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("defaultRoleId", lambda config, *_: config.default_role_id)
|
||||||
|
self.set_field(
|
||||||
|
"shortRoleNameOnlySetHighestRole", lambda config, *_: config.short_role_name_only_set_highest_role
|
||||||
|
)
|
||||||
self.add_collection(
|
self.add_collection(
|
||||||
"featureFlag",
|
"featureFlag",
|
||||||
lambda config, *_: List(any, [{"key": x, "value": config.feature_flags[x]} for x in config.feature_flags]),
|
lambda config, *_: List(any, [{"key": x, "value": config.feature_flags[x]} for x in config.feature_flags]),
|
||||||
|
@@ -6,6 +6,7 @@ from bot_data.abc.achievement_repository_abc import AchievementRepositoryABC
|
|||||||
from bot_data.abc.user_joined_game_server_repository_abc import UserJoinedGameServerRepositoryABC
|
from bot_data.abc.user_joined_game_server_repository_abc import UserJoinedGameServerRepositoryABC
|
||||||
from bot_data.abc.user_joined_server_repository_abc import UserJoinedServerRepositoryABC
|
from bot_data.abc.user_joined_server_repository_abc import UserJoinedServerRepositoryABC
|
||||||
from bot_data.abc.user_joined_voice_channel_repository_abc import UserJoinedVoiceChannelRepositoryABC
|
from bot_data.abc.user_joined_voice_channel_repository_abc import UserJoinedVoiceChannelRepositoryABC
|
||||||
|
from bot_data.abc.user_warnings_repository_abc import UserWarningsRepositoryABC
|
||||||
from bot_data.model.user import User
|
from bot_data.model.user import User
|
||||||
from bot_data.model.user_history import UserHistory
|
from bot_data.model.user_history import UserHistory
|
||||||
from bot_graphql.abc.data_query_with_history_abc import DataQueryWithHistoryABC
|
from bot_graphql.abc.data_query_with_history_abc import DataQueryWithHistoryABC
|
||||||
@@ -13,6 +14,7 @@ from bot_graphql.filter.achievement_filter import AchievementFilter
|
|||||||
from bot_graphql.filter.user_joined_game_server_filter import UserJoinedGameServerFilter
|
from bot_graphql.filter.user_joined_game_server_filter import UserJoinedGameServerFilter
|
||||||
from bot_graphql.filter.user_joined_server_filter import UserJoinedServerFilter
|
from bot_graphql.filter.user_joined_server_filter import UserJoinedServerFilter
|
||||||
from bot_graphql.filter.user_joined_voice_channel_filter import UserJoinedVoiceChannelFilter
|
from bot_graphql.filter.user_joined_voice_channel_filter import UserJoinedVoiceChannelFilter
|
||||||
|
from bot_graphql.filter.user_warning_filter import UserWarningFilter
|
||||||
from modules.level.service.level_service import LevelService
|
from modules.level.service.level_service import LevelService
|
||||||
from modules.permission.abc.permission_service_abc import PermissionServiceABC
|
from modules.permission.abc.permission_service_abc import PermissionServiceABC
|
||||||
|
|
||||||
@@ -29,6 +31,7 @@ class UserQuery(DataQueryWithHistoryABC):
|
|||||||
user_joined_game_server: UserJoinedGameServerRepositoryABC,
|
user_joined_game_server: UserJoinedGameServerRepositoryABC,
|
||||||
permissions: PermissionServiceABC,
|
permissions: PermissionServiceABC,
|
||||||
achievements: AchievementRepositoryABC,
|
achievements: AchievementRepositoryABC,
|
||||||
|
user_warnings: UserWarningsRepositoryABC,
|
||||||
):
|
):
|
||||||
DataQueryWithHistoryABC.__init__(self, "User", "UsersHistory", UserHistory, db)
|
DataQueryWithHistoryABC.__init__(self, "User", "UsersHistory", UserHistory, db)
|
||||||
|
|
||||||
@@ -67,6 +70,9 @@ class UserQuery(DataQueryWithHistoryABC):
|
|||||||
self.add_collection(
|
self.add_collection(
|
||||||
"achievement", lambda user, *_: achievements.get_achievements_by_user_id(user.id), AchievementFilter
|
"achievement", lambda user, *_: achievements.get_achievements_by_user_id(user.id), AchievementFilter
|
||||||
)
|
)
|
||||||
|
self.add_collection(
|
||||||
|
"userWarning", lambda user, *_: user_warnings.get_user_warnings_by_user_id(user.id), UserWarningFilter
|
||||||
|
)
|
||||||
|
|
||||||
self.set_field("server", self.resolve_server)
|
self.set_field("server", self.resolve_server)
|
||||||
self.set_field("leftServer", self.resolve_left_server)
|
self.set_field("leftServer", self.resolve_left_server)
|
||||||
|
@@ -0,0 +1,11 @@
|
|||||||
|
from bot_graphql.abc.history_query_abc import HistoryQueryABC
|
||||||
|
|
||||||
|
|
||||||
|
class UserWarningHistoryQuery(HistoryQueryABC):
|
||||||
|
def __init__(self):
|
||||||
|
HistoryQueryABC.__init__(self, "UserWarning")
|
||||||
|
|
||||||
|
self.set_field("id", lambda x, *_: x.id)
|
||||||
|
self.set_field("user", lambda x, *_: x.user)
|
||||||
|
self.set_field("description", lambda x, *_: x.description)
|
||||||
|
self.set_field("author", lambda x, *_: x.author)
|
17
kdb-bot/src/bot_graphql/queries/user_warning_query.py
Normal file
17
kdb-bot/src/bot_graphql/queries/user_warning_query.py
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
from cpl_core.database.context import DatabaseContextABC
|
||||||
|
|
||||||
|
from bot_data.model.user_warnings_history import UserWarningsHistory
|
||||||
|
from bot_graphql.abc.data_query_with_history_abc import DataQueryWithHistoryABC
|
||||||
|
|
||||||
|
|
||||||
|
class UserWarningQuery(DataQueryWithHistoryABC):
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
db: DatabaseContextABC,
|
||||||
|
):
|
||||||
|
DataQueryWithHistoryABC.__init__(self, "UserWarning", "UserWarningsHistory", UserWarningsHistory, db)
|
||||||
|
|
||||||
|
self.set_field("id", lambda x, *_: x.id)
|
||||||
|
self.set_field("user", lambda x, *_: x.user)
|
||||||
|
self.set_field("description", lambda x, *_: x.description)
|
||||||
|
self.set_field("author", lambda x, *_: x.author)
|
@@ -15,6 +15,7 @@ from bot_data.abc.user_joined_game_server_repository_abc import UserJoinedGameSe
|
|||||||
from bot_data.abc.user_joined_server_repository_abc import UserJoinedServerRepositoryABC
|
from bot_data.abc.user_joined_server_repository_abc import UserJoinedServerRepositoryABC
|
||||||
from bot_data.abc.user_joined_voice_channel_repository_abc import UserJoinedVoiceChannelRepositoryABC
|
from bot_data.abc.user_joined_voice_channel_repository_abc import UserJoinedVoiceChannelRepositoryABC
|
||||||
from bot_data.abc.user_repository_abc import UserRepositoryABC
|
from bot_data.abc.user_repository_abc import UserRepositoryABC
|
||||||
|
from bot_data.abc.user_warnings_repository_abc import UserWarningsRepositoryABC
|
||||||
from bot_data.model.short_role_name_position_enum import ShortRoleNamePositionEnum
|
from bot_data.model.short_role_name_position_enum import ShortRoleNamePositionEnum
|
||||||
from bot_graphql.abc.query_abc import QueryABC
|
from bot_graphql.abc.query_abc import QueryABC
|
||||||
from bot_graphql.filter.achievement_filter import AchievementFilter
|
from bot_graphql.filter.achievement_filter import AchievementFilter
|
||||||
@@ -28,6 +29,7 @@ from bot_graphql.filter.user_filter import UserFilter
|
|||||||
from bot_graphql.filter.user_joined_game_server_filter import UserJoinedGameServerFilter
|
from bot_graphql.filter.user_joined_game_server_filter import UserJoinedGameServerFilter
|
||||||
from bot_graphql.filter.user_joined_server_filter import UserJoinedServerFilter
|
from bot_graphql.filter.user_joined_server_filter import UserJoinedServerFilter
|
||||||
from bot_graphql.filter.user_joined_voice_channel_filter import UserJoinedVoiceChannelFilter
|
from bot_graphql.filter.user_joined_voice_channel_filter import UserJoinedVoiceChannelFilter
|
||||||
|
from bot_graphql.filter.user_warning_filter import UserWarningFilter
|
||||||
from bot_graphql.model.discord import Discord
|
from bot_graphql.model.discord import Discord
|
||||||
from modules.achievements.achievement_service import AchievementService
|
from modules.achievements.achievement_service import AchievementService
|
||||||
|
|
||||||
@@ -48,6 +50,7 @@ class Query(QueryABC):
|
|||||||
users: UserRepositoryABC,
|
users: UserRepositoryABC,
|
||||||
achievements: AchievementRepositoryABC,
|
achievements: AchievementRepositoryABC,
|
||||||
short_role_names: ShortRoleNameRepositoryABC,
|
short_role_names: ShortRoleNameRepositoryABC,
|
||||||
|
user_warnings: UserWarningsRepositoryABC,
|
||||||
achievement_service: AchievementService,
|
achievement_service: AchievementService,
|
||||||
technician_config: TechnicianConfigRepositoryABC,
|
technician_config: TechnicianConfigRepositoryABC,
|
||||||
):
|
):
|
||||||
@@ -76,11 +79,13 @@ class Query(QueryABC):
|
|||||||
self.add_collection("user", lambda *_: users.get_users(), UserFilter)
|
self.add_collection("user", lambda *_: users.get_users(), UserFilter)
|
||||||
self.add_collection("achievement", lambda *_: achievements.get_achievements(), AchievementFilter)
|
self.add_collection("achievement", lambda *_: achievements.get_achievements(), AchievementFilter)
|
||||||
self.add_collection("shortRoleName", lambda *_: short_role_names.get_short_role_names(), ShortRoleNameFilter)
|
self.add_collection("shortRoleName", lambda *_: short_role_names.get_short_role_names(), ShortRoleNameFilter)
|
||||||
|
self.add_collection("userWarning", lambda *_: user_warnings.get_user_warnings(), UserWarningFilter)
|
||||||
|
|
||||||
self.set_field("technicianConfig", lambda *_: technician_config.get_technician_config())
|
self.set_field("technicianConfig", lambda *_: technician_config.get_technician_config())
|
||||||
|
|
||||||
self.set_field("achievementAttributes", lambda *_: achievement_service.get_attributes())
|
self.set_field("achievementAttributes", lambda *_: achievement_service.get_attributes())
|
||||||
self.set_field("achievementOperators", lambda *_: achievement_service.get_operators())
|
self.set_field("achievementOperators", lambda *_: achievement_service.get_operators())
|
||||||
self.set_field("shortRoleNamePositions", lambda *_: [x.value for x in ShortRoleNamePositionEnum])
|
self.set_field("shortRoleNamePositions", lambda *_: [x.value for x in ShortRoleNamePositionEnum])
|
||||||
|
|
||||||
self.set_field("possibleFeatureFlags", lambda *_: [e.value for e in FeatureFlagsEnum])
|
self.set_field("possibleFeatureFlags", lambda *_: [e.value for e in FeatureFlagsEnum])
|
||||||
self.set_field("discord", lambda *_: Discord(bot.guilds, List(any).extend(bot.users)))
|
self.set_field("discord", lambda *_: Discord(bot.guilds, List(any).extend(bot.users)))
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.achievements"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
"Version": {
|
"Version": {
|
||||||
"Major": "1",
|
"Major": "1",
|
||||||
"Minor": "1",
|
"Minor": "1",
|
||||||
"Micro": "8"
|
"Micro": "10"
|
||||||
},
|
},
|
||||||
"Author": "Sven Heidemann",
|
"Author": "Sven Heidemann",
|
||||||
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.achievements.commands"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.achievements.events"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.achievements.model"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.auto_role"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
"Version": {
|
"Version": {
|
||||||
"Major": "1",
|
"Major": "1",
|
||||||
"Minor": "1",
|
"Minor": "1",
|
||||||
"Micro": "8"
|
"Micro": "10"
|
||||||
},
|
},
|
||||||
"Author": "",
|
"Author": "",
|
||||||
"AuthorEmail": "",
|
"AuthorEmail": "",
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.auto_role.command"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.auto_role.events"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.auto_role.helper"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.base"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
"Version": {
|
"Version": {
|
||||||
"Major": "1",
|
"Major": "1",
|
||||||
"Minor": "1",
|
"Minor": "1",
|
||||||
"Micro": "8"
|
"Micro": "10"
|
||||||
},
|
},
|
||||||
"Author": "",
|
"Author": "",
|
||||||
"AuthorEmail": "",
|
"AuthorEmail": "",
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.base.command"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -400,7 +400,7 @@ class UserGroup(DiscordCommandABC):
|
|||||||
async def add(self, ctx: Context, member: discord.Member, description: str):
|
async def add(self, ctx: Context, member: discord.Member, description: str):
|
||||||
self._logger.debug(__name__, f"Received command user warning add {ctx}:{member},{description}")
|
self._logger.debug(__name__, f"Received command user warning add {ctx}:{member},{description}")
|
||||||
try:
|
try:
|
||||||
await self._user_warnings_service.add_warnings(member, description, ctx.author.id)
|
await self._user_warnings_service.add_warnings_async(member, description, ctx.author.id)
|
||||||
await self._message_service.send_ctx_msg(ctx, self._t.transform("modules.base.warnings.add.success"))
|
await self._message_service.send_ctx_msg(ctx, self._t.transform("modules.base.warnings.add.success"))
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self._logger.error(__name__, f"Adding user warning failed", e)
|
self._logger.error(__name__, f"Adding user warning failed", e)
|
||||||
@@ -414,7 +414,7 @@ class UserGroup(DiscordCommandABC):
|
|||||||
async def remove(self, ctx: Context, warning_id: int):
|
async def remove(self, ctx: Context, warning_id: int):
|
||||||
self._logger.debug(__name__, f"Received command user warning remove {ctx}:{warning_id}")
|
self._logger.debug(__name__, f"Received command user warning remove {ctx}:{warning_id}")
|
||||||
try:
|
try:
|
||||||
await self._user_warnings_service.remove_warnings(warning_id)
|
await self._user_warnings_service.remove_warnings_async(warning_id)
|
||||||
await self._message_service.send_ctx_msg(ctx, self._t.transform("modules.base.warnings.remove.success"))
|
await self._message_service.send_ctx_msg(ctx, self._t.transform("modules.base.warnings.remove.success"))
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self._logger.error(__name__, f"Removing user warning failed", e)
|
self._logger.error(__name__, f"Removing user warning failed", e)
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.base.events"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -31,6 +31,17 @@ class BaseOnVoiceStateUpdateEventHelpChannel(OnVoiceStateUpdateABC):
|
|||||||
|
|
||||||
self._logger.info(__name__, f"Module {type(self)} loaded")
|
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()
|
@EventChecks.check_is_ready()
|
||||||
async def on_voice_state_update(
|
async def on_voice_state_update(
|
||||||
self,
|
self,
|
||||||
@@ -44,14 +55,6 @@ class BaseOnVoiceStateUpdateEventHelpChannel(OnVoiceStateUpdateABC):
|
|||||||
if after.channel is None or after.channel.id != settings.help_voice_channel_id:
|
if after.channel is None or after.channel.id != settings.help_voice_channel_id:
|
||||||
return
|
return
|
||||||
|
|
||||||
mods = [
|
await self._notify_team(member)
|
||||||
*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,
|
|
||||||
)
|
|
||||||
|
|
||||||
self._logger.debug(__name__, f"Module {type(self)} stopped")
|
self._logger.debug(__name__, f"Module {type(self)} stopped")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.base.forms"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.base.helper"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.base.model"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.base.service"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -108,7 +108,15 @@ class UserWarningsService:
|
|||||||
await self.notify_team(member, self._t.transform("modules.base.warnings.kick").format(member.mention))
|
await self.notify_team(member, self._t.transform("modules.base.warnings.kick").format(member.mention))
|
||||||
await member.kick()
|
await member.kick()
|
||||||
|
|
||||||
async def add_warnings(self, member: discord.Member, description: str, author_id: int = None):
|
async def _notify_after_add(self, member: discord.Member, warning: UserWarnings):
|
||||||
|
server = self._servers.get_server_by_discord_id(member.guild.id)
|
||||||
|
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.id)
|
||||||
|
|
||||||
|
await self.notify_user(member, self._t.transform("modules.base.warnings.warned").format(warning.description))
|
||||||
|
await self.notify_team(member, warning.description)
|
||||||
|
await self.check_for_warnings(member, user)
|
||||||
|
|
||||||
|
def _add_warnings(self, member: discord.Member, description: str, author_id: int = None):
|
||||||
server = self._servers.get_server_by_discord_id(member.guild.id)
|
server = self._servers.get_server_by_discord_id(member.guild.id)
|
||||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.id)
|
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.id)
|
||||||
|
|
||||||
@@ -119,17 +127,32 @@ class UserWarningsService:
|
|||||||
warning = UserWarnings(description, user, author)
|
warning = UserWarnings(description, user, author)
|
||||||
self._warnings.add_user_warnings(warning)
|
self._warnings.add_user_warnings(warning)
|
||||||
self._db.save_changes()
|
self._db.save_changes()
|
||||||
await self.notify_user(member, self._t.transform("modules.base.warnings.warned").format(warning.description))
|
return warning
|
||||||
await self.notify_team(member, warning.description)
|
|
||||||
await self.check_for_warnings(member, user)
|
|
||||||
|
|
||||||
async def remove_warnings(self, id: int):
|
def add_warnings(self, member: discord.Member, description: str, author_id: int = None):
|
||||||
|
warning = self._add_warnings(member, description, author_id)
|
||||||
|
self._bot.loop.create_task(self._notify_after_add(member, warning))
|
||||||
|
|
||||||
|
async def add_warnings_async(self, member: discord.Member, description: str, author_id: int = None):
|
||||||
|
warning = self._add_warnings(member, description, author_id)
|
||||||
|
await self._notify_after_add(member, warning)
|
||||||
|
|
||||||
|
async def _notify_after_remove(self, warning: UserWarnings):
|
||||||
|
guild = self._bot.get_guild(warning.user.server.discord_id)
|
||||||
|
member = guild.get_member(warning.user.discord_id)
|
||||||
|
await self.notify_user(member, self._t.transform("modules.base.warnings.removed").format(warning.description))
|
||||||
|
await self.notify_team(member, warning.description, removed=True)
|
||||||
|
|
||||||
|
def _remove_warnings(self, id: int):
|
||||||
warning = self._warnings.get_user_warnings_by_id(id)
|
warning = self._warnings.get_user_warnings_by_id(id)
|
||||||
self._warnings.delete_user_warnings(warning)
|
self._warnings.delete_user_warnings(warning)
|
||||||
self._db.save_changes()
|
self._db.save_changes()
|
||||||
|
return warning
|
||||||
|
|
||||||
guild = self._bot.get_guild(warning.user.server.discord_id)
|
def remove_warnings(self, id: int):
|
||||||
member = guild.get_member(warning.user.discord_id)
|
warning = self._remove_warnings(id)
|
||||||
|
self._bot.loop.create_task(self._notify_after_remove(warning))
|
||||||
|
|
||||||
await self.notify_user(member, self._t.transform("modules.base.warnings.removed").format(warning.description))
|
async def remove_warnings_async(self, id: int):
|
||||||
await self.notify_team(member, warning.description, removed=True)
|
warning = self._remove_warnings(id)
|
||||||
|
await self._notify_after_remove(warning)
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.base.thread"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.boot_log"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports:
|
# imports:
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
"Version": {
|
"Version": {
|
||||||
"Major": "1",
|
"Major": "1",
|
||||||
"Minor": "1",
|
"Minor": "1",
|
||||||
"Micro": "8"
|
"Micro": "10"
|
||||||
},
|
},
|
||||||
"Author": "",
|
"Author": "",
|
||||||
"AuthorEmail": "",
|
"AuthorEmail": "",
|
||||||
|
@@ -67,7 +67,7 @@ class BootLogOnReadyEvent(OnReadyABC):
|
|||||||
|
|
||||||
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{g.id}")
|
server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{g.id}")
|
||||||
if server_config is None:
|
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
|
return
|
||||||
|
|
||||||
if not FeatureFlagsSettings.get_flag_from_dict(
|
if not FeatureFlagsSettings.get_flag_from_dict(
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.config"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
version_info = VersionInfo(major="1", minor="1", micro="10")
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
"Version": {
|
"Version": {
|
||||||
"Major": "1",
|
"Major": "1",
|
||||||
"Minor": "1",
|
"Minor": "1",
|
||||||
"Micro": "8"
|
"Micro": "10"
|
||||||
},
|
},
|
||||||
"Author": "",
|
"Author": "",
|
||||||
"AuthorEmail": "",
|
"AuthorEmail": "",
|
||||||
|
@@ -19,4 +19,4 @@ class ConfigExtension(ApplicationExtensionABC):
|
|||||||
logger: LoggerABC = services.get_service(LoggerABC)
|
logger: LoggerABC = services.get_service(LoggerABC)
|
||||||
logger.debug(__name__, "Config extension started")
|
logger.debug(__name__, "Config extension started")
|
||||||
config: ConfigService = services.get_service(ConfigService)
|
config: ConfigService = services.get_service(ConfigService)
|
||||||
await config.reload_technician_config()
|
config.reload_technician_config()
|
||||||
|
@@ -15,7 +15,7 @@ __title__ = "modules.config.events"
|
|||||||
__author__ = "Sven Heidemann"
|
__author__ = "Sven Heidemann"
|
||||||
__license__ = "MIT"
|
__license__ = "MIT"
|
||||||
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
__copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de"
|
||||||
__version__ = "1.1.8"
|
__version__ = "1.1.10"
|
||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
|||||||
# imports
|
# imports
|
||||||
|
|
||||||
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
VersionInfo = namedtuple("VersionInfo", "major minor micro")
|
||||||
version_info = VersionInfo(major="1", minor="1", micro="8")
|
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
Reference in New Issue
Block a user