99 lines
2.4 KiB
Python
99 lines
2.4 KiB
Python
import configparser
|
|
import os
|
|
from os import environ, path
|
|
from dotenv import load_dotenv
|
|
CONFIG_PATH = 'app/config/config.ini'
|
|
BOT_SECTION = 'bot_envs'
|
|
config = configparser.ConfigParser()
|
|
|
|
CONFIG_KEYS = ['username', 'password', 'discord_bot_token', 'plex_user', 'plex_pass',
|
|
'roles', 'plex_server_name', 'plex_libs', 'owner_id', 'channel_id',
|
|
'auto_remove_user']
|
|
|
|
# settings
|
|
Discord_bot_token = ""
|
|
roles = None
|
|
PLEXUSER = ""
|
|
PLEXPASS = ""
|
|
PLEX_SERVER_NAME = ""
|
|
Plex_LIBS = ["all"]
|
|
switch = 0
|
|
|
|
|
|
if(path.exists('bot.env')):
|
|
try:
|
|
load_dotenv(dotenv_path='bot.env')
|
|
# settings
|
|
Discord_bot_token = environ.get('discord_bot_token')
|
|
switch = 1
|
|
|
|
except Exception as e:
|
|
pass
|
|
|
|
elif(path.exists('app/config/config.ini')):
|
|
try:
|
|
config = configparser.ConfigParser()
|
|
config.read(CONFIG_PATH)
|
|
Discord_bot_token = config.get(BOT_SECTION, 'discord_bot_token')
|
|
except:
|
|
pass
|
|
else:
|
|
try:
|
|
Discord_bot_token = str(os.environ['token'])
|
|
switch = 1
|
|
except Exception as e:
|
|
print("ERROR. No config found.")
|
|
|
|
if(path.exists('app/config/config.ini')):
|
|
try:
|
|
config = configparser.ConfigParser()
|
|
config.read(CONFIG_PATH)
|
|
PLEXUSER = config.get(BOT_SECTION, 'plex_user')
|
|
PLEXPASS = config.get(BOT_SECTION, 'plex_pass')
|
|
PLEX_SERVER_NAME = config.get(BOT_SECTION, 'plex_server_name')
|
|
except:
|
|
pass
|
|
|
|
if(path.exists('app/config/config.ini')):
|
|
try:
|
|
roles = config.get(BOT_SECTION, 'roles')
|
|
except:
|
|
pass
|
|
|
|
def get_config():
|
|
"""
|
|
Function to return current config
|
|
"""
|
|
try:
|
|
config.read(CONFIG_PATH)
|
|
return config
|
|
except Exception as e:
|
|
print(e)
|
|
print('error in reading config')
|
|
return None
|
|
|
|
|
|
def change_config(key, value):
|
|
"""
|
|
Function to change the key, value pair in config
|
|
"""
|
|
try:
|
|
config = configparser.ConfigParser()
|
|
config.read(CONFIG_PATH)
|
|
except Exception as e:
|
|
print(e)
|
|
print("Cannot Read config.")
|
|
|
|
try:
|
|
config.set(BOT_SECTION, key, str(value))
|
|
except Exception as e:
|
|
config.add_section(BOT_SECTION)
|
|
config.set(BOT_SECTION, key, str(value))
|
|
|
|
try:
|
|
with open(CONFIG_PATH, 'w') as configfile:
|
|
config.write(configfile)
|
|
except Exception as e:
|
|
print(e)
|
|
print("Cannot write to config.")
|