2
0
mirror of https://github.com/Nick80835/microbot synced 2025-08-22 10:09:40 +00:00
microbot/ubot/settings.py
2023-10-16 09:54:09 -04:00

59 lines
1.7 KiB
Python

from configparser import ConfigParser
class Settings():
config = ConfigParser()
config.read("settings.ini")
def write_changes(self):
with open('settings.ini', 'w') as config_file:
self.config.write(config_file)
config_file.close()
def get_config(self, key, default=None):
return self.config.get("DEFAULT", key, fallback=default)
def get_bool(self, key, default=False):
return bool(self.config.get("DEFAULT", key, fallback=default) == "True")
def set_config(self, key, value):
value = str(value)
self.config.set("DEFAULT", key, value)
self.write_changes()
def add_to_list(self, key, value):
config_value = self.config.get("DEFAULT", key, fallback=None)
value = str(value)
if config_value:
config_list = config_value.split("|")
else:
config_list = []
if value not in config_list:
config_list.append(value)
self.config.set("DEFAULT", key, "|".join(config_list))
self.write_changes()
def remove_from_list(self, key, value):
config_value = self.config.get("DEFAULT", key, fallback=None)
value = str(value)
if config_value:
config_list = config_value.split("|")
else:
return
if value in config_list:
config_list.remove(value)
else:
return
self.config.set("DEFAULT", key, "|".join(config_list))
self.write_changes()
def get_list(self, key):
list_setting = self.config.get("DEFAULT", key, fallback="")
return list_setting.split("|") if list_setting else []