2
0
mirror of https://github.com/Nick80835/microbot synced 2025-08-24 11:08:35 +00:00
microbot/ubot/settings.py

61 lines
1.7 KiB
Python
Raw Normal View History

2020-03-16 21:02:05 -04:00
# SPDX-License-Identifier: GPL-2.0-or-later
2023-10-16 09:46:31 -04:00
from configparser import SafeConfigParser
class Settings():
def __init__(self):
self.config = SafeConfigParser()
self.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)
2023-10-16 09:46:31 -04:00
def get_bool(self, key, default=False):
return bool(self.config.get("DEFAULT", key, fallback=default) == "True")
2023-10-16 09:46:31 -04:00
def set_config(self, key, value):
value = str(value)
2023-10-16 09:46:31 -04:00
self.config.set("DEFAULT", key, value)
self.write_changes()
2023-10-16 09:46:31 -04:00
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):
return self.config.get("DEFAULT", key, fallback="").split("|")