mirror of
https://github.com/Nick80835/microbot
synced 2025-08-22 10:09:40 +00:00
59 lines
1.7 KiB
Python
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 []
|